:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--page:#f3f0e8;--page-deep:#ebe6da;--paper:#fffdf8;--paper-soft:#f8f5ed;--paper-warm:#f5ead9;--ink:#182621;--ink-soft:#52605a;--muted:#7b857f;--line:#dedbd1;--line-soft:#ebe7dc;--green-950:#102a23;--green-900:#15372e;--green-800:#1d4a3d;--green-700:#276453;--green-100:#deebe3;--green-50:#edf5ef;--orange:#dc7938;--orange-dark:#b85a23;--orange-soft:#f8e4d2;--red:#b84b45;--red-soft:#fae5e1;--blue:#3d6f83;--blue-soft:#e3eff3;--purple:#725a8c;--purple-soft:#eee8f5;--shadow-sm:0 1px 2px #1427200a, 0 5px 16px #1427200b;--shadow-md:0 18px 48px #12261f21;--radius-sm:9px;--radius-md:14px;--radius-lg:20px;--sidebar-width:272px;--topbar-height:68px;font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--page);min-width:320px;min-height:100%}body{background:radial-gradient(circle at 92% 5%, #d67e4012, transparent 28rem), var(--page);min-width:320px;min-height:100vh;color:var(--ink);margin:0;font-size:14px;line-height:1.55;overflow-x:hidden}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button,a{color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline-offset:2px;outline:3px solid #dc793847}button:disabled{cursor:not-allowed;opacity:.58}::selection{background:var(--orange-soft);color:var(--green-950)}.app-shell{min-height:100vh}.sidebar{z-index:50;width:var(--sidebar-width);color:#f8f5ec;background:radial-gradient(circle at 15% -5%,#ffffff14,#0000 18rem),linear-gradient(#173a31 0%,#112b24 100%);flex-direction:column;height:100dvh;padding:22px 18px 16px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto;box-shadow:10px 0 35px #112b2414}.brand{align-items:center;gap:12px;min-height:48px;padding:0 8px;display:flex}.brand>div{min-width:0}.brand strong,.brand small{display:block}.brand strong{letter-spacing:.06em;font-size:17px;font-weight:700}.brand small{color:#f3f1e894;letter-spacing:.04em;margin-top:1px;font-size:11px}.brand-logo{object-fit:contain;object-position:center;filter:drop-shadow(0 4px 10px #00000024);background:#fff;border-radius:11px;flex:none;width:42px;height:42px;padding:5px;display:block}.star-brand{justify-content:center;min-height:104px;padding:4px 0 10px}.star-brand img{object-fit:contain;object-position:center;filter:drop-shadow(0 8px 18px #00000038);border-radius:22px;width:92px;height:92px;display:block}.sidebar-copyright{color:#f2f0e861;text-align:center;margin:12px 8px 0;font-size:8px;line-height:1.65}.scene-label{color:#f2f0e875;letter-spacing:.16em;text-transform:uppercase;margin:27px 10px 9px;font-size:10px;font-weight:700}.scene-switcher{gap:8px;display:grid}.scene-switcher>button{color:#f8f6eec2;text-align:left;background:0 0;border:1px solid #0000;border-radius:13px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:58px;padding:9px 11px;transition:border-color .16s,background .16s,color .16s,transform .16s;display:grid;position:relative}.scene-switcher>button:hover{color:#fffdf8;background:#ffffff0e;border-color:#ffffff14}.scene-switcher>button:active{transform:translateY(1px)}.scene-switcher>button.active{color:#fffdf8;background:#ffffff1a;border-color:#f2b27638;box-shadow:inset 3px 0 #e79a56}.scene-switcher>button[aria-disabled=true]:not(.active){color:#f8f6ee70}.scene-switcher>button>span:nth-child(2){min-width:0}.scene-switcher strong,.scene-switcher small{display:block}.scene-switcher strong{font-size:13px;font-weight:650}.scene-switcher small{color:#f8f6ee7a;margin-top:1px;font-size:10px}.scene-icon{border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.scene-icon svg{width:18px;height:18px}.uniform-icon{color:#f0b276;background:#ea9e5a29}.project-icon{color:#b9d1c2;background:#adcdbb24}.active-dot{background:#f1a15c;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #f1a15c1a}.main-nav{gap:4px;display:grid}.main-nav .scene-label{margin-top:24px}.main-nav>button{color:#f7f5eda3;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;min-height:43px;padding:9px 12px;transition:color .15s,background .15s;display:flex}.main-nav>button:hover{color:#fffdf8;background:#ffffff0e}.main-nav>button.active{color:#fffdf8;background:#ffffff1a}.main-nav>button svg{flex:none;width:18px;height:18px}.main-nav>button>span{min-width:0}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nav-count{background:var(--orange);color:#fff;text-align:center;border-radius:999px;min-width:22px;margin-left:auto;padding:1px 6px;font-size:10px;font-style:normal;font-weight:750;line-height:18px}.sidebar-spacer{flex:28px;min-height:20px}.prototype-note{background:#ffffff0b;border:1px solid #ffffff14;border-radius:12px;padding:13px}.prototype-note p{color:#f5f3eb80;margin:7px 0 0;font-size:10px;line-height:1.6}.user-card{border-top:1px solid #ffffff14;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:12px;padding:11px;display:grid}.user-avatar,.top-avatar,.claim-avatar{border-radius:50%;justify-content:center;align-items:center;font-weight:720;display:inline-flex}.user-avatar{width:34px;height:34px;color:var(--green-950);background:#e5b17d}.user-card>div{min-width:0}.user-card small{color:#f7f5ed73;letter-spacing:.08em;margin-bottom:2px;font-size:9px;display:block}.user-card strong{color:#f8f5ed;text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.logout-button{color:#ffffff9e;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:7px;padding:4px 7px;font-size:9px}.logout-button:hover{color:#fff;background:#ffffff1a}.login-shell{background:radial-gradient(circle at 50% 18%,#48c1eb24,#0000 28rem),linear-gradient(145deg,#eef3f4,#f8f6ef 48%,#e8eef0);place-items:center;min-height:100dvh;padding:32px 20px 70px;display:grid}.login-card{text-align:center;background:#fff;border:1px solid #25363e1a;border-radius:24px;width:min(100%,500px);padding:38px;box-shadow:0 28px 80px #26323d24}.login-logo{background:0 0;border:0;border-radius:30px;place-items:center;width:160px;height:160px;margin:0 auto 24px;display:grid;overflow:hidden;box-shadow:0 14px 32px #1c263233}.login-logo img{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.login-card h1{color:#2d3442;letter-spacing:.12em;margin:0;font-size:34px}.login-intro{color:var(--muted);margin:7px 0 27px;font-size:12px}.login-card form{text-align:left;gap:15px;display:grid}.login-submit{width:100%;margin-top:4px}.login-copyright{color:#8a9297;margin:0;font-size:9px;position:fixed;bottom:18px}.main-area{min-width:0;min-height:100vh;margin-left:var(--sidebar-width)}.topbar{z-index:30;min-height:var(--topbar-height);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#f8f6efe0;border-bottom:1px solid #d6d1c5c7;justify-content:space-between;align-items:center;padding:0 clamp(20px,3vw,42px);display:flex;position:sticky;top:0;box-shadow:0 1px #ffffff8c}.breadcrumb{min-width:0;color:var(--muted);align-items:center;gap:9px;font-size:12px;display:flex}.breadcrumb i{color:#b3b4ae;font-style:normal}.breadcrumb strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.topbar-actions{flex:none;align-items:center;gap:10px;display:flex}.sync-state{color:var(--muted);align-items:center;gap:7px;font-size:11px;display:inline-flex}.sync-state i{background:#5c9b79;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #5c9b791a}.sync-state.sync-error{color:var(--red)}.sync-state.sync-error i{background:var(--red);box-shadow:0 0 0 4px #ae43321a}.top-avatar{background:var(--green-900);color:#fffdf8;width:32px;height:32px;font-size:12px}.menu-button,.mobile-scrim{display:none}.content-area{width:min(100%,1510px);margin:0 auto;padding:clamp(22px,3vw,38px) clamp(20px,3vw,42px) 52px}.content-area>*+*{margin-top:22px}.eyebrow{color:var(--orange-dark);letter-spacing:.14em;text-transform:uppercase;margin:0 0 5px;font-size:10px;font-weight:750}.button{white-space:nowrap;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:9px 15px;font-size:12px;font-weight:680;line-height:1.2;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s,color .15s;display:inline-flex}.button svg{flex:none;width:17px;height:17px}.button:not(:disabled):hover{transform:translateY(-1px)}.button:not(:disabled):active{transform:translateY(0)}.button-primary{background:var(--green-900);color:#fffdf8;box-shadow:0 4px 12px #15372e26}.button-primary:not(:disabled):hover{background:var(--green-800);box-shadow:0 7px 18px #15372e33}.button-secondary{background:var(--paper);color:var(--green-800);border-color:#bdc9c1}.button-secondary:not(:disabled):hover{background:var(--green-50);border-color:#8ca497}.button-accent{background:var(--orange);color:#fff;box-shadow:0 5px 14px #c15b1f38}.button-accent:not(:disabled):hover{background:#e28442;box-shadow:0 8px 20px #c15b1f42}.button-light{color:var(--green-900);background:#fffdf8bf;border-color:#23483b29;box-shadow:0 4px 12px #22372f0d}.button-light:not(:disabled):hover{background:#fffdf8;border-color:#23483b47}.button-ghost{border-color:var(--line);color:var(--ink-soft);background:0 0}.button-ghost:not(:disabled):hover{background:var(--paper-soft);border-color:#bdc4be}.button-danger-soft{background:var(--red-soft);color:#9f3733;border-color:#b84b4533}.button-danger-soft:not(:disabled):hover{background:#f8d8d4;border-color:#b84b4557}.button-small{min-height:32px;padding:6px 10px;font-size:11px}.text-button{min-height:32px;color:var(--green-700);background:0 0;border:0;justify-content:center;align-items:center;gap:4px;padding:4px 2px;font-size:11px;font-weight:680;display:inline-flex}.text-button:hover{color:var(--orange-dark)}.text-button svg{transition:transform .15s}.text-button:hover svg{transform:translate(2px)}.icon-button{border:1px solid var(--line);width:36px;height:36px;color:var(--ink-soft);background:#fffdf8b8;border-radius:9px;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.icon-button:hover{background:var(--paper);color:var(--green-800);border-color:#bfc5bf}input,select,textarea{width:100%;color:var(--ink);background:#fffefa;border:1px solid #d7d8d0;border-radius:9px;transition:border-color .15s,box-shadow .15s,background .15s}input,select{min-height:42px;padding:9px 11px}textarea{resize:vertical;min-height:80px;padding:10px 11px;line-height:1.55}input:hover,select:hover,textarea:hover{border-color:#bfc6be}input:focus,select:focus,textarea:focus{background:#fff;border-color:#4f796a;outline:none;box-shadow:0 0 0 3px #2b65521a}input::placeholder,textarea::placeholder{color:#aaada7}.hero-strip{isolation:isolate;border-radius:var(--radius-lg);min-height:190px;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:flex-end;gap:28px;padding:clamp(26px,3vw,40px);display:flex;position:relative;overflow:hidden}.hero-strip:after{z-index:-1;opacity:.09;content:"";border:1px solid;border-radius:50%;width:260px;height:260px;position:absolute;bottom:-104px;right:-56px;box-shadow:0 0 0 38px,0 0 0 39px #ffffff1f}.hero-strip>div:first-child{max-width:700px}.hero-strip h1,.project-detail-hero h1,.page-title-row h1,.standalone-title h1{letter-spacing:-.035em;margin:0;font-weight:720}.hero-strip h1{max-width:720px;font-size:clamp(27px,3.2vw,42px);line-height:1.18}.hero-strip>div>p:last-child{max-width:620px;margin:13px 0 0;font-size:13px}.uniform-hero{background:linear-gradient(110deg, #fffdf8f0, #f4e8d6ed), var(--paper-warm);color:var(--green-950);border:1px solid #dfd4c4}.uniform-hero:before{z-index:-1;background:var(--orange);content:"";width:5px;position:absolute;inset:0 auto 0 0}.uniform-hero>div>p:last-child{color:#657068}.project-hero{background:linear-gradient(115deg, #1b4b3d4d, transparent 58%), var(--green-950);color:#fffdf8;border:1px solid #ffffff12;box-shadow:0 14px 30px #102a2324}.project-hero>div>p:last-child{color:#fffdf8a3}.private-kicker{color:#e9aa70;letter-spacing:.08em;align-items:center;gap:6px;margin-bottom:8px;font-size:10px;font-weight:720;display:inline-flex}.hero-actions{flex:none;gap:9px;display:flex}.stats-grid{gap:14px;display:grid}.stats-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.stats-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.project-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.project-dashboard-empty{padding-block:28px}.stat-card{border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--paper);min-width:0;min-height:128px;box-shadow:var(--shadow-sm);padding:19px 19px 17px;position:relative;overflow:hidden}.stat-card:after{opacity:.035;content:"";background:currentColor;border-radius:50%;width:80px;height:80px;position:absolute;bottom:-30px;right:-20px}.stat-topline{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:600;display:flex}.stat-icon{width:29px;height:29px;color:var(--ink-soft);background:#edf0eb;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.stat-card>strong{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap;margin-top:13px;font-size:clamp(20px,2vw,26px);font-weight:740;line-height:1.12;display:block;overflow:hidden}.stat-card>small{color:var(--muted);margin-top:7px;font-size:10px;display:block}.stat-green{border-top:2px solid #5f9677}.stat-green .stat-icon{background:var(--green-50);color:var(--green-700)}.stat-orange{border-top:2px solid #de8a4d}.stat-orange .stat-icon{color:var(--orange-dark);background:#fbefe3}.stat-red{border-top:2px solid #c96962}.stat-red .stat-icon{background:var(--red-soft);color:var(--red)}.stat-ink{border-top:2px solid #4a655b}.content-grid{gap:20px;display:grid}.content-grid.two-one{grid-template-columns:minmax(0,1.65fr) minmax(300px,.85fr)}.content-grid.equal{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--paper);min-width:0;box-shadow:var(--shadow-sm);padding:clamp(18px,2vw,24px)}.panel-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:19px;display:flex}.panel-header>div{min-width:0}.panel-header h1,.panel-header h2,.school-card h2{color:var(--ink);letter-spacing:-.025em;margin:0;font-weight:700;line-height:1.25}.panel-header h1{font-size:clamp(23px,2.4vw,31px)}.panel-header h2,.school-card h2{font-size:17px}.panel-header>div>p:last-child:not(.eyebrow),.page-title-row>div>p:last-child:not(.eyebrow),.standalone-title>div>p:last-child:not(.eyebrow){color:var(--muted);margin:7px 0 0;font-size:11px}.page-panel{min-height:calc(100dvh - var(--topbar-height) - 76px)}.page-title-row{align-items:center;margin-bottom:24px}.page-title-row>div:first-child,.page-section{min-width:0}.standalone-title{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.standalone-title h1{font-size:clamp(25px,2.6vw,34px)}.badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;flex:none;justify-content:center;align-items:center;min-height:23px;padding:3px 8px;font-size:9px;font-weight:720;line-height:1.2;display:inline-flex}.badge-neutral{color:#69716c;background:#f3f3ef;border-color:#dcddd7}.badge-green{background:var(--green-50);color:#347057;border-color:#cfe1d5}.badge-orange{color:#ae5726;background:#fbede0;border-color:#f0d0b5}.badge-red{background:var(--red-soft);color:#a53e39;border-color:#efc9c5}.badge-blue{background:var(--blue-soft);color:#35687c;border-color:#cbdfe5}.badge-purple{background:var(--purple-soft);color:#685080;border-color:#ddd1ea}.table-wrap{scrollbar-width:thin;scrollbar-color:#c9cbc4 transparent;width:100%;overflow-x:auto}.mobile-transaction-list{display:none}.mobile-transaction-disclosure{border:1px solid var(--line-soft);background:#fffefa;border-radius:11px;overflow:hidden}.mobile-transaction-summary{width:100%;min-height:52px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:78px minmax(42px,1fr) auto 24px;align-items:center;gap:8px;padding:10px 11px;display:grid}.mobile-transaction-summary-with-title{grid-template-columns:minmax(52px,1.35fr) 72px minmax(36px,.55fr) minmax(68px,auto) 24px;gap:6px}.mobile-transaction-summary-with-title .mobile-transaction-date{font-size:9px}.mobile-transaction-summary-with-title .mobile-transaction-amount{font-size:clamp(9px,2.75vw,11px)}.mobile-transaction-summary:hover,.mobile-transaction-summary:focus-visible{background:var(--paper-soft)}.mobile-transaction-summary:focus-visible{outline-offset:-2px;outline:2px solid #4f796a}.mobile-transaction-title,.mobile-transaction-date,.mobile-transaction-handler,.mobile-transaction-amount{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mobile-transaction-title{font-size:11px;font-weight:720}.mobile-transaction-date{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.mobile-transaction-handler{font-size:11px;font-weight:650}.mobile-transaction-amount{font-variant-numeric:tabular-nums;font-size:clamp(9px,3vw,12px);font-weight:760;overflow:visible}.mobile-transaction-amount-block{justify-self:end;justify-items:end;min-width:0;display:grid}.mobile-transaction-amount-caption{color:var(--muted);margin-top:2px;font-size:9px;font-weight:650;line-height:1}.mobile-transaction-amount-income{color:var(--green-700)}.mobile-transaction-amount-expense{color:var(--orange-dark)}.mobile-transaction-chevron{background:var(--paper-soft);width:24px;height:24px;color:var(--green-700);border-radius:7px;place-items:center;display:inline-grid}.mobile-transaction-chevron svg{transition:transform .15s;transform:rotate(90deg)}.mobile-transaction-summary[aria-expanded=true] .mobile-transaction-chevron svg{transform:rotate(-90deg)}.mobile-transaction-details{border-top:1px solid var(--line-soft);background:#fbfaf5;padding:12px}.mobile-transaction-details[hidden]{display:none}.mobile-detail-grid{grid-template-columns:minmax(88px,.35fr) minmax(0,1fr);gap:9px 12px;margin:0;display:grid}.mobile-detail-grid dt,.mobile-detail-grid dd{min-width:0;margin:0}.mobile-detail-grid dt{color:var(--muted);font-size:9px}.mobile-detail-grid dd{overflow-wrap:anywhere;color:var(--ink-soft);font-size:10px;line-height:1.55}.mobile-detail-grid dd>.badge+.badge{margin-left:5px}.mobile-transaction-actions{border-top:1px solid var(--line-soft);flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;padding-top:10px;display:flex}.table-wrap table{border-collapse:collapse;table-layout:auto;width:100%;min-width:770px}.table-wrap th,.table-wrap td{border-bottom:1px solid var(--line-soft);vertical-align:middle;text-align:left;padding:13px 12px}.table-wrap th:first-child,.table-wrap td:first-child{padding-left:2px}.table-wrap th:last-child,.table-wrap td:last-child{padding-right:2px}.table-wrap th{color:#818882;letter-spacing:.07em;white-space:nowrap;font-size:9px;font-weight:730}.table-wrap td{color:#4e5953;font-size:11px}.table-wrap tbody tr:last-child td{border-bottom:0}.table-wrap tbody tr{transition:background .14s}.table-wrap tbody tr:hover{background:#f2f0e88c}.table-wrap td small,.table-primary{display:block}.table-primary{max-width:270px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:660;overflow:hidden}.table-wrap td small{color:var(--muted);margin-top:3px;font-size:9px}.align-right{text-align:right!important}.money{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:710}.money-in{color:#307258!important}.money-out{color:#9d4d2c!important}.muted{color:#9a9f9a}.file-chip{color:#51655c;text-overflow:ellipsis;white-space:nowrap;background:#f7f7f2;border:1px solid #dfe1db;border-radius:7px;align-items:center;gap:5px;max-width:150px;padding:4px 7px;font-size:9px;text-decoration:none;display:inline-flex;overflow:hidden}.voucher-button{font:inherit;cursor:pointer}.attachment-viewer-body{background:#f1f0ea;flex:auto;min-height:280px;padding:18px 22px;display:grid;overflow:auto}.attachment-viewer-meta{justify-content:flex-end;gap:8px;margin-bottom:12px;display:flex}.attachment-viewer-meta span{border:1px solid var(--line-soft);background:var(--paper);color:var(--muted);border-radius:999px;padding:4px 8px;font-size:10px}.attachment-image-preview{object-fit:contain;background:#fff;border-radius:12px;width:auto;max-width:100%;max-height:68dvh;margin:auto;display:block;box-shadow:0 12px 36px #10251d29}.attachment-pdf-viewer{gap:10px;min-width:0;display:grid}.attachment-pdf-toolbar{z-index:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf8f0;border-radius:10px;justify-content:center;align-items:center;gap:12px;padding:8px;display:flex;position:sticky;top:-18px;box-shadow:0 6px 18px #10251d14}.attachment-pdf-toolbar span{min-width:90px;color:var(--ink);text-align:center;font-size:10px;font-weight:680}.attachment-pdf-canvas-wrap{border-radius:12px;place-items:center;min-height:320px;display:grid;overflow:auto}.attachment-pdf-canvas-wrap canvas{background:#fff;max-width:100%;display:block;box-shadow:0 12px 36px #10251d29;height:auto!important}.attachment-pdf-canvas-wrap canvas.is-hidden{display:none}.attachment-pdf-status{color:var(--muted);align-items:center;gap:10px;font-size:11px;display:flex}.attachment-loading,.attachment-unavailable{background:var(--paper);min-height:260px;color:var(--muted);text-align:center;border:1px dashed #c9cec6;border-radius:14px;align-content:center;place-items:center;gap:10px;padding:28px;display:grid}.attachment-loading .spinner,.attachment-pdf-status .spinner{border:3px solid #d6ded9;border-top-color:var(--green-700);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite attachment-spin}@keyframes attachment-spin{to{transform:rotate(360deg)}}.attachment-unavailable h3,.attachment-unavailable p{margin:0}.attachment-unavailable h3{color:var(--ink);font-size:16px}.attachment-unavailable p{max-width:520px;font-size:11px;line-height:1.7}.attachment-unavailable-icon{background:var(--green-50);width:58px;height:58px;color:var(--green-700);border-radius:16px;place-items:center;display:grid}.attachment-viewer-actions{border-top:1px solid var(--line-soft);background:var(--paper);flex:none;justify-content:flex-end;gap:10px;padding:14px 22px 18px;display:flex}.attachment-viewer-actions label.button{cursor:pointer}.attachment-viewer-actions label.button.is-disabled{cursor:wait;opacity:.62}.attachment-viewer-actions label.button input{display:none}.attachment-replacement-error{color:var(--red);align-self:center;margin-right:auto;font-size:10px}.existing-attachment-row{border:1px solid var(--line-soft);background:var(--green-50);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:9px 11px;display:flex}.existing-attachment-row>span:first-child{color:var(--muted);font-size:10px}a.file-chip:hover,button.file-chip:hover{background:var(--green-50);color:var(--green-700);border-color:#aebdb4}.file-chip svg{flex:none}.category-bars{gap:18px;padding:5px 0 3px;display:grid}.category-row{grid-template-columns:minmax(175px,.9fr) minmax(150px,1.35fr) 35px;align-items:center;gap:13px;display:grid}.category-label{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.category-label>span:last-child{color:var(--ink);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:670;overflow:hidden}.bar-track{background:#eeece5;border-radius:99px;height:7px;overflow:hidden}.bar-fill{border-radius:inherit;height:100%;transition:width .45s;display:block}.bar-production{background:#5e8998}.bar-business{background:#db8143}.bar-other{background:#81699a}.category-row>small{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-size:9px}.panel-note,.notice-box{color:#587066;background:#f1f6f1;border:1px solid #dce7df;border-radius:10px;align-items:flex-start;gap:10px;font-size:10px;line-height:1.55;display:flex}.panel-note{margin-top:20px;padding:11px 13px}.panel-note svg,.notice-box svg{color:var(--green-700);flex:none;margin-top:1px}.school-snapshot{display:grid}.school-snapshot article{border-bottom:1px solid var(--line-soft);grid-template-columns:39px minmax(0,1fr);align-items:center;gap:11px;padding:11px 0;display:grid}.school-snapshot article:first-child{padding-top:2px}.school-snapshot article:last-child{border-bottom:0;padding-bottom:0}.school-snapshot article div{min-width:0}.school-snapshot strong,.school-snapshot small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.school-snapshot strong{color:var(--ink);font-size:11px;font-weight:660}.school-snapshot small{color:var(--muted);margin-top:2px;font-size:9px}.school-mark{border:1px solid #0000;border-radius:11px;flex:none;justify-content:center;align-items:center;width:39px;height:39px;font-size:14px;font-weight:750;display:inline-flex}.school-mark-0{color:#316c55;background:#e7f1ea;border-color:#c9ded1}.school-mark-1{color:#a9582a;background:#f9eadb;border-color:#edd2b8}.school-mark-2{color:#65547c;background:#eeeaf5;border-color:#d7d2e5}.filters-row{border:1px solid var(--line-soft);background:var(--paper-soft);border-radius:11px;grid-template-columns:minmax(240px,1fr) 170px auto;align-items:center;gap:10px;margin:-3px 0 17px;padding:13px;display:grid}.search-field{display:block;position:relative}.search-field>span{z-index:1;color:var(--muted);font-size:20px;line-height:1;position:absolute;top:50%;left:12px;transform:translateY(-54%)}.search-field input{padding-left:37px}.workflow-strip{border:1px solid var(--line-soft);background:var(--paper-soft);border-radius:11px;grid-template-columns:auto minmax(30px,1fr) auto minmax(30px,1fr) auto;align-items:center;gap:11px;margin-bottom:20px;padding:13px 16px;display:grid}.workflow-strip>b{background:#d7d8d0;height:1px}.workflow-step{color:var(--muted);white-space:nowrap;align-items:center;gap:7px;font-size:10px;font-weight:620;display:inline-flex}.workflow-step i{background:var(--paper);color:#777f79;border:1px solid #d3d6d0;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;font-size:9px;font-style:normal;display:inline-flex}.workflow-step.active{color:var(--green-700)}.workflow-step.active i{border-color:var(--green-700);background:var(--green-700);color:#fff}.claim-list{gap:10px;display:grid}.claim-card{border:1px solid var(--line-soft);background:#fffefa;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;padding:16px;transition:border-color .15s,box-shadow .15s;display:flex}.claim-card:hover{border-color:#d4d6ce;box-shadow:0 7px 20px #1427200b}.claim-main{grid-template-columns:39px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.claim-avatar{background:var(--paper-warm);width:39px;height:39px;color:var(--orange-dark);font-size:13px}.claim-main>div{min-width:0}.claim-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.claim-title strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:670;overflow:hidden}.claim-main p{color:var(--muted);margin:3px 0 0;font-size:10px}.claim-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px;display:flex}.claim-side{flex:none;justify-items:end;gap:9px;display:grid}.claim-side>strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:15px;font-weight:730}.mini-actions{gap:6px;display:flex}.school-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.school-card{border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--paper);min-width:0;box-shadow:var(--shadow-sm);padding:20px;transition:transform .16s,border-color .16s,box-shadow .16s}.school-card:hover{border-color:#d4d3c9;transform:translateY(-2px);box-shadow:0 11px 26px #14272012}.school-card-top{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:17px;display:flex}.school-card>p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-size:10px;overflow:hidden}.school-metrics{background:var(--paper-soft);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;padding:13px;display:grid}.school-metrics span+span{border-left:1px solid var(--line);padding-left:10px}.school-metrics small,.school-metrics strong{display:block}.school-metrics small{color:var(--muted);font-size:9px}.school-metrics strong{color:var(--ink);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;font-weight:700;overflow:hidden}.school-card footer{border-top:1px solid var(--line-soft);color:var(--muted);justify-content:space-between;align-items:center;margin-top:16px;padding-top:13px;font-size:10px;display:flex}.school-edit-button{color:var(--green-700);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:0;font-weight:700;display:inline-flex}.school-edit-button:hover{color:var(--green-900)}.row-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:9px;display:inline-flex}.danger-text{color:var(--red)!important}.wide-notice{margin-top:17px}.data-tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:22px;display:grid}.data-tool-card{flex-direction:column;align-items:flex-start;gap:17px;min-height:270px;display:flex}.data-tool-card.primary-tool{background:linear-gradient(145deg, #f4faf6, var(--paper));border-color:#23624c47}.data-tool-card>div:not(.data-tool-actions){flex:1}.data-tool-card h2{color:var(--ink);margin:3px 0 8px;font-size:18px}.data-tool-card p:not(.eyebrow){color:var(--muted);margin:0;font-size:11px;line-height:1.75}.data-tool-icon{background:var(--green-50);width:42px;height:42px;color:var(--green-800);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.data-tool-actions{flex-wrap:wrap;gap:8px;display:flex}.success-notice{color:var(--green-800);background:#f0f8f3;border-color:#25755740}.data-error{margin:17px 0 0}.data-warning-panel{margin-top:17px}.data-warning-panel>p{color:var(--muted);margin:0;font-size:11px;line-height:1.75}.dashboard-settings-panel{margin-top:17px}.dashboard-settings-panel .panel-header{align-items:flex-start}.dashboard-settings-panel .panel-header h2{margin:3px 0 7px}.dashboard-settings-panel .panel-header p:not(.eyebrow){max-width:680px;color:var(--muted);margin:0;font-size:11px;line-height:1.7}.dashboard-settings-grid,.project-dashboard-settings-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:17px;display:grid}.project-dashboard-setting{border:1px solid var(--line);background:var(--paper-soft);border-radius:12px;grid-template-columns:minmax(0,1fr) 42px;min-width:0;transition:border-color .16s,background .16s,box-shadow .16s;display:grid;overflow:hidden}.project-dashboard-setting.is-enabled{background:#f3f9f5;border-color:#23624c47}.project-dashboard-setting .dashboard-metric-toggle{background:0 0;border:0;border-radius:0;width:100%;min-height:82px}.project-dashboard-setting .dashboard-metric-toggle:hover,.project-dashboard-setting .dashboard-metric-toggle.is-enabled{background:0 0;border-color:#0000}.dashboard-order-actions{border-left:1px solid var(--line-soft);background:#fffdf873;flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex}.dashboard-order-actions .icon-button{border-radius:7px;width:28px;height:28px;font-size:14px;font-weight:750}.dashboard-order-actions .icon-button:disabled{cursor:not-allowed;opacity:.28}.dashboard-metric-toggle{border:1px solid var(--line);background:var(--paper-soft);min-width:0;min-height:72px;color:var(--ink);text-align:left;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;transition:border-color .16s,background .16s,box-shadow .16s;display:flex}.dashboard-metric-toggle:hover{background:#f5faf7;border-color:#23624c59}.dashboard-metric-toggle:focus-visible{outline-offset:2px;outline:3px solid #23624c2e}.dashboard-metric-toggle.is-enabled{background:#f3f9f5;border-color:#23624c47}.dashboard-metric-toggle>span{min-width:0}.dashboard-metric-toggle strong,.dashboard-metric-toggle small{display:block}.dashboard-metric-toggle strong{font-size:12px}.dashboard-metric-toggle small{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.5}.dashboard-metric-toggle>i{background:#c8ceca;border-radius:999px;flex:0 0 42px;width:42px;height:24px;transition:background .16s;position:relative}.dashboard-metric-toggle>i:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #14261f40}.dashboard-metric-toggle.is-enabled>i{background:var(--green-700)}.dashboard-metric-toggle.is-enabled>i:after{transform:translate(18px)}.dashboard-settings-readonly{border:1px solid var(--line-soft);background:var(--paper-soft);color:var(--muted);border-radius:12px;align-items:flex-start;gap:11px;margin-top:17px;padding:14px;display:flex}.dashboard-settings-readonly strong{color:var(--ink-soft);font-size:11px;display:block}.dashboard-settings-readonly p{margin:5px 0 0;font-size:10px;line-height:1.65}.dashboard-settings-note{color:var(--muted);margin:13px 0 0;font-size:10px}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.check-row{border:1px solid var(--line);background:var(--paper-soft);color:var(--ink-soft);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 13px;font-size:10px;line-height:1.6;display:flex}.check-row input{width:16px;height:16px;accent-color:var(--green-700);margin:1px 0 0}.account-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.account-sync-panel{background:#f3faf6;border:1px solid #cfe1d6;border-radius:13px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:13px;margin-bottom:15px;padding:14px 16px;display:grid}.account-sync-panel.is-error{background:#fff5f2;border-color:#e8c0b8}.account-sync-icon{width:42px;height:42px;color:var(--green-700);background:#dcefe4;border-radius:12px;place-items:center;display:grid}.account-sync-panel.is-error .account-sync-icon{color:var(--red);background:#f5ddd8}.account-sync-panel strong,.account-sync-panel p{margin:0;display:block}.account-sync-panel strong{color:var(--ink);font-size:12px}.account-sync-panel p{color:var(--muted);margin-top:3px;font-size:10px;line-height:1.5}.account-card{gap:17px;display:grid}.account-card.is-disabled{opacity:.58}.account-card>header{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;display:grid}.account-card h2,.account-card p{margin:0}.account-card h2{color:var(--ink);font-size:15px}.account-card p{color:var(--muted);font-size:10px}.account-avatar{color:#297695;background:#e8f4f8;border-radius:12px;place-items:center;width:42px;height:42px;font-weight:750;display:grid}.account-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.account-meta span{background:var(--paper-soft);border-radius:9px;min-width:0;padding:11px}.account-meta small,.account-meta strong{display:block}.account-meta small{color:var(--muted);font-size:8px}.account-meta strong{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10px;overflow:hidden}.account-card>footer{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:10px;padding-top:13px;display:flex}.fund-list,.todo-list,.reminder-list{gap:9px;display:grid}.fund-list article{border-bottom:1px solid var(--line-soft);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 0;display:grid}.fund-list article:last-child{border-bottom:0}.fund-list strong,.fund-list p,.fund-list small{margin:0;display:block}.fund-list p,.fund-list small{color:var(--muted);font-size:9px}.fund-list b{color:var(--green-800);font-size:13px}.fund-channel{background:var(--green-50);width:38px;height:38px;color:var(--green-700);border-radius:10px;place-items:center;display:grid}.todo-list{grid-template-columns:repeat(2,minmax(0,1fr))}.todo-card{grid-template-columns:26px minmax(0,1fr);align-items:flex-start;gap:12px;display:grid}.todo-card.is-complete{opacity:.55}.todo-card.is-complete strong{text-decoration:line-through}.todo-check{width:24px;height:24px;color:var(--green-700);background:#fff;border:1px solid #adc0b5;border-radius:7px;place-items:center;padding:0;display:grid}.todo-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.todo-card p,.todo-card small{color:var(--muted);margin:4px 0 0;font-size:9px;display:block}.reminder-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:22px;display:grid}.reminder-summary>span{background:var(--paper-soft);text-align:center;border-radius:13px;padding:18px}.reminder-summary b,.reminder-summary small{display:block}.reminder-summary b{color:var(--green-800);font-size:30px}.reminder-summary small{color:var(--muted);font-size:10px}.reminder-list{padding:0 22px 10px}.reminder-list article{border:1px solid var(--line-soft);border-radius:9px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.reminder-list strong,.reminder-list small{display:block}.reminder-list small{color:var(--muted);font-size:9px}.reminder-actions{justify-content:flex-end;gap:9px;padding:15px 22px 20px;display:flex}.payment-channel-hero{color:#247ca0;background:linear-gradient(135deg,#edf8fc,#f4fbfd);border-radius:14px;align-items:center;gap:14px;margin:22px;padding:18px;display:flex}.payment-channel-hero>span{background:#fff;border-radius:13px;place-items:center;width:50px;height:50px;display:grid}.payment-channel-hero h2{color:#236d8a;margin:0;font-size:22px}.payment-prompt dl{border:1px solid var(--line);border-radius:11px;margin:0 22px;display:grid;overflow:hidden}.payment-prompt dl>div{border-bottom:1px solid var(--line-soft);grid-template-columns:105px minmax(0,1fr);padding:11px 13px;display:grid}.payment-prompt dl>div:last-child{border-bottom:0}.payment-prompt dt{color:var(--muted);font-size:10px}.payment-prompt dd{color:var(--ink);margin:0;font-weight:700}.project-type-tabs{border:1px solid var(--line-soft);box-shadow:var(--shadow-sm);background:#f8f6efd1;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:6px;display:grid}.project-type-tabs button{min-height:46px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:9px 14px;font-size:12px;font-weight:680;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:flex}.project-type-tabs button:hover{color:var(--green-800)}.project-type-tabs button.active{background:var(--paper);color:var(--green-900);border-color:#35675333;box-shadow:0 4px 12px #15372e14}.project-type-tabs button b{background:var(--green-50);min-width:22px;min-height:22px;color:var(--green-700);border-radius:999px;place-items:center;padding:2px 6px;font-size:9px;display:inline-grid}.project-list-header{align-items:flex-start}.project-list-controls{justify-content:flex-end;align-items:center;gap:10px;display:flex}.project-grouping-mode{width:176px}.project-grouping-mode button{min-height:32px;padding-inline:8px}.project-groups{gap:14px;display:grid}.project-group{gap:9px;display:grid}.project-group-toggle{width:100%;min-height:45px;color:var(--ink);text-align:left;background:#f8f6ef;border:1px solid #e1dfd6;border-radius:10px;align-items:center;gap:10px;padding:8px 12px;transition:border-color .15s,background .15s;display:flex}.project-group-toggle:hover{background:#f4f5ef;border-color:#cbd3cc}.project-group-toggle>span:nth-child(2){gap:2px;min-width:0;display:grid}.project-group-toggle strong{font-size:12px;font-weight:720}.project-group-toggle small{color:var(--muted);font-size:9px}.project-group-disclosure{background:var(--paper);width:27px;height:27px;color:var(--green-700);border-radius:8px;flex:none;place-items:center;display:inline-grid}.project-group-disclosure svg{transition:transform .15s;transform:rotate(90deg)}.project-group-toggle[aria-expanded=false] .project-group-disclosure svg{transform:rotate(0)}.project-list{gap:9px;display:grid}.project-list-card{border:1px solid var(--line-soft);text-align:left;background:#fffefa;border-radius:12px;grid-template-columns:79px minmax(0,1fr);gap:8px 13px;width:100%;padding:15px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.project-list-card:hover{border-color:#cdd5ce;transform:translateY(-1px);box-shadow:0 8px 20px #15372e12}.project-code{background:var(--green-50);color:var(--green-700);text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;align-self:start;padding:5px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;font-weight:720;overflow:hidden}.project-list-main{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.project-list-main>div{min-width:0}.project-list-main strong,.project-list-main small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-list-main strong{color:var(--ink);font-size:12px;font-weight:680}.project-list-main small{color:var(--muted);margin-top:2px;font-size:9px}.project-progress{background:#e9ebe5;border-radius:99px;grid-column:2;height:5px;overflow:hidden}.project-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--green-700), #6a9b7f);height:100%;display:block}.project-list-footer{color:var(--muted);grid-column:2;align-items:center;gap:18px;font-size:9px;display:flex}.project-list-footer b{color:#42524b;font-variant-numeric:tabular-nums;font-weight:680}.project-list-footer svg{color:#87928c;margin-left:auto}.technical-service-flow-grid{grid-template-columns:repeat(3,minmax(120px,1fr) auto) minmax(140px,1.1fr);align-items:stretch;gap:10px;display:grid}.technical-service-flow-grid>span{border:1px solid var(--line-soft);background:#fffefa;border-radius:11px;gap:6px;min-width:0;padding:14px;display:grid}.technical-service-flow-grid small{color:var(--muted);font-size:9px}.technical-service-flow-grid strong{color:var(--ink);font-variant-numeric:tabular-nums;text-overflow:ellipsis;font-size:clamp(14px,1.5vw,19px);overflow:hidden}.technical-service-flow-grid>i{color:#94a099;align-self:center;font-style:normal;font-weight:720}.technical-service-flow-grid .technical-service-flow-result{background:var(--green-50);border-color:#c9ddd1}.technical-service-flow .panel-note{margin-top:14px}@media (width<=700px){.project-type-tabs{gap:5px;padding:4px}.project-type-tabs button{min-height:42px;padding-inline:8px;font-size:11px}.project-list-header,.project-list-controls{flex-direction:column;align-items:stretch}.project-list-controls,.project-grouping-mode{width:100%}.technical-service-flow-grid{grid-template-columns:minmax(0,1fr)}.technical-service-flow-grid>i{display:none}}.timeline,.payment-list,.expense-list{display:grid}.compact-timeline article{grid-template-columns:10px minmax(0,1fr) auto;align-items:start;gap:11px;padding:0 0 19px;display:grid;position:relative}.compact-timeline article:last-child{padding-bottom:0}.compact-timeline article:not(:last-child):after{content:"";background:#dfe2dc;width:1px;position:absolute;top:11px;bottom:3px;left:4px}.compact-timeline strong,.compact-timeline small{display:block}.compact-timeline strong{color:var(--ink);font-size:11px;font-weight:660}.compact-timeline small{color:var(--muted);margin-top:2px;font-size:9px}.compact-timeline article>b{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px;font-weight:690}.timeline-dot{z-index:1;border:2px solid var(--paper);background:#9ca49e;border-radius:50%;width:9px;height:9px;margin-top:4px;display:block;position:relative;box-shadow:0 0 0 1px #bfc5bf}.dot-received{background:#4d9270;box-shadow:0 0 0 1px #72a78b}.dot-due,.dot-submitted,.dot-overdue{background:#d47a3e;box-shadow:0 0 0 1px #e19b6c}.dot-overdue{background:var(--red);box-shadow:0 0 0 1px #cb746e}.insight-panel{background:linear-gradient(100deg,#eff5f0,#f9f7f0);border-color:#d5dfd7;align-items:flex-start;gap:15px;display:flex}.insight-icon{background:var(--green-900);color:#fff;border-radius:10px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.insight-panel strong{color:var(--ink);font-size:12px;font-weight:680}.insight-panel div>p:last-child{color:var(--muted);margin:4px 0 0;font-size:10px}.back-button{min-height:34px;color:var(--green-700);background:0 0;border:0;margin:-7px 0 10px;padding:5px 2px;font-size:11px;font-weight:660}.back-button:hover{color:var(--orange-dark)}.project-detail-hero{justify-content:space-between;align-items:flex-end;gap:20px;padding:2px 2px 6px;display:flex}.project-detail-heading{min-width:0}.project-detail-hero h1{overflow-wrap:anywhere;font-size:clamp(27px,3.3vw,42px);line-height:1.18}.project-detail-heading>p{color:var(--muted);margin:8px 0 0;font-size:11px}.project-detail-status{flex:none;align-items:center;gap:10px;padding-bottom:4px;display:flex}.project-detail-status>span:last-child{color:var(--muted);white-space:nowrap;font-size:10px}.contract-summary{border-left:3px solid var(--green-700)}.contract-info-grid{background:var(--paper-soft);border-radius:11px;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:16px;display:grid}.contract-info-grid small,.contract-info-grid strong{display:block}.contract-info-grid small{color:var(--muted);font-size:9px}.contract-info-grid strong{overflow-wrap:anywhere;color:var(--ink);font-variant-numeric:tabular-nums;margin-top:4px;font-size:11px;font-weight:680}.contract-description{color:var(--ink-soft);margin:15px 2px 0;font-size:10px;line-height:1.7}.payment-list>article,.expense-list>article{border-bottom:1px solid var(--line-soft);align-items:start;gap:11px;padding:14px 0;display:grid}.payment-list>article:first-child,.expense-list>article:first-child{padding-top:1px}.payment-list>article:last-child,.expense-list>article:last-child{border-bottom:0;padding-bottom:0}.payment-list>article{grid-template-columns:10px minmax(0,1fr) auto}.payment-title{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.payment-title strong,.expense-list strong{color:var(--ink);font-size:11px;font-weight:670}.payment-list p,.expense-list p{color:var(--muted);margin:3px 0 0;font-size:9px}.payment-list article>div>small{color:#777f79;margin-top:5px;font-size:9px;display:block}.payment-amount{justify-items:end;gap:4px;display:grid}.record-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.record-actions .text-button,.mobile-transaction-actions .text-button{min-height:32px;padding:5px 3px}.payment-amount>strong,.expense-list article>b{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px;font-weight:710}.expense-list>article{grid-template-columns:38px minmax(0,1fr) auto;align-items:center}.expense-date{border:1px solid var(--line);background:var(--paper-soft);width:36px;height:40px;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;padding:4px;font-size:12px;font-weight:720;line-height:1;display:grid}.expense-date small{color:var(--muted);font-size:8px;font-weight:500}.formula-panel{background:linear-gradient(100deg, var(--paper), #f1f5f0);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;display:grid}.formula-panel>div{min-width:0}.formula-panel small,.formula-panel strong{display:block}.formula-panel small{color:var(--muted);font-size:9px}.formula-panel strong{color:var(--ink);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:13px;font-weight:720;overflow:hidden}.formula-panel strong i{font-style:normal;display:none}.formula-panel>span{color:#999f9a;font-size:18px;font-weight:300}.formula-panel .formula-result{background:var(--green-900);border-radius:9px;padding:11px 14px}.formula-result small{color:#ffffff94}.formula-result strong{color:#fffdf8}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0c1c1785;place-items:center;padding:20px;animation:.16s ease-out backdrop-in;display:grid;position:fixed;inset:0}.modal-panel{background:var(--paper);width:min(100%,620px);max-height:min(92dvh,880px);box-shadow:var(--shadow-md);border:1px solid #ffffff75;border-radius:18px;flex-direction:column;animation:.19s ease-out modal-in;display:flex;overflow:hidden}.modal-panel.modal-wide{width:min(100%,780px)}.modal-header{border-bottom:1px solid var(--line-soft);background:#fffdf8f5;flex:none;justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:17px 22px;display:flex}.modal-header h2{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:19px;font-weight:710}.modal-panel>form{flex-direction:column;flex:auto;min-height:0;display:flex}.form-body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c9cbc4 transparent;flex:auto;gap:16px;min-height:0;padding:21px 22px 23px;display:grid;overflow-y:auto}.form-grid{gap:14px;display:grid}.form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.field{gap:6px;min-width:0;display:grid}.field>span{color:#45524c;font-size:10px;font-weight:650}.field>span i{color:var(--red);margin-left:3px;font-style:normal}.segmented{border:1px solid var(--line);background:var(--paper-soft);border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;display:grid}.segmented button{min-height:36px;color:var(--muted);background:0 0;border:0;border-radius:8px;font-size:11px;font-weight:650;transition:color .15s,background .15s,box-shadow .15s}.segmented button:hover{color:var(--ink)}.segmented button.active{background:var(--paper);color:var(--green-800);box-shadow:0 2px 7px #14272017}.full-width{width:100%}.notice-box{padding:11px 13px}.contract-attachment-row{background:#f1f6f1;border:1px solid #dce7df;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:56px;padding:10px 10px 10px 13px;display:grid}.contract-attachment-row.is-pending-removal{background:#fbf4f1;border-color:#ead7d0}.contract-attachment-file{gap:5px;min-width:0;display:grid}.contract-attachment-file>small{color:var(--muted);font-size:9px;line-height:1.4}.contract-attachment-file>span{min-width:0}.contract-attachment-file .file-chip{max-width:min(100%,480px);padding:6px 8px;font-size:10px}.contract-attachment-remove,.contract-attachment-undo{min-height:30px;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-self:center end;margin-left:auto;padding:4px 9px;font-size:9px;line-height:1}.contract-attachment-remove{color:var(--red);border-color:#ead0c8}.contract-attachment-remove:hover,.contract-attachment-remove:focus-visible{background:#fff7f4;border-color:#d7a898}.contract-attachment-undo{color:var(--green-800);border-color:#cadbd1}.contract-attachment-undo:hover,.contract-attachment-undo:focus-visible{background:var(--paper);border-color:#9db7a7}.contract-attachment-remove:disabled,.contract-attachment-undo:disabled{cursor:not-allowed;opacity:.55}.voucher-drop{cursor:pointer;background:#f7faf7;border:1px dashed #afbeb5;border-radius:11px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;min-height:78px;padding:13px 15px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid;position:relative}.voucher-drop:hover{border-color:var(--green-700);background:var(--green-50)}.voucher-drop:focus-within{border-color:var(--green-700);box-shadow:0 0 0 3px #2b65521a}.voucher-drop input{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.voucher-icon{background:var(--green-100);width:40px;height:40px;color:var(--green-700);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.voucher-drop>span:last-child{min-width:0}.voucher-drop strong,.voucher-drop small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.voucher-drop strong{color:var(--ink);font-size:11px;font-weight:670}.voucher-drop small{color:var(--muted);margin-top:3px;font-size:9px}.receipt-source-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.receipt-source-button,.voucher-selection{text-align:left;background:#f7faf7;border:1px dashed #afbeb5;border-radius:11px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;min-width:0;min-height:78px;padding:13px 15px;display:grid}.receipt-source-button{cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.receipt-source-button:hover,.receipt-source-button:focus-visible{border-color:var(--green-700);background:var(--green-50)}.receipt-source-button:focus-visible{outline:none;box-shadow:0 0 0 3px #2b65521a}.receipt-source-button>span:last-child,.voucher-selection>span:last-child{min-width:0}.receipt-source-button strong,.receipt-source-button small,.voucher-selection strong,.voucher-selection small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.receipt-source-button strong,.voucher-selection strong{color:var(--ink);font-size:11px;font-weight:670}.receipt-source-button small,.voucher-selection small{color:var(--muted);margin-top:3px;font-size:9px}.receipt-source-hint{color:var(--muted);margin:7px 1px 0;font-size:9px}.voucher-selection{background:var(--green-50);border-style:solid;border-color:#c6dbcf;margin-top:10px}.form-error,.form-hint{margin:0;font-size:10px}.form-error{background:var(--red-soft);color:#a13e39;border:1px solid #efcac6;border-radius:8px;padding:9px 11px}.form-hint{color:var(--muted)}.form-actions{padding:14px 22px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line-soft);background:#fffdf8f7;flex:none;justify-content:flex-end;align-items:center;gap:9px;display:flex;box-shadow:0 -7px 20px #14272009}.employee-home{gap:18px}.employee-welcome{border-radius:var(--radius-lg);color:#fffdf7;min-height:156px;box-shadow:var(--shadow-md);background:radial-gradient(circle at 88% 12%,#eea7633d,#0000 17rem),linear-gradient(135deg,#173d32,#102b24);justify-content:space-between;align-items:center;gap:24px;padding:28px 32px;display:flex;position:relative;overflow:hidden}.employee-welcome:after{content:"";border:1px solid #ffffff12;border-radius:50%;width:230px;height:230px;position:absolute;bottom:-80px;right:-30px}.employee-welcome>*{z-index:1;position:relative}.employee-welcome h1{margin:2px 0 5px;font-size:clamp(25px,3vw,38px);line-height:1.2}.employee-welcome p:not(.eyebrow){color:#fffdf7ad;max-width:580px;margin:0}.employee-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.employee-action-card{background:var(--paper);min-height:178px;box-shadow:var(--shadow-sm);text-align:left;border:1px solid #19372e1a;border-radius:22px;grid-template-rows:auto auto;grid-template-columns:70px minmax(0,1fr);align-items:center;padding:28px 30px;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid}.employee-action-card:hover{border-color:#dc793842;transform:translateY(-2px);box-shadow:0 18px 42px #1427201a}.employee-action-card:active{transform:translateY(0)}.employee-action-card>span{border-radius:18px;grid-row:1/3;place-items:center;width:58px;height:58px;display:grid}.reimbursement-action>span{background:var(--orange-soft);color:var(--orange-dark)}.attendance-action>span{background:var(--green-100);color:var(--green-700)}.employee-action-card strong{align-self:end;font-size:clamp(27px,3vw,38px);line-height:1.1}.employee-action-card small{color:var(--muted);align-self:start;margin-top:7px;font-size:12px}.employee-summary-card{padding:22px}.employee-summary-card h2{margin:2px 0 0;font-size:24px}.employee-summary-card>p{color:var(--muted);margin:16px 0 0}.attendance-photo-preview{border:1px solid var(--line);object-fit:contain;background:#182621;border-radius:14px;width:min(100%,520px);max-height:360px;margin:0 auto;display:block}.location-capture{border:1px solid var(--line-soft);background:var(--paper-soft);border-radius:12px;align-items:center;gap:14px;padding:13px;display:flex}.location-capture>span{min-width:0;color:var(--muted);overflow-wrap:anywhere}.attendance-list-panel{overflow:hidden}.attendance-photo-links{flex-wrap:wrap;gap:6px;display:flex}.payroll-calculation{border:1px solid var(--line);background:var(--paper-soft);border-radius:13px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.payroll-calculation>span{border-right:1px solid var(--line);color:var(--muted);gap:4px;padding:15px 17px;font-size:10px;display:grid}.payroll-calculation>span:last-child{border-right:0}.payroll-calculation b{color:var(--ink);font-size:15px}.payroll-calculation .payroll-net{background:var(--green-900);color:#ffffff9e}.payroll-calculation .payroll-net b{color:#fff}.payroll-list{display:grid}.payroll-card{border-top:1px solid var(--line-soft);grid-template-columns:minmax(190px,.8fr) minmax(260px,1.4fr) minmax(130px,auto);align-items:center;gap:20px;padding:18px 22px;display:grid}.payroll-card:first-child{border-top:0}.payroll-person{align-items:center;gap:11px;display:flex}.payroll-person>div,.payroll-person strong,.payroll-person small{min-width:0;display:block}.payroll-person small{color:var(--muted);margin-top:3px;font-size:10px}.payroll-breakdown{flex-wrap:wrap;gap:6px;display:flex}.payroll-breakdown span{background:var(--paper-soft);color:var(--ink-soft);border-radius:7px;padding:4px 8px;font-size:9px}.payroll-side{justify-items:end;gap:7px;display:grid}.payroll-side>strong{font-size:17px}.section-tabs{border:1px solid var(--line-soft);background:var(--paper-soft);border-radius:13px;grid-template-columns:repeat(2,minmax(120px,1fr));gap:4px;width:fit-content;padding:4px;display:inline-grid}.section-tabs button{min-height:38px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:0 20px;font-weight:700}.section-tabs button.active{background:var(--paper);color:var(--green-800);box-shadow:var(--shadow-sm)}.checkbox-fieldset{border:0;margin:0;padding:0}.checkbox-fieldset legend{color:var(--ink-soft);margin-bottom:8px;font-size:11px;font-weight:700}.checkbox-options{flex-wrap:wrap;gap:10px;display:flex}.checkbox-options label{border:1px solid var(--line-soft);background:var(--paper-soft);border-radius:10px;align-items:center;gap:7px;min-height:38px;padding:0 14px;font-size:11px;font-weight:700;display:inline-flex}.inline-checkbox{border:1px solid var(--line-soft);background:var(--paper-soft);border-radius:11px;align-items:flex-start;gap:10px;padding:13px 14px;display:flex}.inline-checkbox input{flex:0 0 16px;width:16px;height:16px;min-height:16px;margin-top:3px;padding:0}.compact-checkbox-row{flex-wrap:wrap;align-items:flex-start;gap:9px;display:flex}.inline-checkbox.compact-inline-checkbox{width:fit-content;max-width:100%;padding:9px 11px;display:inline-flex}.compact-inline-checkbox span{min-width:0}.inline-checkbox strong,.inline-checkbox small{display:block}.inline-checkbox strong{font-size:11px}.inline-checkbox small{color:var(--muted);margin-top:3px;font-size:9px}.asset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.asset-card{padding:20px}.asset-card>header{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;display:grid}.asset-card h2{margin:2px 0 0;font-size:16px}.asset-icon{background:var(--green-100);width:42px;height:42px;color:var(--green-700);border-radius:12px;place-items:center;display:grid}.asset-meta{border-top:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:20px;padding-top:16px;display:grid}.asset-meta small,.asset-meta strong{display:block}.asset-meta small{color:var(--muted);font-size:9px}.asset-meta strong{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.asset-card>p{color:var(--muted);margin:15px 0 0;font-size:10px}.empty-state{color:var(--muted);text-align:center;justify-items:center;padding:38px 20px;display:grid}.empty-icon{border:1px solid var(--line);background:var(--paper-soft);color:#849088;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:11px;display:inline-flex}.empty-state h3{color:var(--ink);margin:0;font-size:14px;font-weight:680}.empty-state p{max-width:380px;margin:6px 0 14px;font-size:10px}.toast{z-index:150;background:var(--green-950);color:#fffdf8;border:1px solid #ffffff1f;border-radius:12px;align-items:center;gap:10px;max-width:min(390px,100vw - 32px);min-height:50px;padding:10px 16px 10px 10px;font-size:11px;animation:.22s ease-out toast-in;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 14px 36px #0c201938}.toast>span{color:#96c7aa;background:#ffffff1a;border-radius:8px;flex:none;justify-content:center;align-items:center;width:29px;height:29px;display:inline-flex}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)scale(.99)}}@keyframes backdrop-in{0%{opacity:0}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media (width<=1450px){.stats-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card>strong{font-size:21px}}@media (width<=1220px){.stats-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid.five .stat-card:nth-child(4),.stats-grid.five .stat-card:nth-child(5){grid-column:span 1}.stat-card>strong{font-size:21px}.school-card-grid,.data-tool-grid,.contract-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1080px){.stats-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid.two-one,.content-grid.equal{grid-template-columns:1fr}.formula-panel{gap:10px}.asset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-card{grid-template-columns:minmax(180px,.8fr) minmax(220px,1.2fr)}.payroll-side{grid-column:1/-1;grid-template-columns:1fr auto auto;place-items:center start}}@media (width<=900px){:root{--topbar-height:62px}.desktop-transaction-list{display:none!important}.mobile-transaction-list{gap:8px;min-width:0;display:grid}.sidebar{width:min(312px,100vw - 48px);padding-top:calc(18px + env(safe-area-inset-top));transition:transform .22s cubic-bezier(.22,1,.36,1);transform:translate(-105%)}.sidebar-is-open .sidebar{transform:translate(0)}.mobile-scrim{z-index:45;opacity:0;pointer-events:none;background:#0c1b1675;border:0;width:100%;height:100%;padding:0;transition:opacity .18s;position:fixed;inset:0}.sidebar-is-open .mobile-scrim{opacity:1;pointer-events:auto;display:block}.main-area{margin-left:0}.topbar{padding:0 17px}.menu-button{border:1px solid var(--line);background:#fffdf8c7;border-radius:9px;flex:none;place-content:center;gap:4px;width:38px;height:38px;margin-right:11px;padding:0;display:grid}.menu-button span{background:var(--green-900);border-radius:2px;width:15px;height:1.5px;display:block}.breadcrumb{margin-right:auto}.sync-state{display:none}.content-area{padding:20px 17px 42px}.hero-strip{min-height:180px}.content-grid.two-one,.content-grid.equal{grid-template-columns:minmax(0,1fr)}.table-wrap{overflow:visible}.table-wrap table,.table-wrap thead,.table-wrap tbody,.table-wrap tr,.table-wrap td{width:100%;display:block}.table-wrap table{min-width:0}.table-wrap thead{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.table-wrap tbody{gap:10px;display:grid}.table-wrap tbody tr{border:1px solid var(--line-soft);background:#fffefa;border-radius:11px;gap:0;padding:10px 14px;display:grid}.table-wrap tbody tr:hover{background:#fffefa}.table-wrap td,.table-wrap td:first-child,.table-wrap td:last-child{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:18px;min-height:38px;padding:9px 0;display:flex;text-align:right!important}.table-wrap td:last-child{border-bottom:0}.table-wrap td:before{color:var(--muted);letter-spacing:.03em;text-align:left;content:attr(data-label);flex:0 0 92px;font-size:9px;font-weight:650}.table-wrap td>*{max-width:calc(100% - 106px)}.table-wrap td small{text-align:right}.table-primary{white-space:normal;max-width:none}.file-chip{max-width:calc(100% - 106px)}.money{font-size:12px!important}}@media (width<=720px){.employee-welcome{flex-direction:column;align-items:flex-start;min-height:0;padding:23px 21px}.employee-action-grid,.asset-grid{grid-template-columns:minmax(0,1fr)}.employee-action-card{min-height:138px;padding:21px}.employee-action-card strong{font-size:29px}.location-capture{flex-direction:column;align-items:stretch}.payroll-calculation{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-calculation>span:nth-child(2){border-right:0}.payroll-calculation>span:nth-child(-n+2){border-bottom:1px solid var(--line)}.payroll-card{grid-template-columns:minmax(0,1fr);gap:13px}.payroll-side{grid-column:auto;grid-template-columns:1fr auto}.payroll-side .button{grid-column:1/-1;width:100%}.stats-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid.five .stat-card:last-child{grid-column:span 2}.hero-strip{flex-direction:column;align-items:flex-start;min-height:0}.hero-actions{width:100%}.hero-actions .button,.project-hero>.button{flex:auto}.category-row{grid-template-columns:minmax(145px,.9fr) minmax(100px,1.2fr) 32px}.workflow-strip{grid-template-columns:1fr;gap:7px}.workflow-strip>b{width:1px;height:10px;margin-left:11px}.claim-card{flex-direction:column;align-items:flex-start}.claim-side{grid-template-columns:auto auto;place-items:center start;width:100%;padding-left:51px}.claim-side>:last-child:not(:first-child){justify-self:end}.school-card-grid,.data-tool-grid{grid-template-columns:1fr}.data-tool-card{min-height:auto}.account-grid,.todo-list{grid-template-columns:1fr}.account-sync-panel{grid-template-columns:36px minmax(0,1fr)}.account-sync-panel .button{grid-column:1/-1;width:100%}.account-sync-icon{width:36px;height:36px}.account-card>footer,.project-detail-hero{flex-direction:column;align-items:flex-start}.project-detail-status{justify-content:space-between;width:100%}.formula-panel{grid-template-columns:1fr;gap:10px}.formula-panel>div{justify-content:space-between;align-items:center;gap:15px;display:flex}.formula-panel>span{display:none}.formula-panel small,.formula-panel strong{margin:0}}@media (width<=640px){body{font-size:13px}.login-card{padding:28px 20px}.login-logo{aspect-ratio:1;border-radius:27px;width:clamp(112px,40vw,148px);height:auto;margin-bottom:20px}.reminder-actions{display:grid}.payment-prompt dl>div{grid-template-columns:86px minmax(0,1fr)}.topbar{padding:0 13px}.breadcrumb>span,.breadcrumb>i{display:none}.topbar-actions{gap:6px}.topbar-actions .icon-button{display:none}.content-area{padding:15px 12px 34px}.dashboard-settings-grid,.project-dashboard-settings-list{grid-template-columns:1fr}.dashboard-metric-toggle{min-height:68px;padding:12px}.content-area>*+*{margin-top:13px}.hero-strip{border-radius:16px;gap:20px;padding:23px 20px}.hero-strip h1{font-size:27px}.hero-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hero-actions .button,.project-hero>.button{min-height:45px}.stats-grid.three,.stats-grid.four,.stats-grid.five,.project-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.stats-grid.five .stat-card:last-child{grid-column:span 2}.stat-card{min-height:116px;padding:15px}.stat-card>strong{margin-top:11px;font-size:clamp(17px,5vw,22px)}.stat-topline{font-size:10px}.stat-icon{width:27px;height:27px}.panel{border-radius:12px;padding:17px 14px}.page-panel{min-height:calc(100dvh - var(--topbar-height) - 30px)}.panel-header{gap:11px;margin-bottom:15px}.page-title-row{flex-direction:column;align-items:flex-start;margin-bottom:19px}.page-title-row>.button{width:100%;min-height:44px}.standalone-title{align-items:flex-start}.category-bars{gap:16px}.category-row{grid-template-columns:1fr 35px;gap:7px 10px}.category-label{grid-column:1/-1}.category-row .bar-track{grid-column:1}.category-row>small{grid-column:2}.filters-row{grid-template-columns:minmax(0,1fr) auto;padding:10px}.filters-row .search-field{grid-column:1/-1}.filters-row>select{min-width:0}.claim-main{grid-template-columns:34px minmax(0,1fr);gap:10px}.claim-avatar{width:34px;height:34px}.claim-side{padding-left:44px}.project-list-card{grid-template-columns:70px minmax(0,1fr);padding:13px}.project-list-footer{gap:10px}.project-list-footer span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contract-info-grid{grid-template-columns:1fr;gap:11px;padding:13px}.payment-list>article{grid-template-columns:10px minmax(0,1fr)}.payment-amount{grid-column:2;grid-template-columns:auto auto;justify-content:space-between;place-items:center start}.expense-list>article{grid-template-columns:38px minmax(0,1fr)}.expense-list article>b{grid-column:2;justify-self:start}.modal-backdrop{align-items:end;padding:0}.modal-panel,.modal-panel.modal-wide{border-bottom:0;border-left:0;border-right:0;border-radius:18px 18px 0 0;width:100%;max-height:94dvh}.modal-header{min-height:70px;padding:14px 16px}.modal-header h2{font-size:17px}.form-body{gap:14px;padding:17px 16px 20px}.form-grid.two-columns,.receipt-source-grid{grid-template-columns:minmax(0,1fr)}.receipt-source-button{min-height:72px}input,select{min-height:46px}.segmented button{min-height:40px}.form-actions{z-index:2;padding:11px 16px calc(11px + env(safe-area-inset-bottom));grid-template-columns:minmax(96px,.65fr) minmax(0,1.35fr);display:grid;position:relative}.form-actions .button{width:100%;min-height:46px}.toast{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));max-width:none;left:12px}}@media (width<=390px){.stats-grid.three,.stats-grid.four,.stats-grid.five,.project-metrics-grid{grid-template-columns:1fr}.stats-grid.five .stat-card:last-child{grid-column:auto}.hero-actions,.filters-row{grid-template-columns:1fr}.filters-row .search-field{grid-column:auto}.filters-row .badge{justify-self:start}.claim-side{grid-template-columns:1fr}.claim-side>:last-child:not(:first-child){justify-self:start}.mini-actions{width:100%}.mini-actions .button{flex:1 1 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.sidebar,.topbar,.mobile-scrim,.toast,.button,.text-button{display:none!important}.main-area{margin:0}.content-area{width:100%;padding:0}.panel,.stat-card,.hero-strip{box-shadow:none;break-inside:avoid}}
