:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#123f42;background:#edf3f1;--teal: #07585c;--teal-dark: #043e42;--teal-soft: #e3f0ee;--gold: #d8a521;--gold-soft: #fff6d9;--line: #d9e4e1;--muted: #718182}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;background:#edf3f1}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{width:min(100%,620px);min-height:100vh;margin:0 auto;background:#f8faf9;box-shadow:0 0 70px #0334371f}.app-header{height:76px;padding:8px 18px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand-logo{width:180px;height:58px;object-fit:contain;object-position:left center}.support-button{width:42px;height:42px;border:0;border-radius:50%;display:grid;place-items:center;color:var(--teal);background:var(--teal-soft)}.portal{padding:18px 16px 32px}.welcome{padding:18px;display:flex;gap:13px;align-items:center;color:#fff;background:linear-gradient(130deg,var(--teal-dark),#087075);border-radius:22px;box-shadow:0 18px 38px #05585c33}.welcome-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:16px;color:#ffe28a;background:#ffffff1f}.welcome span{color:#ffffffbf;font-size:12px;font-weight:700}.welcome h1{margin:2px 0 0;font-size:24px;letter-spacing:-.04em}.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:16px 0 22px;padding:5px;border:1px solid var(--line);border-radius:15px;background:#fff}.mode-switch button{border:0;border-radius:11px;padding:11px 8px;display:flex;justify-content:center;align-items:center;gap:7px;color:var(--muted);background:transparent;font-size:13px;font-weight:800}.mode-switch button.active{color:#fff;background:var(--teal);box-shadow:0 7px 18px #07585c33}.mode-switch.three{grid-template-columns:repeat(3,1fr)}.mode-switch.three button{font-size:11px;padding-inline:4px}.app-section{margin-bottom:22px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:0 2px 12px}.section-title>div{display:flex;align-items:center;gap:9px}.section-title>div>span{width:25px;height:25px;display:grid;place-items:center;color:#fff;background:var(--gold);border-radius:50%;font-size:12px;font-weight:900}.section-title h2{margin:0;color:var(--teal-dark);font-size:18px;letter-spacing:-.02em}.section-title>small{color:var(--muted);font-size:11px}.package-scroller{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(145px,42%);gap:10px;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x mandatory;scrollbar-width:none}.package-scroller::-webkit-scrollbar{display:none}.package-card{min-height:154px;padding:16px;position:relative;display:flex;flex-direction:column;text-align:left;color:#183f41;background:#fff;border:1px solid var(--line);border-radius:19px;scroll-snap-align:start;box-shadow:0 8px 24px #053c3f0f}.package-card.selected{border:2px solid var(--gold);padding:15px;background:linear-gradient(145deg,#fffdf5,#fff)}.selected-check{position:absolute;top:10px;right:10px;width:22px;height:22px;display:none;place-items:center;border-radius:50%;color:#fff;background:var(--gold)}.package-card.selected .selected-check{display:grid}.package-time{display:flex;align-items:center;gap:5px;color:var(--teal);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.package-card>strong{margin-top:12px;font-size:17px}.package-card>b{margin-top:auto;padding-top:16px;color:var(--teal-dark);font-size:20px}.package-card>small{display:flex;gap:5px;align-items:center;margin-top:5px;color:var(--muted);font-size:11px}.app-card{padding:20px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 14px 38px #053c3f14}.selected-plan{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;margin-bottom:18px;border-radius:14px;background:#f2f7f5;border:1px solid #deebe8}.selected-plan small{display:block;color:var(--muted);font-size:10px}.selected-plan strong{display:block;margin-top:2px;font-size:13px}.selected-plan>b{color:var(--teal-dark);white-space:nowrap}.field-label{display:block;margin:15px 0 8px;color:#315657;font-size:12px;font-weight:800}.payment-methods{display:grid;grid-template-columns:1fr;gap:8px}.payment-method{min-height:62px;padding:9px 11px;display:grid;grid-template-columns:52px 1fr 25px;align-items:center;gap:10px;text-align:left;color:#214849;background:#fff;border:1px solid var(--line);border-radius:14px}.payment-method.selected{border:2px solid var(--teal);padding:8px 10px;background:#f5fbfa}.payment-method img{width:50px;height:38px;object-fit:contain;border-radius:9px}.payment-method span strong,.payment-method span small{display:block}.payment-method span strong{font-size:13px}.payment-method span small{margin-top:2px;color:var(--muted);font-size:10px}.payment-method i{width:20px;height:20px;display:grid;place-items:center;color:#fff;background:var(--teal);border-radius:50%;font-style:normal}.phone-field{height:54px;display:flex;align-items:center;border:1px solid #ccdcd8;border-radius:14px;overflow:hidden;background:#fbfdfc}.phone-field:focus-within{border-color:var(--teal);box-shadow:0 0 0 4px #07585c1a}.phone-field>span{padding:0 13px;color:var(--teal);border-right:1px solid var(--line);font-weight:800}.phone-field input{flex:1;min-width:0;height:100%;border:0;outline:0;padding:0 13px;background:transparent;font-size:16px}.primary-button,.secondary-button{width:100%;min-height:52px;border:0;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:900}.primary-button{color:#fff;background:linear-gradient(120deg,var(--teal),#087278);box-shadow:0 12px 24px #07585c38}.secondary-button{color:var(--teal);background:var(--teal-soft)}.pay-button{margin-top:18px}button:disabled{opacity:.45}.safe-note{margin:11px 0 0;display:flex;justify-content:center;align-items:center;gap:5px;color:var(--muted);font-size:10px}.voucher-entry{margin-top:8px;text-align:center}.voucher-art{width:66px;height:66px;margin:2px auto 14px;display:grid;place-items:center;color:var(--gold);background:var(--gold-soft);border-radius:21px}.voucher-entry h2{margin:0;color:var(--teal-dark)}.voucher-entry p{margin:8px auto 22px;max-width:350px;color:var(--muted);font-size:13px;line-height:1.5}.voucher-entry .field-label{text-align:left}.voucher-input{width:100%;height:56px;padding:0 15px;margin-bottom:16px;border:1px solid #ccdcd8;border-radius:14px;outline:0;text-align:center;text-transform:uppercase;letter-spacing:.08em;color:var(--teal-dark);background:#fbfdfc;font-size:16px;font-weight:900}.promo-input{width:100%;height:52px;padding:0 14px;border:1px solid #ccdcd8;border-radius:14px;outline:0;text-transform:uppercase;letter-spacing:.05em;color:var(--teal-dark);background:#fbfdfc;font-weight:800}.promo-input:focus{border-color:var(--teal);box-shadow:0 0 0 4px #07585c1a}.field-label small{color:var(--muted);font-weight:500}.voucher-input:focus{border-color:var(--teal);box-shadow:0 0 0 4px #07585c1a}.alert{margin:-8px 0 16px;padding:12px 14px;border:1px solid #fecdd3;border-radius:13px;color:#a31332;background:#fff1f2;font-size:13px}.app-footer{padding:0 16px 24px;display:flex;justify-content:center;align-items:center;gap:6px;color:#829091;font-size:10px}.spin{animation:spin 1s linear infinite}.centered-shell{display:grid;place-items:center;padding:20px}.result-card{width:100%;padding:28px 22px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:0 20px 60px #053c3f21}.result-logo{width:190px;height:75px;object-fit:contain}.result-icon{width:76px;height:76px;margin:15px auto;display:grid;place-items:center;color:#fff;background:var(--teal);border-radius:24px}.result-icon.waiting{color:var(--gold);background:var(--gold-soft)}.result-card h1{margin:10px 0 6px;color:var(--teal-dark);font-size:27px}.result-card p{color:var(--muted);line-height:1.5}.voucher-chip,.order-ref{margin:18px 0;padding:13px;border-radius:13px;color:var(--teal-dark);background:var(--teal-soft)}.voucher-chip{font-weight:900;letter-spacing:.06em}.order-ref strong{display:block;margin-top:4px}.result-card .secondary-button{margin-top:10px}.auto-note{display:block;margin:-5px 0 16px;color:var(--teal);font-weight:700}.connection-warning{margin:14px 0;padding:12px 14px;border:1px solid #f1d487;border-radius:13px;color:#76580a;background:#fff9e8;font-size:12px;line-height:1.5}.connection-warning small{display:block;margin-top:5px;color:#8d7330}.promo-card{text-align:center}.promo-card>p{color:var(--muted);font-size:13px;line-height:1.5}.promo-card .field-label{text-align:left}.promo-load{margin-top:16px}.promo-code-box{padding:18px;margin:18px 0;display:grid;gap:5px;border:1px dashed var(--gold);border-radius:17px;background:var(--gold-soft)}.promo-code-box small,.promo-code-box span{color:#7c6a36;font-size:11px}.promo-code-box strong{color:var(--teal-dark);font-size:25px;letter-spacing:.09em}.reward-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0 0 18px}.reward-steps div{padding:11px 5px;display:grid;gap:3px;color:#869492;border-radius:13px;background:#f1f5f4}.reward-steps div.done{color:#fff;background:var(--teal)}.reward-steps b{font-size:18px}.reward-steps span{font-size:10px;font-weight:800}.promo-rewards{margin-top:18px;text-align:left}.promo-rewards h3{font-size:13px}.promo-rewards div{display:flex;justify-content:space-between;padding:10px 12px;margin-top:6px;border-radius:11px;background:var(--teal-soft);font-size:12px}.promo-rewards strong{letter-spacing:.05em}.text-button{margin-top:14px;border:0;color:var(--teal);background:transparent;font-weight:800}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:560px){.portal,.welcome{padding:24px}.package-scroller{grid-auto-columns:155px}.payment-methods{grid-template-columns:repeat(3,1fr)}.payment-method{min-height:108px;grid-template-columns:1fr;justify-items:center;text-align:center;position:relative}.payment-method i{position:absolute;top:8px;right:8px}}@media(display-mode:standalone){.app-header{padding-top:max(8px,env(safe-area-inset-top));height:calc(76px + env(safe-area-inset-top))}.app-footer{padding-bottom:max(24px,env(safe-area-inset-bottom))}}
