@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--bg: #f0f3f8;--card: #ffffff;--ink: #06132b;--muted: #5f6f91;--soft: #b79285;--line: #dfe5ef;--line-soft: #edf1f6;--sidebar: #2b120b;--sidebar-line: #522214;--purple: #8f2e19;--purple-2: #b14a2f;--green: #10c892;--blue: #8f2e19;--orange: #ff8a00;--red: #ef0011;--yellow: #f5b819;--radius: 9px;font-family:Plus Jakarta Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*,*:before,*:after{box-sizing:border-box}html{min-height:100%;font-size:14px}body{min-height:100vh;margin:0;background:var(--bg);color:var(--ink);letter-spacing:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh}.workspace{min-height:100vh;margin-left:220px;background:var(--bg);transition:margin-left .16s ease}.app-shell--full .workspace{margin-left:0}.app-shell--collapsed .workspace{margin-left:76px}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;display:flex;width:220px;flex-direction:column;background:var(--sidebar);color:#d7dfef;transition:width .16s ease}.app-shell--collapsed .sidebar{width:76px}.brand-row{position:relative;display:flex;align-items:center;gap:10px;min-height:82px;padding:0 14px;border-bottom:1px solid var(--sidebar-line)}.brand-logo{display:block;width:44px;height:72px;object-fit:contain;flex:0 0 auto}.sidebar .brand-logo{position:absolute;left:16px;opacity:0;transform:scale(.88);transition:opacity .18s ease,transform .18s ease}.brand-horizontal{display:block;width:142px;height:auto;object-fit:contain;min-width:0;opacity:1;transform:translate(0);transition:opacity .18s ease,transform .18s ease}.app-shell--collapsed .brand-logo{width:42px;height:62px;opacity:1;transform:scale(1)}.app-shell--collapsed .brand-horizontal{position:absolute;pointer-events:none;opacity:0;transform:translate(-8px)}.brand-row strong,.sidebar-user strong{display:block;color:#fff;font-size:13px;font-weight:800;line-height:1.2}.brand-row span,.sidebar-user span{display:block;color:#9ca9c3;font-family:JetBrains Mono,monospace;font-size:9px;line-height:1.2}.brand-collapse{display:grid;width:26px;height:26px;place-items:center;margin-left:auto;border:0;border-radius:6px;background:transparent;color:#77839e}.brand-collapse:hover{background:#172844;color:#fff}.app-shell--collapsed .brand-row{justify-content:center;padding:0 8px}.app-shell--collapsed .brand-collapse{position:absolute;top:27px;right:-13px;background:#172844;box-shadow:0 8px 18px #00000038;transform:rotate(180deg)}.sidebar-nav{display:grid;gap:3px;padding:18px 8px}.sidebar-link{position:relative;display:flex;width:100%;align-items:center;gap:12px;border:0;border-radius:7px;background:transparent;color:#aeb8ca;padding:10px;text-align:left;font-size:14px;font-weight:600}.app-shell--collapsed .sidebar-link{justify-content:center;gap:0;padding:11px 0}.app-shell--collapsed .sidebar-link svg{flex:0 0 auto}.app-shell--collapsed .sidebar-link:not(.notification-link){font-size:0}.app-shell--collapsed .notification-link{font-size:0}.sidebar-link.is-active{background:var(--purple);color:#fff}.sidebar-bottom{margin-top:auto}.notification-link{margin:0 8px 14px}.notification-dot{position:absolute;left:30px;top:8px;width:6px;height:6px;border-radius:50%;background:#ff3158}.sidebar-user{display:flex;align-items:center;gap:10px;min-height:56px;border-top:1px solid var(--sidebar-line);padding:10px 12px}.app-shell--collapsed .sidebar-user{justify-content:center;padding:10px 0}.app-shell--collapsed .sidebar-user>div:not(.avatar),.app-shell--collapsed .logout-button{display:none}.avatar,.top-avatar{display:grid;place-items:center;border-radius:50%;font-size:12px;font-weight:800}.avatar--dark{width:32px;height:32px;background:var(--purple);color:#fff}.avatar--light,.top-avatar{width:28px;height:28px;background:#fff1ec;color:var(--purple)}.topbar{display:flex;height:53px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff;padding:0 23px}.topbar-title{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.top-actions{display:flex;align-items:center;gap:13px}.bell-button{position:relative;display:grid;border:0;background:transparent;color:#7890b0;padding:0;place-items:center}.bell-button span{position:absolute;right:-2px;top:-4px;width:6px;height:6px;border-radius:50%;background:#ff3158}.bell-button:disabled span,.notification-link:disabled .notification-dot{display:none}.page{padding:24px}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:0 1px #030c1e05}.help-button{position:fixed;right:16px;bottom:15px;z-index:50;display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:50%;background:#252525;box-shadow:0 3px 8px #00000059;color:#fff;font-size:18px}.breadcrumb{display:flex;align-items:center;gap:9px;color:#8596b8;font-family:JetBrains Mono,monospace;font-size:11px;white-space:nowrap}.breadcrumb span{display:inline-flex;align-items:center;gap:8px}.breadcrumb .current{color:var(--ink);font-weight:700}.breadcrumb--rootless .current{color:var(--ink)}.page-intro h1,.component-heading h1{margin:0;font-size:20px;line-height:1.25}.page-intro p,.component-heading p,.axis-detail-title p{margin:5px 0 0;color:var(--muted);font-size:14px}.page-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.primary-button,.export-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:7px;background:var(--purple);color:#fff;font-weight:800}.primary-button{min-height:34px;padding:0 16px}.export-button{min-height:31px;align-self:flex-start;background:#f1f4f9;color:#27405f;font-weight:700;padding:0 12px}.status-pill{display:inline-flex;width:max-content;align-items:center;gap:4px;border:1px solid currentColor;border-radius:999px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;line-height:1.2;white-space:nowrap}.status-pill--green{background:#e5fff5;color:#00a977}.status-pill--purple,.status-pill--blue{background:#fff1ec;color:var(--purple)}.status-pill--orange{background:#fff4df;color:#f07a00}.status-pill--red{background:#ffe8e9;color:#ef0011}.status-pill--neutral{background:#f2f6fb;color:#48617e}.warning-strip{display:flex;align-items:center;gap:12px;min-height:68px;border:1px solid #ffc738;border-radius:10px;background:#fffbec;color:#cf4d00;padding:12px 16px}.warning-strip strong{display:block;color:#b64700;font-size:15px}.warning-strip p{margin:3px 0 0;font-size:12px}.warning-strip button{margin-left:auto;border:0;border-radius:7px;background:#fff0c5;color:#cc5200;padding:7px 14px;font-size:12px;font-weight:800}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:22px}.metric-card{position:relative;min-height:143px;padding:15px}.metric-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:7px;color:#fff}.metric-icon--purple,.metric-icon--violet{background:var(--purple)}.metric-icon--green{background:var(--green)}.metric-icon--blue{background:var(--blue)}.metric-card strong{display:block;margin-top:12px;font-size:24px;font-weight:800}.metric-card p{margin:2px 0 0;color:#52678a}.metric-card small{display:block;margin-top:3px;color:#8496bb;font-family:JetBrains Mono,monospace;font-size:10px}.metric-badge{position:absolute;right:15px;top:16px;border-radius:999px;background:#e7fff5;color:#009866;padding:4px 9px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.metric-badge--red{background:#fff0f0;color:var(--red)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 418px;gap:24px;margin-top:22px}.recent-card{min-height:545px;padding:18px}.section-heading{display:flex;align-items:center;justify-content:space-between}.section-heading h2,.side-card h2{margin:0;font-size:14px;font-weight:800}.small-count{border-radius:999px;background:#eef2f8;color:#8292b0;padding:3px 10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.recent-list{margin-top:14px}.recent-row{display:grid;width:100%;grid-template-columns:31px minmax(0,1fr) auto 16px;align-items:center;gap:11px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 0;text-align:left;color:var(--ink)}.doc-icon,.doc-square{display:grid;place-items:center;border-radius:7px;background:#edf2f8;color:#7890ad}.doc-icon{width:30px;height:30px}.recent-title strong{display:block;font-weight:700}.recent-title small{display:block;margin-top:3px;color:#7f93bb;font-family:JetBrains Mono,monospace;font-size:10px}.dashboard-aside{display:grid;gap:16px}.side-card{padding:20px}.mini-list{display:grid;gap:12px;margin-top:22px}.mini-row{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:8px;color:#53637f;font-size:12px}.mini-row strong{color:var(--ink)}.dot{width:7px;height:7px;border-radius:50%}.dot--purple{background:var(--purple)}.dot--red{background:var(--red)}.dot--orange{background:#f36b00}.dot--yellow{background:var(--yellow)}.quick-link{display:flex;width:100%;align-items:center;gap:10px;border:0;background:transparent;color:#314766;padding:10px 9px;text-align:left;font-size:12px}.progress-card{display:grid;gap:14px}.axis-progress-mini{display:grid;gap:6px}.axis-progress-mini div:first-child{display:flex;justify-content:space-between;color:#586c8f;font-size:12px}.axis-progress-mini strong{color:#52617c;font-weight:700}.progress-line{position:relative;height:5px;overflow:hidden;border-radius:999px;background:#eef2f7}.progress-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--purple)}.progress-fill--green{background:var(--green)}.progress-fill--orange{background:var(--orange)}.simple-page{padding-top:26px}.ppc-card{margin-top:20px;padding:20px 18px 18px}.ppc-topline{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px}.ppc-file{display:flex;align-items:center;gap:16px}.large-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:9px;background:#fff1ec;color:var(--purple)}.ppc-card h2{margin:0;font-size:16px}.ppc-card p{margin:6px 0 0;color:#7890b6;font-family:JetBrains Mono,monospace;font-size:11px}.ppc-upload-empty{display:grid;justify-items:center;gap:14px;padding:8px 0 2px}.ppc-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:10px 0 18px}.stat-block{text-align:center}.stat-block strong{display:block;font-size:22px;font-weight:800}.stat-block span{color:#8292b4;font-family:JetBrains Mono,monospace;font-size:10px}.link-button{border:0;background:transparent;color:#355171;padding:0;font-size:12px}.axes-page{padding-top:28px}.axis-card-list{display:grid;gap:20px;margin-top:20px}.axis-card{display:grid;grid-template-columns:1fr auto;gap:8px 18px;padding:18px}.axis-main{display:grid;grid-template-columns:39px minmax(0,1fr);gap:14px;border:0;background:transparent;padding:0;text-align:left}.axis-number{display:grid;width:39px;height:39px;place-items:center;border-radius:10px;background:#fff1ec;color:var(--purple);font-size:20px;font-weight:800}.axis-content h2{margin:3px 0 9px;font-size:15px}.mono-label{color:#8aa0c3;font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase}.axis-progress-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;color:#52678a;font-family:JetBrains Mono,monospace;font-size:10px}.axis-stats{display:grid;grid-template-columns:repeat(3,auto auto) 20px 28px 28px;align-items:center;gap:3px 13px;color:#8ba0c0;font-family:JetBrains Mono,monospace;font-size:10px}.axis-stats strong{color:var(--ink);font-family:Plus Jakarta Sans,sans-serif;font-size:18px}.green-text{color:#00a46f!important}.blue-text{color:var(--purple)!important}.axis-components{display:grid;grid-column:1 / -1;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.axis-chip{display:grid;min-width:0;grid-template-columns:6px minmax(0,1fr) auto;align-items:center;gap:8px;border:0;border-radius:7px;background:#f8fafc;color:#526380;padding:8px 10px;text-align:left;font-size:12px}.axis-chip>span:nth-child(1){width:5px;height:5px;border-radius:50%;background:#c9d4e2}.axis-chip>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.axis-components-page{padding-top:27px}.axis-detail-title{align-items:center}.axis-detail-title h1{margin:8px 0 0;font-size:19px}.search-box{display:flex;align-items:center;gap:10px;height:40px;margin-top:20px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#8395b4;padding:0 12px}.search-box input{width:100%;border:0;outline:0;color:var(--ink)}.search-box input::placeholder{color:#8c9ab3}.table-card{overflow:hidden;margin-top:18px}.component-table{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(170px,.8fr) minmax(150px,.8fr) 60px;align-items:center;min-height:53px;border-bottom:1px solid var(--line);padding:0 16px 0 18px}.component-table:last-child{border-bottom:0}.header-row{min-height:39px;background:#f8fafc;color:#536987;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800;text-transform:uppercase}.table-name{display:flex;align-items:center;gap:10px}.doc-square{width:27px;height:27px;background:#fff1ec;color:var(--purple)}.mono-date{color:#8097bd;font-family:JetBrains Mono,monospace;font-size:11px}.table-link{border:0;background:transparent;color:var(--purple);font-size:12px}.component-page{padding-top:20px}.component-heading{margin-top:0}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}.material-card{overflow:hidden}.material-card header{display:flex;min-height:67px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:16px 20px}.material-card--student{border-color:#cdd8ff}.material-card--student header{background:#fff1ec}.material-card--teacher{border-color:#f0d2ff}.material-card--teacher header{background:#fff6f2}.material-title{display:flex;align-items:center;gap:11px}.material-title>span{display:grid;width:35px;height:35px;place-items:center;border-radius:10px;background:var(--purple);color:#fff}.material-card--teacher .material-title>span{background:#b14a2f}.material-title h2{margin:0;font-size:14px}.material-title p{margin:3px 0 0;color:var(--purple);font-family:JetBrains Mono,monospace;font-size:11px}.material-content{padding:18px 20px 24px}.material-content h3,.chapter-list h3{margin:0 0 10px;color:#536986;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800;text-transform:uppercase}.file-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;min-height:51px;margin-bottom:8px;border:1px solid #d8e2ef;border-radius:7px;background:#f8fbff;color:#526582;padding:0 12px}.file-row strong,.file-row span{display:block}.file-row strong{color:#253b5b;font-size:12px}.file-row span{color:#8299bd;font-family:JetBrains Mono,monospace;font-size:10px}.file-row>svg:last-child{color:var(--green)}.file-row--missing{border-color:#ffce63;background:#fffaf0;color:var(--orange)}.file-row button{border:0;border-radius:5px;background:#fff0c8;color:#f07a00;padding:4px 8px;font-size:10px;font-weight:800}.checklist-head{display:flex;align-items:center;justify-content:space-between;margin-top:16px}.checklist-head span{color:#536986;font-family:JetBrains Mono,monospace;font-size:10px}.release-checklist{display:grid;gap:6px;margin:8px 0 16px;padding:0;list-style:none;color:#8a98b1;font-size:12px}.release-checklist li{display:flex;align-items:center;gap:8px}.release-checklist li.done{color:#526582}.release-checklist li.done svg{color:var(--green)}.locked-note{display:flex;align-items:center;gap:9px;min-height:42px;margin-bottom:18px;border:1px solid #d8e2ef;border-radius:7px;background:#f8fbff;color:#6d7d98;padding:0 12px;font-size:12px}.history-list{display:grid;gap:12px}.history-row{display:grid;grid-template-columns:6px auto auto minmax(0,1fr);align-items:center;gap:10px;border:0;background:transparent;color:#8394b0;padding:0;text-align:left;font-family:JetBrains Mono,monospace;font-size:10px}.history-row>span:first-child{width:5px;height:5px;border-radius:50%;background:#c9d4e2}.history-row em{justify-self:end;color:var(--purple);font-style:normal}.user-table{overflow:visible;margin-top:20px}.user-row{position:relative;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(120px,.55fr) minmax(150px,.7fr) minmax(120px,.55fr) 32px;align-items:center;min-height:61px;border-bottom:1px solid var(--line);padding:0 18px}.user-row:last-child{border-bottom:0}.user-row--header{min-height:39px;background:#f8fafc;color:#536987;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800;text-transform:uppercase}.user-cell{display:flex;align-items:center;gap:12px}.user-cell strong,.user-cell small{display:block}.user-cell strong{font-weight:700}.user-cell small{color:#8097bd;font-family:JetBrains Mono,monospace;font-size:10px}.role-chip{width:max-content;border-radius:4px;background:#edf1f6;color:#4a5f7d;padding:3px 8px;font-family:JetBrains Mono,monospace;font-size:10px}.dots-button{border:0;background:transparent;color:#8aa0c0}.row-actions{position:relative;display:flex;justify-content:flex-end}.row-actions .dots-button{display:grid;width:30px;height:30px;place-items:center;border-radius:6px}.row-actions .dots-button:hover{background:#eef3fb;color:#405777}.action-menu{position:absolute;top:31px;right:0;z-index:60;display:grid;min-width:136px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#fff;box-shadow:0 16px 34px #0f172a24}.action-menu button{display:flex;align-items:center;gap:8px;border:0;background:#fff;color:#314968;padding:10px 12px;text-align:left;font-size:12px;font-weight:700}.action-menu button:hover{background:#f6f9fd}.action-menu .danger-text{color:var(--red)}.document-head{display:flex;min-height:136px;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff;padding:19px 17px 15px 22px}.doc-context{color:#7b91bb;font-family:JetBrains Mono,monospace;font-size:10px}.doc-context span{margin:0 7px}.doc-context span:last-child{color:var(--purple)}.document-head h1{margin:12px 0;font-size:20px;line-height:1.2}.document-flow-row{display:flex;align-items:center;gap:14px}.stepper{display:flex;align-items:flex-start;gap:28px}.step{position:relative;display:grid;min-width:82px;justify-items:center;gap:6px}.step:not(:last-child):after{position:absolute;top:14px;left:calc(50% + 22px);width:45px;height:1px;background:#dfe6f0;content:""}.step--done:not(:last-child):after{background:var(--green)}.step>span{display:grid;width:27px;height:27px;place-items:center;border:2px solid #d6e0ee;border-radius:50%;background:#fff;color:#98aac8;font-weight:800}.step small{color:#8295bb;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700}.step--done>span{border-color:var(--green);background:var(--green);color:#fff}.step--done small{color:#009f70}.step--active>span{border-color:var(--purple);background:var(--purple);color:#fff}.step--active small{color:var(--purple)}.document-tabs{display:flex;height:41px;align-items:stretch;gap:4px;border-bottom:1px solid var(--line);background:#fff;padding-left:22px}.document-tabs button{display:flex;align-items:center;gap:7px;min-width:138px;border:0;border-bottom:2px solid transparent;background:transparent;color:#405777;padding:0 14px;font-size:12px;font-weight:700}.document-tabs button.is-active{border-bottom-color:var(--purple);color:var(--purple)}.document-body{min-height:calc(100vh - 230px);background:var(--bg);padding:16px 14px 28px}.document-body--final{display:flex;justify-content:center;padding-top:23px}.document-paper{width:675px;min-height:640px;border:1px solid var(--line);border-radius:9px 9px 0 0;background:#fff;padding:30px 30px 40px}.document-paper h2{margin:0;font-size:20px}.paper-meta{margin:4px 0 20px;color:#536987}.document-paper hr{border:0;border-top:1px solid var(--line);margin:0 0 20px}.paper-section{border-bottom:1px solid #edf0f5;padding:0 0 14px;margin-bottom:19px}.paper-section h3{margin:0 0 9px;font-size:15px}.formatted-document{display:grid;gap:11px}.formatted-document h4,.formatted-document h5{margin:4px 0 0;color:#061c3b;font-size:14px;line-height:1.35}.formatted-document h5{color:#244260;font-size:13px}.formatted-document p,.formatted-document li{margin:0;color:#314968;font-size:14px;line-height:1.55}.formatted-document ul{display:grid;gap:6px;margin:0;padding-left:18px}.document-callout{border-left:3px solid #5e6ad2;background:#f5f7ff;color:#314968;padding:10px 12px;font-size:13px;line-height:1.45}.formatted-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:6px}.formatted-document table{width:100%;border-collapse:collapse;font-size:13px}.formatted-document th,.formatted-document td{border-bottom:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}.formatted-document th{background:#f8fafc;color:#061c3b;font-weight:800}.formatted-document tr:last-child td{border-bottom:0}.paper-section span{display:block;margin-top:12px;color:#7d93bd;font-family:JetBrains Mono,monospace;font-size:10px}.review-body{display:grid;justify-content:center;gap:16px;padding-top:22px}.review-score-card{display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:22px;width:min(760px,calc(100vw - 48px));min-height:144px;padding:22px 26px}.score-circle{position:relative;display:grid;width:86px;height:86px;place-items:center;color:#00a977}.score-circle svg{position:absolute;inset:0;width:86px;height:86px;transform:rotate(-90deg)}.score-circle circle{fill:none;stroke:#dffdf0;stroke-width:5}.score-circle circle:last-child{stroke:#10c892;stroke-dasharray:226;stroke-linecap:round}.score-circle strong{position:relative;font-size:25px;font-weight:800;line-height:1}.review-score-card h2{margin:0;font-size:18px;line-height:1.2}.review-score-card p{margin:5px 0 9px;color:#637493}.score-status{display:flex;align-items:center;gap:10px}.auto-actions{justify-self:end}.score-status span{border-radius:5px;background:#dffdf0;color:#00a977;padding:3px 7px;font-size:11px;font-weight:800}.score-status small{color:#637493}.comparison-progress{display:grid;grid-template-columns:auto auto auto 1fr 120px;align-items:center;gap:18px;min-height:43px;padding:0 18px}.comparison-progress strong{font-size:14px}.comparison-progress>span:not(.status-pill){color:#8192b1;font-family:JetBrains Mono,monospace;font-size:11px}.tiny-progress{justify-self:end;width:120px;height:4px;overflow:hidden;border-radius:999px;background:#edf2f7}.tiny-progress span{display:block;height:100%;border-radius:inherit;background:var(--purple)}.comparison-grid{display:grid;grid-template-columns:180px minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:16px}.chapter-list{min-height:499px;padding:14px 12px}.chapter-list button{display:grid;grid-template-columns:7px minmax(0,1fr) auto;width:100%;align-items:center;gap:9px;border:0;background:transparent;color:#536987;padding:9px 0;text-align:left;font-size:11px}.chapter-list button span{width:5px;height:5px;border-radius:50%;background:#c9d4e2}.chapter-list button strong{overflow:hidden;font:inherit;text-overflow:ellipsis;white-space:nowrap}.chapter-list button em{border-radius:999px;padding:3px 6px;background:#eef4fb;color:#637493;font-style:normal;font-size:9px;font-weight:900;text-transform:uppercase}.chapter-list button.is-approved span{background:#00a977}.chapter-list button.is-rejected span{background:var(--red)}.chapter-list button.is-approved em{background:#e6fff4;color:#008b61}.chapter-list button.is-rejected em{background:#fff0f0;color:var(--red)}.text-panel{min-height:499px;overflow:hidden;padding:0}.panel-header{display:flex;align-items:center;justify-content:space-between;min-height:37px;border-bottom:1px solid var(--line);padding:0 16px;color:#7283a3;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800;text-transform:uppercase}.text-panel>p{margin:17px 16px;color:#1c3658;font-size:14px;line-height:1.55}.text-panel .formatted-document{margin:17px 16px}.text-panel--ai{overflow:hidden;border-color:#cedaff}.text-panel--ai .panel-header{background:#fff1ec;color:var(--purple)}.compare-preview{max-height:250px;overflow:auto;border-bottom:1px solid var(--line);background:#fbfcff}.compare-preview .formatted-document{margin:16px}.compare-actions{display:flex;align-items:center;gap:9px;min-height:50px;border-top:1px solid var(--line);padding:0 16px}.approve-button,.reject-button,.ai-button{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:7px;padding:6px 10px;font-size:12px;font-weight:800}.approve-button{background:#e6fff4;color:#00a977}.reject-button{background:#fff0f0;color:var(--red)}.approve-button.is-selected,.reject-button.is-selected{color:#fff;box-shadow:0 8px 18px #1c365829}.approve-button.is-selected{background:#0c9f6a}.reject-button.is-selected{background:var(--red)}.ai-button{margin-left:auto;background:#fff1ec;color:var(--purple)}.human-body{display:grid;justify-content:center;gap:20px;padding-top:21px}.human-alert{display:flex;align-items:center;gap:12px;width:584px;min-height:67px;border:1px solid #e3ad9b;border-radius:9px;background:#fff1ec;color:var(--purple);padding:13px 16px}.human-alert strong{display:block}.human-alert p{margin:3px 0 0;font-size:12px}.human-alert--approved{border-color:#9de8c9;background:#ecfff7;color:#008b61}.human-alert--rejected{border-color:#ffc2c7;background:#fff3f4;color:var(--red)}.validation-card{width:584px;padding:19px}.validation-card h2{margin:0 0 15px;font-size:18px}.validation-decision{display:flex;align-items:center;gap:10px;min-height:44px;margin-bottom:14px;border-radius:7px;padding:0 12px}.validation-decision--approved{background:#ecfff7;color:#008b61}.validation-decision--rejected{background:#fff3f4;color:var(--red)}.validation-question{display:grid;grid-template-columns:20px minmax(0,1fr) 22px 22px;align-items:center;gap:10px;min-height:50px;margin-bottom:11px;border:1px solid #dce5f1;border-radius:7px;background:#f8fbff;padding:0 11px;color:#8194b1}.validation-question span{display:grid;width:20px;height:20px;place-items:center;border:1px solid #d8e2ef;border-radius:4px;background:#fff;color:#8ba0c0;font-size:11px}.validation-question p{color:#263e60}.comments-label{display:grid;gap:7px;color:#263e60;font-size:12px;font-weight:700}.comments-label textarea{min-height:75px;resize:none;border:1px solid #dce5f1;border-radius:7px;background:#f8fbff;color:var(--ink);outline:0;padding:14px 12px}.comments-label textarea::placeholder{color:#99a6b9}.validation-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.approve-main,.reject-main,.adjust-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:37px;border:0;border-radius:7px;color:#fff;font-weight:800}.approve-main{background:#0c9f6a}.reject-main{background:var(--red)}.approve-main:not(.is-selected),.reject-main:not(.is-selected){background:#f5f8fc;color:#536987;box-shadow:inset 0 0 0 1px #dce5f1}.approve-main.is-selected,.reject-main.is-selected{box-shadow:0 12px 24px #1c36582e}.adjust-button{width:100%;margin-top:15px;background:#ffefd3;color:#e45f00}.login-page{display:grid;grid-template-columns:minmax(0,60vw) minmax(0,40vw);width:100vw;height:100vh;height:100dvh;min-height:0;overflow:hidden;background:#faf8f5}.login-hero{height:100%;min-height:0;overflow:hidden}.login-hero img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}.login-form-side{display:grid;height:100%;min-height:0;align-items:start;justify-items:center;background-color:#faf8f5;background-position:center bottom;background-repeat:no-repeat;background-size:cover;overflow:hidden;padding:clamp(76px,18dvh,194px) clamp(22px,3vw,40px) 32px}.login-panel{display:grid;width:min(384px,100%);gap:clamp(16px,2.2dvh,24px);color:#202936}.login-panel h1{margin:0;text-align:center;color:#202936;font-size:clamp(28px,2.1vw,38px);font-weight:800;line-height:1.15}.login-input{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:65px;border:1px solid rgba(82,69,59,.32);border-radius:8px;background:#ffffffa3;color:#806f62;padding:0 16px}.login-input input{min-width:0;border:0;background:transparent;color:#2a313b;outline:0;font-size:19px;font-weight:500}.login-input input::placeholder{color:#6f625b;opacity:1}.password-visibility{display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:6px;background:transparent;color:#806f62;padding:0}.login-submit{width:100%;min-height:64px;margin-top:4px;border-radius:8px;background:#8f2e19;box-shadow:0 16px 34px #8f2e1933;font-size:20px}.login-submit:hover:not(:disabled){background:#7d2614;transform:translateY(-1px)}.change-password-page{display:grid;min-height:100vh;min-height:100dvh;place-items:center;background:#f7f3f0;padding:24px}.change-password-panel{width:min(520px,100%);padding:26px}.change-password-brand{display:flex;justify-content:center;margin-bottom:22px}.change-password-brand .brand-horizontal{width:170px}.change-password-copy{margin-bottom:20px;text-align:center}.change-password-copy span{color:var(--purple);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:800;text-transform:uppercase}.change-password-copy h1{margin:8px 0 0;font-size:24px}.change-password-copy p{margin:8px 0 0;color:var(--muted);line-height:1.5}.password-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border-radius:7px;background:#f8fafc;padding:12px}.password-rules span{display:inline-flex;align-items:center;gap:6px;color:#7d8ba1;font-size:12px;font-weight:700}.password-rules .is-valid{color:#008c63}.temporary-password{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:14px 16px}.temporary-password span,.temporary-password strong{display:block}.temporary-password span{color:#7789a5;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800;text-transform:uppercase}.temporary-password strong{margin-top:4px;color:var(--purple);font-family:JetBrains Mono,monospace;font-size:18px}@media(max-width:980px){.login-page{grid-template-columns:1fr;background-image:linear-gradient(#ffffffdb,#ffffffdb),url(/assets/LoginKnowledgeGate-DOMy81kH.png);background-position:center;background-size:cover}.login-hero{display:none}.login-form-side{align-items:start;background-size:auto min(44dvh,360px);padding:clamp(46px,10dvh,86px) 22px clamp(152px,28dvh,220px)}}@media(max-width:520px){.login-form-side{background-size:auto min(38dvh,300px);padding-top:clamp(34px,8dvh,64px);padding-bottom:clamp(124px,25dvh,180px)}.login-panel{gap:18px}.login-input,.login-submit{min-height:56px}.login-input input{font-size:16px}}.form-grid{display:grid;gap:14px}.form-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.field{display:grid;gap:6px;color:#304663;font-size:12px;font-weight:800}.field input,.field select,.field textarea,.upload-form input,.upload-form select,.upload-form textarea{width:100%;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);outline:0;padding:10px 11px}.field textarea,.upload-form textarea{resize:vertical}.file-picker{position:relative;display:flex;min-height:44px;align-items:center;gap:10px;border:1px dashed #b8c5d8;border-radius:7px;background:#f8fbff;color:#536987;padding:10px 12px;font-size:12px;font-weight:800}.file-picker input{position:absolute;inset:0;opacity:0;cursor:pointer}.feedback{display:flex;align-items:center;min-height:40px;margin:14px 0;border-radius:7px;padding:10px 12px;font-size:12px;font-weight:800}.feedback--success{background:#e5fff5;color:#008c63}.feedback--error{background:#ffe8e9;color:var(--red)}.feedback--warning{background:#fff4df;color:#d96500}.modal-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:#0c14247a;padding:20px}.modal-panel{width:min(720px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:18px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.modal-head h2{margin:0;font-size:18px}.modal-head button,.icon-button,.logout-button,.breadcrumb-back{display:grid;place-items:center;border:0;background:transparent;color:#7f93b1}.modal-head button{width:28px;height:28px;border-radius:7px;font-weight:900}.modal-head button:hover,.icon-button:hover,.breadcrumb-back:hover{background:#eef2f8;color:var(--purple)}.modal-actions,.inline-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.secondary-button{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#304663;padding:0 12px;font-weight:800}.danger-text,.icon-button--danger{color:var(--red)}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.icon-button{width:28px;height:28px;border-radius:7px}.logout-button{width:28px;height:28px;margin-left:auto;border-radius:7px;color:#9ca9c3}.logout-button:hover{background:var(--sidebar-line);color:#fff}.state-card,.empty-state{display:grid;justify-items:center;gap:8px;color:#536987;padding:24px;text-align:center}.state-card{min-height:110px;align-content:center;font-weight:800}.state-card svg,.login-page .state-card svg{animation:spin 1s linear infinite}.state-card--error svg{animation:none;color:var(--red)}.empty-state{border:1px dashed #cbd6e7;border-radius:8px;background:#f8fbff}.empty-state--compact{margin:12px 0;padding:16px}.empty-state strong{color:var(--ink)}.empty-state p,.muted-copy{margin:0;color:#7d90b1;font-size:12px}.upload-form{display:grid;gap:12px;margin-top:18px;border-top:1px solid var(--line);padding-top:18px}.admin-only-note{display:flex;align-items:center;gap:8px;margin-top:18px;border-top:1px solid var(--line);color:#7185a6;padding-top:16px;font-size:12px;font-weight:700}.admin-only-note svg{color:var(--purple)}.history-card{margin-top:18px;padding:18px}.history-table{display:grid;gap:8px;margin-top:14px}.history-table-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:12px;border:1px solid var(--line-soft);border-radius:7px;background:#f8fbff;padding:11px 12px}.history-table-row strong,.history-table-row small{display:block}.history-table-row small{margin-top:3px;color:#7f93b1;font-family:JetBrains Mono,monospace;font-size:10px}.empty-chip{grid-column:1 / -1;color:#7f93b1;font-size:12px}.breadcrumb-back{width:24px;height:24px;border-radius:7px;padding:0}.breadcrumb--inline{margin-bottom:18px}.document-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.job-actions{display:flex;align-items:center;gap:12px;margin:0 14px 24px;padding:14px 16px}.job-actions div:first-child{margin-right:auto}.job-actions p{margin:3px 0 0;color:#7185a6;font-size:12px}.auto-actions{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto;justify-self:end}.review-summary{width:min(760px,calc(100vw - 48px));padding:15px 18px;color:#314968;line-height:1.5}.review-suggestions{width:min(760px,calc(100vw - 48px));padding:16px 18px}.review-suggestions__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.review-suggestions h3{margin:0;font-size:15px}.review-suggestions p{margin:4px 0 0;color:#7185a6;font-size:12px}.review-suggestions svg{color:var(--purple)}.review-suggestions ul{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}.review-suggestions li{border-left:3px solid #10c892;background:#f7fbff;color:#263e60;padding:9px 11px;font-size:13px;line-height:1.45}.review-detail-grid{display:grid;width:min(760px,calc(100vw - 48px));gap:14px}.review-detail-card{padding:16px 18px}.review-detail-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;width:100%;border:0;background:transparent;color:inherit;cursor:pointer;padding:0;text-align:left}.review-detail-card__head:focus-visible{outline:2px solid rgba(255,122,0,.34);outline-offset:6px}.review-detail-card__head h3{margin:0;font-size:15px}.review-detail-card__head p{margin:4px 0 0;color:#7185a6;font-size:12px}.review-detail-card__head svg{color:#7386a5}.review-detail-card__icons{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto}.review-detail-card__chevron{transition:transform .18s ease}.review-detail-card--open .review-detail-card__chevron{transform:rotate(180deg)}.review-detail-card--problem .review-detail-card__icons svg:first-child,.review-detail-card--missing .review-detail-card__icons svg:first-child{color:var(--orange)}.review-detail-card--suggestion .review-detail-card__icons svg:first-child,.review-detail-card--positive .review-detail-card__icons svg:first-child{color:var(--green)}.review-detail-card--rule .review-detail-card__icons svg:first-child{color:var(--purple)}.review-detail-list,.review-check-list{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}.review-detail-list li{border-left:3px solid #cbd6e7;background:#f7fbff;color:#263e60;padding:10px 11px;font-size:13px;line-height:1.45}.review-detail-card--problem .review-detail-list li,.review-detail-card--missing .review-detail-list li{border-left-color:var(--orange)}.review-detail-card--suggestion .review-detail-list li,.review-detail-card--positive .review-detail-list li{border-left-color:var(--green)}.review-detail-card--rule .review-detail-list li{border-left-color:var(--purple)}.review-detail-item__top{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.review-detail-item__top strong{color:var(--ink)}.review-detail-item__top span{border-radius:4px;background:#edf2f7;color:#536987;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800}.review-detail-list p,.review-detail-list small{display:block;margin:5px 0 0}.review-detail-list small{color:#536987}.review-check-list{grid-template-columns:repeat(2,minmax(0,1fr))}.review-check-list li{border-radius:6px;background:#f4f8fd;color:#314968;padding:8px 10px;font-size:12px;font-weight:700}.compare-textarea{width:calc(100% - 32px);min-height:190px;margin:16px;resize:vertical;border:1px solid var(--line);border-radius:7px;color:#1c3658;line-height:1.55;outline:0;padding:12px}.instruction-field{display:grid;gap:6px;margin:0 16px 12px;color:#536986;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800;text-transform:uppercase}.instruction-field textarea{min-height:62px;resize:vertical;border:1px solid var(--line);border-radius:7px;color:var(--ink);outline:0;padding:10px;text-transform:none}.comparison-grid--fallback{grid-template-columns:repeat(2,minmax(0,1fr))}.chapter-list button.is-active{color:var(--purple);font-weight:800}.validation-source{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;margin-bottom:10px;border:1px solid #dce5f1;border-radius:7px;background:#f8fbff;padding:0 11px;color:#263e60}.validation-source span{color:#7f93b1;font-family:JetBrains Mono,monospace;font-size:10px}.validation-history{display:grid;gap:8px;margin-top:16px;border-top:1px solid var(--line);padding-top:14px}.validation-history div{display:grid;gap:5px;border-radius:7px;background:#f8fbff;padding:10px}.validation-history span:not(.status-pill){color:#7283a3;font-size:12px}.validation-history p{margin:0;color:#314968}.inline-upload{display:grid;gap:10px;margin:10px 0 16px;border:1px solid var(--line);border-radius:7px;background:#f8fbff;padding:12px}.ready-note{display:flex;align-items:center;gap:9px;min-height:42px;margin-bottom:12px;border:1px solid #b8ecd7;border-radius:7px;background:#e8fff5;color:#008c63;padding:0 12px;font-size:12px}.full-width{width:100%;margin-bottom:18px}.document-row{grid-template-columns:minmax(0,1.4fr) minmax(210px,.9fr) minmax(180px,.7fr) 70px}.dots-placeholder{display:grid;place-items:center;color:#8aa0c0}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1100px){.metric-grid,.profile-grid,.axis-components{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.comparison-grid{grid-template-columns:1fr}.dashboard-aside{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.sidebar{position:static;width:100%}.workspace{margin-left:0}.sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-bottom{display:none}.topbar{padding:0 14px}.page{padding:16px}.metric-grid,.profile-grid,.ppc-stats,.form-columns,.dashboard-aside,.comparison-grid--fallback{grid-template-columns:1fr}.component-table,.user-row,.document-row,.history-table-row{grid-template-columns:1fr;gap:8px;padding:12px}.axis-card{grid-template-columns:1fr}.axis-stats{grid-template-columns:repeat(2,auto);justify-content:start}.document-head,.document-flow-row,.job-actions{flex-direction:column;align-items:flex-start}.review-score-card{grid-template-columns:1fr;align-items:flex-start}.review-score-card .auto-actions{justify-self:start;margin-left:0}.document-tabs{height:auto;flex-wrap:wrap;padding:8px}.document-tabs button,.review-score-card,.review-summary,.human-alert,.validation-card,.document-paper{width:100%}}
