*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:#071b42;color:#f9fbff;font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.55;background-image:radial-gradient(ellipse at 0 40%,#07468180,transparent 48%),radial-gradient(ellipse at 100% 80%,#005fa355,transparent 42%)}a{color:inherit}button,input,select,textarea{font:inherit}.brand{text-align:center;color:#09224e;background:linear-gradient(135deg,#fff,#eef5fd);padding:25px 20px 30px;border-bottom:5px solid #08cae6;border-radius:0 0 48% 8%/0 0 14% 8%;position:relative;box-shadow:0 6px 0 #ffb300}.wifi{font-size:58px;line-height:.9;font-weight:900;color:#f5a100;transform:rotate(-35deg)}.wordmark{font-family:Georgia,serif;display:block;text-decoration:none;font-weight:1000;font-size:42px;letter-spacing:-2px;line-height:1.3;color:#1f1a0e;text-shadow:2px 2px #ffc42c,-1px -1px #ffb900}.wordmark span{color:#b97300}.tagline{font-weight:750;font-style:italic;margin:0 0 10px;font-size:16px}.brand small{font-size:11px;letter-spacing:1px}.provider{font-weight:850;font-size:25px;color:#101a9b;letter-spacing:-1px}.provider span{color:#f36b15}main{max-width:960px;margin:auto;padding:40px 24px 12px;min-height:40vh}.intro{text-align:center;margin:4px 0 25px}.eyebrow{font-size:10px;letter-spacing:2.5px;color:#39d7e8;font-weight:800}h1{font-size:42px;line-height:1.15;letter-spacing:-1.5px;margin:10px 0 13px}h1 span{color:#ffca36}.intro p{color:#c6d6eb;font-size:17px;margin:0}h2{font-size:20px;line-height:1.25;margin:0 0 16px;letter-spacing:-.4px}.steps{display:flex;list-style:none;padding:0;margin:25px 0;justify-content:space-between;gap:12px;font-size:13px;color:#a9bfdc}.steps li{display:flex;align-items:center;gap:8px}.steps b{border:1px solid #607a9d;width:28px;height:28px;display:inline-grid;place-items:center;border-radius:50%}.steps .active{color:#ffe096}.steps .active b{background:#ffc42a;color:#10244c;border-color:#ffc42a}.packages{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:25px 0}.package{position:relative;border:2px solid #fbc32b;border-radius:22px;background:linear-gradient(155deg,#fff,#edf4fc 85%,#81e5ee 86%);color:#071b42;text-align:center;padding:20px 10px 16px;cursor:pointer;display:flex;flex-direction:column;align-items:center;transition:.18s;overflow:hidden;box-shadow:0 9px 18px #020b201c}.package:has(input:checked){border-color:#1ce3f2;box-shadow:0 0 0 3px #13cbd536,0 12px 22px #020c28;background:linear-gradient(135deg,#fff,#d9fbff)}.package:focus-within{outline:3px solid #fff;outline-offset:4px}.package input{position:absolute;opacity:0;width:1px;height:1px}.selection{position:absolute;top:8px;right:12px;color:#008a9d;opacity:0;font-weight:900}.package:has(input:checked) .selection{opacity:1}.signal{font-size:31px;line-height:1;color:#efa300;transform:rotate(-35deg);margin-bottom:12px}.package strong{text-transform:uppercase;font-size:23px;font-weight:850;letter-spacing:-.7px}.price{background:linear-gradient(140deg,#ffdc4e,#ffb600);border-radius:30px;padding:3px 13px;font-size:22px;font-weight:850;margin-top:10px;white-space:nowrap}.package small{font-size:10px;color:#57708c;margin-top:10px}.package.empty{opacity:.5;cursor:not-allowed}.panel{background:#f9fbff;color:#132b50;border-radius:23px;padding:27px;margin-bottom:24px;box-shadow:0 12px 30px #020c2330}.panel .eyebrow{color:#087f98}.panel p{font-size:14px}.section-head{display:flex;gap:12px;align-items:center;border-bottom:1px solid #d6dfeb;padding-bottom:15px}.section-head h2{margin:0}.cart{color:#008ea9;font-size:29px;font-weight:900}.summary{max-width:700px;margin:0 auto}.summary dl{margin:8px 0 18px}.summary dl div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #dfe5ee}.summary dt{color:#64718a}.summary dd{font-weight:800;margin:0}.method{background:#edf2fa;border:1px solid #dae3ee;border-radius:13px;padding:13px 15px;display:flex;align-items:center;gap:14px;margin-bottom:20px}.scan{font-size:30px}.method small,.method strong{display:block}.method small{font-size:11px;color:#6d7a90}.method strong{font-size:17px}.method-note{margin-left:auto;font-size:11px;color:#6b7990}button,.button{display:block;width:100%;border:0;border-radius:13px;background:linear-gradient(135deg,#ffd33f,#ffb400);padding:16px 20px;color:#112447;font-weight:850;font-size:14px;cursor:pointer;text-decoration:none;text-align:center;box-shadow:0 3px 0 #ec9800}button span{float:right}button:hover,.button:hover{filter:brightness(1.04)}button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none}.secondary{background:#e9f2fb;color:#123b6c;box-shadow:none;border:1px solid #c8d9e9;margin-top:12px}.note{text-align:center;color:#526981;font-size:12px!important;margin:17px 0 0}.muted{font-size:11px!important;color:#6f7e92}.sandbox{font-size:11px;text-align:center;letter-spacing:.8px;color:#ffe09a;background:#65490040;border:1px solid #b99b4050;border-radius:10px;padding:9px;margin:16px 0}.alert{padding:15px 20px;background:#fff2db;color:#6f4309;border-radius:12px;margin-bottom:20px;font-size:14px}.success{background:#e2fff1;color:#146148}.narrow{max-width:560px;margin:0 auto 20px}.narrow h1{font-size:32px}form label:not(.package){display:block;font-size:13px;font-weight:650;margin:14px 0}input:not([type=radio]):not([type=checkbox]),select,textarea{display:block;width:100%;padding:12px;background:#fff;border:1px solid #c5d3e4;border-radius:9px;margin-top:7px;color:#142b4d}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:2px solid #08aaca}.check{display:flex!important;align-items:center;gap:9px}footer{text-align:center;padding:25px 20px 30px;font-size:13px;color:#bdd1e6}footer>a{font-weight:650;text-decoration:none}footer>span{margin:0 12px}footer p{font-size:10px;letter-spacing:.5px;color:#7992b1;margin-top:22px}.admin-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-title h1{font-size:32px}.admin-title button{margin:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0 0}.stats .panel{padding:18px}.stats strong,.stats small{display:block}.stats strong{font-size:30px;color:#087e9e}.stats small{font-size:11px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th,td{padding:12px 10px;border-bottom:1px solid #d9e1ec;text-align:left}td button{font-size:11px;padding:8px}.wrap{overflow-wrap:anywhere;font-size:12px}.order{text-align:center}.badge{display:inline-block;background:#e3eff8;color:#166588;border-radius:30px;padding:6px 15px;font-size:12px;margin-bottom:18px}.qr{background:#fff;border:1px solid #e0e5ed;border-radius:18px;padding:10px;max-width:310px;margin:0 auto}.qr img{display:block;width:100%;height:auto}.receipt{border-top:1px solid #d8e3ef;margin-top:24px;padding-top:20px}.receipt small,.receipt code{display:block}.receipt small{font-size:10px;letter-spacing:1px;color:#7e8da3}.receipt code{font-size:13px;margin:8px 0;overflow-wrap:anywhere}.receipt p{color:#6b7e98;font-size:11px}.voucher-result{padding:20px;background:#eaf7fc;border:1px dashed #31b8d0;border-radius:15px;margin-bottom:20px;overflow-wrap:anywhere}.voucher-result>*{display:block}.voucher-result small{font-size:10px;color:#5f7c92;margin-top:12px}.voucher-result strong{font-family:monospace;font-size:27px;letter-spacing:1px}@media(max-width:650px){.brand{padding:23px 15px 22px}.wordmark{font-size:36px}.wifi{font-size:47px}.tagline{font-size:13px}.provider{font-size:23px}main{padding:32px 18px 8px}h1{font-size:34px}.intro p{font-size:14px}.eyebrow{font-size:9px;letter-spacing:2px}.steps{font-size:10px;gap:5px;margin:23px 0}.steps li{gap:5px}.steps b{width:23px;height:23px}.packages{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.package{padding:17px 10px 14px;border-radius:19px}.package strong{font-size:24px}.price{font-size:23px}.panel{padding:21px;border-radius:19px}.summary h2{font-size:18px}.method-note{font-size:9px}.method{gap:10px;padding:12px}.summary dt,.summary dd{font-size:14px}button,.button{font-size:12px;padding:15px 12px}.stats{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}.admin-title h1{font-size:26px}.admin-title{align-items:start}.narrow h1{font-size:29px}footer{font-size:12px}}
.wifi-logo{display:block;margin:0 auto 3px;object-fit:contain}.package-signal{display:block;margin:0 auto 12px;object-fit:contain}

