@import url("https://fonts.googleapis.com/css2?family=Source+Serif+4:opsz,wght@8..60,400;8..60,600;8..60,700&family=Inter:wght@400;500;600;700&display=swap");.paper-form-container{--ink:#171b34;--ink-muted:#5a5f7d;--ink-faint:#9497ad;--garnet:#7c2d3b;--garnet-dark:#5f2029;--brass:#a9812e;--brass-dark:#8c6a22;--rule:#e3e1da;--rule-soft:#ecebe5;--surface:#fff;--surface-sunken:#f6f5f1;--success-bg:#f2f7f0;--success-border:#c3dbb8;--success-text:#3c6b2e;--error-bg:#fbf1ef;--error-border:#e6c2bb;--error-text:#8a3226;width:100%;max-width:520px;background:var(--surface);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--ink)}@media (prefers-reduced-motion:reduce){.paper-form-container *{animation-duration:.001ms!important;transition-duration:.001ms!important}}.paper-form-modal-header{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:0 0 26px;border-bottom:2px solid var(--ink)}.paper-form-modal-header:after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:1px;background:var(--rule)}.paper-form-modal-header>div:first-child{flex:1 1;min-width:0}.paper-form-modal-eyebrow{margin-bottom:8px;font-family:Inter,sans-serif;font-size:11.5px;font-weight:700;color:var(--garnet);letter-spacing:.14em;text-transform:uppercase}.paper-form-modal-header h2{margin:0;font-family:"Source Serif 4",Georgia,serif;font-size:30px;line-height:1.2;font-weight:600;color:var(--ink);letter-spacing:-.01em}.paper-form-modal-header p{margin:9px 0 0;max-width:46ch;font-size:14.5px;line-height:1.6;color:var(--ink-muted)}.paper-form-modal-close{-moz-appearance:none!important;appearance:none!important;-webkit-appearance:none!important;flex:0 0 auto;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;border:1px solid var(--rule)!important;border-radius:50%!important;background:var(--surface)!important;color:var(--ink-muted)!important;font-family:Arial,sans-serif!important;font-size:22px!important;font-weight:400!important;line-height:1!important;cursor:pointer!important;box-shadow:none!important;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease!important}.paper-form-modal-close:hover{background:var(--surface-sunken)!important;border-color:var(--garnet)!important;color:var(--garnet)!important}.paper-form-modal-close:active{transform:scale(.93)}.paper-form-modal-close:focus-visible{outline:2px solid var(--garnet)!important;outline-offset:2px!important}.paper-form-modal-close:disabled{opacity:.5;cursor:not-allowed!important}.paper-form-modal-body{padding-top:26px}.paper-form{gap:22px}.paper-form,.paper-form-field{display:flex;flex-direction:column}.paper-form-field{gap:8px}.paper-form-label{display:flex;align-items:center;margin:0;font-size:14px;font-weight:600;line-height:1.4;letter-spacing:.01em;color:var(--ink)}.paper-form-required{display:inline-flex;align-items:center;justify-content:center;width:6px;height:6px;margin-left:6px;margin-top:-10px;border-radius:50%;background:var(--garnet);color:transparent;font-size:0}.paper-form-input,.paper-form-select,.paper-form-textarea{width:100%;box-sizing:border-box;border:1px solid var(--rule);border-radius:8px;background:var(--surface-sunken);color:var(--ink);font-family:Inter,sans-serif;font-size:14.5px;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.paper-form-input,.paper-form-select{height:52px;padding:0 15px}.paper-form-textarea{min-height:110px;padding:13px 15px;line-height:1.55;resize:vertical}.paper-form-input::placeholder,.paper-form-textarea::placeholder{color:var(--ink-faint)}.paper-form-input:hover,.paper-form-select:hover,.paper-form-textarea:hover{border-color:#c9c6ba}.paper-form-input:focus,.paper-form-select:focus,.paper-form-textarea:focus{background:var(--surface);border-color:var(--garnet);box-shadow:0 0 0 3px rgba(124,45,59,.12)}.paper-form-input:disabled,.paper-form-select:disabled,.paper-form-textarea:disabled{background:var(--rule-soft);color:var(--ink-faint);cursor:not-allowed}.paper-form-select{cursor:pointer}.paper-form-select:disabled{cursor:not-allowed}.paper-form-hint{display:block;margin-top:-2px;font-size:12.5px;line-height:1.5;color:var(--ink-faint)}.paper-upload-field{gap:10px}.paper-upload-status{display:flex;align-items:center;gap:12px;margin-top:4px;padding:12px 14px;border:1px solid var(--rule);border-radius:10px;background:var(--surface-sunken)}.paper-upload-file-icon{flex:0 0 auto;font-size:20px;line-height:1}.paper-upload-file-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.paper-upload-file-info strong{font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.paper-upload-file-info span{font-size:12px;color:var(--ink-faint)}.paper-upload-parsing{background:rgba(169,129,46,.14);color:var(--brass-dark)}.paper-upload-complete,.paper-upload-parsing{flex:0 0 auto;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.paper-upload-complete{background:rgba(60,107,46,.12);color:var(--success-text)}.paper-form-message{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:8px;font-size:13.5px;line-height:1.4}.paper-form-message-success{border:1px solid var(--success-border);background:var(--success-bg);color:var(--success-text)}.paper-form-message-error{border:1px solid var(--error-border);background:var(--error-bg);color:var(--error-text)}.paper-form-message-icon{flex:0 0 auto;font-weight:700}.paper-form-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:4px;padding-top:22px;border-top:1px solid var(--rule)}.paper-form-cancel-btn{-moz-appearance:none!important;appearance:none!important;-webkit-appearance:none!important;height:44px!important;min-width:100px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 18px!important;margin:0!important;border:1px solid var(--rule)!important;border-radius:8px!important;background:var(--surface)!important;color:var(--ink-muted)!important;font-family:Inter,sans-serif!important;font-size:14px!important;font-weight:600!important;line-height:1!important;cursor:pointer!important;box-shadow:none!important;transition:background-color .15s ease,border-color .15s ease,color .15s ease!important}.paper-form-cancel-btn:hover{background:var(--surface-sunken)!important;border-color:#c9c6ba!important;color:var(--ink)!important}.paper-form-cancel-btn:focus-visible{outline:2px solid var(--ink)!important;outline-offset:2px!important}.paper-form-cancel-btn:disabled{opacity:.55;cursor:not-allowed!important}.paper-form-submit-btn{-moz-appearance:none!important;appearance:none!important;-webkit-appearance:none!important;height:44px!important;min-width:130px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:0 20px!important;margin:0!important;border:1px solid var(--garnet)!important;border-radius:8px!important;background:var(--garnet)!important;color:#fff!important;font-family:Inter,sans-serif!important;font-size:14px!important;font-weight:600!important;letter-spacing:.01em!important;line-height:1!important;cursor:pointer!important;box-shadow:none!important;transition:background-color .15s ease,border-color .15s ease,transform .15s ease!important}.paper-form-submit-btn:hover{background:var(--garnet-dark)!important;border-color:var(--garnet-dark)!important}.paper-form-submit-btn:active{transform:translateY(1px)}.paper-form-submit-btn:focus-visible{outline:2px solid var(--garnet)!important;outline-offset:2px!important}.paper-form-submit-btn:disabled{opacity:.65;cursor:not-allowed!important}.paper-form-spinner{width:15px;height:15px;border:2px solid hsla(0,0%,100%,.4);border-top-color:#fff;border-radius:50%;animation:paper-form-spin .7s linear infinite}@keyframes paper-form-spin{to{transform:rotate(1turn)}}@media (max-width:640px){.paper-form-modal-header{gap:12px}.paper-form-modal-header h2{font-size:24px}.paper-form-modal-header p{font-size:13.5px}.paper-form-modal-close{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;font-size:20px!important}.paper-form-modal-actions{flex-direction:column-reverse;align-items:stretch}.paper-form-cancel-btn,.paper-form-submit-btn{width:100%!important}}.acm-ccs-section{position:relative;margin-top:6px;margin-bottom:4px;padding:22px;border:1px dashed #cdc2a8;border-radius:12px;background:#fbf9f3}.acm-ccs-section .section-title,.acm-ccs-section h3{margin:0 0 6px;font-family:"Source Serif 4",Georgia,serif;font-size:17px;font-weight:600;color:var(--ink)}.acm-ccs-description{margin:0 0 16px;font-size:13px;line-height:1.6;color:var(--ink-muted)}.acm-search-wrapper{position:relative;width:100%}.acm-search-input{width:100%;height:46px;padding:0 15px;border:1px solid var(--rule);border-radius:8px;background:#fff;color:var(--ink);font-family:Inter,sans-serif;font-size:13.5px;outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.acm-search-input::placeholder{color:var(--ink-faint)}.acm-search-input:hover{border-color:#c9c6ba}.acm-search-input:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(169,129,46,.14)}.acm-selected-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.acm-keyword-chip{gap:6px;padding:6px 10px;border-radius:6px;background:rgba(169,129,46,.12);border:1px solid rgba(169,129,46,.35);font-size:12.5px;font-weight:600}.acm-keyword-chip,.acm-keyword-chip button{display:inline-flex;align-items:center;color:var(--brass-dark)}.acm-keyword-chip button{justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:transparent;font-size:14px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.acm-keyword-chip button:hover{background:rgba(169,129,46,.25);color:var(--brass-dark)}.acm-search-results{margin-top:6px;max-height:220px;overflow-y:auto;border:1px solid var(--rule);border-radius:8px;background:#fff;box-shadow:0 10px 24px rgba(23,27,52,.08);z-index:20}.acm-search-result{width:100%;padding:11px 14px;border:none;border-bottom:1px solid var(--rule-soft);background:#fff;color:var(--ink-muted);text-align:left;font-family:Inter,sans-serif;font-size:13px;cursor:pointer;transition:background .15s ease,color .15s ease}.acm-search-result:last-child{border-bottom:none}.acm-search-result:hover{background:#fbf5e9;color:var(--brass-dark)}.acm-auto-map-button{width:100%;height:42px;margin-top:14px;border:1px solid var(--brass);border-radius:8px;background:var(--brass);color:#fff;font-family:Inter,sans-serif;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .2s ease,transform .15s ease,box-shadow .2s ease}.acm-auto-map-button:hover{background:var(--brass-dark);border-color:var(--brass-dark);box-shadow:0 5px 14px rgba(169,129,46,.22)}.acm-auto-map-button:active{transform:translateY(1px)}.acm-auto-map-button:focus-visible{outline:2px solid var(--brass-dark);outline-offset:2px}.acm-auto-map-button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.acm-empty-message{padding:12px 14px;border:1px dashed #cdc2a8;border-radius:8px;background:#fff;color:var(--ink-faint);font-size:12.5px;text-align:center}.acm-search-results::-webkit-scrollbar{width:6px}.acm-search-results::-webkit-scrollbar-track{background:#f9fafb}.acm-search-results::-webkit-scrollbar-thumb{background:#d8d4c6;border-radius:10px}.acm-search-results::-webkit-scrollbar-thumb:hover{background:#c2bca8}@media (max-width:640px){.acm-ccs-section{padding:16px}.acm-search-input{height:44px}.acm-auto-map-button{height:42px}}@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;0,9..40,800;1,9..40,400&family=DM+Serif+Display:ital@0;1&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{margin:0;padding:0;width:100%;min-height:100%;background:#0d1117}body{overflow-x:hidden}#__next{margin:0;padding:0}#__next,.app{min-height:100vh}.app{width:100%;display:grid;grid-template-columns:272px 1fr;background:#f0f2f7}.app-sidebar{background:#0d1117;padding:24px 16px;display:flex;flex-direction:column;justify-content:space-between;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:hidden}.sidebar-brand{padding:0 8px;margin-bottom:32px}.brand-logo{width:42px;height:42px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:"DM Serif Display",serif;box-shadow:0 4px 12px rgba(59,130,246,.4)}.brand-logo,.brand-name{font-size:20px;font-weight:800;color:#fff}.brand-name{letter-spacing:.03em}.brand-tagline{font-size:11px;color:#4b5563;margin-top:1px;letter-spacing:.04em;text-transform:uppercase}.sidebar-nav{display:grid;grid-gap:4px}.nav-item{width:100%;text-align:left;padding:11px 14px;border-radius:10px;border:none;background:transparent;color:#6b7280;font-weight:500;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:12px;transition:all .15s ease;font-family:DM Sans,sans-serif}.nav-item:hover{background:hsla(0,0%,100%,.06);color:#d1d5db}.nav-item.active{background:rgba(59,130,246,.15);color:#60a5fa;font-weight:600;border:1px solid rgba(59,130,246,.2)}.nav-icon{font-size:16px;width:18px;text-align:center}.sidebar-session{border-top:1px solid hsla(0,0%,100%,.08);padding-top:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.session-avatar{width:36px;height:36px;background:linear-gradient(135deg,#6366f1,#4f46e5);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;flex-shrink:0}.session-info{flex:1 1;min-width:0}.session-name{font-size:13px;font-weight:700;color:#e5e7eb}.session-role{font-size:11px;color:#4b5563;margin-top:1px}.logout-btn{color:#6b7280!important;border-color:hsla(0,0%,100%,.1)!important;background:transparent!important;font-size:12px!important}.logout-btn:hover{color:#ef4444!important;border-color:rgba(239,68,68,.3)!important}.app-main{min-width:0;display:flex;flex-direction:column;width:100%}.app-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:24px 36px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.header-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#3b82f6;margin-bottom:6px}.app-header h1{margin:0;font-size:32px;font-weight:800;color:#0d1117;font-family:"DM Serif Display",serif;line-height:1.1}.app-header p{margin:6px 0 0;color:#6b7280;font-size:14px}.header-badge{display:flex;align-items:center;gap:8px;background:#f0fdf4;border:1px solid #bbf7d0;padding:8px 14px;border-radius:999px;font-size:13px;font-weight:700;color:#16a34a;flex-shrink:0}.badge-dot{width:8px;height:8px;border-radius:50%;background:#16a34a;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{to{transform:rotate(1turn)}}.app-content{padding:28px 36px 48px;min-width:0}.analytics-full-bleed{width:100%;min-height:100vh;padding:0!important;margin:0!important;background:#050a17;color:#f8fafc}.app-content:has(.analytics-full-bleed){padding:0!important;background:#050a17}.app-main:has(.analytics-full-bleed) .app-header{background:#050a17;border-bottom:1px solid rgba(59,130,246,.12)}.app-main:has(.analytics-full-bleed) .app-header h1{color:#f8fafc}.app-main:has(.analytics-full-bleed) .app-header p{color:#94a3b8}.assignments-view,.matching-view,.overview-grid,.papers-view{display:grid;grid-gap:24px;gap:24px}.overview-row{grid-template-columns:3fr 2fr;grid-gap:20px}.overview-row,.overview-row-3col{display:grid;gap:20px;align-items:stretch}.overview-row-3col{grid-template-columns:2fr 1fr;grid-gap:20px}.hero-strip,.view-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.hero-strip h2,.view-toolbar h2{margin:0;font-size:26px;font-weight:800;color:#0d1117;font-family:"DM Serif Display",serif}.hero-strip p,.view-toolbar p{margin:6px 0 0;color:#6b7280;font-size:14px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#3b82f6;margin-bottom:6px}.hero-actions,.modal-actions,.toolbar-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px}.metric-card{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:22px 24px;position:relative;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease}.metric-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.07)}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:18px 18px 0 0}.metric-card.accent-blue:before{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.metric-card.accent-red:before{background:linear-gradient(90deg,#ef4444,#f87171)}.metric-card.accent-amber:before{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.metric-card.accent-green:before{background:linear-gradient(90deg,#10b981,#34d399)}.metric-label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.metric-value{font-size:40px;font-weight:800;color:#0d1117;font-family:"DM Serif Display",serif;line-height:1}.metric-hint{margin-top:8px;font-size:12px;color:#9ca3af}.clean-panel{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:24px;box-shadow:0 1px 4px rgba(0,0,0,.04)}.panel-head{margin-bottom:16px}.panel-head h3{font-size:16px;font-weight:700;color:#0d1117;margin:0}.big-pct{font-size:52px;font-weight:800;color:#0d1117;font-family:"DM Serif Display",serif;line-height:1}.progress-bar-track{height:10px;background:#f3f4f6;border-radius:999px;overflow:hidden;margin-bottom:10px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:999px;transition:width .6s ease}.progress-label{font-size:14px;color:#374151}.progress-label strong{color:#0d1117}.status-row{display:flex;gap:10px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600}.pill.success{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.pill.warning{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.pill.danger{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.badge-success{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.badge-warning{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.badge-danger{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.recent-paper-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-radius:12px;border:1px solid #f3f4f6;background:#fafafa;transition:border-color .15s;overflow:hidden}.recent-paper-row:hover{border-color:#e5e7eb;background:#f9fafb}.panel-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid #f3f4f6}.pg-info{font-size:12px;color:#9ca3af;font-weight:500}.pg-btns{display:flex;gap:6px}.pg-btn{width:30px;height:30px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#374151;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.pg-btn:hover:not(:disabled){background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.pg-btn:disabled{opacity:.35;cursor:not-allowed}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease;font-family:DM Sans,sans-serif;white-space:nowrap}.btn.full{width:100%}.btn-sm{padding:7px 14px;font-size:13px}.btn-primary{background:#2563eb;color:#fff;border:1px solid #2563eb}.btn-primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8;box-shadow:0 4px 12px rgba(37,99,235,.3)}.btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-outline{background:transparent;color:#374151;border:1px solid #e5e7eb}.btn-outline:hover{background:#f9fafb;border-color:#d1d5db}.btn-danger{background:#dc2626;color:#fff;border:1px solid #dc2626}.btn-danger:hover:not(:disabled){background:#b91c1c;box-shadow:0 4px 12px rgba(220,38,38,.25)}.btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn{width:34px;height:34px;padding:0;border-radius:8px}.selection-chip{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;padding:7px 14px;border-radius:999px;font-size:13px;font-weight:700}.search-wrap{position:relative;flex:1 1;min-width:240px;max-width:380px}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#9ca3af;font-size:18px;pointer-events:none}.search-input{width:100%;padding:10px 14px 10px 42px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;outline:none;font-size:14px;font-family:DM Sans,sans-serif;color:#0d1117;transition:border-color .15s}.search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.table-panel{padding:0;overflow:hidden}.table-scroll{width:100%;overflow-x:auto}.data-table{min-width:900px;border-collapse:collapse}.data-table th{font-size:11px;color:#6b7280;background:#fafafa;letter-spacing:.06em}.data-table td,.data-table th{border-bottom:1px solid #f3f4f6}.data-table td{padding:14px 18px;font-size:14px;color:#374151;vertical-align:top}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:#f9fafb}.col-title{font-weight:600;color:#0d1117;line-height:1.45}.muted-text{color:#9ca3af;font-size:13px}.id-chip{background:#f3f4f6;color:#6b7280;padding:3px 8px;border-radius:6px}.id-chip,.score-pill{font-size:12px;font-weight:700}.score-pill{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0;padding:4px 10px;border-radius:999px}.empty-cell{padding:48px 24px;text-align:center;color:#9ca3af;font-size:14px}.loading-cell{display:flex;flex-direction:column;align-items:center;gap:12px}.loader{width:28px;height:28px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .7s linear infinite}.table-footer{padding:14px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;color:#6b7280;font-size:13px;border-top:1px solid #f3f4f6;background:#fafafa;border-radius:0 0 18px 18px}.assignment-groups{display:grid;grid-gap:16px;gap:16px}.assignment-group{border:1px solid #e5e7eb;border-radius:16px;padding:20px;background:#fafafa;transition:border-color .15s}.assignment-group:hover{border-color:#d1d5db}.assignment-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.assignment-title{font-size:16px;font-weight:700;color:#0d1117;line-height:1.4}.assignment-sub{margin-top:4px;font-size:13px;color:#6b7280}.assignment-list{display:grid;grid-gap:8px;gap:8px}.assignment-item{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:12px 16px;cursor:pointer;transition:all .15s}.assignment-item:hover{border-color:#bfdbfe;background:#eff6ff}.assignment-item.selected{border-color:#93c5fd;background:#eff6ff}.assignment-item-left{display:flex;align-items:center;gap:12px;font-weight:600;color:#374151}.assignment-chip{font-size:11px;padding:4px 10px;color:#15803d;letter-spacing:.05em}.empty-inline{color:#9ca3af;font-size:13px;padding:8px 0}.checkbox-wrap input{position:absolute;opacity:0;width:0;height:0}.checkbox-custom{width:18px;height:18px;border-radius:5px;border:2px solid #d1d5db;transition:all .15s;flex-shrink:0}.checkbox-wrap input:checked+.checkbox-custom{background:#2563eb;border-color:#2563eb}.checkbox-wrap input:checked+.checkbox-custom:after{content:"✓";color:#fff;font-size:11px;font-weight:800;line-height:1}.login-shell{display:grid;place-items:center;background:#0d1117}.login-backdrop{background:radial-gradient(ellipse at 20% 50%,rgba(59,130,246,.12) 0,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(99,102,241,.1) 0,transparent 50%);pointer-events:none}.login-card{max-width:440px;background:#161b27;border:1px solid hsla(0,0%,100%,.08);border-radius:24px;padding:36px;box-shadow:0 32px 80px rgba(0,0,0,.5)}.login-logo{gap:14px}.logo-mark{width:50px;height:50px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:24px;font-family:"DM Serif Display",serif;box-shadow:0 8px 24px rgba(59,130,246,.35)}.logo-mark,.logo-title{font-weight:800;color:#fff}.logo-title{font-size:22px;display:block;letter-spacing:.03em}.logo-sub{font-size:12px;color:#4b5563;display:block;margin-top:2px}.login-divider{background:hsla(0,0%,100%,.06);margin:20px 0}.login-heading{font-size:26px;font-weight:800;color:#fff}.login-desc{margin-top:8px;color:#4b5563;font-size:14px}.login-form{display:grid;grid-gap:16px;margin-top:24px}.login-footer{margin-top:24px;font-size:12px;color:#374151}.field{display:grid;grid-gap:7px;gap:7px}.field label{font-size:13px;font-weight:600;color:#9ca3af}.required{color:#ef4444;margin-left:2px}.field input,.field textarea{width:100%;padding:12px 14px;border-radius:10px;border:1px solid hsla(0,0%,100%,.08);background:hsla(0,0%,100%,.04);color:#f9fafb;outline:none;font-size:14px;font-family:DM Sans,sans-serif;resize:vertical;transition:border-color .15s}.login-shell .field input::placeholder{color:#374151}.login-shell .field input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.15)}.app-main .field input,.app-main .field textarea,.modal-card .field input,.modal-card .field textarea{border-color:#e5e7eb;background:#fff;color:#0d1117}.app-main .field input:focus,.app-main .field textarea:focus,.modal-card .field input:focus,.modal-card .field textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.modal-overlay{position:fixed;inset:0;background:rgba(13,17,23,.7);display:grid;place-items:center;padding:24px;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{width:100%;max-width:560px;background:#fff;border-radius:20px;border:1px solid #e5e7eb;padding:28px;max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 32px 80px rgba(0,0,0,.2)}.modal-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:22px}.modal-head h3{margin:6px 0 0;font-size:22px;font-weight:800;color:#0d1117;font-family:"DM Serif Display",serif}.modal-head p{margin:6px 0 0;color:#6b7280;font-size:13px}.paper-form{display:grid;grid-gap:18px;gap:18px}.modal-actions{margin-top:4px;display:flex;justify-content:flex-end;gap:10px}.asgn-summary-strip{display:flex;align-items:stretch;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:20px 0;box-shadow:0 1px 4px rgba(0,0,0,.04);flex-wrap:wrap}.asgn-summary-item{display:flex;flex-direction:column;align-items:center;gap:5px;padding:0 28px;flex:1 1;min-width:100px}.asgn-summary-val{font-size:30px;font-weight:800;color:#0d1117;font-family:"DM Serif Display",serif;line-height:1}.asgn-summary-lbl{font-size:11px;color:#9ca3af;font-weight:600;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.asgn-summary-divider{width:1px;background:#f3f4f6;align-self:stretch;flex-shrink:0}.asgn-section-label{font-size:12px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.08em;padding:6px 2px 2px}.asgn-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:20px;gap:20px}.asgn-card{background:#fff;border-radius:16px;padding:20px;border:1px solid #e2e8f0;border-top:4px solid #cbd5e1;box-shadow:0 2px 8px rgba(0,0,0,.04);transition:all .2s ease;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden}.asgn-card:hover{box-shadow:0 10px 28px rgba(0,0,0,.08);transform:translateY(-3px)}.asgn-card-success{border-top-color:#10b981}.asgn-card-warning{border-top-color:#f59e0b}.asgn-card-danger{border-top-color:#ef4444}.asgn-card-empty{background:#f8fafc}.asgn-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:8px}.asgn-card-header-left{display:flex;align-items:center;gap:8px;min-width:0}.asgn-paper-id{font-size:11px;font-weight:700;color:#64748b;background:#f1f5f9;padding:2px 8px;border-radius:6px;flex-shrink:0}.asgn-slots{display:flex;gap:5px;align-items:center;flex-shrink:0}.asgn-slot-dot{width:11px;height:11px;border-radius:50%;transition:all .2s}.asgn-card-title{font-size:15px;font-weight:700;color:#0f172a;line-height:1.45;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.asgn-card-sub{font-size:12px;color:#64748b;margin-bottom:16px;font-weight:500}.asgn-reviewer-list{display:flex;flex-direction:column;gap:8px;width:100%}.asgn-reviewer-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc;cursor:pointer;transition:all .15s ease;width:100%;box-sizing:border-box;overflow:hidden}.asgn-reviewer-row:hover{border-color:#93c5fd;background:#eff6ff}.asgn-reviewer-selected{border-color:#3b82f6!important;background:#eff6ff!important;box-shadow:0 0 0 1px #3b82f6}.asgn-avatar{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;flex-shrink:0;letter-spacing:.02em}.asgn-avatar-empty{background:#e2e8f0!important;color:#94a3b8!important;font-size:16px;font-weight:400}.asgn-reviewer-name{font-size:13px;font-weight:600;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.assignment-chip{font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:999px;background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0;flex-shrink:0;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}.asgn-empty-slot{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:12px;border:1.5px dashed #cbd5e1;background:transparent;width:100%;box-sizing:border-box}.matching-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.method-picker{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:4px 14px;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .15s ease}.method-picker:hover{border-color:#94a3b8}.method-picker:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12)}.method-picker span{font-size:13px;font-weight:600;color:#475569;white-space:nowrap}.method-picker select{height:38px;border:none;background:transparent;font-size:13.5px;font-weight:600;color:#0f172a;font-family:DM Sans,sans-serif;outline:none;cursor:pointer;padding-right:8px}.matching-prerequisite{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;border-radius:14px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;margin-bottom:8px}.matching-prerequisite strong{display:block;font-size:14px;font-weight:700;margin-bottom:2px}.matching-prerequisite span{font-size:13px;color:#b45309}.checkbox-wrap{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.checkbox-wrap input[type=checkbox]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkbox-custom{width:20px;height:20px;border-radius:6px;border:2px solid #cbd5e1;background:#fff;transition:all .15s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 2px rgba(0,0,0,.05)}.checkbox-wrap:hover .checkbox-custom{border-color:#3b82f6}.checkbox-wrap input[type=checkbox]:checked~.checkbox-custom{background:#2563eb;border-color:#2563eb;box-shadow:0 2px 6px rgba(37,99,235,.3)}.checkbox-wrap input[type=checkbox]:checked~.checkbox-custom:after{content:"✓";color:#fff;font-size:13px;font-weight:800;line-height:1}.data-table{width:100%;border-collapse:separate;border-spacing:0;font-family:DM Sans,sans-serif}.data-table th{text-align:left;padding:14px 18px;font-size:11.5px;font-weight:700;color:#475569;border-bottom:2px solid #e2e8f0;background:#f8fafc;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.data-table td{padding:16px 18px;font-size:13.5px;color:#334155;border-bottom:1px solid #f1f5f9;vertical-align:middle;transition:background .15s ease}.data-table tbody tr:hover td{background:#f8fafc}.selected-row td{background:#eff6ff!important;border-bottom-color:#dbeafe!important}.btn-acm{background:#8b5cf6;color:#fff;border:1px solid #8b5cf6;font-weight:700}.btn-acm:hover{background:#7c3aed;box-shadow:0 4px 12px rgba(139,92,246,.3)}@media (max-width:1200px){.metric-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.app{grid-template-columns:1fr}.app-sidebar{height:auto;position:relative;flex-direction:row;flex-wrap:wrap;padding:16px}.sidebar-brand{margin-bottom:0}.sidebar-nav{flex-direction:row;flex-wrap:wrap}.nav-item{width:auto}.app-header{padding:18px 20px}.app-content{padding:16px 20px 32px}.overview-row{grid-template-columns:1fr}.app-content:has(.analytics-full-bleed){padding:0!important;background:#050a17}}@media (max-width:640px){.metric-grid{grid-template-columns:1fr}.app-header h1{font-size:26px}.hero-strip h2,.view-toolbar h2{font-size:22px}.asgn-card-grid{grid-template-columns:1fr}.asgn-summary-item{padding:10px 16px}}.overview-page{width:100%;min-height:100%}.overview-page .analytics-dashboard{width:100%;max-width:100%}.overview-page .analytics-header,.overview-page .analytics-panel,.overview-page .clean-panel,.overview-page .dashboard-cards,.overview-page .dashboard-header,.overview-page .metric-grid,.overview-page table{width:100%}.overview-page h1,.overview-page h2,.overview-page h3{margin-top:0}.overview-page{overflow-x:hidden}.app-content:has(.overview-page){padding:0;width:100%;max-width:none}.app-content:has(.overview-page) .overview-page{width:100%}.conference-form-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:30px;background:rgba(15,23,42,.62);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:conferenceOverlayIn .2s ease-out}.conference-form-container{width:min(1100px,100%);max-height:calc(100vh - 60px);background:#fff;border-radius:20px;overflow-y:auto;overflow-x:hidden;box-shadow:0 25px 70px rgba(15,23,42,.25),0 8px 30px rgba(15,23,42,.12);animation:conferenceModalIn .25s ease-out}.conference-modal-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:24px 30px;background:hsla(0,0%,100%,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #e5e7eb}.conference-modal-title{display:flex;align-items:center;gap:15px}.conference-modal-title h2{margin:0;font-size:23px;font-weight:750;color:#111827}.conference-modal-title p{margin:5px 0 0;font-size:13px;color:#64748b}.conference-modal-badge{width:44px;height:44px;border-radius:12px;background:#eff6ff;color:#2563eb;font-size:10px;font-weight:800;letter-spacing:.5px}.conference-modal-badge,.conference-modal-icon{display:flex;align-items:center;justify-content:center}.conference-modal-icon{width:40px;height:40px;border:none;border-radius:10px;background:#f8fafc;color:#64748b;font-size:25px;line-height:1;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}.conference-modal-icon:hover{background:#fee2e2;color:#dc2626;transform:rotate(90deg)}.conference-form{padding:28px 30px 30px}.form-section{margin-bottom:28px;padding:24px;border:1px solid #e5e7eb;border-radius:16px;background:#fff}.form-section-header{margin-bottom:20px}.form-section-header h2{margin:0;font-size:17px;font-weight:700;color:#111827}.form-section-header p{margin:5px 0 0;font-size:13px;color:#64748b}.form-actions{position:-webkit-sticky;position:sticky;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:0 -30px -30px;padding:18px 30px;background:hsla(0,0%,100%,.97);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #e5e7eb}.form-actions .btn{min-width:130px;height:44px;border-radius:10px;font-size:14px;font-weight:650;cursor:pointer}@keyframes conferenceOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes conferenceModalIn{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:768px){.conference-form-overlay{padding:10px;align-items:center}.conference-form-container{max-height:calc(100vh - 20px);border-radius:16px}.conference-modal-header{padding:18px 20px}.conference-modal-title h2{font-size:19px}.conference-form{padding:20px}.form-section{padding:18px}.form-actions{margin:0 -20px -20px;padding:15px 20px}.form-actions .btn{min-width:0;flex:1 1}}.sidebar{width:250px;height:100vh;position:fixed;left:0;top:0;background:#111827;color:#fff;display:flex;flex-direction:column;padding:22px 14px;border-right:1px solid hsla(0,0%,100%,.06);z-index:100}.sidebar-brand{padding:6px 12px 28px}.sidebar-brand-main{display:flex;align-items:center;gap:11px}.sidebar-logo{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#fff;color:#111827;font-size:16px;font-weight:800}.sidebar-brand-name{font-size:17px;font-weight:700;letter-spacing:-.02em}.sidebar-brand-subtitle{margin-top:3px;margin-left:47px;font-size:10px;font-weight:500;color:#9ca3af;letter-spacing:.02em}.sidebar-nav{gap:4px;flex:1 1}.sidebar-section-label{padding:14px 12px 8px;font-size:10px;font-weight:700;color:#6b7280;letter-spacing:.09em}.management-label{margin-top:12px}.sidebar-nav{flex-direction:column;gap:5px}.sidebar-item,.sidebar-nav{display:flex;padding:12px 14px}.sidebar-item{position:relative;width:100%;min-height:52px;align-items:center;gap:14px;border:none;border-radius:10px;background:transparent;color:#667085;font-size:16px;font-weight:500;text-align:left;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}.sidebar-item-icon{width:27px;height:27px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#7b8794;transition:color .2s ease}.sidebar-item-label{font-size:16px;font-weight:500;line-height:1.2;white-space:nowrap}.sidebar-item:hover{background:rgba(59,130,246,.06);color:#344054}.sidebar-item:hover .sidebar-item-icon{color:#475467}.sidebar-item.active{background:rgba(59,130,246,.1);color:#2563eb;font-weight:600}.sidebar-item.active .sidebar-item-icon{color:#2563eb}.sidebar-item.active:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 4px 4px 0;background:#2563eb}.sidebar-signout{width:100%;min-height:52px;border:none;outline:none;background:transparent;border-radius:11px;padding:0 15px;display:flex;align-items:center;cursor:pointer;color:#667085;font-family:inherit;transition:background-color .18s ease,color .18s ease}.sidebar-signout:hover{background:#fbeaec;color:#c0364c}.sidebar-signout:active{transform:scale(.99)}.sidebar-signout-icon{width:34px;min-width:34px;margin-right:12px;display:flex;align-items:center;justify-content:center;font-size:25px;line-height:1;color:#7b8494;transition:color .18s ease}.sidebar-signout:hover .sidebar-signout-icon{color:#c0364c}.sidebar-signout-label{font-size:15px;font-weight:600;white-space:nowrap}.dashboard-main{margin-left:270px;min-height:100vh;background:#f8f9fb}.sidebar-nav::-webkit-scrollbar{width:5px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#d6dae1;border-radius:10px}@media (max-width:900px){.sidebar{width:230px;min-width:230px}.dashboard-main{margin-left:230px}.sidebar-item-label,.sidebar-signout-label{font-size:14px}.sidebar-item-icon,.sidebar-signout-icon{font-size:22px}}.sidebar-header{height:100px;padding:0 22px;background:transparent;border-bottom:1px solid hsla(0,0%,100%,.1)}.sidebar-brand,.sidebar-header{display:flex;align-items:center}.sidebar-brand{gap:14px;width:100%}.sidebar-brand-icon{width:50px;height:50px;min-width:50px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#4f6fdc;color:#fff;font-size:24px;font-weight:800;box-shadow:0 5px 14px rgba(0,0,0,.18)}.sidebar-brand-text{display:flex;flex-direction:column;justify-content:center;gap:4px}.sidebar-brand-name{margin:0;color:#fff;font-size:24px;line-height:28px;font-weight:800;letter-spacing:-.5px}.sidebar-brand-subtitle{margin:0;color:hsla(0,0%,100%,.78);font-size:13px;line-height:17px;font-weight:600;white-space:nowrap}.bpu-container{--ink:#171b34;--ink-muted:#5a5f7d;--ink-faint:#9497ad;--garnet:#7c2d3b;--garnet-dark:#5f2029;--brass:#a9812e;--success:#3c6b2e;--success-bg:#f2f7f0;--success-border:#c3dbb8;--danger:#8a3226;--danger-bg:#fbf1ef;--danger-border:#e6c2bb;--rule:#e3e1da;--rule-soft:#ecebe5;--surface:#fff;--surface-sunken:#f6f5f1;display:flex;flex-direction:column;max-height:85vh;font-family:DM Sans,ui-sans-serif,system-ui,sans-serif;color:var(--ink)}.bpu-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:28px 32px 20px;border-bottom:1px solid var(--rule);flex-shrink:0}.bpu-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--garnet);margin-bottom:6px}.bpu-header h2{margin:0;font-family:"DM Serif Display",serif;font-size:22px;color:var(--ink)}.bpu-header p{margin:6px 0 0;font-size:13px;color:var(--ink-muted);max-width:48ch}.bpu-close{flex-shrink:0;width:34px;height:34px;border-radius:50%;border:1px solid var(--rule);background:var(--surface);color:var(--ink-muted);font-size:18px;cursor:pointer;transition:background-color .15s ease,color .15s ease}.bpu-close:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink)}.bpu-body{flex:1 1;overflow-y:auto;padding:24px 32px}.bpu-target-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin-bottom:20px}.bpu-field{display:flex;flex-direction:column;gap:6px}.bpu-label{font-size:13px;font-weight:600;color:var(--ink)}.bpu-required{color:var(--danger)}.bpu-select{height:44px;padding:0 12px;border-radius:9px;border:1px solid var(--rule);background:var(--surface-sunken);color:var(--ink);font-family:DM Sans,sans-serif;font-size:13.5px}.bpu-select:disabled{opacity:.6;cursor:not-allowed}.bpu-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:32px 20px;border:2px dashed var(--rule);border-radius:14px;background:var(--surface-sunken);cursor:pointer;text-align:center;transition:border-color .15s ease,background-color .15s ease}.bpu-dropzone:hover{border-color:var(--garnet);background:#faf1f2}.bpu-dropzone-icon{font-size:26px;margin-bottom:4px}.bpu-dropzone-text{font-size:13.5px;color:var(--ink-muted)}.bpu-dropzone-text strong{color:var(--ink)}.bpu-dropzone-hint{font-size:11.5px;color:var(--ink-faint)}.bpu-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 0 10px;font-size:12.5px;color:var(--ink-muted)}.bpu-summary-chip{padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700}.bpu-summary-success{background:var(--success-bg);color:var(--success)}.bpu-summary-danger{background:var(--danger-bg);color:var(--danger)}.bpu-progress-block{margin-top:16px;display:flex;flex-direction:column;gap:6px}.bpu-progress-label{font-size:12.5px;font-weight:600;color:var(--ink-muted)}.bpu-progress-track{height:8px;border-radius:999px;background:var(--rule-soft);overflow:hidden}.bpu-progress-fill{height:100%;border-radius:999px;background:var(--garnet);transition:width .3s ease}.bpu-file-list{display:flex;flex-direction:column;gap:8px}.bpu-file-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 14px;border-radius:10px;border:1px solid var(--rule);background:var(--surface)}.bpu-file-row-create-error,.bpu-file-row-parse-error{border-color:var(--danger-border);background:var(--danger-bg)}.bpu-file-row-created{border-color:var(--success-border);background:var(--success-bg)}.bpu-file-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.bpu-file-name{font-size:13px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bpu-title-input{width:100%;box-sizing:border-box;border:1px solid var(--rule);border-radius:7px;padding:7px 10px;font-size:13px;font-family:DM Sans,sans-serif;color:var(--ink);background:var(--surface)}.bpu-title-input:disabled{background:var(--surface-sunken);color:var(--ink-muted);cursor:not-allowed}.bpu-file-error{font-size:11.5px;color:var(--danger)}.bpu-file-actions{flex-shrink:0;display:flex;align-items:center;gap:10px}.bpu-status{font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}.bpu-status-muted{background:var(--rule-soft);color:var(--ink-faint)}.bpu-status-active{background:#faf6ec;color:var(--brass)}.bpu-status-success{background:var(--success-bg);color:var(--success)}.bpu-status-danger{background:var(--danger-bg);color:var(--danger)}.bpu-remove-btn{width:24px;height:24px;border-radius:50%;border:none;background:transparent;color:var(--ink-faint);cursor:pointer;font-size:13px;transition:background-color .15s ease,color .15s ease}.bpu-remove-btn:hover{background:var(--danger-bg);color:var(--danger)}.bpu-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 32px;border-top:1px solid var(--rule);flex-shrink:0}.bpu-footer-actions{display:flex;gap:10px}.bpu-btn{padding:10px 18px;border-radius:9px;font-weight:700;font-size:13.5px;cursor:pointer;border:1px solid transparent;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.bpu-btn:disabled{opacity:.5;cursor:not-allowed}.bpu-btn-primary{background:var(--garnet);border-color:var(--garnet);color:#fff}.bpu-btn-primary:hover:not(:disabled){background:var(--garnet-dark)}.bpu-btn-secondary{background:var(--surface);border-color:var(--rule);color:var(--ink-muted)}.bpu-btn-secondary:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink)}@media (max-width:640px){.bpu-body,.bpu-footer,.bpu-header{padding-left:18px;padding-right:18px}.bpu-target-grid{grid-template-columns:1fr}.bpu-footer{flex-direction:column-reverse;align-items:stretch}.bpu-footer-actions{flex-direction:column}}.reviewer-dashboard{width:100%;min-height:100%;padding:28px;background:linear-gradient(180deg,#f7f9fc,#f4f6fa);color:#172033;box-sizing:border-box}.reviewer-dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.reviewer-header-content{display:flex;align-items:center;gap:16px}.reviewer-header-icon{width:58px;height:58px;border-radius:17px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;font-size:28px;box-shadow:0 10px 24px rgba(37,99,235,.22)}.reviewer-eyebrow{font-size:11px;font-weight:800;letter-spacing:1.6px;color:#64748b;margin-bottom:4px}.reviewer-dashboard-header h1{margin:0;font-size:28px;line-height:1.2;font-weight:800;letter-spacing:-.5px;color:#111827}.reviewer-dashboard-header p{margin:6px 0 0;font-size:14px;color:#64748b}.dashboard-refresh-btn{display:flex;align-items:center;gap:7px;border:1px solid #dbe2ea;background:#fff;color:#334155;padding:10px 15px;border-radius:10px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease}.dashboard-refresh-btn svg{font-size:18px}.dashboard-refresh-btn:hover{border-color:#bfdbfe;color:#2563eb;background:#f8fbff}.reviewer-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:18px;gap:18px;margin-bottom:20px}.reviewer-stat-card{position:relative;overflow:hidden;min-height:175px;padding:21px;border-radius:17px;background:#fff;border:1px solid #e7ebf1;box-shadow:0 4px 18px rgba(15,23,42,.045);transition:transform .2s ease,box-shadow .2s ease}.reviewer-stat-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(15,23,42,.08)}.reviewer-stat-card:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-40px;bottom:-45px;opacity:.08}.reviewer-stat-card.blue:after{background:#2563eb}.reviewer-stat-card.green:after{background:#16a34a}.reviewer-stat-card.orange:after{background:#f59e0b}.reviewer-stat-card.purple:after{background:#7c3aed}.stat-top{justify-content:space-between}.stat-icon,.stat-top{display:flex;align-items:center}.stat-icon{width:43px;height:43px;border-radius:12px;justify-content:center;font-size:22px}.blue .stat-icon{color:#2563eb;background:#eff6ff}.green .stat-icon{color:#16a34a;background:#f0fdf4}.orange .stat-icon{color:#d97706;background:#fffbeb}.purple .stat-icon{color:#7c3aed;background:#f5f3ff}.stat-badge{display:flex;align-items:center;gap:4px;padding:5px 8px;border-radius:7px;background:#faf5ff;color:#7c3aed;font-size:10px;font-weight:800}.stat-badge svg{font-size:13px}.stat-value{margin-top:20px;font-size:30px;line-height:1;font-weight:800;color:#111827;letter-spacing:-.7px}.stat-title{margin-top:8px;font-size:14px;font-weight:750;color:#334155}.stat-subtitle{margin-top:4px;font-size:12px;color:#94a3b8}.reviewer-main-grid{display:grid;grid-template-columns:1.05fr .95fr;grid-gap:20px;gap:20px;margin-bottom:20px}.reviewer-card{background:#fff;border:1px solid #e7ebf1;border-radius:17px;box-shadow:0 4px 18px rgba(15,23,42,.045);padding:22px}.card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.card-kicker{display:block;margin-bottom:5px;font-size:10px;letter-spacing:1.4px;font-weight:800;color:#94a3b8}.card-heading h2{margin:0;color:#172033;font-size:17px;font-weight:800}.card-heading-icon{width:39px;height:39px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:20px}.card-heading-icon.blue{color:#2563eb;background:#eff6ff}.card-heading-icon.purple{color:#7c3aed;background:#f5f3ff}.card-heading-icon.green{color:#16a34a;background:#f0fdf4}.progress-content{display:flex;align-items:center;gap:40px;padding-top:27px}.progress-circle-wrapper{flex:0 0 auto}.progress-circle{--progress:0%;width:158px;height:158px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:conic-gradient(#2563eb var(--progress),#eaf0f7 var(--progress));position:relative}.progress-circle:before{content:"";position:absolute;inset:9px;border-radius:50%;background:#fff}.progress-circle-inner{position:relative;z-index:1;text-align:center}.progress-circle-inner strong{display:block;font-size:30px;line-height:1;font-weight:850;color:#172033}.progress-circle-inner span{display:block;margin-top:7px;font-size:11px;font-weight:700;color:#94a3b8}.progress-details{flex:1 1}.progress-detail-row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:1px solid #f1f5f9}.progress-detail-row:last-child{border-bottom:0}.progress-detail-row span{display:flex;align-items:center;gap:8px;font-size:13px;color:#64748b}.progress-detail-row strong{font-size:14px;color:#172033}.legend-dot{width:8px;height:8px;display:inline-block;border-radius:50%}.legend-dot.assigned{background:#2563eb}.legend-dot.submitted{background:#16a34a}.legend-dot.draft{background:#64748b}.legend-dot.pending{background:#f59e0b}.rating-content{padding-top:25px}.rating-row{display:grid;grid-template-columns:35px 1fr 30px;align-items:center;grid-gap:10px;gap:10px;margin-bottom:14px}.rating-label{display:flex;align-items:center;gap:2px;font-size:12px;font-weight:700;color:#475569}.rating-label svg{color:#f59e0b;font-size:14px}.rating-track{height:8px;border-radius:99px;background:#eef2f7;overflow:hidden}.rating-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#8b5cf6,#6366f1);transition:width .6s ease}.rating-row>strong{text-align:right;font-size:12px;color:#475569}.rating-summary{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eef2f7;margin-top:20px;padding-top:17px}.rating-summary>div:first-child{display:flex;flex-direction:column;gap:2px}.rating-summary span{font-size:11px;color:#94a3b8;font-weight:700}.rating-summary strong{font-size:23px;color:#172033}.rating-stars{display:flex;gap:2px}.rating-stars svg{font-size:20px;color:#e2e8f0}.rating-stars svg.active{color:#f59e0b}.empty-chart{height:160px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#94a3b8}.empty-chart svg{font-size:32px;color:#cbd5e1}.empty-chart p{margin:8px 0 0;font-size:12px}.status-card{margin-bottom:20px}.status-progress-wrapper{margin-top:25px}.status-progress-track{width:100%;height:14px;display:flex;overflow:hidden;border-radius:99px;background:#eef2f7}.status-progress-submitted{background:#22c55e;transition:width .6s ease}.status-progress-draft{background:#64748b;transition:width .6s ease}.status-progress-labels{display:flex;justify-content:space-between;gap:15px;margin-top:9px;font-size:11px;color:#94a3b8;font-weight:650}.status-mini-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-top:22px}.status-item{gap:12px;padding:14px;border-radius:12px;background:#f8fafc}.status-item,.status-item-icon{display:flex;align-items:center}.status-item-icon{width:38px;height:38px;border-radius:10px;justify-content:center;font-size:19px}.status-item.green .status-item-icon{color:#16a34a;background:#dcfce7}.status-item.blue .status-item-icon{color:#2563eb;background:#dbeafe}.status-item.orange .status-item-icon{color:#d97706;background:#fef3c7}.status-item.purple .status-item-icon{color:#7c3aed;background:#ede9fe}.status-item div:last-child{display:flex;flex-direction:column}.status-item strong{font-size:18px;line-height:1;color:#172033}.status-item span{margin-top:4px;font-size:11px;color:#94a3b8}.recent-card{margin-bottom:20px}.recent-review-list{margin-top:20px}.recent-review-item{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 4px;border-bottom:1px solid #eef2f7}.recent-review-item:last-child{border-bottom:0}.recent-review-left{display:flex;align-items:center;gap:13px;min-width:0}.recent-review-icon{flex:0 0 auto;width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;color:#2563eb;background:#eff6ff;font-size:20px}.recent-review-info{min-width:0}.recent-review-info h3{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:750;color:#334155}.recent-review-info span{display:block;margin-top:4px;font-size:11px;color:#94a3b8}.recent-review-right{display:flex;align-items:center;gap:10px;flex:0 0 auto}.review-status{padding:5px 9px;border-radius:7px;font-size:10px;font-weight:800}.review-status.submitted{color:#15803d;background:#dcfce7}.review-status.draft{color:#475569;background:#f1f5f9}.review-status.pending{color:#b45309;background:#fef3c7}.review-rating{display:flex;align-items:center;gap:3px;color:#475569;font-size:12px;font-weight:750}.review-rating svg{color:#f59e0b;font-size:15px}.review-arrow{color:#cbd5e1;font-size:18px}.empty-activity{padding:45px 20px;text-align:center}.empty-activity-icon{width:52px;height:52px;margin:0 auto 12px;border-radius:15px;display:flex;align-items:center;justify-content:center;color:#94a3b8;background:#f1f5f9;font-size:24px}.empty-activity h3{margin:0;font-size:14px;color:#334155}.empty-activity p{max-width:420px;margin:7px auto 0;font-size:12px;line-height:1.6;color:#94a3b8}.reviewer-insight{display:flex;align-items:center;gap:15px;padding:18px 20px;border-radius:15px;background:linear-gradient(135deg,#eff6ff,#f5f3ff);border:1px solid #dbeafe}.insight-icon{width:43px;height:43px;flex:0 0 auto;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#2563eb;background:#fff;font-size:21px;box-shadow:0 3px 10px rgba(37,99,235,.08)}.insight-content{min-width:0;flex:1 1}.insight-content span{display:block;margin-bottom:3px;font-size:9px;letter-spacing:1.2px;font-weight:850;color:#64748b}.insight-content strong{display:block;font-size:13px;line-height:1.4;color:#334155}.insight-progress{width:180px;flex:0 0 auto}.insight-progress>div:first-child{display:flex;justify-content:flex-end;margin-bottom:5px}.insight-progress>div:first-child span{font-size:11px;font-weight:800;color:#2563eb}.insight-progress-bar{height:7px;overflow:hidden;border-radius:99px;background:hsla(0,0%,100%,.9)}.insight-progress-bar span{display:block;height:100%;border-radius:inherit;background:#2563eb;transition:width .6s ease}.reviewer-error-card{max-width:520px;margin:80px auto;padding:40px;text-align:center;border-radius:18px;background:#fff;border:1px solid #e7ebf1;box-shadow:0 10px 35px rgba(15,23,42,.07)}.reviewer-error-icon{width:58px;height:58px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;border-radius:16px;color:#dc2626;background:#fef2f2;font-size:27px}.reviewer-error-card h2{margin:0;font-size:18px;color:#172033}.reviewer-error-card p{margin:8px auto 20px;max-width:400px;font-size:13px;line-height:1.6;color:#64748b}.reviewer-retry-btn{display:inline-flex;align-items:center;gap:7px;border:0;border-radius:9px;padding:10px 16px;background:#2563eb;color:#fff;font-size:12px;font-weight:750;cursor:pointer}.reviewer-retry-btn:hover{background:#1d4ed8}.skeleton{position:relative;overflow:hidden;background:#eef2f7;border-radius:8px}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.65),transparent);animation:skeleton-loading 1.4s infinite}@keyframes skeleton-loading{to{transform:translateX(100%)}}.skeleton-header{justify-content:flex-start}.skeleton-icon{width:58px;height:58px;flex:0 0 auto}.skeleton-header-text{display:flex;flex-direction:column;gap:10px}.skeleton-line.title{width:230px;height:26px}.skeleton-line.subtitle{width:340px;height:13px}.skeleton-card{min-height:175px}.skeleton-stat-icon{width:43px;height:43px}.skeleton-stat-value{width:70px;height:29px;margin-top:20px}.skeleton-stat-title{width:130px;height:14px;margin-top:10px}.skeleton-stat-subtitle{width:160px;height:11px;margin-top:7px}.skeleton-large{min-height:330px}.skeleton-heading{width:170px;height:20px}.skeleton-chart{width:100%;height:220px;margin-top:25px}@media (max-width:1200px){.reviewer-stat-grid,.status-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.reviewer-main-grid{grid-template-columns:1fr}.progress-content{gap:30px}}@media (max-width:700px){.reviewer-dashboard{padding:18px}.reviewer-dashboard-header{align-items:flex-start;flex-direction:column}.dashboard-refresh-btn{align-self:flex-start}.reviewer-dashboard-header h1{font-size:23px}.reviewer-header-icon{width:50px;height:50px;font-size:23px}.reviewer-stat-grid{grid-template-columns:1fr}.progress-content{flex-direction:column;align-items:center}.progress-details{width:100%}.status-mini-grid{grid-template-columns:1fr 1fr}.recent-review-item{align-items:flex-start}.recent-review-right{flex-direction:column;align-items:flex-end;gap:6px}.review-arrow{display:none}.reviewer-insight{align-items:flex-start;flex-wrap:wrap}.insight-progress{width:100%}.insight-progress>div:first-child{justify-content:flex-start}}@media (max-width:480px){.reviewer-dashboard{padding:14px}.reviewer-header-content{align-items:flex-start}.reviewer-dashboard-header p{line-height:1.5}.reviewer-card{padding:17px}.status-mini-grid{grid-template-columns:1fr}.status-progress-labels{flex-direction:column;gap:4px}.recent-review-item{gap:10px}.recent-review-info h3{max-width:170px}.review-status{font-size:9px}.review-rating{font-size:11px}}.login-shell{--ink:#171b34;--ink-muted:#5a5f7d;--ink-faint:#9497ad;--garnet:#7c2d3b;--garnet-dark:#5f2029;--brass:#a9812e;--rule:#e3e1da;--surface:#fff;--surface-sunken:#f6f5f1;--error-bg:#fbf1ef;--error-border:#e6c2bb;--error-text:#8a3226;position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;font-family:DM Sans,ui-sans-serif,system-ui,sans-serif;overflow:hidden}.login-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 15% 20%,rgba(124,45,59,.16),transparent 45%),radial-gradient(circle at 85% 80%,rgba(169,129,46,.14),transparent 45%),var(--ink);z-index:0}.login-card{position:relative;z-index:1;width:100%;max-width:420px;background:var(--surface);border-radius:20px;box-shadow:0 32px 64px -12px rgba(0,0,0,.45);padding:40px;box-sizing:border-box}.login-logo{gap:12px;margin-bottom:20px}.login-logo,.login-logo-mark{display:flex;align-items:center}.login-logo-mark{flex:0 0 auto;width:44px;height:44px;border-radius:10px;background:var(--surface-sunken);justify-content:center;overflow:hidden}.login-logo-mark img{width:34px;height:34px;object-fit:contain}.login-logo-text{display:flex;flex-direction:column;gap:2px;min-width:0}.login-logo-title{font-family:"DM Serif Display",serif;font-size:17px;color:var(--ink);line-height:1.2}.login-logo-sub{font-size:11px;color:var(--ink-faint);line-height:1.3}.login-divider{height:1px;background:var(--rule);margin-bottom:22px}.login-mode-switch{display:flex;gap:0;background:var(--surface-sunken);border-radius:10px;padding:4px;margin-bottom:22px}.login-mode-btn{flex:1 1;padding:9px 0;border-radius:8px;border:none;cursor:pointer;font-family:DM Sans,sans-serif;font-weight:700;font-size:13px;background:transparent;color:var(--ink-muted);transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.login-mode-btn-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px rgba(0,0,0,.1)}.login-heading{margin:0 0 6px;font-family:"DM Serif Display",serif;font-size:23px;color:var(--ink);letter-spacing:-.01em}.login-desc{margin:0 0 22px;font-size:13.5px;line-height:1.55;color:var(--ink-muted)}.login-desc strong{color:var(--ink)}.login-form{gap:16px}.login-field,.login-form{display:flex;flex-direction:column}.login-field{gap:6px}.login-field label{font-size:12.5px;font-weight:700;color:var(--ink)}.login-field input{width:100%;height:46px;padding:0 14px;border-radius:9px;border:1px solid var(--rule);background:var(--surface-sunken);color:var(--ink);font-family:DM Sans,sans-serif;font-size:14px;box-sizing:border-box;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.login-field input:hover{border-color:#c9c6ba}.login-field input:focus{background:var(--surface);border-color:var(--garnet);box-shadow:0 0 0 3px rgba(124,45,59,.12)}.login-field input:disabled{opacity:.6;cursor:not-allowed}.login-error{padding:10px 12px;border-radius:8px;background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text);font-size:13px;font-weight:600}.login-submit-btn{height:46px;border-radius:9px;border:1px solid var(--garnet);background:var(--garnet);color:#fff;font-family:DM Sans,sans-serif;font-weight:700;font-size:14px;cursor:pointer;transition:background-color .15s ease}.login-submit-btn:hover:not(:disabled){background:var(--garnet-dark)}.login-submit-btn:disabled{opacity:.6;cursor:not-allowed}.login-footer{margin:24px 0 0;text-align:center;font-size:11.5px;color:var(--ink-faint)}.otp-input-group{display:flex;justify-content:space-between;gap:8px}.otp-digit{width:100%;aspect-ratio:1;text-align:center;font-size:20px;font-weight:700;font-family:DM Sans,sans-serif;color:var(--ink);border-radius:9px;border:1px solid var(--rule);background:var(--surface-sunken);outline:none;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.otp-digit:hover{border-color:#c9c6ba}.otp-digit:focus{background:var(--surface);border-color:var(--garnet);box-shadow:0 0 0 3px rgba(124,45,59,.12)}.otp-digit:disabled{opacity:.6;cursor:not-allowed}.login-otp-actions{display:flex;align-items:center;justify-content:space-between}.login-link-btn{background:none;border:none;cursor:pointer;color:var(--ink-muted);font-size:12.5px;font-weight:600;font-family:DM Sans,sans-serif;padding:4px}.login-link-btn:hover:not(:disabled){color:var(--garnet)}.login-link-btn:disabled{opacity:.5;cursor:not-allowed}.login-forgot-link{align-self:flex-end;margin-top:2px}@media (max-width:480px){.login-card{padding:28px 22px}.otp-digit{font-size:17px}}.sb-root{--ink:#171b34;--ink-muted:#5a5f7d;--ink-faint:#9497ad;--garnet:#7c2d3b;--garnet-dark:#5f2029;--rule:#e3e1da;--surface:#fff;--surface-sunken:#f6f5f1;display:flex;flex-direction:column;justify-content:space-between;width:248px;flex:0 0 248px;height:100vh;position:-webkit-sticky;position:sticky;top:0;background:var(--surface);border-right:1px solid var(--rule);padding:22px 16px;box-sizing:border-box;font-family:DM Sans,ui-sans-serif,system-ui,sans-serif}.sb-brand{gap:10px;padding:4px 8px 20px;margin-bottom:12px;border-bottom:1px solid var(--rule)}.sb-brand,.sb-brand-mark{display:flex;align-items:center}.sb-brand-mark{flex:0 0 auto;width:36px;height:36px;border-radius:9px;background:var(--surface-sunken);justify-content:center;overflow:hidden}.sb-brand-mark img{width:28px;height:28px;object-fit:contain}.sb-brand-text{display:flex;flex-direction:column;gap:1px;min-width:0}.sb-brand-name{font-family:"DM Serif Display",serif;font-size:16px;color:var(--ink);line-height:1.2}.sb-brand-tagline{font-size:11px;color:var(--ink-faint)}.sb-nav{display:flex;flex-direction:column;gap:2px;flex:1 1;overflow-y:auto}.sb-section-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--ink-faint);padding:8px 12px 6px}.sb-nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;border:none;background:transparent;color:var(--ink-muted);cursor:pointer;text-align:left;font-family:DM Sans,sans-serif;font-size:13.5px;font-weight:600;width:100%;box-sizing:border-box;transition:background-color .15s ease,color .15s ease}.sb-nav-item:hover{background:var(--surface-sunken);color:var(--ink)}.sb-nav-item-active{background:rgba(124,45,59,.08);color:var(--garnet)}.sb-nav-item-active:hover{background:rgba(124,45,59,.12);color:var(--garnet)}.sb-nav-icon{flex:0 0 auto;display:flex;align-items:center;justify-content:center}.sb-nav-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-footer{display:flex;flex-direction:column;gap:10px;padding-top:16px;border-top:1px solid var(--rule)}.sb-session{gap:10px;padding:8px}.sb-session,.sb-session-avatar{display:flex;align-items:center}.sb-session-avatar{flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:var(--garnet);color:#fff;justify-content:center;font-weight:700;font-size:13px}.sb-session-info{min-width:0}.sb-session-name{font-size:13px;font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-session-role{font-size:11px;color:var(--ink-faint)}.sb-signout{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid var(--rule);background:var(--surface);color:var(--ink-muted);cursor:pointer;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700;width:100%;box-sizing:border-box;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.sb-signout:hover{background:var(--surface-sunken);border-color:#c9c6ba;color:var(--ink)}@media (max-width:900px){.sb-root{width:72px;flex:0 0 72px;padding:16px 10px}.sb-brand-text,.sb-nav-label,.sb-section-label,.sb-session-info,.sb-signout span:last-child{display:none}.sb-nav-item,.sb-signout{justify-content:center;padding:10px}.sb-session{justify-content:center}}