.account-panel{max-width:980px;margin:20px auto;padding:32px}.account-panel h2{font-size:18px;margin:30px 0 14px}.account-panel h1{font-size:25px}.account-panel form{display:grid;gap:12px;margin:16px 0;max-width:650px}.account-panel input,.account-panel select,.account-panel textarea,.auth-page select,.school-picker select{background:var(--panel,var(--bg));color:var(--text);border:1px solid var(--line,#d8dce6);border-radius:10px;padding:12px;font:inherit}.account-panel textarea{min-height:110px;resize:vertical}.account-panel [role=status],#authFeedback{color:#6095f6;font-size:13px}.entitlement{display:flex;flex-wrap:wrap;gap:16px;padding:20px;border:1px solid var(--line,#dadde7);border-radius:12px;margin:12px 0}.entitlement form{width:100%}.ledger p{display:flex;gap:20px;flex-wrap:wrap;padding:12px;border-bottom:1px solid var(--line,#dadde7)}.platform-modal{max-width:720px;width:calc(100% - 32px);max-height:85vh;overflow:auto;padding:32px}.protected-copy,.policy-copy{line-height:1.85;white-space:normal;overflow-wrap:anywhere}.school-picker{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:20px 0}.school-picker span{font-size:12px;opacity:.75}.platform-modal button{margin:8px 4px 8px 0}.account-panel button:disabled{opacity:.5}.auth-page select{width:100%;margin:8px 0}.account-panel .stat-grid{margin-top:24px}@media(max-width:760px){.account-panel{padding:20px}.ledger p{gap:8px}.platform-modal{padding:24px}.entitlement{display:grid}}

.personal-center{max-width:1180px;margin:12px auto 40px}.personal-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.personal-heading h1{font-size:28px;margin:8px 0}.personal-heading p{font-size:13px;margin:0}.personal-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:24px;margin-bottom:20px}.personal-stats>div{padding:0 24px;border-right:1px solid var(--line)}.personal-stats>div:last-child{border:0}.personal-stats small{display:block;color:var(--muted);font-size:12px}.personal-stats strong{display:block;font-size:26px;margin-top:7px}.personal-stats em{font-size:10px;font-weight:400;font-style:normal;color:var(--muted);margin-left:8px}.member-pass{position:relative;overflow:hidden;padding:28px 32px;background:radial-gradient(ellipse at 100% 0%,#7263eb55,transparent 60%),linear-gradient(115deg,#172c36,#24223d);border:1px solid #7263eb55;border-radius:20px;color:#6095f6;margin-bottom:20px}.member-pass h2{font-size:25px;margin:20px 0 10px}.member-pass p{font-size:13px;color:#b9bdd2}.pass-status{float:right;font-size:11px;color:#76e3d9;border:1px solid #76e3d940;border-radius:20px;padding:5px 10px}.pass-benefits{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.pass-benefits a,.pass-benefits button{color:#6095f6;border:1px solid #8d7df84d;background:#7263eb18;border-radius:8px;padding:9px 13px;text-decoration:none;font:inherit;font-size:12px;cursor:pointer}.personal-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.personal-box{padding:24px;margin-bottom:20px;min-width:0}.personal-box h2{font-size:17px;margin:0 0 18px}.account-info{margin:0}.account-info>div{display:flex;justify-content:space-between;gap:15px;padding:17px 0;border-bottom:1px solid var(--line);font-size:13px}.account-info dt{color:var(--muted)}.account-info dd{margin:0;overflow-wrap:anywhere}.account-status{color:#43bdb5}.account-logout{display:block;margin:22px auto 0;border:0;background:none;color:var(--muted);cursor:pointer;font:inherit;font-size:13px}.account-shortcuts{display:grid;gap:9px}.account-shortcuts>a,.account-shortcuts>button{display:flex;align-items:center;justify-content:space-between;text-align:left;padding:13px 16px;background:var(--bg);border:1px solid var(--line);border-radius:11px;color:var(--text);text-decoration:none;font:inherit;font-size:13px;cursor:pointer}.account-shortcuts small{display:block;margin-top:4px;color:var(--muted);font-size:11px}.account-shortcuts b{color:#6095f6;font-size:22px}.account-shortcuts>a:hover,.account-shortcuts>button:hover{border-color:var(--accent)}.invite-section .row{gap:16px;flex-wrap:wrap}.invite-section .row p{font-size:12px}.invite-link{display:flex;gap:12px;margin:20px 0}.invite-link input{flex:1;min-width:0}.invite-rules{display:grid;grid-template-columns:1fr 1.4fr;gap:16px}.invite-rules>div{border:1px solid var(--line);border-radius:12px;padding:18px;background:var(--bg)}.invite-rules h3,.invite-records h3{font-size:13px;color:var(--muted);margin:0 0 10px}.invite-rules strong{font-size:22px;color:#6095f6}.invite-rules p{color:var(--muted);font-size:12px;line-height:1.8}.reward-tiers{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:11px}.reward-tiers span{background:var(--soft);padding:9px;border-radius:7px}.invite-records{margin-top:20px;padding-top:20px;border-top:1px solid var(--line);font-size:12px}.invite-records>div{display:flex;justify-content:space-between;padding:10px 0}.personal-box summary{font-size:14px;cursor:pointer}.account-dialog-form{display:grid;gap:12px;margin-top:20px}.account-dialog-form label{font-size:13px}.account-dialog-form input,.account-dialog-form textarea,.account-dialog-form select,.invite-link input{padding:13px;border-radius:9px;border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit;font-size:13px;width:100%;box-sizing:border-box}.account-dialog-form textarea{min-height:120px;resize:vertical}.account-dialog-form [role=status]{font-size:13px;color:#6095f6}.account-text-link{border:0;background:none;color:#6095f6;font:inherit;font-size:12px;cursor:pointer}.support-contact{text-align:center}.support-contact img{width:260px;max-width:100%;height:auto;background:white;padding:12px;border-radius:16px;margin:12px 0}.support-contact p{font-size:13px;line-height:1.8}@media(max-width:760px){.personal-columns,.invite-rules{grid-template-columns:1fr}.personal-stats{padding:16px 8px}.personal-stats>div{padding:0 10px}.personal-stats strong{font-size:21px}.personal-stats em{display:block;margin:4px 0}.member-pass{padding:24px}.personal-box{padding:18px}.personal-heading h1{font-size:24px}.invite-link{flex-wrap:wrap}.invite-link input{flex-basis:100%}}

.resource-detail-modal{max-width:1320px;width:calc(100% - 48px);padding:0;overflow:hidden;max-height:90vh}.detail-accessible-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.resource-detail-layout{display:grid;grid-template-columns:1.15fr 1fr;height:min(780px,88vh)}.resource-detail-preview{position:relative;display:flex;align-items:center;justify-content:center;padding:34px 28px 100px;background:var(--bg);border-right:1px solid var(--line);min-width:0}.resource-detail-preview>img{display:block;width:100%;height:auto;max-height:100%;object-fit:contain;border-radius:14px}.detail-preview-label{position:absolute;left:28px;top:28px;font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:5px 8px}.detail-preview-note{position:absolute;bottom:32px;left:28px;right:28px;text-align:center;padding:17px 14px;border-radius:14px;background:var(--panel);border:1px solid var(--line);color:var(--muted);font-size:12px}.resource-detail-info{display:flex;flex-direction:column;min-height:0;padding:32px;min-width:0}.resource-detail-info>header{padding-right:26px}.detail-tags{display:flex;gap:8px;flex-wrap:wrap}.detail-tags span{padding:5px 9px;font-size:11px;border-radius:6px;background:#7263eb20;color:#6095f6}.detail-tags span.is-free{color:#38bdb3;background:#38bdb318}.resource-detail-info h2{font-size:22px;line-height:1.45;margin:16px 0 8px}.detail-meta{font-size:12px;color:var(--muted);margin:0 0 22px}.resource-detail-copy{overflow-y:auto;flex:1;min-height:0;padding-right:12px;scrollbar-width:thin}.resource-detail-copy h3{font-size:17px;line-height:1.6;margin:0 0 14px}.resource-detail-copy h4{font-size:14px;margin:23px 0 8px}.resource-detail-copy p{font-size:13px;line-height:1.9;color:var(--muted);margin:8px 0}.detail-text-action{background:none;border:0;color:#6095f6;font:inherit;font-size:12px;cursor:pointer;padding:0}.resource-detail-footer{border-top:1px solid var(--line);margin-top:22px;padding-top:12px}.resource-detail-footer>p{font-size:11px;color:var(--muted);line-height:1.6;margin:0 0 8px}.detail-action-row{display:flex;gap:12px}.resource-detail-modal .detail-action-row button{margin:0}.detail-download{flex:1}.resource-detail-footer [role=status]{color:#6095f6;margin:8px 0 0}.resource-detail-modal .close{z-index:2;top:16px;right:16px}.detail-download:disabled{opacity:.45;cursor:not-allowed}@media(max-width:760px){.resource-detail-modal{width:calc(100% - 20px);overflow:auto}.resource-detail-layout{display:flex;flex-direction:column;height:auto}.resource-detail-preview{padding:48px 20px 74px;border-right:0;border-bottom:1px solid var(--line)}.resource-detail-preview>img{max-height:230px}.detail-preview-note{bottom:16px;left:20px;right:20px;padding:10px}.detail-preview-label{top:18px;left:20px}.resource-detail-info{padding:24px 20px}.resource-detail-copy{max-height:280px}.resource-detail-info h2{font-size:19px}}
.detail-download{display:inline-flex;align-items:center;justify-content:center;gap:10px}.detail-download svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.resource-detail-preview>img.selected-svg-preview{background:white;width:100%;min-height:300px;object-fit:contain}

/* Live resource count and request entry replace the old breadcrumb. */
.resource-nav{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;min-width:220px;line-height:1.2}
.resource-total{padding:3px 10px;border-radius:999px;background:var(--soft);color:var(--text);font-size:11px;white-space:nowrap}
.resource-total b{font-size:13px;color:#6095f6}
.resource-suggest-link{padding:2px 0;border:0;background:transparent;color:#6095f6;font:inherit;font-size:10px;cursor:pointer;text-align:left}
.resource-suggest-link:hover{text-decoration:underline}
@media(max-width:980px){.resource-nav{min-width:0}.resource-total{font-size:10px}.resource-suggest-link{font-size:9px}}
@media(max-width:760px){.resource-nav{display:none}}

/* Resource suggestion dialog. */
.suggestion-overlay{z-index:20}
.suggestion-modal{width:min(540px,100%);max-height:min(92vh,850px);padding:25px 27px;background:var(--panel);color:var(--text)}
.suggestion-modal>h2{font-size:20px;margin:0 0 22px;padding-right:34px}
.suggestion-form{display:grid;gap:17px;font-size:13px}
.suggestion-field{min-width:0;margin:0;padding:0;border:0}
.suggestion-label{display:block;margin:0 0 8px;color:var(--text);font-weight:650}
.suggestion-field>small{display:block;margin-top:7px;color:var(--muted);font-size:11px}
.suggestion-segment{display:inline-flex;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--bg)}
.suggestion-segment label{cursor:pointer}
.suggestion-segment input{position:absolute;opacity:0}
.suggestion-segment span{display:block;padding:8px 14px;border-radius:10px;color:var(--muted)}
.suggestion-segment input:checked+span{background:var(--accent);color:#fff}
.suggestion-subjects{display:flex;flex-wrap:wrap;gap:13px}
.suggestion-subjects label{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;cursor:pointer}
.suggestion-subjects input,.suggestion-urgent-toggle input{accent-color:var(--accent)}
.suggestion-form textarea{display:block;width:100%;min-height:115px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--text);font:inherit;resize:vertical}
.suggestion-length{text-align:right}
.suggestion-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80px;padding:12px;border:1px dashed var(--line);border-radius:13px;background:var(--bg);text-align:center;cursor:pointer}
.suggestion-upload strong{font-weight:500}
.suggestion-upload small{margin-top:4px;color:var(--muted)}
.suggestion-urgent{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:13px}
.suggestion-urgent b{font-weight:650}
.suggestion-urgent span{margin-left:8px;color:var(--muted);font-size:11px}
.suggestion-urgent small{display:block;color:var(--muted);font-size:11px}
.suggestion-urgent-toggle{display:flex;align-items:center;gap:4px;white-space:nowrap;cursor:pointer}
.suggestion-urgent-toggle input:disabled+span{opacity:.45}
.suggestion-guidance{margin:0;color:var(--muted);font-size:11px}
.suggestion-actions{display:flex;justify-content:flex-end;gap:10px}
.suggestion-actions .button{min-width:84px}
.suggestion-form [role=status]{min-height:16px;margin:0;color:#6095f6;font-size:12px}
.suggestion-login{margin:0;padding:9px 11px;border-radius:9px;background:var(--soft)}
.suggestion-login a,.suggestion-form [role=status] a{color:#6095f6;font-weight:700}
.suggestion-success{text-align:center;padding:24px 5px}
.suggestion-success h3{margin:0 0 8px}
@media(max-width:600px){.suggestion-modal{padding:22px 18px}.suggestion-form{gap:14px}.suggestion-subjects{gap:8px 12px}}
@media(max-width:760px){.resource-nav{display:flex;min-width:124px}.resource-total{padding:2px 6px;font-size:9px}.resource-total b{font-size:10px}.resource-suggest-link{font-size:9px}.topbar .search{display:none}}
/* Keep resource total and request action on one row. */
.resource-nav{flex-direction:row;align-items:center;gap:13px;white-space:nowrap;min-width:0}
.resource-suggest-link{font-size:11px;white-space:nowrap}
@media(max-width:1250px){.topbar .search{display:none}}
@media(max-width:980px){.resource-nav{gap:8px}.resource-suggest-link{font-size:10px}}
@media(max-width:600px){.topbar{height:74px}.resource-nav{position:absolute;left:14px;right:14px;bottom:7px;gap:8px}.resource-total{font-size:9px}.resource-suggest-link{font-size:9px}.top-actions{margin-left:auto}}
/* Restore the offer copy after membership.css hides it at mid-size widths. */
.promo-message>span{display:inline}
@media(max-width:520px){.promo-message>span{display:none}}
.resource-detail-overlay{z-index:30}.resource-detail-layout{height:min(780px,84vh)}.resource-detail-footer{flex-shrink:0}.resource-detail-info{overflow:auto}.resource-detail-preview>img[src="assets/logo-symbol.svg"]{max-width:240px;max-height:240px}@media(max-width:760px){.resource-detail-layout{height:auto}.resource-detail-info{overflow:visible}}
/* Header account tools */
.top-actions{gap:8px;min-width:0}.header-wallet{display:flex;align-items:center;height:34px;flex-shrink:0;border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:0 6px}.wallet-trigger{display:flex;align-items:center;gap:5px;height:30px;padding:0 8px;border:0;border-radius:15px;background:transparent;color:var(--text);font:inherit;font-size:12px;white-space:nowrap;cursor:pointer}.wallet-trigger b{font-weight:600}.wallet-trigger small{font-size:10px;color:var(--muted)}.wallet-symbol{color:#39bcc8}.wallet-divider{width:1px;height:13px;background:var(--line)}.wallet-trigger svg,.header-bell svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.wallet-trigger[aria-expanded=true],.wallet-trigger:hover{background:var(--soft);color:#6095f6}.header-bell{height:34px;width:34px;flex-shrink:0;display:grid;place-items:center;position:relative;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer}.header-bell i{position:absolute;right:5px;top:5px;width:6px;height:6px;border-radius:50%;background:#ef525f}.header-bell i[hidden]{display:none}.header-shortcut{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--line);color:var(--text);background:var(--panel);text-decoration:none;font:inherit;font-size:11px;cursor:pointer}.header-shortcut:hover{color:#6095f6;border-color:var(--accent)}.header-popover{position:fixed;z-index:25;width:310px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 120px);overflow:auto;border:1px solid var(--line);border-radius:18px;background:var(--panel);color:var(--text);box-shadow:0 16px 48px #14132f24;padding:18px}.header-popover header{display:flex;align-items:center;justify-content:space-between;gap:12px}.header-popover h3{font-size:14px;margin:0}.header-popover header button{border:0;background:none;color:var(--muted);font-size:22px;cursor:pointer}.wallet-caption{font-size:11px;line-height:1.7;color:var(--muted);margin:10px 0}.wallet-scroll{max-height:330px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.wallet-record{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px;margin:8px 0;font-size:12px;overflow-wrap:anywhere}.wallet-record>div,.wallet-pass>div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.wallet-record strong{font-weight:500}.wallet-record b{white-space:nowrap}.wallet-record time,.wallet-record small,.wallet-pass small{display:block;color:var(--muted);font-size:10px;margin-top:7px}.wallet-record p{white-space:pre-wrap;line-height:1.7}.wallet-gain{color:#149d6e}.wallet-cost{color:#e75765}.wallet-empty{padding:22px 6px;text-align:center;font-size:12px;line-height:1.8;color:var(--muted)}.wallet-pass{padding:14px;background:#7465e914;border:1px solid #7465e940;border-radius:12px;font-size:12px;margin:8px 0}.wallet-pass b{white-space:nowrap}.header-popover footer{border-top:1px solid var(--line);padding-top:12px;margin-top:12px;text-align:center}.header-popover .button{font-size:12px;padding:8px 14px}.wallet-trigger:focus-visible,.header-bell:focus-visible,.header-shortcut:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:1400px){.top-actions .search{width:150px}.resource-total,.resource-suggest-link{font-size:10px}.topbar{padding-left:20px;padding-right:20px}}
@media(max-width:1180px){.topbar{height:88px;position:sticky;align-items:flex-start;padding-top:10px}.resource-nav{position:absolute;bottom:10px;left:20px}.top-actions{margin-left:auto}.top-actions .search{width:160px}}
@media(max-width:760px){.topbar{height:112px;padding:10px 12px 32px}.top-actions{flex-wrap:wrap;justify-content:flex-end;gap:5px}.top-actions .search{order:6;width:140px;height:28px}.header-shortcut{height:30px;font-size:10px;padding:0 8px}.header-wallet{height:30px}.wallet-trigger{height:26px;padding:0 6px;font-size:11px}.wallet-trigger small{font-size:9px}.header-bell{width:30px;height:30px}.resource-nav{left:12px;bottom:8px}.header-popover{max-height:calc(100dvh - 170px)}.top-actions .auth-nav{height:30px}.wallet-scroll{max-height:260px}}

.header-bell{align-self:center;line-height:0}.header-bell svg{display:block;flex:none}
