/* Shares the authenticated dashboard/subscription tokens, icons and safe-area shell. */
.subscription-admin{gap:18px}.sa-panel{min-width:0;padding:20px;background:var(--subscription-surface);border:1px solid var(--subscription-border);border-radius:18px;color:var(--subscription-text)}
.sa-panel h3{font:700 17px/1.4 var(--body);margin:0 0 14px;color:var(--subscription-text)}.sa-panel p{font-size:13px;line-height:1.7;margin:10px 0;color:var(--subscription-muted)}
.sa-panel label{display:grid;gap:7px;font-size:13px;font-weight:600;margin:13px 0;color:var(--subscription-text)}
.sa-panel :is(input,select){box-sizing:border-box;min-width:0;width:100%;min-height:46px;padding:11px 12px;border:1px solid var(--subscription-border);border-radius:12px;background:var(--student-bg);color:var(--subscription-text);font:400 16px/1.4 var(--body)}
.sa-panel select{max-width:100%}.sa-panel :is(input,select):disabled{opacity:.65}.sa-panel .btn{margin-top:7px}.sa-panel summary{min-height:44px;cursor:pointer;display:list-item;padding:9px 0;font-size:13px;color:var(--subscription-accent);overflow-wrap:anywhere}
.sa-panel details[open]{margin:10px 0}.sa-panel code{display:block;overflow-wrap:anywhere;white-space:normal;font:12px/1.7 var(--mono);color:var(--subscription-muted)}
.sa-lookup{display:grid;grid-template-columns:minmax(0,1fr) 180px;column-gap:14px}.sa-lookup h3{grid-column:1/-1}.sa-lookup>.btn{grid-column:1/-1;justify-self:start}.sa-account-head{display:flex;gap:12px;align-items:center}.sa-account-head h3{margin:0 0 5px}.sa-account-head span{font-size:13px;color:var(--subscription-muted)}
.sa-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:17px 0}.sa-facts>div{min-width:0;padding:11px 12px;border:1px solid var(--subscription-border);border-radius:12px}.sa-facts dt{font-size:11px;color:var(--subscription-muted);margin-bottom:5px}.sa-facts dd{font-size:14px;line-height:1.6;font-weight:600;margin:0;overflow-wrap:anywhere}
.sa-plan-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sa-plan-options button{display:grid;gap:7px;text-align:left;min-height:84px;border:1px solid var(--subscription-border);border-radius:14px;padding:14px 12px;background:var(--subscription-surface);color:var(--subscription-text);font-family:var(--body)}.sa-plan-options b{font-size:16px}.sa-plan-options span{font-size:12px;line-height:1.5;color:var(--subscription-muted)}.sa-plan-options .selected{background:var(--subscription-raised);outline:2px solid var(--subscription-accent);outline-offset:1px}
.sa-panel .sa-note{font-size:12px;color:var(--subscription-muted);line-height:1.7}.sa-exceptions{border-top:1px solid var(--subscription-border);margin-top:18px;padding-top:7px}.sa-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.sa-success{border-color:var(--subscription-accent);background:linear-gradient(130deg,var(--subscription-raised),var(--subscription-surface))}.sa-success h3{color:var(--subscription-success)}.sa-success h3 .ic{margin-right:5px}
.sa-error{padding:15px 17px;border:1px solid #c68282;border-radius:14px;color:#ffdada;background:#4b1c30;font-size:14px;line-height:1.65;overflow-wrap:anywhere}.sa-history{list-style:none;display:grid;gap:12px;margin:0;padding:0}.sa-history li{display:grid;gap:4px;border-bottom:1px solid var(--subscription-border);padding-bottom:12px}.sa-history li:last-child{border-bottom:0}.sa-history b{font-size:13px}.sa-history span{font-size:12px;color:var(--subscription-muted)}
.subscription-admin a{color:var(--subscription-accent)}.subscription-admin :is(button,input,select,a,summary):focus-visible{outline:3px solid var(--subscription-accent);outline-offset:3px}.subscription-admin :is(section,[role="alert"]):focus{outline:2px solid var(--subscription-accent);outline-offset:4px}.sa-panel[tabindex]:focus-visible{border-color:var(--subscription-accent)}
html[data-theme="light"] .sa-error{background:#fff0f1;color:#7c2436;border-color:#c78a96}
@media(max-width:620px){.sa-panel{padding:17px}.sa-lookup{grid-template-columns:1fr}.sa-lookup h3,.sa-lookup>.btn{grid-column:1}.sa-plan-options{grid-template-columns:1fr}.sa-plan-options button{display:flex;align-items:center;justify-content:space-between;min-height:60px}.sa-facts{grid-template-columns:1fr;gap:9px}.sa-actions{flex-direction:column}.sa-actions .btn{width:100%}.sa-lookup>.btn{justify-self:stretch}}
@media(prefers-reduced-motion:reduce){.subscription-admin *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
