:root{font-family:DM Sans,Noto Sans SC,sans-serif;color:#17202a;background:#f4f5f1;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{letter-spacing:-.03em}h1{font-size:32px;line-height:1.18}h2{font-size:20px}h3{font-size:16px}p{line-height:1.6}small{font-size:12px}.mono,.eyebrow,.brand small,.brand strong,.nav-group-label,.status,.id-pill,.task-number,.hero-kicker,.auth-track,.system-pill,.page-count,.provider-summary,.score-chips{font-family:IBM Plex Mono,monospace}.muted,.small-muted{color:#82908e}.small-muted{font-size:13px;line-height:1.55}.muted{display:inline-flex;align-items:center;gap:4px;font-size:12px}.eyebrow{font-size:11px;letter-spacing:.13em;font-weight:600;color:#5f9287}.button{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 17px;border-radius:10px;font-size:13px;font-weight:700;white-space:nowrap;transition:.2s}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{background:#196d5d;color:#fff;box-shadow:0 5px 14px #196d5d24}.button.primary:hover{background:#115749}.button.secondary{background:#e8f1eb;border-color:#ccdfd4;color:#12624f}.button.ghost{background:#fff;border-color:#dbe2dc;color:#3b514b}.button.bright{background:#c8f092;color:#173d35}.button.hero-outline{color:#e4f6eb;border-color:#60746e;background:#ffffff12}.button.compact{padding:7px 11px;font-size:12px;border-radius:8px}.button.full{width:100%}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:#77847e}.icon-button:hover{background:#ecf2eb;color:#174f42}.icon-button.dark:hover{background:#ffffff18;color:#fff}.link-button,.text-link{display:inline-flex;align-items:center;gap:6px;color:#196d5d;font-size:13px;font-weight:700;border:0;background:transparent;padding:0}.link-button:hover,.text-link:hover{color:#0d4c40}.icon-link{display:flex;align-items:center;color:#678c80}.icon-link:hover{color:#12624f}.app-shell{display:flex;min-height:100vh}.sidebar{width:252px;flex:0 0 252px;background:#111b1d;color:#d3dfd8;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:28px 23px 24px;color:#fff}.brand-symbol{width:40px;height:40px;border-radius:11px;background:#c6ef98;color:#1d4038;display:flex;align-items:center;justify-content:center;box-shadow:0 0 22px #b8eb8e29}.brand strong{display:block;font-size:17px;letter-spacing:.02em;line-height:1.1}.brand strong span{color:#bde593}.brand small{display:block;margin-top:6px;font-size:8px;letter-spacing:.08em;color:#7e9890;white-space:nowrap}.sidebar-scroll{overflow:auto;padding:5px 12px 20px;flex:1;scrollbar-width:thin}.nav-group{margin-bottom:24px}.nav-group-label{color:#668079;font-size:10px;letter-spacing:.11em;padding:0 13px;margin:15px 0 9px;text-transform:uppercase}.nav-link{height:40px;display:flex;align-items:center;gap:13px;padding:0 12px;border-radius:8px;font-size:13px;color:#a5b7af;margin-bottom:2px;transition:.15s}.nav-link:hover{background:#223432;color:#e8f5ec}.nav-link.active{background:#26423a;color:#d9f8d1;font-weight:700}.nav-link.active:before{content:"";height:18px;width:3px;position:absolute;left:0;background:#bce88f;border-radius:0 3px 3px 0}.nav-link em{margin-left:auto;background:#cbed91;color:#173f30;font-style:normal;font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:9px;text-align:center;line-height:18px}.sidebar-foot{padding:18px 15px;border-top:1px solid #ffffff14;display:flex;align-items:center;gap:9px}.user-avatar,.top-avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;background:#bfe9a0;color:#1e493b;width:33px;height:33px;flex:0 0 auto}.user-info{overflow:hidden;flex:1}.user-info strong{display:block;color:#fff;font-size:12px}.user-info span{display:block;color:#708780;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-column{flex:1;min-width:0}.topbar{height:64px;background:#fbfcf8;border-bottom:1px solid #e3e8e1;display:flex;justify-content:space-between;align-items:center;padding:0 39px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:12px}.topbar-left{font-size:12px}.topbar-left strong{font-weight:700}.breadcrumb{color:#95a19c}.breadcrumb-slash{color:#c5cfca}.topbar-right{gap:24px}.system-pill{border:1px solid #d7e5dc;background:#eff8ee;color:#628475;border-radius:20px;padding:5px 9px;font-size:9px;letter-spacing:.03em}.system-pill span{display:inline-block;width:6px;height:6px;border-radius:50%;background:#41ab6b;margin-right:5px}.topbar-bell{position:relative;color:#50685e}.topbar-bell i{position:absolute;top:0;right:0;background:#e46b5d;width:7px;height:7px;border-radius:50%}.top-avatar{width:29px;height:29px;font-size:11px}.main-content{max-width:1540px;margin:auto;padding:36px 40px 80px}.mobile-menu,.sidebar-scrim{display:none}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:29px}.page-head h1{margin:9px 0;font-weight:700}.page-head p{font-size:13px;color:#71807a;margin:0}.page-head-action{flex:none}.page-count{display:inline-flex;align-items:center;gap:8px;color:#396c5c;background:#e9f1e9;border:1px solid #d5e6d8;border-radius:8px;padding:9px 12px;font-size:11px}.panel{background:#fff;border:1px solid #e1e8df;box-shadow:0 9px 35px #183c2410;border-radius:14px;padding:22px;min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.panel-head h2{font-size:16px;margin:0 0 4px}.panel-head p{font-size:12px;color:#9ba8a1;margin:0}.empty{text-align:center;color:#9aa6a0;padding:50px 20px;display:flex;align-items:center;flex-direction:column}.empty-mark{font-size:28px;border:1px dashed #d6e2d9;color:#6c9882;width:54px;height:54px;line-height:50px;border-radius:50%;margin-bottom:12px}.empty strong{color:#66776d;font-size:14px}.empty p{max-width:400px;font-size:12px;margin:8px 0 0}.loading{display:flex;align-items:center;justify-content:center;gap:10px;color:#789083;padding:45px;font-size:13px}.spin{animation:spin 1.4s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notice{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;font-size:12px;margin:10px 0}.notice-error{background:#fff0ed;color:#b35343;border:1px solid #f0c8be}.notice-success{background:#eaf8ee;color:#2e8050;border:1px solid #c8e5d0}.notice .link-button{margin-left:auto;font-size:11px}.status{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:5px;background:#eef2ee;color:#6f8276;font-size:10px;font-weight:600;white-space:nowrap}.status-dot{width:5px;height:5px;background:currentColor;border-radius:50%}.status-ready,.status-passed,.status-mastered,.status-enabled,.status-completed{background:#e5f6e9;color:#2a9162}.status-active,.status-running,.status-planned{background:#e7f1fb;color:#4174a0}.status-failed,.status-recovery,.status-cancelled{background:#fff0e8;color:#c06f45}.status-submitted,.status-assessing,.status-queued{background:#f8f1df;color:#aa8a45}.status-locked,.status-disabled,.status-blocked{background:#f0f2ef;color:#8c9990}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0}.stat{background:#fff;border:1px solid #e1e8df;border-radius:12px;padding:19px 20px;display:flex;flex-direction:column;min-height:112px}.stat>span{font-size:11px;color:#889890}.stat strong{font-family:IBM Plex Mono,monospace;font-size:28px;line-height:1.4;font-weight:600;letter-spacing:-.04em;color:#253a31}.stat small{color:#a3aea8}.stat.teal{border-top:3px solid #4ca688}.stat.blue{border-top:3px solid #81abd3}.stat.amber{border-top:3px solid #dfb874}.dashboard-hero{position:relative;overflow:hidden;background:#183e36;color:#fff;border-radius:16px;min-height:274px;padding:33px 40px;display:flex;justify-content:space-between}.dashboard-hero:after{content:"";position:absolute;right:30%;top:-50%;height:400px;width:400px;border-radius:50%;background:#a0d99809;filter:blur(30px)}.hero-copy{position:relative;z-index:1}.hero-kicker{font-size:10px;letter-spacing:.12em;color:#b3d9be;display:flex;align-items:center;gap:8px}.live-dot{width:7px;height:7px;background:#c5ee8d;border-radius:50%;box-shadow:0 0 10px #bfea8b}.hero-copy h2{font-size:31px;line-height:1.25;margin:23px 0 11px;letter-spacing:-.04em}.hero-copy h2 em{font-style:normal;color:#c6eea0}.hero-copy p{font-size:12px;color:#a9c8b8;max-width:470px;margin-bottom:23px}.hero-actions{display:flex;gap:10px}.hero-orbit{width:260px;height:260px;position:absolute;right:8%;top:6px}.orbit{position:absolute;border:1px solid #b5dec035;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit.outer{width:248px;height:248px}.orbit.middle{width:175px;height:175px}.orbit.inner{width:105px;height:105px;background:#ffffff08}.orbit-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#d6efb8}.orbit-label{font:10px IBM Plex Mono,monospace;letter-spacing:.1em;color:#c1dfa9;position:absolute}.orbit-label-one{top:18px;left:35px}.orbit-label-two{top:100px;right:0}.orbit-label-three{bottom:24px;left:14px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:16px;margin-bottom:16px}.dashboard-grid.lower{margin-top:16px}.task-row{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #eef1ed}.task-row:last-child{border-bottom:0}.task-number{background:#eef4ec;color:#407f66;font-size:10px;padding:7px;border-radius:6px}.task-row-main{flex:1;min-width:0}.task-row-main strong{display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-row-main span{display:block;color:#99a69c;font-size:11px;margin-top:4px}.progress-panel{display:flex;flex-direction:column;align-items:center}.progress-panel .panel-head{align-self:stretch}.progress-ring{width:140px;height:140px;border-radius:50%;background:conic-gradient(#49ad82 var(--progress),#e8eee7 var(--progress));display:flex;align-items:center;justify-content:center;margin:9px 0 19px}.progress-ring>div{width:112px;height:112px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.progress-ring strong{font:600 28px IBM Plex Mono,monospace;color:#1b684f}.progress-ring span{font-size:11px;color:#9aac9e}.progress-legend{width:100%;margin-bottom:16px}.progress-legend>div{display:flex;align-items:center;font-size:11px;color:#8b9b91;margin:8px 0}.progress-legend strong{margin-left:auto;color:#35483e}.legend-marker{width:8px;height:8px;border-radius:50%;margin-right:8px}.legend-marker.teal{background:#49ad82}.legend-marker.blue{background:#81abd3}.legend-marker.gray{background:#d3ded6}.activity-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #eff2ee}.activity-row:last-child{border-bottom:0}.activity-icon{background:#edf4ef;color:#4d9373;border-radius:7px;padding:8px;display:flex}.activity-row>div{flex:1;min-width:0}.activity-row strong{display:block;font-size:11px}.activity-row small{color:#a0aaa3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.muted-icon{color:#9eb1a4}.next-item{display:flex;gap:11px;padding:13px 0;border-bottom:1px solid #eff2ee;align-items:start}.next-item:last-child{border:0}.next-item>span{background:#eef6e9;color:#3a8a64;display:flex;border-radius:7px;padding:7px}.next-item>div{flex:1}.next-item strong{font-size:12px}.next-item p{font-size:11px;color:#9aa69e;margin:3px 0 0}.next-item>a{color:#679377;padding:4px}.teacher-layout{display:grid;grid-template-columns:230px minmax(0,1fr);height:calc(100vh - 225px);min-height:540px;border:1px solid #dfe7dd;border-radius:14px;background:#fff;overflow:hidden}.teacher-history{border-right:1px solid #e6ece5;display:flex;flex-direction:column;min-height:0;background:#fbfcf9}.teacher-history-head{display:flex;align-items:center;justify-content:space-between;padding:19px 17px 14px;font-size:13px}.teacher-history .loading{padding:20px}.conversation-item{width:calc(100% - 22px);margin:2px 11px;display:flex;align-items:center;gap:8px;padding:11px;border:0;border-radius:7px;background:transparent;text-align:left;color:#718076;font-size:12px}.conversation-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item:hover,.conversation-item.selected{background:#eaf4e8;color:#176b54}.teacher-history-foot{margin-top:auto;padding:16px;display:flex;gap:7px;color:#8fa197;font-size:10px;border-top:1px solid #e7ece6}.chat-panel{display:flex;flex-direction:column;min-height:0}.chat-top{height:66px;flex:none;border-bottom:1px solid #e9eee8;display:flex;align-items:center;padding:0 22px;gap:10px}.chat-avatar,.chat-welcome-icon{background:#eaf4e7;color:#3d8964;display:flex;align-items:center;justify-content:center;border-radius:9px;width:34px;height:34px}.chat-top strong{display:block;font-size:12px}.chat-top small{color:#a2afa5}.mode-select{display:flex;align-items:center;gap:5px;margin-left:auto;border:1px solid #dce7db;border-radius:8px;padding:6px 9px;font-size:11px;color:#8c9c91}.mode-select select{border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#1f6b54;background:transparent;font:600 11px IBM Plex Mono,monospace;outline:0}.chat-scroll{flex:1;overflow:auto;padding:27px 33px}.chat-welcome{max-width:520px;margin:7vh auto 0;text-align:center}.chat-welcome-icon{margin:auto auto 19px;width:62px;height:62px;border-radius:17px;background:#e9f6e9}.chat-welcome h2{font-size:25px;margin:12px 0}.chat-welcome p{color:#8c9a90;font-size:13px}.welcome-prompts{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:22px}.welcome-prompts button{font-size:11px;color:#397d60;background:#f5faf3;border:1px solid #dcebdd;border-radius:7px;padding:8px 10px}.welcome-prompts button:hover{background:#e6f3e4}.chat-message{display:flex;align-items:flex-start;gap:12px;max-width:760px;margin:0 auto 22px}.chat-message-avatar{flex:0 0 28px;height:28px;width:28px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#e7f3e6;color:#2d8961;font-size:12px;font-weight:700}.from-user .chat-message-avatar{background:#e7e9ed;color:#546179}.chat-message-body{flex:1;min-width:0}.chat-message-body span{display:block;color:#809088;font-size:11px;font-weight:700;margin:1px 0 6px}.chat-message-body p{font-size:13px;white-space:pre-wrap;color:#2b3930;background:#f7faf5;border:1px solid #e7efe5;border-radius:0 11px 11px;padding:12px 15px;margin:0;line-height:1.75}.from-user .chat-message-body p{background:#edf2f0;border-color:#e6ece9}.thinking i{display:inline-block;background:#8ab49c;width:4px;height:4px;border-radius:50%;margin-right:2px;animation:pulse 1s infinite}.thinking i:nth-child(2){animation-delay:.2s}.thinking i:nth-child(3){animation-delay:.4s}@keyframes pulse{50%{opacity:.2}}.chat-compose{border-top:1px solid #e9eee8;padding:13px 27px 18px}.chat-compose form{display:flex;gap:8px;max-width:800px;margin:auto;border:1px solid #cfded2;border-radius:12px;padding:7px 7px 7px 15px;background:#fbfdfa}.chat-compose textarea{resize:none;flex:1;border:0;outline:0;background:transparent;font-size:13px;color:#293a30;min-height:40px}.send-button{border:0;border-radius:8px;background:#216e55;color:#fff;width:37px;height:37px;align-self:end;display:flex;align-items:center;justify-content:center}.chat-compose>small{display:block;text-align:center;color:#a6b2a7;margin-top:8px;font-size:10px}.chat-trace-link{font:10px IBM Plex Mono,monospace;color:#327f64;display:block;margin:0 auto 7px;max-width:800px}.exam-note{max-width:800px;margin:0 auto 8px;color:#8e7547;background:#fff8e8;font-size:11px;padding:7px;display:flex;align-items:center;gap:5px;border-radius:6px}.explorer-panel{padding:0;overflow:hidden}.explorer-tools{display:flex;gap:10px;padding:16px;border-bottom:1px solid #e8eee7}.search-field,.filter-select{display:flex;align-items:center;gap:8px;border:1px solid #dce6db;background:#fbfdfb;border-radius:8px;padding:0 10px;color:#90a498;min-height:38px}.search-field{flex:1}.search-field input,.filter-select select{border:0;background:transparent;outline:0;width:100%;font-size:12px;color:#26392e}.search-field input::placeholder{color:#aab6aa}.filter-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:115px}.inner-search{margin-bottom:15px}.table-wrap{overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:12px;min-width:700px}.data-table th{text-align:left;color:#99a69d;font-size:10px;font-weight:600;background:#fafcf9;padding:11px 16px;border-bottom:1px solid #e9eee8}.data-table td{padding:12px 16px;border-bottom:1px solid #edf1ec;color:#687a6f}.data-table td:last-child{color:#6a9b7b}.data-table td:nth-child(4){white-space:nowrap}.data-table td:nth-child(4) svg{vertical-align:middle}.data-table tr{cursor:pointer}.data-table tbody tr:hover{background:#f7fbf6}.table-title{color:#293b2f;font-weight:700;font-size:12px}.table-sub{color:#a3b0a6;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:450px;margin-top:4px}.id-pill{font-size:10px;color:#337d5c;background:#eaf6e8;border-radius:4px;padding:4px 6px}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;color:#98a89c;font-size:11px}.table-footer>div{display:flex;gap:7px}.drawer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#101c18a8;z-index:50;display:flex;justify-content:flex-end}.task-drawer{width:min(620px,100%);height:100vh;overflow:auto;background:#fbfdf9;box-shadow:-10px 0 30px #0002;padding:24px 30px 50px}.drawer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.task-detail-head h2{font-size:27px;margin:10px 0 13px}.detail-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:23px 0}.detail-meta div{background:#eef5ef;border-radius:8px;padding:12px}.detail-meta span{display:block;font-size:10px;color:#98a89a}.detail-meta strong{display:block;font-size:12px;margin-top:4px}.detail-section{padding:17px 0;border-top:1px solid #e4ebe3}.detail-section h3,.detail-form h3{font-size:13px;margin-bottom:9px}.detail-section p{font-size:12px;color:#63746a;margin-bottom:0;white-space:pre-wrap}.token-list{display:flex;flex-wrap:wrap;gap:6px}.token{display:inline-flex;align-items:center;gap:4px;color:#2c8061;background:#e7f3e9;padding:5px 8px;border-radius:5px;font:10px IBM Plex Mono,monospace}.token.neutral{color:#637d71;background:#eef3ed}.detail-form,.review-form{border:1px solid #dce8d9;background:#fff;border-radius:10px;padding:17px;margin:16px 0}.detail-form label,.review-form label{display:block;font-size:11px;color:#697e6e;margin-bottom:13px;font-weight:700}.detail-form input,.detail-form textarea,.review-form input,.review-form textarea{width:100%;display:block;margin-top:6px;border:1px solid #d7e3d8;border-radius:7px;background:#fcfefb;padding:9px;font-size:12px;color:#2a3c2f;outline-color:#75b792;resize:vertical}.attempt-section{margin-top:20px}.attempt-card{border:1px solid #dde9da;border-radius:10px;padding:15px;margin:10px 0;background:#fff}.attempt-head{display:flex;align-items:center;justify-content:space-between}.attempt-head strong{font-size:12px}.attempt-card>p{margin:10px 0;white-space:pre-wrap}.assessment-feedback{border-left:3px solid #75b68b;padding:9px 12px;margin-top:11px;background:#f1f8f1}.assessment-feedback strong{font-size:11px}.assessment-feedback p{margin:5px 0 0}.review-form{margin-bottom:0;background:#fbfdfa}.review-form h4{font-size:12px;margin:0 0 5px}.score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.score-grid label{margin-bottom:0}.review-form .check-label{display:flex;align-items:center;gap:7px}.check-label input{width:auto;display:inline;margin:0}.split-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:16px;align-items:start}.stack-form{display:flex;flex-direction:column;gap:15px}.stack-form label{font-size:12px;color:#64786a;font-weight:700;display:flex;flex-direction:column;gap:7px}.stack-form input,.stack-form select,.stack-form textarea{width:100%;border:1px solid #d9e5d9;border-radius:8px;background:#fbfdf9;padding:10px 11px;font-size:12px;color:#2d3f30;outline-color:#76b893;resize:vertical}.stack-form input::placeholder,.stack-form textarea::placeholder{color:#a9b7aa}.stack-form .button{align-self:flex-start}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.node-list{max-height:610px;overflow:auto}.node-item,.graph-link{width:100%;display:flex;align-items:center;gap:11px;background:transparent;border:0;border-bottom:1px solid #eff3ed;padding:10px 6px;text-align:left;color:#96a699}.node-item:hover,.node-item.selected,.graph-link:hover{background:#f2f8f1}.node-item>span:nth-child(2){flex:1;min-width:0}.node-item strong,.graph-link strong{display:block;color:#354739;font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.node-item small{display:block;color:#a1afa4;margin-top:4px;font-size:10px}.node-icon{background:#eaf4e7;color:#378361;display:flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;border-radius:8px}.node-focus{background:#e9f5e9;border-radius:10px;padding:19px}.node-focus h2{margin:8px 0 12px}.graph-section{margin:23px 0}.graph-section h3{font-size:12px;margin-bottom:10px}.graph-link{padding:10px;border:1px solid #e3ebe1;margin-bottom:7px;border-radius:7px}.graph-link span{font:10px IBM Plex Mono,monospace;color:#389366}.graph-link strong{flex:1}.graph-connector{border-left:1px dashed #9ec5a5;margin-left:15px;padding:10px;color:#5ea279}.mastery-row{padding:20px 0;border-top:1px solid #e8eee7}.mastery-row-title{display:flex;align-items:center;gap:10px;margin-bottom:16px}.mastery-row-title strong{display:block;font:600 13px IBM Plex Mono,monospace}.mastery-row-title small{display:block;color:#a4b0a5;margin-top:4px}.mastery-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.mastery-dim>div:first-child{display:flex;justify-content:space-between;gap:5px;font-size:10px;color:#8da092;margin-bottom:6px}.mastery-dim strong{color:#3f7458;font-family:IBM Plex Mono,monospace}.bar-track{height:5px;background:#e9f0e8;border-radius:5px;overflow:hidden}.bar-track>div{height:100%;background:#63b78b;border-radius:5px}.card-list{display:flex;flex-direction:column;gap:10px}.work-card,.assessment-card,.memory-card,.automation-card,.notification-item{display:flex;gap:13px;border:1px solid #e5ece4;border-radius:10px;padding:15px;background:#fcfefb}.work-card-icon,.assessment-icon,.memory-icon,.automation-icon,.notification-icon{flex:0 0 36px;height:36px;display:flex;align-items:center;justify-content:center;background:#edf6ea;color:#4f9770;border-radius:8px}.work-card>div:nth-child(2),.assessment-main,.memory-card>div,.automation-main,.notification-item>div:nth-child(2){flex:1;min-width:0}.work-card h3,.research-card h3,.assessment-card h3,.automation-card h3,.notification-item h3,.provider-card h3{font-size:13px;margin:0 0 6px}.work-card p,.assessment-card p,.research-card p,.notification-item p{color:#839285;font-size:11px;margin:0 0 9px;white-space:pre-wrap}.work-card-top,.assessment-top,.automation-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.work-card-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#9ba99d;font-size:10px}.work-card-meta a{color:#3c8b63}.research-start{margin-bottom:16px}.research-start-heading{display:flex;gap:13px;align-items:center;margin-bottom:17px}.research-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:9px;color:#518d6a;background:#e7f5e7}.research-start h2{font-size:16px;margin:0 0 4px}.research-start p{font-size:11px;color:#9ca89e;margin:0}.research-form{display:flex;gap:10px}.research-form .search-field{min-width:0}.research-form .task-id-input{width:170px;border:1px solid #dce6db;border-radius:8px;background:#fbfdfb;padding:0 10px;font-size:12px}.job-status{font-size:11px;color:#677b6e;display:flex;align-items:center;gap:8px;margin-top:12px}.job-status strong{font-family:IBM Plex Mono,monospace}.research-card{border:1px solid #e3eae2;border-radius:10px;padding:17px}.research-card-top{display:flex;justify-content:space-between;margin-bottom:12px}.research-card h3{font-size:14px}.score-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.score-chips span{color:#5c896e;font-size:10px;background:#edf5e9;border-radius:4px;padding:5px 7px}.score-chips strong{color:#275d42}.memory-card p{font-size:12px;color:#415447;white-space:pre-wrap;margin:6px 0}.memory-card small{color:#9faa9e}.memory-card-top{display:flex;justify-content:space-between}.automation-path{display:flex;align-items:center;gap:8px;color:#5b8a6d;font:10px IBM Plex Mono,monospace;margin:8px 0 14px}.automation-path span{background:#edf5eb;padding:5px;border-radius:4px}.automation-actions{display:flex;align-items:center;gap:15px}.agent-list{display:flex;flex-direction:column;gap:5px}.agent-item{border:1px solid #e6ece4;background:#fcfefa;border-radius:8px;display:flex;align-items:center;gap:10px;padding:10px;width:100%;text-align:left}.agent-item.selected,.agent-item:hover{background:#eef7ed;border-color:#c9e0cb}.agent-item>div:nth-child(2){flex:1;min-width:0}.agent-item strong{display:block;font-size:12px}.agent-item small{font-size:10px;color:#a0ada1}.agent-item small .muted{font-size:10px}.agent-mark{display:flex;padding:8px;background:#e9f3e8;border-radius:8px;color:#538d66}.agent-detail-title h2{margin:9px 0}.agent-metrics{display:flex;gap:15px;color:#789184;font-size:11px;padding:12px 0;border-bottom:1px solid #e6ece4}.agent-metrics span{display:flex;align-items:center;gap:5px}.agent-step{display:flex;gap:10px;border-bottom:1px solid #e6ece4;padding:13px 0}.agent-step-index{font:10px IBM Plex Mono,monospace;color:#3c9060}.agent-step pre{font:11px/1.5 IBM Plex Mono,monospace;color:#546c57;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.provider-summary{background:#183e35;color:#bce5c0;border-radius:10px;padding:16px 20px;margin-bottom:16px}.provider-summary>div{display:flex;align-items:center;gap:11px;font-size:11px}.provider-summary>div>span{color:#7aa78a}.provider-summary p{font:10px DM Sans,Noto Sans SC,sans-serif;color:#9bbfab;margin:8px 0 0}.provider-card{border:1px solid #e1eae0;border-radius:9px;padding:13px}.provider-card-head{display:flex;align-items:center;gap:10px}.provider-card-head>div:nth-child(2){flex:1;min-width:0}.provider-card-head small{font-size:10px;color:#9ca99e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.provider-icon{display:flex;padding:8px;border-radius:8px;background:#e6f3e7;color:#438a66}.provider-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:13px;color:#5b7d66;font-size:11px;border-top:1px solid #edf1eb;padding-top:12px}.routes-grid{margin-top:16px}.route-card{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #ebf0e9}.route-mark{background:#e8f2e8;border-radius:7px;padding:7px;color:#4f9569}.route-card strong{display:block;font:600 11px IBM Plex Mono,monospace}.route-card small{display:block;color:#9aaa9d;font-size:10px;margin-top:4px}.notification-list{display:flex;flex-direction:column;gap:8px}.notification-item.unread{background:#f5fbf3;border-color:#cfe7d0}.notification-item .button{align-self:center}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid #eef1ed;font-size:12px;gap:15px}.settings-row span{color:#8a9a8d}.settings-row strong{overflow-wrap:anywhere;text-align:right}.settings-row+.button{margin-top:20px}.settings-info{display:flex;gap:8px;color:#789486;padding:12px 0;align-items:flex-start}.settings-info svg{flex:none}.settings-info p{margin:0;font-size:11px;color:#8b9b8d}.auth-page{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:#fbfdf9}.auth-aside{background:#173e34;color:#fff;min-height:100vh;position:relative;overflow:hidden}.auth-aside:before,.auth-aside:after{content:"";position:absolute;border:1px solid #addda531;border-radius:50%;width:700px;height:700px;left:35%;top:21%}.auth-aside:after{width:500px;height:500px;left:52%;top:33%;background:#baf1a607}.auth-aside-inner{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;padding:0 6vw}.auth-brand{padding:40px 0}.auth-statement{margin:auto 0}.auth-statement .eyebrow{color:#bfe4b0}.auth-statement h1{font-size:clamp(36px,4vw,61px);line-height:1.28;margin:20px 0 24px}.auth-statement h1 strong{color:#c7ee9d;font-weight:700}.auth-statement p{max-width:420px;color:#a5c8b2;font-size:15px;line-height:1.9}.auth-track{display:flex;gap:20px;padding:35px 0;color:#9bc6a7;letter-spacing:.07em;font-size:10px}.auth-form-wrap{display:flex;align-items:center;justify-content:center;padding:32px}.auth-form{width:min(410px,100%)}.auth-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:#e8f5e5;border-radius:14px;color:#3c8962;margin-bottom:23px}.auth-form h2{font-size:30px;margin:12px 0 8px}.auth-form>p{color:#88988d;font-size:13px;margin-bottom:25px}.auth-form form{display:flex;flex-direction:column;gap:17px}.auth-form label{display:block;font-size:12px;color:#4e6354;font-weight:700}.auth-form input{display:block;width:100%;margin-top:8px;border:1px solid #d5e3d7;background:#fff;border-radius:8px;padding:13px;font-size:13px;outline-color:#76b893}.auth-form form .button{margin-top:6px;padding:14px}.rotate-left{transform:rotate(-90deg)}.auth-switch{border:0;background:transparent;color:#268361;font-size:12px;font-weight:700;display:block;margin:19px auto 35px}.auth-note{display:flex;align-items:center;justify-content:center;gap:7px;color:#a6b3a7;text-align:center;font-size:10px}.head-actions{display:flex;align-items:center;gap:8px}.planning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.plan-card{padding:0;overflow:hidden}.plan-card-head{display:flex;align-items:flex-start;gap:13px;padding:22px;border-bottom:1px solid #e8eee7}.plan-number{width:33px;height:33px;flex:none;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#e7f4e7;color:#398462;font:600 12px IBM Plex Mono,monospace}.plan-card-head>div:nth-child(2){flex:1}.plan-card-head h2{margin:5px 0 4px;font-size:18px}.plan-card-head p{font-size:11px;color:#95a499;margin:0}.plan-card-date{color:#74907b;font:11px IBM Plex Mono,monospace;display:flex;align-items:center;gap:5px;white-space:nowrap}.plan-rationale{display:flex;align-items:flex-start;gap:9px;margin:15px 22px;background:#f1f7ed;border:1px solid #e0edda;padding:10px;border-radius:8px;color:#55916b}.plan-rationale svg{flex:none;margin-top:1px}.plan-rationale p{font-size:11px;color:#607b67;margin:0}.plan-meta{display:flex;gap:15px;align-items:center;padding:0 22px 14px;color:#9bad9d;font-size:10px}.plan-meta span{display:inline-flex;align-items:center;gap:4px}.plan-task-list{border-top:1px solid #e8eee7}.plan-task{display:flex;gap:9px;align-items:center;padding:10px 22px;border-bottom:1px solid #f0f2ed}.plan-task:hover{background:#f8fcf6}.plan-task>div{flex:1;min-width:0}.plan-task strong{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-task small{display:block;font-size:10px;color:#9cab9d;margin-top:3px}.plan-task>svg{color:#629573}.plan-expand{margin:14px 22px}.plan-expand .up,.plan-history-toggle .up{transform:rotate(180deg)}.plan-history{margin-top:17px}.plan-history-toggle{border:0;background:transparent;display:flex;align-items:center;gap:12px;width:100%;text-align:left;color:#405c48}.plan-history-toggle span{font-weight:700;font-size:14px}.plan-history-toggle strong{font:10px IBM Plex Mono,monospace;color:#84a28a}.plan-history-toggle svg{margin-left:auto}.plan-history-list{border-top:1px solid #e9eee7;margin-top:15px}.plan-history-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:13px 0;border-bottom:1px solid #eef2eb;color:#809583;font-size:10px}.plan-history-row .mono{color:#397a57}.plan-history-row>div{display:flex;gap:5px;flex-wrap:wrap}.plan-history-row a{font:10px IBM Plex Mono,monospace;color:#387e5b;background:#edf5e8;border-radius:4px;padding:3px 5px}.plan-history-row p{width:100%;margin:0;color:#8a9a8c;font-size:10px}.side-stack{display:flex;flex-direction:column;gap:16px}.work-card-button{width:100%;text-align:left;cursor:pointer}.work-card-button.selected,.work-card-button:hover{border-color:#b5d7bd;background:#f4fbf2}.project-detail-title h3{font-size:18px;margin:6px 0}.project-detail-title p{color:#8b9b8c;font-size:11px}.project-counts{display:flex;gap:9px;margin:13px 0}.project-counts span{font:10px IBM Plex Mono,monospace;background:#ecf5e9;color:#4d8562;border-radius:5px;padding:6px 8px}.project-detail>h4{font-size:12px;margin:22px 0 8px}.project-test-row{display:flex;gap:8px;align-items:center;border-top:1px solid #eef2ec;padding:9px 0}.project-test-row>div{flex:1}.project-test-row strong{display:block;font-size:11px}.project-test-row small{display:block;color:#9aab9c;font-size:10px}.project-test-form{border-top:1px solid #e9eee6;padding-top:16px;margin-top:15px}.artifact-open{margin-top:10px}.artifact-preview{font:11px/1.6 IBM Plex Mono,monospace;background:#17241b;color:#d9eed8;border-radius:7px;padding:12px;white-space:pre-wrap;max-height:250px;overflow:auto}.research-content{white-space:pre-wrap;max-height:400px;overflow:auto}.research-sources{display:flex;flex-direction:column;gap:6px;margin-top:12px}.research-sources a{display:flex;align-items:center;gap:5px;color:#418366;font-size:11px;overflow-wrap:anywhere}.research-review{border-top:1px solid #e9eee5;margin-top:14px;padding-top:14px}.proposal-apply{margin-top:13px}.resource-link{display:flex;align-items:center;gap:9px;border:1px solid #e6eee3;border-radius:7px;padding:9px 10px;margin-bottom:7px;color:#4b8062}.resource-link span{flex:1;font-size:11px;color:#334d3b}.resource-link small{display:block;font-size:9px;color:#9daa9e;margin-top:3px}.recovery-card{background:#fffaf2;border:1px solid #f0e3cb;border-radius:9px;padding:13px;margin:10px 0}.recovery-card>p{font-size:11px;color:#736c5b;white-space:pre-wrap;margin:9px 0}.recovery-card .detail-form{margin-bottom:0}.recovery-card .assessment-feedback{margin-top:9px}.hours-field{display:flex;align-items:center;gap:6px;font-size:11px;color:#708978;white-space:nowrap}.hours-field input{width:55px;border:1px solid #d4e3d6;background:#fff;border-radius:7px;padding:8px 5px;text-align:center;color:#2e6d4e;font:600 12px IBM Plex Mono,monospace}.goal-card{display:flex;gap:12px;border:1px solid #e3ece1;background:#fcfefa;border-radius:9px;padding:15px}.goal-card>div:nth-child(2){flex:1;min-width:0}.goal-card h3{font-size:13px;margin:0}.goal-card p{font-size:11px;color:#819282;margin:8px 0}.goal-card small{color:#97a999;font-size:10px}.goal-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;border-radius:8px;background:#e7f5e5;color:#4b9669}.memory-search{display:flex;gap:8px;align-items:center;margin-bottom:15px}.memory-search .search-field{margin:0}.automation-config{font:10px/1.5 IBM Plex Mono,monospace;color:#688773;background:#f3f8f0;border-radius:6px;padding:8px;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 10px}.workflow-runs{margin-top:16px}.workflow-run-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #edf2ea}.workflow-run-row>div{flex:1;min-width:0}.workflow-run-row strong{font-size:11px;display:block}.workflow-run-row small{font-size:10px;color:#a3afa4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}@media(max-width:1050px){.planning-grid{grid-template-columns:1fr}}@media(max-width:600px){.head-actions,.plan-card-head{flex-wrap:wrap}.plan-card-date{margin-left:46px}.plan-task{padding:10px 14px}.plan-task .status{display:none}}@media(max-width:1250px){.main-content{padding:30px 25px}.sidebar{width:220px;flex-basis:220px}.hero-orbit{right:3%}.dashboard-grid{grid-template-columns:1.4fr 1fr}.split-grid{grid-template-columns:1fr 1fr}}@media(max-width:1050px){.dashboard-grid,.split-grid{grid-template-columns:1fr}.hero-orbit{opacity:.55}.teacher-layout{height:calc(100vh - 200px)}}@media(max-width:800px){.sidebar{position:fixed;left:-260px;transition:left .2s;box-shadow:10px 0 30px #0002}.sidebar.sidebar-open{left:0}.sidebar-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0008;z-index:10}.mobile-menu{display:inline-flex}.topbar{padding:0 20px}.main-content{padding:25px 20px 60px}.system-pill{display:none}.stat-grid{grid-template-columns:repeat(2,1fr)}.auth-page{grid-template-columns:minmax(0,1fr);width:100%;overflow-x:hidden}.auth-aside,.auth-form-wrap{min-width:0}.auth-aside{min-height:250px}.auth-aside-inner{padding:0 30px}.auth-brand{padding:25px 0}.auth-statement{margin:30px 0}.auth-statement h1{font-size:30px}.auth-statement p,.auth-track{display:none}.auth-form-wrap{min-height:60vh}.auth-form,.auth-form form,.auth-form input{min-width:0;max-width:100%}}@media(max-width:600px){.page-head{align-items:flex-start;flex-direction:column;gap:12px}.page-head h1{font-size:27px}.dashboard-hero{padding:26px;min-height:290px}.hero-orbit{right:-110px;opacity:.25}.hero-actions{flex-wrap:wrap}.stat{padding:15px}.stat strong{font-size:25px}.teacher-layout{display:flex;flex-direction:column;height:calc(100vh - 195px);min-height:500px}.teacher-history{display:none}.chat-scroll{padding:18px}.chat-compose{padding:10px}.research-form{flex-wrap:wrap}.research-form .search-field{flex-basis:100%}.research-form .task-id-input{height:39px;flex:1}.mastery-bars{grid-template-columns:repeat(2,1fr)}.explorer-tools{flex-wrap:wrap}.explorer-tools .search-field{flex-basis:100%}.filter-select{flex:1}.score-grid{grid-template-columns:repeat(2,1fr)}.task-drawer{padding:20px}.detail-meta{grid-template-columns:1fr 1fr}.form-two{grid-template-columns:1fr}.notification-item{flex-wrap:wrap}.notification-item .button{margin-left:49px}.provider-summary>div{flex-wrap:wrap}.topbar-right{gap:12px}}
