/* Presentation layer kept separate from vendor/theme-v2. See THEME_STATUS.md. */
:root{--ink:#172e38;--muted:#77858c;--line:#e7ecee;--green:#0b8276;--green-dark:#08665d;--green-light:#eaf6f2;--nav:#142d35;--bg:#f4f6f8;--gold:#b58a35;--red:#bf574c;--radius:14px;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:var(--green);text-decoration:none}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #60bfb2;outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid #78c4b9;outline-offset:1px}svg{flex:none;vertical-align:middle}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-.8px;line-height:1.25;font-weight:650}h2{font-size:20px;font-weight:650;letter-spacing:-.35px}h3{font-size:17px;line-height:1.5}small{font-size:15px}.muted{color:var(--muted)}.eyebrow{font-size:13px;letter-spacing:1.8px;font-weight:700;color:var(--green)}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.push{margin-left:auto}.gap6{gap:6px}.required{color:var(--red)}.link-btn{border:0;background:transparent;color:var(--green);padding:0;font-weight:600}.boot{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column}.boot img{margin-bottom:25px}.sidebar{position:fixed;inset:0 auto 0 0;width:242px;background:var(--nav);color:#a7bbc1;padding:28px 17px 20px;z-index:30;display:flex;flex-direction:column;overflow:auto}.brand{display:flex;align-items:center;gap:11px;padding:0 10px 29px;color:white}.brand img{width:39px}.brand b{font-size:17px;display:block;letter-spacing:.15px}.brand small{display:block;font-size:13px;color:#92acb4;margin-top:5px;letter-spacing:1.7px}.nav-caption{font-size:12px;text-transform:uppercase;letter-spacing:1.7px;color:#74929c;padding:20px 15px 10px}.nav-item{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:8px;color:#adc0c7;font-size:15px;font-weight:500;width:100%;border:0;background:transparent;text-align:left;margin-bottom:3px;line-height:1.45}.nav-item:hover{color:#fff;background:#203f48}.nav-item.active{background:#21796e;color:white;box-shadow:inset 3px 0 #74c9ae}.nav-item small{margin-left:auto;background:#33515a;padding:1px 6px;border-radius:5px;color:#cfe2e5}.nav-item.active small{background:#ffffff24;color:white}.nav-sub{padding:6px 10px 6px 45px;font-size:14px;display:block;color:#9cb4bc;line-height:1.4}.nav-sub:hover,.nav-sub.active{color:#fff}.sidebar-bottom{margin-top:auto;padding-top:32px}.help-card{margin:14px 8px 5px;padding:17px;background:#1c3a43;border:1px solid #2a4852;border-radius:11px;font-size:14px;line-height:1.7}.help-card b{color:#e7f1f1;font-size:15px;display:block;margin-bottom:5px}.help-card button{margin-top:9px;background:none;border:none;color:#9dd5bd;font-size:14px;padding:0}.shell{margin-left:242px;min-height:100vh}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);padding:0 34px;display:flex;align-items:center;gap:18px;position:sticky;top:0;z-index:20}.breadcrumbs{font-size:15px;color:#809096;display:flex;align-items:center;gap:10px}.breadcrumbs b{color:#334951;font-weight:550}.global-search{margin-left:auto;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;gap:9px;color:#8d9ba2;min-width:240px;padding:9px 12px;font-size:15px;background:#fbfcfc;text-align:left}.global-search kbd{font:10px inherit;border:1px solid #dfe5e7;border-radius:3px;padding:2px 4px;margin-left:auto}.icon-btn{border:1px solid var(--line);background:white;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;min-width:35px;height:35px;color:#63777f;position:relative}.icon-btn:hover{color:var(--green);border-color:#afd5cb}.notif-dot{position:absolute;width:6px;height:6px;border-radius:50%;background:#d29940;top:6px;right:7px}.top-user{border-left:1px solid var(--line);padding-left:18px;display:flex;align-items:center;gap:10px}.avatar{display:inline-flex;width:37px;height:37px;align-items:center;justify-content:center;border-radius:50%;background:#dcece5;color:#356a5b;font-weight:700;font-size:15px;flex:none}.avatar.small{width:28px;height:28px;font-size:13px}.user-text b{font-size:15px;display:block}.user-text small{color:var(--muted);font-size:13px}.person-switch{border:0;background:none;padding:0;display:flex;align-items:center;gap:10px;text-align:left;color:inherit}.content{max-width:1660px;margin:auto;padding:29px 34px 45px}.page-top{display:flex;justify-content:space-between;gap:20px;margin-bottom:24px;align-items:center}.page-top h1{margin:8px 0 8px}.page-top p{font-size:15px;color:var(--muted);margin:0;line-height:1.8}.demo-pill{display:inline-flex;font-size:13px;padding:5px 9px;border:1px solid #dce8e3;background:#f5faf7;color:#587869;border-radius:30px;gap:5px;align-items:center}.btn{border:1px solid #dce4e7;background:white;color:#415963;min-height:36px;padding:8px 13px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:14px;font-weight:600;line-height:1.5;white-space:normal;text-align:center}.btn:hover{border-color:#a8c5c1;background:#f9fcfb}.btn.primary{background:var(--green);border-color:var(--green);color:white;box-shadow:0 2px 2px #112f2520}.btn.primary:hover{background:var(--green-dark)}.btn.danger{background:var(--red);border-color:var(--red);color:white}.btn.ghost{background:transparent;border-color:transparent;color:var(--green)}.btn.small{font-size:13px;min-height:30px;padding:5px 9px}.btn.gold{background:#faf4e7;border-color:#e7d7b3;color:#8b6b2b}.banner{background:#edf5f1;border:1px solid #dbeae2;border-radius:var(--radius);padding:23px 25px;display:flex;gap:20px;align-items:center;position:relative;overflow:hidden;margin-bottom:22px}.banner h2{font-size:22px;color:#285b4f;margin:0 0 8px}.banner p{font-size:15px;line-height:1.8;color:#6b857c;margin:0;max-width:620px}.banner-art{margin-left:auto;width:180px;align-self:stretch;display:flex;align-items:center;justify-content:center;position:relative;color:#4a9380}.banner-art:before,.banner-art:after{content:"";position:absolute;border:1px solid #c3dcd0;border-radius:50%;height:150px;width:150px}.banner-art:after{height:110px;width:110px}.banner-art svg{background:#e0eee6;padding:18px;border-radius:18px;width:82px;height:82px;z-index:1}.banner .btn{margin-top:14px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:25px}.stat-card{background:white;border:1px solid var(--line);border-radius:12px;padding:20px;display:flex;gap:14px;align-items:flex-start;text-align:left;color:inherit}.stat-card:hover{border-color:#bdd8ce;transform:translateY(-1px)}.stat-icon{width:40px;height:40px;border-radius:10px;background:#e9f5f0;color:#2b8b76;display:flex;align-items:center;justify-content:center}.stat-icon.gold{color:#bd9447;background:#fcf5e5}.stat-icon.blue{color:#5d7da3;background:#edf2f8}.stat-icon.red{color:#c47c67;background:#faeeea}.stat-value{font-size:30px;line-height:1.1;font-weight:650;letter-spacing:-1px;margin-bottom:8px}.stat-label{font-size:14px;color:#657981}.stat-foot{font-size:13px;color:#90a09f;display:block;margin-top:8px}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 306px;gap:22px;align-items:start}.panel{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;min-width:0}.panel+.panel{margin-top:20px}.panel-head{padding:20px 22px;border-bottom:1px solid #eef1f2;display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-head h2{margin:0;font-size:17px}.panel-head small{color:#8b9ba1}.panel-body{padding:20px 22px}.tabs{display:flex;gap:19px;overflow:auto;border-bottom:1px solid var(--line);padding:0 22px;scrollbar-width:thin}.tab{white-space:nowrap;border:0;border-bottom:2px solid transparent;background:none;padding:17px 0;color:#8b989d;font-size:14px;display:flex;align-items:center;gap:6px}.tab.active{color:var(--green);border-color:var(--green);font-weight:650}.tab .count{padding:2px 5px;border-radius:4px;background:#f0f3f3;color:#788b8e;font-size:12px}.tab.active .count{background:#e7f4ed;color:var(--green)}.filters{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:17px 22px;background:#fff}.filters input{flex:1;min-width:130px}.filters input,.filters select,.compact-select{font-size:14px;border:1px solid #e1e7e9;border-radius:6px;padding:8px 10px;color:#657a83;background:#fcfdfd;max-width:100%}.chip{font-size:13px;padding:5px 9px;border:1px solid #e2e9eb;border-radius:5px;background:#fff;color:#7e9298}.chip.active{background:#edf7f2;border-color:#c6e1d4;color:#2a7964}.task-item{padding:20px 22px;border-top:1px solid #f0f3f4;display:grid;grid-template-columns:39px minmax(0,1fr) auto;gap:13px;align-items:start}.task-item:first-child{border-top:0}.task-item:hover{background:#fcfefd}.task-symbol{width:36px;height:39px;border-radius:8px;background:#eef3fa;color:#5a7ca2;display:flex;align-items:center;justify-content:center}.task-symbol.green{background:#eaf5ef;color:#408674}.task-symbol.gold{background:#faf3e5;color:#b68b3f}.task-body h3{font-size:15px;font-weight:650;line-height:1.65;margin:0 0 7px}.task-meta{display:flex;gap:9px;flex-wrap:wrap;font-size:13px;align-items:center;color:#93a0a7}.task-why{color:#86969e;font-size:13px;margin:8px 0 0;line-height:1.6}.task-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.due{font-size:13px;color:#81949c;display:flex;align-items:center;gap:4px;white-space:nowrap}.due.late{color:#bd6d54}.badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:550;line-height:1.45;padding:4px 7px;border-radius:4px;white-space:normal;max-width:160px}.badge.good{background:#eaf4ee;color:#418567}.badge.warn{background:#fbf4e5;color:#aa853e}.badge.bad{background:#f9ece7;color:#bb6d54}.badge.neutral{background:#eef2f5;color:#718695}.dot{height:3px;width:3px;border-radius:50%;background:#bdc9cc}.quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-link{border:1px solid #e7edee;background:#fff;border-radius:8px;padding:14px 10px;text-align:left;color:#596f78;font-size:13px;line-height:1.6;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.quick-link:hover{border-color:#acd3c4;color:var(--green)}.quick-link svg{color:#668d81}.schedule-mini{display:flex;gap:12px;margin-bottom:17px}.date-box{width:38px;height:43px;border:1px solid #e5ebec;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:18px;font-weight:650;flex:none}.date-box small{font-size:12px;color:#899b9e}.schedule-mini h3{font-size:14px;line-height:1.6;margin-bottom:5px}.schedule-mini p{font-size:13px;color:#8a9ca4;margin:0}.hint{background:#f6faf7;border:1px solid #e4efe7;color:#5b7b6a;border-radius:9px;padding:15px;font-size:14px;line-height:1.8;display:flex;gap:10px}.hint.gold{background:#fdf9ef;border-color:#efe4c8;color:#9a7c41}.suggest-item{padding:17px 0;border-bottom:1px solid var(--line)}.suggest-item:last-child{border:0;padding-bottom:0}.suggest-item h3{font-size:14px;margin-bottom:5px}.suggest-item p{font-size:13px;color:#8d9da3;line-height:1.7;margin-bottom:9px}.bar-row{display:flex;align-items:center;gap:10px;margin:13px 0;font-size:13px;width:100%;border:0;background:none;padding:0;text-align:left;color:#6c8087}.bar-row>span{width:95px;line-height:1.5;flex:none}.bar-row b{font-weight:600;color:#4d6670;min-width:24px;text-align:right}.bar-track{flex:1;height:7px;background:#f0f4f4;border-radius:3px;overflow:hidden}.bar-track i{display:block;height:100%;border-radius:3px;transition:width .3s}.chart-note{font-size:13px;color:#93a2a7;line-height:1.7;margin:15px 0 0}.donut-area{display:flex;align-items:center;gap:20px}.donut-area svg{width:130px;max-width:45%}.donut-number{font:bold 24px system-ui;fill:#24434a}.donut-caption{font:8px system-ui;fill:#8a9b9f}.chart-legend{font-size:13px;flex:1}.chart-legend>div{display:flex;align-items:center;gap:7px;margin:12px 0}.chart-legend i{width:7px;height:7px;border-radius:2px}.chart-legend b{margin-left:auto;color:#304d55}.section-head{margin:28px 0 15px;display:flex;align-items:center;justify-content:space-between}.section-head h2{font-size:18px;margin:0}.module-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.module-card{display:block;background:white;border:1px solid var(--line);border-radius:12px;padding:21px}.module-card .module-icon{padding:10px;background:#eff6f1;border-radius:9px;display:inline-flex;color:#5d8f79}.module-card h3{margin:16px 0 8px;font-size:16px;color:#2e4952}.module-card p{font-size:14px;color:#93a2a8;line-height:1.7;margin:0 0 15px}.module-card footer{font-size:13px;color:#6a8c7f;display:flex;align-items:center;justify-content:space-between}.page-footer{margin-top:30px;padding-top:18px;border-top:1px solid #e6ebed;display:flex;justify-content:space-between;font-size:12px;color:#9aa8ae;line-height:1.7;gap:15px}.table-wrap{overflow:auto;max-width:100%}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}thead{background:#fafcfc;color:#809299}th{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:13px 17px;white-space:nowrap;border-bottom:1px solid var(--line)}td{padding:16px 17px;border-bottom:1px solid #edf1f2;vertical-align:middle;line-height:1.6}td.title-cell{min-width:240px;max-width:420px}td.title-cell b{display:block;font-size:15px;font-weight:600;color:#35515b;margin-bottom:4px;word-break:break-word}td.title-cell small{font-size:12px;color:#8a9ca4}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfefd}.table-actions{display:flex;justify-content:flex-end;gap:5px;min-width:100px}.table-actions .icon-btn{width:30px;min-width:30px;height:30px}.pagination{padding:17px 22px;display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#8b9ba2}.empty{padding:48px 20px;text-align:center}.empty>div{color:#9bb9ae;background:#f1f7f3;display:inline-flex;border-radius:50%;padding:20px;margin-bottom:18px}.empty h3{color:#506871;margin-bottom:8px}.empty p{font-size:15px;color:#8c9da3;line-height:1.8;max-width:440px;margin:auto}.two-col{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:22px;align-items:start}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.detail-title{display:flex;gap:15px;align-items:flex-start}.detail-title h1{font-size:27px;line-height:1.5;margin-bottom:12px}.detail-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 26px}.info-field small{display:block;color:#8b9ca3;font-size:13px;margin-bottom:8px}.info-field div{font-size:15px;line-height:1.8;word-break:break-word}.info-field.wide{grid-column:1/-1}.timeline{padding:2px 0}.timeline-item{position:relative;padding:0 0 25px 22px;border-left:1px solid #dbe8e1;margin-left:4px;font-size:14px;line-height:1.6}.timeline-item:last-child{padding-bottom:5px;border-left-color:transparent}.timeline-item:before{content:"";position:absolute;width:7px;height:7px;border:2px solid white;background:#77aa91;border-radius:50%;left:-5px;top:3px}.timeline-item small{display:block;color:#96a3a7;font-size:12px;margin-top:4px}.timeline-item p{font-size:13px;color:#7e929b;margin:7px 0}.action-stack{display:flex;flex-direction:column;gap:9px}.action-stack .btn{justify-content:flex-start;padding:11px 13px}.file-row{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #edf1f2}.file-row:last-child{border:0}.file-row .file-info{flex:1;min-width:0}.file-info b{font-size:14px;word-break:break-word}.file-info small{font-size:12px;color:#8d9fa5;display:block;margin-top:4px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-top:15px}.field{min-width:0}.field.wide{grid-column:1/-1}.field>label:not(.checkline){display:block;font-size:14px;color:#5f7680;margin-bottom:8px;font-weight:550}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{width:100%;border:1px solid #dce5e7;border-radius:7px;padding:10px 11px;background:#fcfdfd;color:#304c56;font-size:15px;line-height:1.5}.field small{display:block;font-size:13px;color:#8a9fa5;line-height:1.7;margin-top:6px}.checkline{display:flex;align-items:center;gap:9px;font-size:15px;color:#607980;line-height:1.8}.checkline input{accent-color:var(--green);width:16px;height:16px}.checkline strong{color:#304c56}.modal-head{padding:24px 26px 20px;display:flex;justify-content:space-between;gap:17px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:22px;line-height:1.5;margin:9px 0 0}.modal-head p{font-size:14px;color:#8b9ca2;line-height:1.8;margin:8px 0 0}.modal-head .icon-btn{flex:none}.modal-body{padding:22px 26px;max-height:65vh;overflow:auto;overscroll-behavior:contain}.modal-footer{padding:17px 26px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:10px}.modal-error{margin:0 26px 18px;padding:13px;background:#fbefeb;color:#aa5448;border-radius:7px;font-size:15px;line-height:1.7}dialog{border:1px solid #dce5e3;border-radius:15px;padding:0;width:min(650px,calc(100% - 28px));max-height:94dvh;color:var(--ink);box-shadow:0 20px 100px #0a272144}dialog::backdrop{background:#12303e70;backdrop-filter:blur(3px)}dialog.large{width:min(1060px,calc(100% - 28px))}dialog form{margin:0}.confirm-object{display:flex;align-items:flex-start;gap:13px;background:#f3f7f5;border:1px solid #e0ebe5;padding:17px;border-radius:9px;margin-bottom:18px;color:#478471}.confirm-object b{font-size:16px;color:#36554e;line-height:1.7}.confirm-object small{display:block;font-size:13px;color:#8aa199;margin-top:4px}.confirm-summary{padding:10px 0;font-size:15px;line-height:1.9;color:#789097}.file-preview{width:100%;height:59vh;border:1px solid var(--line);border-radius:7px}.toasts,#toasts{position:fixed;bottom:24px;right:24px;z-index:150;display:flex;gap:8px;flex-direction:column;max-width:min(450px,calc(100% - 32px))}.toast{background:#254d43;color:white;border-radius:9px;box-shadow:0 5px 25px #0002;padding:15px 18px;display:flex;gap:10px;align-items:center;font-size:15px;line-height:1.8;animation:toast .2s ease}.toast.error{background:#9d4e40}@keyframes toast{from{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.catalog-group{background:white;border:1px solid var(--line);border-radius:12px;padding:20px}.catalog-group h2{font-size:16px;display:flex;align-items:center;gap:10px;margin-bottom:18px}.catalog-item{display:flex;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #f0f3f3;font-size:14px;line-height:1.7;color:#607a83}.catalog-item:hover{color:var(--green)}.catalog-item>span:first-child{font-size:12px;color:#91a4aa;flex:none}.catalog-item>span:last-child{flex:1}.account-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.account-choice{border:1px solid var(--line);padding:14px;background:white;border-radius:9px;display:flex;gap:10px;text-align:left;align-items:center;color:#4a6570}.account-choice.selected{border-color:#68ac93;background:#f1f8f4}.account-choice b{font-size:14px;display:block}.account-choice small{font-size:12px;color:#879aa1;line-height:1.6;display:block;margin-top:4px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));min-width:800px}.cal-day{min-height:175px;border-right:1px solid var(--line);border-top:1px solid var(--line);padding:13px 9px}.cal-day header{font-size:14px;color:#8c9da2;display:flex;justify-content:space-between;margin-bottom:15px}.cal-day.today{background:#f6faf7}.cal-day.today header b{background:#0a8474;color:#fff;border-radius:50%;height:25px;width:25px;display:flex;justify-content:center;align-items:center;margin-top:-4px}.cal-event{display:block;border:0;border-left:3px solid #5da88c;border-radius:4px;padding:8px;background:#eaf5ee;color:#447b66;margin:8px 0;width:100%;text-align:left;font-size:13px;line-height:1.7}.cal-event.blue{border-color:#6f8db3;background:#eef3f9;color:#597da3}.kanban{display:grid;grid-template-columns:repeat(4,minmax(200px,1fr));gap:15px;overflow:auto}.kanban-col{background:#edf1f3;border-radius:10px;padding:15px;min-width:200px}.kanban-col>h3{font-size:14px;color:#647f87;margin-bottom:15px}.kanban-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px;margin-bottom:10px}.kanban-card h3{font-size:14px;line-height:1.7}.progress-track{height:5px;border-radius:4px;background:#edf2f2;overflow:hidden;margin:10px 0}.progress-track i{height:100%;display:block;background:#6aa58c}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.course-cover{height:115px;background:#edf4ee;display:flex;align-items:center;padding:22px;position:relative;overflow:hidden;color:#497b65}.course-cover:after{content:"";position:absolute;width:160px;height:160px;border:1px solid #c6ddcd;border-radius:50%;right:-35px;top:-40px}.course-cover.blue{background:#edf2f9;color:#5e7fa6}.course-cover.gold{background:#faf3e7;color:#b38d4b}.course-cover span{font-size:13px;letter-spacing:1px;position:absolute;right:20px;bottom:16px}.course-card{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.course-card .panel-body h3{font-size:16px;line-height:1.7;margin-bottom:10px}.course-card p{font-size:13px;color:#8d9da5;line-height:1.8}.chat-layout{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:540px}.chat-sidebar{border-right:1px solid var(--line);padding:15px}.chat-contact{width:100%;display:flex;gap:10px;padding:14px 10px;border:none;background:#fff;text-align:left;border-radius:8px;color:#45616a;margin-bottom:6px;align-items:center}.chat-contact.active{background:#edf6f0}.chat-contact b{font-size:14px;display:block;line-height:1.6}.chat-contact small{font-size:12px;color:#90a2a8}.chat-main{display:flex;flex-direction:column;min-width:0}.chat-header{border-bottom:1px solid var(--line);padding:17px 20px;display:flex;justify-content:space-between;align-items:center}.chat-header h3{font-size:16px;margin:0}.messages{padding:24px;display:flex;flex-direction:column;gap:17px;max-height:480px;overflow:auto;min-height:330px;flex:1}.message{max-width:85%;align-self:flex-start}.message.own{align-self:flex-end}.message small{display:block;font-size:12px;color:#8b9ca3;margin:0 0 6px}.message .bubble{padding:13px 16px;background:#f0f4f5;border-radius:0 12px 12px 12px;font-size:15px;line-height:1.9;color:#526d77;white-space:pre-wrap;word-break:break-word}.message.own .bubble{background:#e6f3ec;color:#316e57;border-radius:12px 0 12px 12px}.source-box{margin-top:10px;border:1px solid #d4e5da;background:#fff;border-radius:7px;padding:11px;font-size:13px;line-height:1.8}.chat-compose{border-top:1px solid var(--line);padding:15px 20px;display:flex;gap:9px;align-items:flex-end}.chat-compose textarea{flex:1;border:1px solid #dfe8e7;border-radius:8px;padding:11px;font-size:15px;resize:vertical;min-height:44px;max-height:130px}.source-picker{padding:14px 20px;border-bottom:1px solid var(--line);background:#fafcfb;display:flex;gap:9px;align-items:center;font-size:14px}.source-picker select{flex:1;max-width:70%;font-size:14px;padding:7px;border:1px solid #dfe7e5;border-radius:6px}.review-tags{display:flex;gap:8px;font-size:13px;margin-top:12px;flex-wrap:wrap}.review-tags span{padding:4px 7px;background:#e9eff0;border-radius:4px;color:#71868d}.check-list{display:flex;flex-direction:column;gap:10px;margin:15px 0}.check-list .checkline{padding:13px;border:1px solid var(--line);border-radius:8px;align-items:flex-start}.check-list .checkline>div{flex:1}.check-list small{font-size:13px;display:block;color:#8da0a6;line-height:1.7}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.scenario-card{background:white;border:1px solid var(--line);border-radius:11px;padding:20px}.scenario-card h3{font-size:16px;margin:9px 0 12px}.scenario-card p{font-size:14px;color:#81979f;line-height:1.9}.scenario-chain{display:flex;gap:8px;flex-wrap:wrap;font-size:13px;line-height:1.7;margin:15px 0}.scenario-chain span{background:#eff5f1;border:1px solid #e2ece5;border-radius:5px;padding:6px 9px;color:#5d806d}.step-list{counter-reset:steps}.step{display:flex;gap:13px;padding:15px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.8}.step:before{counter-increment:steps;content:counter(steps);height:27px;width:27px;flex:none;display:flex;align-items:center;justify-content:center;background:#eaf4ed;color:#4b8269;border-radius:50%;font-size:14px}.mobile-toggle{display:none}.mobile-scrim{display:none}.review-mode .review-tags{display:flex}.review-tags{display:none}.toolbar-title{font-size:14px;color:#748d94}.search-result{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);color:#4d6c76;font-size:15px;line-height:1.7}.search-result small{font-size:13px;color:#97a6ad}.import-errors{color:#a16d4d;font-size:14px;line-height:1.8;margin:15px 0}.info-banner{padding:15px 19px;margin-bottom:19px;border:1px solid #dfece4;background:#f1f8f3;color:#648271;font-size:14px;line-height:1.9;border-radius:9px}.coverage-ok{font-size:13px;color:#577f6a}.drive-layout{max-width:1200px;margin:40px auto;padding:0 24px}.drive-layout .topbar{position:static;border:1px solid var(--line);border-radius:12px;margin-bottom:24px}.drive-preview{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px}.drive-folders{padding:20px;background:#fff;border:1px solid var(--line);border-radius:12px}.drive-folder{padding:13px 4px;color:#607d88;display:flex;align-items:center;gap:9px;font-size:15px}.utility-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.description{white-space:pre-wrap;font-size:15px;line-height:1.9;color:#748b94}.read-only-note{font-size:13px;color:#94a7ad;line-height:1.7}.table-select{width:17px;height:17px;accent-color:var(--green)}
@media(min-width:1600px){.content{padding-top:36px}.task-item{padding:23px 25px}.workspace-grid{grid-template-columns:minmax(0,1fr) 340px}}
@media(max-width:1250px){.sidebar{width:218px}.shell{margin-left:218px}.content{padding:25px}.topbar{padding:0 25px}.workspace-grid{grid-template-columns:minmax(0,1fr) 270px;gap:17px}.global-search{min-width:190px}.stat-card{padding:16px;gap:10px}.stat-icon{width:34px;height:34px}.stat-value{font-size:28px}.stats{gap:12px}.catalog-grid{grid-template-columns:repeat(2,1fr)}.task-item{grid-template-columns:32px minmax(0,1fr);gap:10px}.task-right{grid-column:2;flex-direction:row;align-items:center;justify-content:space-between;margin-top:3px}.task-symbol{width:32px;height:35px}.library-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1000px){.sidebar{width:200px;padding-left:10px;padding-right:10px}.shell{margin-left:200px}.brand{gap:7px}.brand b{font-size:16px}.brand small{font-size:12px}.workspace-grid{grid-template-columns:minmax(0,1fr)}.workspace-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.workspace-aside>.panel{margin-top:0}.workspace-aside>.panel:last-child{grid-column:1/-1}.stats{grid-template-columns:repeat(2,1fr)}.user-text{display:none}.top-user{padding-left:11px}.topbar{gap:10px}.breadcrumbs{font-size:13px}.global-search{min-width:150px}.global-search kbd{display:none}.two-col{grid-template-columns:minmax(0,1fr) 270px;gap:15px}.module-cards{gap:12px}.module-card{padding:18px}.chat-layout{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);width:242px;transition:transform .2s}.sidebar.open{transform:translateX(0)}.sidebar.open+.mobile-scrim{display:block;position:fixed;inset:0;background:#15303d66;z-index:25}.shell{margin-left:0}.mobile-toggle{display:inline-flex}.topbar{height:65px;padding:0 18px;gap:12px}.topbar .breadcrumbs{display:none}.global-search{min-width:0;flex:1;font-size:13px;padding:8px}.top-user{border:0;padding:0}.topbar>.icon-btn[data-action=notifications]{display:none}.content{padding:23px 18px 55px}.page-top{align-items:flex-start;gap:12px}.page-top h1{font-size:27px}.page-top>.row{flex-wrap:wrap;justify-content:flex-end;gap:7px}.page-top>.row .btn{font-size:13px;padding:7px 9px}.banner{padding:20px}.banner h2{font-size:20px}.banner p{font-size:14px}.banner-art{display:none}.stats{gap:10px;margin-bottom:18px}.stat-card{padding:15px 12px;gap:10px}.stat-icon{width:30px;height:30px;border-radius:7px}.stat-icon svg{width:16px}.stat-value{font-size:27px}.stat-label{font-size:13px}.stat-foot{font-size:12px}.panel-head,.panel-body{padding:18px}.tabs{padding:0 17px;gap:16px}.tab{font-size:13px}.filters{padding:14px 17px;gap:7px}.filters input{flex-basis:100%}.task-item{padding:18px 17px}.task-meta{font-size:12px}.task-body h3{font-size:15px}.workspace-aside{grid-template-columns:minmax(0,1fr)}.workspace-aside>.panel:last-child{grid-column:auto}.module-cards{grid-template-columns:1fr}.module-card{padding:19px}.module-card h3{margin-top:12px}.catalog-grid,.library-grid,.three-col,.report-grid{grid-template-columns:1fr}.two-col{grid-template-columns:minmax(0,1fr)}.detail-info{gap:19px}.detail-title h1{font-size:24px}.detail-title .task-symbol{display:none}.account-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;gap:16px}.field.wide{grid-column:auto}.modal-head{padding:20px 19px}.modal-head h2{font-size:20px}.modal-body{padding:18px 19px;max-height:60dvh}.modal-footer{padding:15px 19px}.modal-error{margin-left:19px;margin-right:19px}.page-footer{font-size:12px;flex-direction:column;gap:6px}.chat-layout{grid-template-columns:1fr}.chat-sidebar{border:0;border-bottom:1px solid var(--line);display:flex;overflow:auto;padding:10px;gap:5px}.chat-contact{min-width:180px;margin:0;padding:10px}.chat-main{min-height:450px}.messages{padding:18px;max-height:400px}.chat-header{padding:16px}.chat-compose{padding:12px}.source-picker{padding:12px;font-size:13px}.source-picker select{max-width:65%}.drive-layout{margin:20px auto;padding:0 17px}.drive-layout .topbar{padding:15px;height:auto;flex-wrap:wrap}.drive-preview{grid-template-columns:1fr}.drive-folders{display:none}.utility-grid{grid-template-columns:1fr}.task-right .btn{min-height:34px}.global-search .search-label{display:none}}
@media print{.sidebar,.topbar,.page-top .btn,.page-footer,.filters,.pagination{display:none!important}.shell{margin:0}.content{padding:0}.panel{break-inside:avoid}.table-wrap{overflow:visible}body{background:white}}

/* Larger typography for review and presentation. */
body{line-height:1.6}
.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea,.chat-compose textarea{font-size:16px}
.btn{min-height:38px}.btn.small{min-height:34px}
th,td{line-height:1.6}.panel-head{gap:12px;flex-wrap:wrap}
@media(max-width:760px){.page-top{flex-wrap:wrap}.page-top>div{min-width:0;max-width:100%}.task-right{flex-wrap:wrap}.stat-card{align-items:flex-start}.stat-card>div{min-width:0}.source-picker{flex-wrap:wrap}.source-picker select{max-width:100%}}

.date-box{width:58px;min-height:58px;height:auto;padding:5px}.date-box small{white-space:nowrap;line-height:1.4}.brand small{font-size:12px;letter-spacing:.7px}