.stock-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end}.stock-filters button{margin:14px 0}.stock-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.stock-actions label{margin:0!important}.stock-actions .check{grid-column:1/-1}.stock-actions button{margin:0}.danger{background:#ffe5e5;color:#962f38;box-shadow:none;border:1px solid #efbfc4}.stock-badge{font-size:10px;border-radius:20px;padding:5px 9px;background:#e4ecf5;white-space:nowrap}.stock-badge.ready{background:#d9f5e7;color:#176844}.stock-badge.sold{background:#dfe9fd;color:#215390}.stock-badge.deleted{background:#ffe8e8;color:#973b41}.stock-badge.reserved{background:#fff1d2;color:#83600f}.stock-pagination{display:flex;justify-content:space-between;margin-top:18px;font-size:13px}.edit-voucher{padding:20px;background:#eaf5fb;border:1px solid #b8d9e8;border-radius:15px;margin:18px 0}.edit-voucher a{display:inline-block;margin-top:15px;font-size:12px}.inventory input[type=checkbox]{width:18px;height:18px;accent-color:#058da6}.inventory code{white-space:normal;overflow-wrap:anywhere}.inventory td{max-width:240px}@media(max-width:650px){.stock-filters,.stock-actions{grid-template-columns:1fr}.stock-filters{gap:0}.stock-filters button{margin:4px 0 12px}.inventory td{max-width:180px}.stock-actions .check{grid-column:auto}.stock-actions{gap:16px}}

.purge-box{grid-column:1/-1;background:#fff0f0;border:1px solid #e9b6bc;padding:18px;border-radius:12px}.purge-box h3{font-size:16px;color:#922f3a}.purge-box button{margin-top:15px}.purge-box p{font-size:12px}

/* 1.3 — mobile purchase theme matching MikroTik login */
html{color-scheme:dark}body{background:#09151f;background-image:linear-gradient(135deg,#09151f,#0b252d 55%,#09151f);background-attachment:fixed;color:#f6fafc;line-height:1.4}.brand{max-width:440px;width:calc(100% - 28px);margin:10px auto 0;padding:7px 12px 8px;border:1px solid #00cdb1;border-radius:17px;background:linear-gradient(125deg,#102631,#0c1c28);box-shadow:none;color:white}.brand-link{display:block;width:fit-content;margin:auto}.shop-logo{display:block;width:158px;height:86px;object-fit:contain}.brand small{display:block;font-size:9px;letter-spacing:0;line-height:1.3;font-style:italic}.shop-provider{display:block;width:130px;height:30px;margin:auto;object-fit:contain}main{max-width:960px;padding:20px 20px 4px;min-height:0}.page-shop main{max-width:480px;padding:12px 14px 0}.intro{margin:0 0 10px}.intro h1{font-size:26px;letter-spacing:-.7px;margin:0 0 4px}.intro h1 span{color:white}.intro p{font-size:12px;color:#d0dfe9}.steps{font-size:11px;gap:6px;margin:11px 0 13px}.steps li{padding:5px 8px;border:1px solid #3a5668;border-radius:25px;gap:5px;background:#1d3444;white-space:nowrap}.steps b{width:20px;height:20px;border-color:#6e8b9f}.steps .active{background:#60edc8;color:#072f29;border-color:#60edc8;font-weight:700}.steps .active b{background:#076f5e;border-color:#076f5e;color:white}.packages{grid-template-columns:1fr 1fr;gap:9px;margin:0 0 12px}.package{display:grid;grid-template-columns:31px 1fr;grid-template-rows:auto auto auto;align-items:center;column-gap:5px;padding:10px 12px;border:2px solid transparent;border-radius:14px;color:white;background:linear-gradient(110deg,#9529ed,#0866f9);box-shadow:none;transition:none;min-height:83px}.package:nth-child(2){background:linear-gradient(110deg,#27ca3c,#00a9b2)}.package:nth-child(3){background:linear-gradient(110deg,#ff9a1d,#ef3e68)}.package:nth-child(4){background:linear-gradient(110deg,#e92b9a,#7831df)}.package:has(input:checked){border-color:#6affd6;background:linear-gradient(110deg,#9529ed,#0866f9);box-shadow:0 0 0 1px #6affd6}.package:nth-child(2):has(input:checked){background:linear-gradient(110deg,#27ca3c,#00a9b2)}.package:nth-child(3):has(input:checked){background:linear-gradient(110deg,#ff9a1d,#ef3e68)}.package:nth-child(4):has(input:checked){background:linear-gradient(110deg,#e92b9a,#7831df)}.selection{top:4px;right:6px;color:#8bffe1;font-size:13px}.package-signal{grid-row:1/4;grid-column:1;margin:0;width:29px;height:26px;filter:brightness(0) invert(1)}.package strong{font-size:20px;letter-spacing:-.5px;line-height:1.15;white-space:nowrap}.price{background:none;border-radius:0;padding:0;font-size:20px;margin:2px 0 0;line-height:1.2;white-space:nowrap}.package small{font-size:9px;color:#f3fcff;margin-top:3px}.package.empty{opacity:.45}.panel{background:#172b36;color:#f6fafc;border:1px solid #3b5768;box-shadow:none;padding:20px;border-radius:17px;margin-bottom:16px}.panel .eyebrow{color:#50e0c0}.summary{padding:13px;max-width:none}.section-head{border:0;padding:0;margin-bottom:6px}.section-head h2{font-size:18px}.section-head .cart{display:none}.customer-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.customer-fields label{margin:5px 0!important;font-size:12px!important}.optional{font-size:10px;font-weight:400;color:#b2c6d3}.contact-note{font-size:10px!important;color:#b7cad6;margin:3px 0 9px!important}.summary dl{display:grid;grid-template-columns:1fr 1fr;margin:7px 0 10px;padding-top:9px;border-top:1px solid #3a5668}.summary dl div{display:block;border:0;padding:0 8px}.summary dt{font-size:11px;color:#b7cad6}.summary dd{font-size:18px;color:#fff;margin:2px 0 0}.summary dl div+div{border-left:1px solid #3a5668}.method{background:#203946;border:1px solid #3a5668;padding:8px 10px;margin:0 0 10px;border-radius:9px;gap:8px}.method strong{font-size:14px}.method small,.method-note{color:#b7cad6}.method small{font-size:9px}.scan{font-size:17px}.method-note{font-size:10px}button,.button{background:linear-gradient(110deg,#008aff,#0754f0);color:white;box-shadow:none;border:1px solid #238bff;padding:12px 14px;font-size:13px;border-radius:10px}.note{color:#d4e6ed;font-size:11px!important;margin:10px 0 0}.muted{color:#a5bdcc}.summary>.muted{font-size:9px!important;margin:8px 0 0}.secondary{background:#203b4b;color:white;border-color:#416577}.panel input:not([type=radio]):not([type=checkbox]),select,textarea{background:#294353;color:#f5fbff;border-color:#56778b;margin-top:5px;padding:10px 11px;min-height:41px}.panel input::placeholder,textarea::placeholder{color:#c2d1dc}.customer-fields input{font-size:14px}.alert{background:#503e1e;color:#fff0cc;border:1px solid #a5863a;padding:10px 13px;font-size:12px;margin-bottom:12px}.success{background:#104c3c;color:#bdffe8;border-color:#218b6c}.sandbox{font-size:10px;padding:6px;margin:9px 0}.section-head,.summary dl div,th,td{border-color:#3a5363}footer{max-width:480px;margin:auto;padding:1px 14px 15px;font-size:12px;color:#d7e6ee;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}footer>a{display:flex;align-items:center;justify-content:center;min-height:40px;border:1px solid #25cdb0;border-radius:10px;padding:8px 14px;flex:1;text-decoration:none;white-space:nowrap}footer>span{display:none}footer p{width:100%;font-size:9px;color:#90aabc;margin:7px 0 0}.stats strong{color:#4ce7c2}.badge{background:#234757;color:#c9fff2}.voucher-result{background:#113f3b;border-color:#31cbb1}.voucher-result small,.receipt small,.receipt p{color:#b5cbd9}.receipt{border-color:#3a5363}.edit-voucher{background:#203e4b;border-color:#446778}.purge-box{background:#472c36;border-color:#915367}.purge-box h3{color:#ffc6cf}.danger{background:#5c2938;color:#ffe5eb;border-color:#a3546e}.stock-filters button{align-self:end}.panel a:focus-visible,button:focus-visible,input:focus-visible,.brand a:focus-visible{outline:2px solid #71ffe0;outline-offset:3px}
@media(max-width:650px){main{padding:17px 14px 0}.brand{padding:6px 10px}.shop-logo{width:146px;height:79px}.shop-provider{width:123px;height:28px}.page-shop main{padding-top:10px}.package{padding:9px 8px;column-gap:4px}.package strong{font-size:18px}.price{font-size:18px}.steps{font-size:10px;gap:4px}.steps li{padding:4px 7px}.panel{padding:16px}.summary{padding:12px}.narrow h1{font-size:25px}.stats{margin-top:16px}.admin-title h1{font-size:25px}.summary dt{font-size:11px}.summary dd{font-size:18px}}
@media(max-width:350px){.customer-fields{grid-template-columns:1fr;gap:0}.intro h1{font-size:23px}.intro p{font-size:11px}.steps{font-size:9px}.steps li{padding:4px 6px}.package{grid-template-columns:24px 1fr}.package-signal{width:23px}.package strong,.price{font-size:16px}.optional{font-size:9px}.shop-logo{width:138px;height:75px}}
