:root{color:#172033;background:#f1f5f9;font-family:Inter,Noto Sans TC,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{color:#fff;cursor:pointer;background:#0369a1;border:0;border-radius:10px;padding:11px 16px;font-weight:700}button:disabled{cursor:wait;opacity:.55}button.secondary{color:#075985;background:#e0f2fe}button.danger{color:#991b1b;background:#fee2e2}.shell{width:min(1180px,100%);min-height:100vh;margin:auto;padding:28px}.login-shell{place-items:center;display:grid}.login-card{width:min(100%,480px)}.topbar,.section-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.section-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.topbar{margin-bottom:20px}.eyebrow{color:#0369a1;letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}h1{margin:5px 0 0;font-size:clamp(1.8rem,4vw,2.6rem)}h2{margin:0 0 18px;font-size:1.25rem}h3{margin:0 0 6px}.dashboard{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;display:grid}.card{background:#fff;border:1px solid #dbe3ed;border-radius:18px;padding:26px;box-shadow:0 10px 30px #0f172a0d}.catalog-card{grid-column:1/-1}.operational-metrics{background:linear-gradient(135deg,#f8fafc,#ecfeff)}.metric-grid{grid-template-columns:repeat(3,minmax(140px,1fr));gap:12px;display:grid}.metric-grid>div{background:#fff;border:1px solid #bae6fd;border-radius:11px;gap:5px;padding:15px;display:grid}.metric-grid span,.metric-grid small{color:#64748b}.metric-grid span{font-size:.8rem;font-weight:700}.metric-grid strong{color:#075985;font-size:1.55rem}.metric-grid small{font-size:.76rem}.tier-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.tier-form,.account-access-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:13px;gap:14px;padding:18px;display:grid}.account-search{grid-template-columns:220px minmax(0,1fr) auto auto;align-items:end;gap:12px;display:grid}.section-toggle{color:#0f172a;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:0;font-size:1.25rem;display:flex}.section-toggle span:last-child{color:#0369a1;font-size:.9rem}.user-management-content{gap:18px;margin-top:20px;display:grid}.manual-account-form{background:#f0f9ff;border:1px solid #bae6fd;border-radius:13px;grid-template-columns:repeat(5,minmax(0,1fr)) auto;align-items:end;gap:12px;padding:18px;display:grid}.manual-account-form h3,.manual-account-form p{grid-column:1/-1}.account-access-form{margin-top:16px}.effective-access{background:#e0f2fe;border-radius:9px;align-content:center;gap:5px;padding:11px 12px;display:grid}.effective-access span{color:#64748b;font-size:.78rem}.effective-access strong{color:#075985}.usage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.usage-grid>div{background:#ecfeff;border-radius:10px;gap:5px;padding:14px;display:grid}.usage-grid span,.usage-grid small{color:#64748b}.usage-grid strong{color:#0e7490;font-size:1.35rem}.account-list{gap:10px;margin:14px 0 20px;display:grid}.account-list article{border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.account-list article>div{gap:5px;display:grid}.account-list article>div:last-child{justify-items:end}.account-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.user-management-toolbar{justify-content:flex-end;display:flex}.account-table-wrap{border:1px solid #cbd5e1;border-radius:10px;width:100%;overflow-x:auto}.account-table{border-collapse:collapse;width:100%;min-width:1280px;font-size:.84rem}.account-table th{color:#fff;text-align:left;white-space:nowrap;background:#075985;padding:12px 10px}.account-table td{vertical-align:top;border-bottom:1px solid #cbd5e1;padding:11px 10px}.account-table tbody tr:last-child td{border-bottom:0}.account-detail-row td{background:#f0f9ff}.account-detail-row p{overflow-wrap:anywhere;margin:5px 0}.account-list small{color:#64748b;overflow-wrap:anywhere}.session-summary{background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;gap:10px;padding:14px;display:grid}.session-list{gap:8px;display:grid}.session-list article{background:#fff;border-radius:8px;grid-template-columns:minmax(120px,.7fr) 1fr 1fr;gap:10px;padding:10px;display:grid}.session-list span{color:#475569;font-size:.84rem}.subscription-summary{background:#f5f3ff;border:1px solid #ddd6fe;border-radius:10px;gap:10px;padding:14px;display:grid}.subscription-summary dl{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;margin:0;display:grid}.subscription-summary dl div{background:#fff;border-radius:8px;padding:10px}.subscription-summary dt{color:#64748b;font-size:.76rem;font-weight:700}.subscription-summary dd{color:#4c1d95;margin:4px 0 0;font-weight:800}.request-filters{grid-template-columns:1.2fr 1fr 1fr auto;align-items:end;gap:10px;margin:14px 0 18px;display:grid}.notification-summary{grid-template-columns:repeat(4,minmax(100px,1fr));gap:10px;margin:14px 0;display:grid}.notification-summary>div{background:#f0f9ff;border-radius:9px;gap:4px;padding:12px;display:grid}.notification-summary span{color:#64748b;font-size:.78rem;font-weight:700}.notification-summary strong{color:#075985;font-size:1.25rem}.notification-summary p{color:#64748b;grid-column:1/-1;margin:0;font-size:.82rem}.stack{gap:15px;display:grid}.invitation-results{background:#f0f9ff;border:1px solid #bae6fd;border-radius:11px;gap:8px;margin-top:18px;padding:16px;display:grid}.invitation-results p,.invitation-results ol{margin:0}.invitation-results ol{gap:10px;padding-left:24px;display:grid}.invitation-link-box{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.invitation-link-box input{color:#0369a1;min-width:0;font-weight:700}.invitation-link-box button,.invitation-open-link{white-space:nowrap}.invitation-open-link{color:#fff;background:#0369a1;border-radius:10px;padding:11px 16px;font-weight:700;text-decoration:none}.invitation-results small{color:#64748b;margin-top:3px;display:block}label{color:#334155;gap:7px;font-size:.9rem;font-weight:700;display:grid}input,select{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:9px;width:100%;padding:11px 12px}input:focus,select:focus{border-color:#0284c7;outline:3px solid #bae6fd}fieldset{border:1px solid #cbd5e1;border-radius:9px;gap:20px;margin:0;padding:12px;display:flex}legend{color:#334155;padding:0 5px;font-size:.9rem;font-weight:700}.check{flex-direction:row;align-items:center;display:flex}.check input{width:auto}.row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.muted{color:#64748b;font-size:.9rem}.notice{color:#075985;background:#e0f2fe;border-radius:10px;margin:0 0 20px;padding:12px 16px}.empty{color:#64748b;text-align:center;padding:34px 10px}.book-list{gap:10px;display:grid}.storage-guidance{color:#475569;background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;gap:5px;margin:14px 0;padding:14px 16px;font-size:.88rem;display:grid}.storage-guidance strong{color:#075985}.book-list>article{border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:grid}.book-list p{color:#64748b;margin:4px 0 0;font-size:.88rem}.book-actions{justify-items:end;gap:9px;min-width:210px;display:grid}.pdf-drop-zone{text-align:center;background:#f0f9ff;border:2px dashed #7dd3fc;border-radius:11px;gap:7px;width:210px;padding:10px;transition:border-color .15s,background .15s;display:grid}.pdf-drop-zone>span{color:#475569;font-size:.76rem;font-weight:700}.pdf-drop-zone.dragging{background:#dff4ff;border-color:#0284c7}.pdf-drop-zone.disabled{cursor:wait;opacity:.55}.pdf-upload-button{color:#fff;cursor:pointer;background:#0369a1;border-radius:9px;justify-content:center;align-items:center;padding:9px 13px;display:inline-flex}.pdf-upload-button:has(input:disabled){cursor:wait;opacity:.55}.pdf-upload-button input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.upload-status{color:#475569;gap:5px;width:210px;font-size:.78rem;font-weight:700;display:grid}.upload-status progress{accent-color:#0284c7;width:100%}.upload-status.done{color:#166534}.upload-status.error{color:#991b1b}.pdf-version-list{border-top:1px solid #e2e8f0;grid-column:1/-1;gap:8px;width:100%;padding-top:12px;display:grid}.pdf-version-list article{color:#475569;background:#f8fafc;border-radius:9px;grid-template-columns:minmax(160px,1fr) auto auto minmax(100px,auto);align-items:center;gap:12px;padding:10px 12px;font-size:.82rem;display:grid}.pdf-version-list article div{align-items:center;gap:8px;display:flex}.pdf-version-list code{text-overflow:ellipsis;overflow:hidden}.request-list{gap:14px;display:grid}.request-list>article{border:1px solid #e2e8f0;border-radius:14px;gap:16px;padding:18px;display:grid}.request-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.request-heading p{margin:4px 0 0}.request-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.request-facts div{background:#f8fafc;border-radius:9px;padding:10px 12px}.request-facts dt{color:#64748b;font-size:.75rem;font-weight:700}.request-facts dd{color:#0f172a;margin:4px 0 0;font-size:.88rem}.request-images{grid-template-columns:repeat(auto-fill,minmax(130px,180px));gap:12px;display:grid}.request-images a{color:#075985;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;text-decoration:none;overflow:hidden}.request-images img{aspect-ratio:4/3;object-fit:cover;background:#e2e8f0;width:100%;display:block}.request-images span{padding:8px 10px;font-size:.82rem;font-weight:700;display:block}.status-control{width:min(100%,260px)}.pagination{color:#475569;justify-content:center;align-items:center;gap:14px;margin-top:18px;font-size:.88rem;font-weight:700;display:flex}.account-pagination{flex-wrap:wrap}.page-numbers{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.page-numbers button{min-width:38px;padding-inline:10px}.page-numbers .current-page{color:#fff;background:#075985}.page-jump{align-items:end;gap:6px;display:flex}.page-jump label{align-items:center;gap:5px;display:flex}.page-jump input{width:78px}.account-state{border-radius:999px;padding:3px 9px;font-weight:800;display:inline-block}.account-state.enabled{color:#166534;background:#dcfce7}.account-state.disabled{color:#991b1b;background:#fee2e2}.badge{color:#475569;background:#e2e8f0;border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:800}.badge.active{color:#166534;background:#dcfce7}.badge.request-purchasing,.badge.request-preparing{color:#92400e;background:#fef3c7}.badge.request-available{color:#166534;background:#dcfce7}.badge.request-unavailable{color:#991b1b;background:#fee2e2}@media (width<=760px){.shell{padding:18px}.dashboard{grid-template-columns:1fr}.catalog-card{grid-column:auto}.row,.account-search,.manual-account-form,.usage-grid,.session-list article,.request-filters,.book-list>article,.pdf-version-list article{grid-template-columns:1fr}.metric-grid,.notification-summary{grid-template-columns:repeat(2,minmax(100px,1fr))}.request-facts{grid-template-columns:1fr}.account-list article{flex-direction:column;align-items:stretch}.account-list article>div:last-child,.book-actions{justify-items:stretch}.book-actions,.upload-status{width:100%}}
