/* Keep navigation and modal controls usable on short and narrow screens. */
.header-actions{flex-shrink:0}.header-actions .btn,.menu-toggle{white-space:nowrap;flex-shrink:0;min-height:44px}.menu-toggle{justify-content:center;min-width:48px}
.menu-panel{max-height:calc(100dvh - 98px);overflow-y:auto;overscroll-behavior:contain}.menu-open{overflow:hidden}.menu-open .floating{visibility:hidden}
.activation-dialog[open]{display:flex;flex-direction:column;max-height:calc(100dvh - 24px);overflow:hidden}.dialog-top{flex-shrink:0}.dialog-close{min-width:44px;min-height:44px}.dialog-body{overflow-y:auto;overscroll-behavior:contain;min-height:0;scrollbar-gutter:stable}.dialog-footer{flex-shrink:0;padding:0 28px 20px;background:#fff;border-top:1px solid var(--line)}.dialog-footer .dialog-actions{margin-top:16px}.dialog-footer .btn{min-height:48px}.dialog-footer .fine{text-align:center;font-size:10px;margin:10px 0 0}.dialog-footer .back-step{min-height:40px;margin-top:4px}.dialog-footer .notice{margin-top:12px;padding:12px 16px;font-size:12px}.dialog-footer .notice p{margin:0 0 8px}.dialog-footer .notice .btn{padding:10px 16px;min-height:44px}.dialog-body .cert-grid{margin-bottom:0}.dialog-body .notice{margin-bottom:4px}.modal-usims>div{min-width:0}.modal-usims img{height:150px}.activation-dialog .dialog-body h2{overflow-wrap:normal;word-break:keep-all}.menu-grid a,.menu-grid>button{min-height:48px}
@media(max-width:760px){.menu-panel{max-height:calc(100dvh - 88px)}.dialog-footer{padding:0 22px 16px}.usim-card>img{height:auto;max-height:320px;aspect-ratio:1;object-fit:contain}.floating{bottom:calc(15px + env(safe-area-inset-bottom));right:15px}.site-footer{padding-bottom:calc(100px + env(safe-area-inset-bottom))}}
@media(max-width:480px){.header-row{gap:6px;width:calc(100% - 24px)}.header-actions{gap:6px}.header-actions .btn{font-size:11px;padding:10px 11px}.menu-toggle{padding:10px;font-size:12px}.brand{font-size:20px;letter-spacing:-1.4px}.brand span{font-size:16px}.menu-panel{max-height:calc(100dvh - 80px)}.menu-grid{gap:0 16px}.menu-grid a,.menu-grid>button{font-size:13px;padding:14px 0}.activation-dialog{width:calc(100% - 16px);border-radius:18px}.dialog-top{padding:8px 12px}.dialog-body{padding:18px 16px}.dialog-footer{padding:0 16px max(12px,env(safe-area-inset-bottom))}.dialog-footer .btn{font-size:12px;padding:12px 9px}.dialog-footer .dialog-actions{margin-top:12px}.dialog-body h2{font-size:23px}.dialog-body .progress{margin-bottom:20px}.cert-grid{padding:12px;gap:8px}.cert{font-size:12px}.modal-usims{gap:10px;margin-top:18px}.modal-usims>div{padding:12px 8px}.modal-usims img{height:135px;margin-bottom:10px}.modal-usims strong{font-size:13px}.modal-usims small{font-size:11px}.dialog-body .notice{padding:13px;font-size:12px}.floating a{min-height:44px}.usim-card>img{max-height:300px;margin:24px 0}.home-usim img{height:170px}}
@media(max-width:350px){.brand{font-size:18px;letter-spacing:-1.3px}.brand span{font-size:14px;margin-left:3px}.header-actions .btn{padding-inline:9px;font-size:10px}.menu-toggle{padding-inline:9px;font-size:11px;min-width:44px}.dialog-footer .dialog-actions{grid-template-columns:1fr;gap:7px}.dialog-footer .btn{min-height:44px;padding:11px 9px}.dialog-footer .fine{font-size:9px}.dialog-footer .back-step{min-height:36px;font-size:11px}.modal-usims{grid-template-columns:1fr}.modal-usims>div{display:grid;grid-template-columns:105px minmax(0,1fr);grid-template-rows:1fr 1fr;align-items:center;text-align:left;gap:0 12px;padding:10px}.modal-usims img{grid-row:1/3;width:105px;height:105px;margin:0}.modal-usims small{align-self:end}.modal-usims strong{align-self:start;font-size:12px}.dialog-body h2{font-size:22px}.cert{font-size:11px}}
@media(max-height:450px){.menu-grid{padding-block:8px}.menu-grid a,.menu-grid>button{padding-block:12px}.activation-dialog[open]{max-height:calc(100dvh - 12px)}.dialog-top{padding:4px 14px}.dialog-body{padding:14px 20px}.dialog-footer{padding-bottom:8px}.dialog-footer .dialog-actions{margin-top:8px}.dialog-footer .fine{display:none}.dialog-footer .back-step{margin-top:0;min-height:32px}.dialog-footer .notice{max-height:95px;overflow:auto}.modal-usims img{height:110px}}
