.admin-shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:38px 0 64px}.admin-summary,.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid #cad5cf;border-radius:8px;background:#cad5cf}.admin-summary>div,.admin-summary>form,.detail-grid>div{min-width:0;padding:16px;background:#fff}.admin-summary span,.detail-grid span{display:block;margin-bottom:6px;color:#66776e;font-size:.74rem;font-weight:750}.admin-summary strong,.detail-grid strong{display:block;overflow-wrap:anywhere}.admin-summary small{display:block;margin-top:5px;color:#718178}.admin-summary form{display:flex;align-items:end;gap:8px}.admin-summary label{display:grid;gap:5px;flex:1;font-size:.78rem}.admin-section,.token-panel,.empty-panel{margin-top:16px;border:1px solid #cad5cf;border-radius:8px;padding:22px;background:#fff}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.86rem}th,td{padding:12px 10px;border-bottom:1px solid #e0e6e2;text-align:left;white-space:nowrap}th{color:#5f7067;font-size:.72rem;text-transform:uppercase}.admin-actions{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin-top:16px}.admin-actions form{display:flex;align-items:end;gap:8px}.admin-actions label{display:grid;gap:5px;font-size:.78rem}.button-link{display:inline-flex;align-items:center;min-height:44px;border-radius:6px;padding:10px 16px;background:#216b47;color:#fff;font-weight:750;text-decoration:none}.button-link.secondary,.secondary-button{border:1px solid #9eada5;background:#fff;color:#34463d}.simple-list{margin:0;padding:0;list-style:none}.simple-list li{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e1e7e3}.token-panel p{margin-bottom:0}.copy-row{display:flex;gap:8px}.copy-row input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.verify-shell{display:grid;place-items:center;min-height:100vh;padding:22px}.verify-panel{width:min(440px,100%);border:1px solid #cad5cf;border-radius:8px;padding:28px;background:#fff}.verify-panel h1{font-size:2rem}.verify-panel form{display:grid;gap:13px;margin-top:20px}.verify-panel label{display:grid;gap:6px;font-weight:700}.waiting-line{width:56px;height:6px;border-radius:99px;background:linear-gradient(90deg,#216b47 50%,#d6e1db 50%)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:14px}.calendar-day{display:grid;gap:3px;border:1px solid #d7dfda;border-radius:5px;padding:7px;background:#f8faf9;color:#74827b;font-size:.72rem}.calendar-day.available{border-color:#55a072;background:#e6f5eb;color:#205e39}.calendar-day.stale{opacity:.55}.subtle{color:#738179;font-size:.78rem}@media(max-width:760px){.admin-shell{width:min(100% - 22px,1120px);padding-top:26px}.admin-summary,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-summary form{display:block}.admin-summary form button{width:100%;margin-top:8px}.copy-row{display:grid}.calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-actions,.admin-actions form{display:grid;width:100%}.admin-actions button,.admin-actions .button-link{width:100%;justify-content:center}}@media(max-width:420px){.admin-summary,.detail-grid{grid-template-columns:1fr}.calendar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.admin-filters{display:flex;align-items:end;gap:10px;margin-top:16px;border:1px solid #cad5cf;border-radius:8px;padding:14px;background:#fff}.admin-filters label{display:grid;gap:5px;flex:1;font-size:.78rem}.admin-filters label:first-child{flex:2}.admin-filters a{min-height:44px;padding:12px 4px}.cache-note{margin:10px 2px 0;font-size:.82rem}.verify-shell{display:flex;align-items:center;justify-content:center}.verify-panel{width:100%;max-width:440px}[hidden]{display:none!important}@media(max-width:760px){.admin-filters{display:grid}}
.generated-panel{margin-top:16px;border:1px solid #79a98a;border-radius:8px;padding:22px;background:#f2faf5}.generated-panel textarea{width:100%;min-height:150px;margin-top:14px;border:1px solid #9caca3;border-radius:6px;padding:12px;resize:vertical;background:#fff;color:#18211d;font:700 .86rem/1.65 ui-monospace,SFMono-Regular,Menlo,monospace}.code-generator{display:grid;grid-template-columns:120px 200px minmax(240px,1fr) auto;align-items:end;gap:12px;margin-top:14px}.code-generator label{display:grid;gap:5px;color:#35463d;font-size:.78rem;font-weight:700}.code-cell{display:flex;align-items:center;gap:8px}.code-cell code{color:#263a30;font:700 .78rem ui-monospace,SFMono-Regular,Menlo,monospace}.code-cell button{min-height:34px;padding:5px 9px;font-size:.74rem}.code-status{display:inline-flex;border-radius:999px;padding:4px 8px;background:#e6ece8;color:#4c5c54;font-size:.72rem;font-weight:800}.code-status--unused{background:#e8f5ec;color:#25633c}.code-status--used{background:#e8edf5;color:#405b80}.code-status--expired{background:#fff2df;color:#865819}.code-status--disabled{background:#f5e7e5;color:#863e39}
@media(max-width:900px){.code-generator{grid-template-columns:repeat(2,minmax(0,1fr))}.code-generator .wide-field{grid-column:1/-1}.code-generator button{grid-column:1/-1}}@media(max-width:520px){.code-generator{grid-template-columns:1fr}.code-generator .wide-field,.code-generator button{grid-column:auto}.generated-panel .section-heading{display:grid;gap:10px}.generated-panel button{width:100%}}
.risk-banner,.confirm-panel{margin:16px 0;border:1px solid #d59c58;border-radius:8px;padding:18px 20px;background:#fff8e8;color:#65420e}.risk-banner strong{display:block;margin-bottom:5px}.risk-banner p{margin:0;color:#745a32}.confirm-panel{display:grid;gap:14px}.confirm-panel>label:not(.check-row){display:grid;gap:6px;font-size:.82rem;font-weight:750}.transfer-phase--success{border-color:#75ad87;background:#ebf8ef;color:#24613a}.transfer-phase--closed_failed,.transfer-phase--manual_review{border-color:#d28b83;background:#fff0ee;color:#883a35}.transfer-phase--otp_sent,.transfer-phase--rescue_otp_sent{border-color:#d5ad60;background:#fff7e7;color:#795314}
.transfer-shell{display:grid;place-items:center;min-height:100vh;padding:24px}.transfer-panel{width:min(720px,100%);border:1px solid #cad5cf;border-radius:8px;padding:28px;background:#fff}.transfer-panel h1{font-size:clamp(1.8rem,7vw,2.5rem)}.token-entry,.transfer-form{display:grid;gap:14px;margin-top:20px}.token-entry label,.transfer-form label:not(.check-row){display:grid;gap:6px;color:#35463d;font-size:.84rem;font-weight:700}.target-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;margin:18px 0 0;border:1px solid #cad5cf;border-radius:8px;background:#cad5cf}.target-summary div{padding:14px;background:#f8faf9}.target-summary dt{color:#66776e;font-size:.72rem;font-weight:750}.target-summary dd{margin:5px 0 0;font-weight:850}.transfer-form fieldset{margin:0;border:1px solid #cad5cf;border-radius:8px;padding:18px}.transfer-form legend{padding:0 7px;font-weight:850}.action-panel{margin-top:18px;border:1px solid #cad5cf;border-radius:8px;padding:18px;background:#f8faf9}.action-panel>p{margin-bottom:16px}.critical-warning{border:1px solid #d78f86;border-radius:7px;padding:14px;background:#fff0ee;color:#7f302c;font-weight:750;line-height:1.5}.otp-confirm-form input[inputmode=numeric]{font-size:1.25rem;letter-spacing:.12em}.transfer-failed{border-color:#d28b83}.transfer-failed h1{color:#883a35}.transfer-panel .waiting-line{margin-top:22px}
@media(max-width:680px){.transfer-shell{display:block;padding:12px}.transfer-panel{padding:20px 16px}.target-summary{grid-template-columns:1fr}.transfer-form fieldset{padding:16px 12px}.transfer-form button,.token-entry button,.action-panel button{width:100%}}
.admin-summary .cache-detail:empty{display:none}.admin-summary [data-cache-state="error"] strong,.admin-summary [data-cache-state="stalled"] strong{color:#a13f38}.admin-summary [data-cache-state="partial"] strong{color:#8a5a17}.admin-summary [data-cache-state="refreshing"] strong{color:#315f88}
.processing-state{display:flex;align-items:center;gap:14px;margin-top:22px;border:1px solid #cad5cf;border-radius:8px;padding:16px;background:#f8faf9}.processing-state[hidden]{display:none}.processing-state p{margin:3px 0 0;color:#65766d}.processing-spinner{width:28px;height:28px;flex:0 0 auto;border:3px solid #c9d8d0;border-top-color:#216b47;border-radius:50%;animation:transfer-spin .8s linear infinite}.transfer-panel button:disabled{cursor:wait;opacity:.7}@keyframes transfer-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.processing-spinner{animation:none}}
