@charset "UTF-8";
:root{--ink:#222b2b;--muted:#727d7c;--line:#e5eae8;--canvas:#f7f9f8;--surface:#fff;--teal:#117568;--teal-dark:#0a5b50;--teal-soft:#e6f3ee;--sidebar:#202a29;--blue:#4a73b8;--amber:#ad761d;--rose:#af5570;--sidebar-width:238px;--radius:6px}
*{box-sizing:border-box;letter-spacing:0}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--canvas);color:var(--ink);font-family:"Segoe UI",Inter,Arial,sans-serif;font-size:14px;line-height:1.5}
button,input,select,textarea{font:inherit}
a{color:inherit;text-decoration:none}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.45}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #5fafa2;outline-offset:3px}
svg.lucide{width:18px;height:18px;stroke-width:1.7;flex-shrink:0;vertical-align:middle}
h1,h2,h3,p{margin-top:0}
h1{font-size:29px;line-height:1.2;font-weight:650;margin-bottom:0;overflow-wrap:anywhere}
h2{font-size:17px;line-height:1.35;font-weight:650;margin:0}
h3{font-size:15px;font-weight:600}
small{font-size:12px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;left:12px;top:-80px;background:var(--ink);color:#fff;padding:12px;z-index:100}
.skip-link:focus{top:12px}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);background:var(--sidebar);color:#c2cdca;z-index:40;display:flex;flex-direction:column}
.brand{padding:28px 25px 21px;display:flex;flex-direction:column;gap:12px}
.brand img{width:168px;height:auto;filter:brightness(0) invert(1);opacity:.94}
.brand-lockup{display:flex;align-items:center;gap:11px;color:#f3f6f4;font-size:19px}
.brand-lockup strong{font-weight:650}.brand-lockup strong>span{font-weight:400;color:#a7b9b0;font-size:14px}
.brand-mark{width:36px;height:36px;border-radius:7px;background:#c9e6d7;display:grid;place-items:center;color:#265d45}
.brand-mark .lucide{width:24px;height:24px}
.brand-caption{font-size:9px;font-weight:600;color:#99aaa5;padding-left:1px}
.nav-groups{padding:0 14px 12px;overflow:auto;scrollbar-width:thin;scrollbar-color:#52605a transparent;flex:1}
.nav-group{margin:12px 0 20px}
.nav-label{font-size:10px;text-transform:uppercase;font-weight:600;color:#879993;margin:0 12px 8px}
.nav-link{min-height:37px;display:flex;align-items:center;gap:11px;padding:8px 12px;border-radius:4px;font-size:12px;margin:2px 0;transition:background .16s,color .16s}
.nav-link:hover{background:#2d3936;color:#fff}
.nav-link.selected{background:#334c43;color:#fff}
.nav-link.selected .lucide{color:#85cfac}
.nav-link .lucide{width:17px;height:17px;color:#9aada7}
.nav-dot{width:5px;height:5px;border-radius:50%;background:#8ad6b1;margin-left:auto}
.sidebar-bottom{border-top:1px solid #36423d;padding:14px 17px}
.account-link{display:flex;align-items:center;gap:9px;min-width:0}
.account-link>span:nth-child(2){flex:1;min-width:0}
.account-link strong{display:block;font-size:12px;font-weight:600;color:#f1f5f3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-link small{font-size:10px;display:block;color:#9aaaA4;text-transform:capitalize}
.account-link>.lucide{width:14px}
.avatar{display:inline-flex;align-items:center;justify-content:center;background:#dce9e1;color:#275b47;width:35px;height:35px;border-radius:50%;font-size:12px;font-weight:650;flex-shrink:0}
.avatar-small{width:32px;height:32px;font-size:11px}
.avatar-row{width:29px;height:29px;border-radius:6px;font-size:10px;background:#eef3f0}
.signout{background:none;border:0;color:#9eafa8;font-size:11px;display:flex;align-items:center;gap:8px;margin:12px 0 0 43px;padding:0}
.signout .lucide{width:13px}
.preview-indicator{display:flex;align-items:center;gap:6px;font-size:10px;color:#c8bd83;margin:0 0 13px 2px}
.preview-indicator>span{height:5px;width:5px;background:#d5bd72;border-radius:50%}
.page{margin-left:var(--sidebar-width);min-height:100vh;display:flex;flex-direction:column;min-width:0}
.topbar{height:66px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px;background:#fff;gap:16px}
.topbar-left,.topbar-right{display:flex;align-items:center;gap:15px;min-width:0}
.topbar-left{font-size:12px}
.topbar-left strong{font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.breadcrumb{color:#919b97}
.breadcrumb-arrow{color:#b0b8b5;width:13px!important}
.date-label{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}
.date-label .lucide{width:15px}
.workspace{padding:31px 36px 24px;flex:1;width:100%;max-width:1600px;margin:0 auto}
.footer{display:flex;justify-content:space-between;padding:18px 36px;font-size:10px;color:#949d98;gap:12px}
.page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:27px}
.page-heading h1{display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.eyebrow{font-size:9px;font-weight:650;color:var(--teal);margin:0 0 9px;text-transform:uppercase}
.page-subtitle{font-size:12px;color:var(--muted);margin:9px 0 0}
.heading-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:37px;padding:8px 13px;border:1px solid #dce3df;border-radius:5px;background:#fff;color:#46534d;font-size:12px;font-weight:550;line-height:1.4;transition:background .16s,border-color .16s,transform .16s}
.btn .lucide{width:15px;height:15px}
.btn:hover{background:#f2f6f3;border-color:#bdcbc3}
.btn:active{transform:translateY(1px)}
.btn.primary{background:var(--teal);border-color:var(--teal);color:#fff;box-shadow:0 1px 2px #12362b12}
.btn.primary:hover{background:var(--teal-dark);border-color:var(--teal-dark)}
.btn.danger{background:#a83c42;color:white;border-color:#a83c42}
.icon-button{border:1px solid transparent;background:transparent;color:#7d8983;border-radius:4px;width:31px;height:31px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:5px;transition:background .15s,color .15s}
.icon-button:hover{color:var(--teal);background:#edf5f0}
.icon-button .lucide{width:16px;height:16px}
.danger-icon:hover{color:#a83c42;background:#fbecee}
.text-link,.back-link{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:550;color:var(--teal)}
.text-link .lucide,.back-link .lucide{width:14px}
.back-link{color:var(--muted);margin-bottom:14px}
.text-link:hover{text-decoration:underline}
.count-badge{font-size:12px;background:#e9efeb;border:1px solid #dbe5de;color:#66776e;font-weight:500;padding:3px 8px;border-radius:5px;line-height:1.4}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:32px}
.metric{background:#fff;border:1px solid var(--line);padding:19px 19px 15px;border-radius:6px;min-width:0;transition:border-color .2s;position:relative}
.metric:hover{border-color:#afc5b8}
.metric-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.metric-label{font-size:11px;color:#65756b;font-weight:550}
.metric-icon{height:29px;width:29px;display:grid;place-items:center;border-radius:6px}
.metric-icon .lucide{height:15px;width:15px}
.teal{color:var(--teal);background:#e9f4ee}
.blue{color:var(--blue);background:#eaf0f9}
.amber{color:var(--amber);background:#faf1dc}
.rose{color:var(--rose);background:#f8edf0}
.metric-value{font-size:27px;font-weight:650;line-height:1.15;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.metric-detail{font-size:10px;color:#94a095;margin-top:9px;display:flex;justify-content:space-between;align-items:center;gap:6px}
.metric-detail .lucide{height:13px;width:13px}
.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:30px}
.workspace-section{border-top:1px solid var(--line);padding-top:20px;margin-bottom:29px;min-width:0}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:21px}
.section-heading h2{font-size:15px}
.section-heading p{font-size:11px;color:var(--muted);margin:5px 0 0}
.section-tag{font-size:10px;color:#6d7970;border:1px solid #dce4de;border-radius:4px;padding:5px 8px;white-space:nowrap}
.chart-area{display:flex;gap:16px;height:184px;position:relative;margin:18px 0 0}
.chart-scale{display:flex;flex-direction:column;justify-content:space-between;font-size:9px;color:#9ca59f;width:32px;flex-shrink:0;padding-bottom:25px}
.bar-chart{flex:1;display:flex;justify-content:space-around;align-items:stretch;gap:16px;background:repeating-linear-gradient(to top,transparent 0,transparent calc(33.333% - 1px),#edf1ee calc(33.333% - 1px),#edf1ee 33.333%);margin-bottom:25px}
.bar-column{width:13%;max-width:49px;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;position:relative}
.chart-bar{width:100%;background:#cadfd3;border-radius:4px 4px 0 0;min-height:2px;transition:background .2s;animation:bar-grow .6s ease-out;transform-origin:bottom}
.bar-column:last-child .chart-bar{background:var(--teal)}
.bar-column:hover .chart-bar{background:#479682}
.chart-month{position:absolute;bottom:-25px;font-size:10px;color:#909d94}
.chart-tooltip{position:absolute;top:-13px;white-space:nowrap;font-size:10px;color:#fff;padding:4px 7px;border-radius:3px;background:#283b30;opacity:0;pointer-events:none;transition:opacity .15s;z-index:1}
.bar-column:hover .chart-tooltip,.bar-column:focus-visible .chart-tooltip{opacity:1}
@keyframes bar-grow{from{transform:scaleY(.05)}to{transform:scaleY(1)}}
.distribution-list{display:grid;gap:21px;margin-top:26px}
.distribution-label{display:flex;justify-content:space-between;font-size:11px;margin-bottom:8px;gap:14px}
.distribution-label span{color:#65756a;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.distribution-label strong{font-weight:550}
.progress-track{height:6px;background:#e9eeea;border-radius:2px;overflow:hidden}
.progress-fill{height:100%;background:#548f73;border-radius:2px}
.distribution-row:nth-child(2) .progress-fill{background:#7e96b8}
.distribution-row:nth-child(3) .progress-fill{background:#c3a36d}
.distribution-row:nth-child(4) .progress-fill{background:#b68499}
.legend{display:flex;gap:7px;align-items:center;font-size:10px;color:#89998e;margin-top:25px}
.legend>span{height:6px;width:6px;border-radius:2px;background:var(--teal)}
.table-wrap{position:relative;width:100%;overflow:auto;border:1px solid var(--line);border-radius:6px;background:#fff}
.data-table{width:100%;border-collapse:collapse;font-size:12px}
.data-table th{text-align:left;padding:12px 16px;background:#f7f9f7;font-size:10px;color:#87958c;font-weight:600;border-bottom:1px solid var(--line);white-space:nowrap}
.data-table td{padding:14px 16px;border-bottom:1px solid #edf0ed;vertical-align:middle;color:#67766c;max-width:340px;overflow-wrap:anywhere}
.data-table tr:last-child td{border-bottom:0}
.data-table tbody tr:hover{background:#fafcfb}
.data-table td:first-child{color:#364c3c}
.person-cell{display:inline-flex;align-items:center;gap:10px;min-width:150px}
.person-cell strong{font-weight:550;color:#3f5145}
.money{white-space:nowrap;color:#334939;font-variant-numeric:tabular-nums;font-weight:550}
.status{display:inline-flex;align-items:center;gap:5px;font-size:10px;padding:3px 7px;background:#f0f3f1;color:#6c7b70;border-radius:4px;white-space:nowrap;text-transform:capitalize}
.status>span{width:4px;height:4px;border-radius:50%;background:currentColor}
.status-active,.status-paid,.status-issued,.status-completed{background:#e9f4ed;color:#3e8857}
.status-pending,.status-assigned,.status-scheduled{background:#fcf2dc;color:#a78135}
.status-disabled,.status-inactive,.status-voided,.status-revoked,.status-dropped,.status-cancelled,.status-overdue{background:#f9e9e9;color:#b26565}
.grade{font-weight:650;color:var(--teal);background:#e8f2ed;padding:4px 8px;border-radius:4px}
.row-actions{display:flex;justify-content:flex-end;align-items:center;gap:3px;min-width:32px}
.row-actions form{margin:0}
.actions-heading{width:104px}
.list-toolbar{display:flex;align-items:center;gap:13px;margin-bottom:18px;flex-wrap:wrap}
.search-form{display:flex;align-items:center;gap:9px;padding:3px 8px 3px 12px;background:#fff;border:1px solid #dfe6e0;border-radius:5px;width:300px;max-width:100%;min-height:38px}
.search-form>.lucide{width:15px;color:#91a093}
.search-form input{border:0;box-shadow:none!important;background:transparent;padding:5px 0;font-size:12px;min-width:0;flex:1;width:100%;outline:none}
.toolbar-label{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:11px;color:#7c8d7f}
.toolbar-label .lucide{width:14px}
.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 0;font-size:10px;color:#829285}
.pagination nav{display:flex;align-items:center;gap:7px}
.pagination nav>span{margin-right:8px}
.pagination .icon-button{border-color:#dfe6df;background:#fff;width:28px;height:28px}
.empty-state{text-align:center;padding:36px 15px;color:#89998c}
.empty-state>.lucide{width:30px;height:30px;color:#9bb1a3;margin-bottom:14px}
.empty-state h3{font-size:13px;font-weight:500;margin:0 0 10px}
.empty-inline{font-size:12px;color:var(--muted);padding:24px 0}
.upcoming-list{display:grid}
.upcoming-item{display:flex;align-items:center;gap:13px;padding:13px 0;border-bottom:1px solid var(--line)}
.upcoming-item:first-child{padding-top:0}
.upcoming-item:last-child{border:0}
.date-tile{width:43px;min-height:48px;background:#fff;border:1px solid #e1e8e0;border-radius:5px;display:flex;align-items:center;justify-content:center;flex-direction:column;flex-shrink:0}
.date-tile small{font-size:8px;text-transform:uppercase;color:#8b9a8d}
.date-tile strong{font-size:19px;line-height:1.2;font-weight:600;color:#50684f}
.upcoming-text{min-width:0;flex:1}
.upcoming-text strong{display:block;font-size:12px;font-weight:550;overflow-wrap:anywhere}
.upcoming-text small{display:block;color:#8d9c8f;font-size:10px;margin-top:4px}
.quick-links{display:flex;gap:10px;flex-wrap:wrap}
.quick-link{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid var(--line);border-radius:5px;font-size:11px;background:#fff;color:#58705c}
.quick-link .lucide{width:15px}
.quick-link:hover{border-color:#a9c6b2}
.record-form{max-width:1060px}
.form-section{display:grid;grid-template-columns:180px minmax(0,1fr);gap:35px;border-top:1px solid var(--line);padding:26px 0 30px}
.section-number{font-size:10px;color:#8aa090;display:block;margin-bottom:9px}
.section-intro h2{font-size:14px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}
.field-wide{grid-column:1/-1}
.field{min-width:0}
label{display:block;font-size:12px;font-weight:550;color:#596c5b;margin-bottom:8px}
input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea{border:1px solid #dce5db;border-radius:5px;padding:10px 12px;width:100%;min-width:0;background:#fff;color:#394c3b;font-size:13px;line-height:1.4;transition:border-color .15s,box-shadow .15s;outline:none}
input:focus,select:focus,textarea:focus{border-color:#70a78b!important;box-shadow:0 0 0 3px #11756810}
input::placeholder,textarea::placeholder{color:#a0ada0}
textarea{resize:vertical;min-height:96px}
select{min-height:40px}
.field small{display:block;font-size:10px;color:#879687;margin-top:6px}
.required{color:#b45e55;margin-left:4px}
.optional{font-size:10px;color:#9ca99b;font-weight:400;margin-left:4px}
.form-footer{border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px;padding:20px 0}
.password-field{position:relative}
.password-field input{padding-right:42px!important}
.password-field .icon-button{position:absolute;right:5px;top:5px}
.notice{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:5px;border:1px solid #cfe3d3;background:#edf7ef;color:#467249;margin-bottom:22px;font-size:12px}
.notice>span{flex:1}
.notice-error{background:#fcf0ec;color:#a75e4d;border-color:#efd8d0}
.notice-warning{background:#fff8e9;color:#967234;border-color:#eddebb}
.notice .lucide{width:17px;height:17px}
.auth-layout{min-height:100vh;display:flex;flex-direction:column;background:#f2f6f2}
.auth-topbar{height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 44px;border-bottom:1px solid #e0e8df}
.auth-topbar img{width:166px;display:block}
.auth-topbar>span{font-size:11px;color:#879887}
.auth-main{padding:44px 20px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}
.auth-main>.notice{width:min(440px,100%)}
.auth-panel{width:400px;max-width:100%;background:#fff;padding:32px;border:1px solid #dee7dc;border-radius:8px;box-shadow:0 12px 40px #29412c05}
.auth-panel-wide{width:540px}
.auth-symbol{display:grid;place-items:center;width:42px;height:42px;background:#e9f2e9;border-radius:7px;color:var(--teal);margin-bottom:26px}
.auth-symbol .lucide{width:23px;height:23px}
.auth-panel h1{font-size:28px}
.auth-subtitle{font-size:12px;color:#859484;margin:10px 0 27px}
.auth-panel .field{margin-bottom:18px}
.auth-panel .form-grid{gap:0 16px}
.auth-submit{width:100%;margin-top:8px;min-height:42px;justify-content:space-between;padding:10px 14px}
.auth-switch{font-size:11px;color:#8b9789;margin:22px 0 0;text-align:center}
.auth-switch a{font-weight:600;color:var(--teal)}
.preview-accounts{margin-top:20px;border-top:1px solid var(--line);padding-top:14px;font-size:11px;color:#73806d}
.preview-accounts summary{cursor:pointer}
.preview-accounts p{margin:12px 0 0;line-height:1.9}
.error-state{padding:70px 20px;max-width:600px;margin:auto;text-align:center}
.error-symbol{display:grid;place-items:center;margin:0 auto 24px;width:52px;height:52px;color:#a47742;background:#f6ecdc;border-radius:8px}
.error-state h1{font-size:25px;margin:12px 0}
.error-state p{font-size:13px;color:var(--muted);margin:15px auto 25px;max-width:430px}
.error-state .heading-actions{justify-content:center}
dialog{border:1px solid #dce5dc;border-radius:8px;padding:28px;width:420px;max-width:calc(100% - 32px);color:var(--ink);box-shadow:0 18px 70px #1a2b2330}
dialog::backdrop{background:#18241fcc;backdrop-filter:blur(2px)}
dialog h2{font-size:20px;margin:16px 0 10px}
dialog p{font-size:12px;color:var(--muted)}
.dialog-icon{width:39px;height:39px;border-radius:7px;display:grid;place-items:center;color:#ae7148;background:#f8eddf}
.dialog-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:24px}
.dialog-actions button{min-width:85px}
.mobile-menu,.mobile-close,.sidebar-backdrop{display:none}
.answer-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:34px}
.assignment-question{padding:24px 0;border-top:1px solid var(--line)}
.assignment-question h2{font-size:15px;margin-bottom:13px}
.prose{font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}
.answer-form{margin-top:20px}
.answer-form textarea{min-height:230px}
.answer-aside{border-left:1px solid var(--line);padding-left:25px}
.answer-aside h2{font-size:14px;margin-bottom:15px}
.definition-list{margin:0}
.definition-list div{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}
.definition-list dt{color:var(--muted)}
.definition-list dd{margin:0;text-align:right;overflow-wrap:anywhere}
.check-label{display:flex;align-items:center;gap:9px;font-size:12px;margin-top:24px}
.check-label input{accent-color:var(--teal);width:16px;height:16px;flex-shrink:0}
.privacy-note{font-size:11px;color:var(--muted);line-height:1.7}
.session-timer{font-size:27px;font-variant-numeric:tabular-nums;font-weight:600;margin:18px 0}
.submission{border-bottom:1px solid var(--line);padding:22px 0}
.submission-header{display:flex;justify-content:space-between;gap:12px;margin-bottom:15px}
.submission-header h2{font-size:15px}
.submission-header small{color:var(--muted);font-size:11px}
.submission .prose{font-size:13px}
.report-controls{display:flex;align-items:flex-end;gap:13px;flex-wrap:wrap;margin-bottom:25px}
.report-controls .field{width:175px}
.segmented-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin:0 0 24px;overflow:auto}
.segmented-tabs a{font-size:12px;white-space:nowrap;padding:12px 0;border-bottom:2px solid transparent;color:#7c8979}
.segmented-tabs a.selected{color:var(--teal);border-color:var(--teal);font-weight:600}
.profile-grid{display:grid;grid-template-columns:minmax(240px,1fr) minmax(300px,1.3fr);gap:60px;max-width:1000px}
.profile-identity{display:flex;align-items:center;gap:15px;padding:20px 0}
.profile-identity .avatar{height:58px;width:58px;font-size:20px}
.profile-identity h2{font-size:18px}
.profile-identity p{font-size:12px;color:var(--muted);margin:4px 0 0}
.profile-password{padding-top:22px;border-top:1px solid var(--line)}
.profile-password h2{margin-bottom:24px}
.profile-password .field{margin-bottom:18px}
.document{max-width:850px;margin:15px auto;background:white;padding:45px;border:1px solid var(--line)}
.document-header{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid var(--teal);padding-bottom:25px;margin-bottom:30px}
.document-header img{width:175px;object-fit:contain;align-self:flex-start}
.document-header p{font-size:12px;color:var(--muted);margin:5px 0 0}
.document-total{font-size:32px;font-weight:650;text-align:right;color:var(--teal);margin:30px 0}
.certificate-paper{text-align:center;padding:60px 35px;border:1px solid #d6e1d6}
.certificate-paper .lucide{width:54px;height:54px;color:var(--amber);margin:25px 0}
.certificate-paper h2{font-size:29px;margin:16px 0 25px}
.certificate-paper h3{font-size:24px;color:var(--teal);margin:24px 0}
.certificate-paper p{font-size:13px;color:var(--muted)}
.certificate-paper .definition-list{margin-top:38px;text-align:left}
.career-form{max-width:100%;padding:22px 0;border-top:1px solid var(--line)}
.career-form .form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.career-results{margin-top:30px}
.career-summary{display:flex;gap:24px;flex-wrap:wrap;padding:16px 0;font-size:12px;color:var(--muted)}
.career-trends{margin:30px 0;max-width:860px;font-size:13px;line-height:1.8}
@media(min-width:1550px){.workspace{padding-top:40px}.metric{padding:23px}.chart-area{height:220px}}
@media(max-width:1200px){:root{--sidebar-width:220px}.workspace{padding:28px 24px}.topbar{padding:0 24px}.metric-grid{gap:12px}.metric{padding:16px 13px}.metric-value{font-size:23px}.dashboard-columns{gap:22px;grid-template-columns:minmax(0,1.4fr) minmax(230px,1fr)}.form-section{grid-template-columns:130px minmax(0,1fr);gap:22px}}
@media(max-width:1000px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}.chart-area{height:210px}.distribution-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.form-section{grid-template-columns:1fr;gap:20px}.section-intro{display:flex;align-items:center;gap:12px}.section-number{margin:0}.answer-layout{grid-template-columns:1fr}.answer-aside{border-left:0;border-top:1px solid var(--line);padding:20px 0}.profile-grid{grid-template-columns:1fr;gap:30px}.career-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){:root{--sidebar-width:238px}.sidebar{transform:translateX(-100%);transition:transform .22s ease}.menu-open .sidebar{transform:translateX(0)}.page{margin-left:0}.mobile-menu,.mobile-close{display:inline-flex}.mobile-close{position:absolute;right:8px;top:8px;color:#afc2b8}.menu-open .sidebar-backdrop{display:block;position:fixed;inset:0;background:#18241f88;z-index:35}.menu-open{overflow:hidden}.topbar{height:60px;padding:0 20px}.topbar-left{gap:10px}.workspace{padding:25px 20px}.footer{padding:18px 20px}.page-heading{margin-bottom:23px}.metric-grid{margin-bottom:28px}.record-form{max-width:none}}
@media(max-width:540px){h1{font-size:25px}.workspace{padding:23px 16px}.topbar{padding:0 12px}.topbar-left{gap:6px}.breadcrumb,.breadcrumb-arrow,.date-label{display:none}.page-heading{align-items:flex-start;flex-direction:column;gap:18px}.heading-actions{width:100%}.metric-grid{gap:10px}.metric{padding:14px 12px}.metric-label{font-size:10px}.metric-value{font-size:23px}.metric-detail{font-size:9px;line-height:1.5}.metric-icon{width:25px;height:25px}.metric-top{gap:4px}.dashboard-columns{gap:0}.distribution-list{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.form-section{padding-top:20px}.table-wrap{border-radius:5px}.data-table th,.data-table td{padding:12px}.toolbar-label{display:none}.search-form{width:100%}.list-toolbar{gap:10px}.pagination{font-size:9px;gap:6px}.pagination nav{gap:4px}.pagination nav>span{margin-right:3px}.auth-topbar{padding:0 20px;height:65px}.auth-topbar img{width:144px}.auth-topbar>span{font-size:10px}.auth-main{padding:28px 16px}.auth-panel{padding:26px 23px}.auth-panel .form-grid{grid-template-columns:1fr}.auth-panel h1{font-size:26px}.footer{font-size:9px;padding:16px}.document{padding:22px}.document-header{flex-direction:column}.certificate-paper{padding:30px 15px}.certificate-paper h2{font-size:24px}.certificate-paper h3{font-size:21px}.career-form .form-grid{grid-template-columns:1fr}.report-controls .field{width:calc(50% - 7px)}.report-controls .btn{flex:1}.section-heading{gap:10px}.section-heading .text-link{font-size:10px}.error-state{padding:45px 10px}}
.heading-description{font-size:12px;color:var(--muted);margin:10px 0 0;max-width:680px}
.finance-warning{background:#fff7e6;color:#795613;border:1px solid #f0dfb7;align-items:center;flex-wrap:wrap}
.finance-warning>span{flex:1;min-width:160px}.finance-warning a{white-space:nowrap}
.finance-metrics .metric-value{font-size:25px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.finance-metrics .metric-detail{font-size:10px}
.accounting-tabs{gap:23px}.accounting-tabs a{font-size:12px;padding:14px 0}
.finance-scope{font-size:11px;color:var(--muted);margin:14px 0;align-self:center}
.finance-period,.finance-section{padding-top:25px;border-top:1px solid var(--line);margin-top:28px}
.finance-filters{margin-bottom:18px}.finance-filters .field{width:160px}
.finance-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:20px 0 28px}
.finance-totals>div{border-left:3px solid #dfe7e2;padding:4px 0 4px 18px;min-width:0}
.finance-totals span,.finance-totals small{display:block;color:var(--muted);font-size:11px}
.finance-totals strong{display:block;font-size:26px;font-weight:650;font-variant-numeric:tabular-nums;margin:7px 0;overflow-wrap:anywhere}
.positive{color:#167560}.negative{color:#a14d64}
.numeric{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap!important}
.data-table tfoot{font-weight:650;background:#edf3ef;border-top:2px solid #d6e2dc}
.finance-table td:not(.numeric){max-width:320px;white-space:normal;overflow-wrap:anywhere;min-width:90px}
.finance-table{min-width:760px}
.cell-secondary{display:block;color:var(--muted);font-size:10px;font-weight:400;margin-top:4px;max-width:280px}
.finance-columns{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:36px}
.finance-account{display:flex;gap:12px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);transition:color .15s}
.finance-account:hover{color:var(--teal)}.finance-account>span:nth-child(2){flex:1;min-width:0}
.finance-account strong{font-size:13px;display:block;overflow-wrap:anywhere}.finance-account small{font-size:10px;color:var(--muted);display:block;margin-top:4px}
.finance-account b{font-size:15px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.finance-expense{padding:12px 0}.finance-expense>div:first-child{display:flex;gap:15px;justify-content:space-between;font-size:12px;margin-bottom:10px}
.finance-bar{height:5px;background:#e9edeb;overflow:hidden;border-radius:2px}.finance-bar span{display:block;height:100%;background:#9d6980}
.finance-category-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:35px}
.finance-category-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}
.finance-category-list>div>span{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px}.finance-category-list small{color:var(--muted);font-size:10px}
.finance-voucher .table-wrap{margin:25px 0}.finance-controls{max-width:750px}.finance-controls dd{font-weight:600}
.status-unpaid{background:#fdf3df;color:#936418}.status-overdue{background:#f8e9ee;color:#a14360}
.print-title{display:none}
.finance-report-totals{display:flex;gap:30px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid var(--line)}.finance-report-totals span{display:block;font-size:11px;color:var(--muted)}.finance-report-totals strong{display:block;font-size:18px;margin-top:4px;font-variant-numeric:tabular-nums}
@media(max-width:1100px){.finance-columns{grid-template-columns:1fr;gap:0}.finance-metrics .metric-value{font-size:22px}}
@media(max-width:540px){.finance-metrics .metric-value{font-size:19px}.finance-totals{grid-template-columns:1fr;gap:16px}.finance-totals strong{font-size:24px}.finance-category-list{grid-template-columns:1fr}.finance-account{gap:9px}.finance-account b{font-size:13px}.finance-account>.lucide{display:none}.finance-filters .field{width:calc(50% - 8px)}.finance-filters .finance-scope{flex-basis:100%}.heading-actions{flex-wrap:wrap}.finance-controls div{flex-wrap:wrap}.finance-controls dd{text-align:left}.accounting-tabs{gap:20px}}
@media print{.accounting-tabs,.segmented-tabs,.report-controls,.pagination,.finance-section form,.heading-actions{display:none!important}.print-title{display:block}.finance-totals{grid-template-columns:repeat(3,1fr)}.table-wrap{overflow:visible!important}.finance-table{min-width:0!important}.finance-table td,.finance-table th{font-size:10px!important;padding:7px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.sidebar,.topbar,.footer,.page-heading,.notice,.skip-link,dialog{display:none!important}.page{margin:0}.workspace{padding:0}.document{border:0;max-width:none;padding:10px}.app-layout{background:#fff}.certificate-paper{break-inside:avoid}.document .status{print-color-adjust:exact}}
