:root{--bg:#f5f6f8;--ink:#202624;--muted:#7a837f;--line:#e8ece9;--green:#168967;--mint:#e5f3ed;--purple:#8174d4;--orange:#d6a36a;--sidebar:#191f1d;--radius:18px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-size:14px;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button{border:0}svg{display:block}button svg{width:18px;height:18px}button{transition:background .18s,transform .18s,box-shadow .18s}button:active{transform:translateY(1px)}.sidebar{width:222px;position:fixed;inset:0 auto 0 0;background:var(--sidebar);color:#afb8b2;padding:32px 20px;display:flex;flex-direction:column;z-index:5}.brand{display:block;margin:0 15px 32px}.wordmark{font-size:52px;letter-spacing:-6px;line-height:.9;font-weight:850;color:#f4f8f5;display:block}.wordmark>span{font-size:13px;letter-spacing:0;vertical-align:top;margin-left:8px}.brand-caption{font-size:9px;letter-spacing:4.5px;color:#909f95;display:block;margin-top:14px;margin-left:3px}.workspace{display:flex;align-items:center;gap:9px;padding:12px 8px;border-top:1px solid #303933;border-bottom:1px solid #303933;font-size:11px;color:#e0e7e2;font-weight:600}.workspace small{display:block;font-size:9px;font-weight:400;color:#7d8a80;margin-top:5px}.workspace-logo{width:30px;height:30px;display:grid;place-items:center;background:#303c35;color:#d7efdf;border-radius:8px;font-size:15px}.online-dot{width:6px;height:6px;border-radius:100%;background:#7ebd94;display:inline-block;flex:none}.workspace>.online-dot{margin-left:auto}.nav-label{font-size:8px;letter-spacing:1.6px;color:#718078;margin:28px 10px 14px}nav{display:flex;flex-direction:column;gap:6px}.nav{background:transparent;color:#a6b2ab;padding:13px 12px;border-radius:9px;display:flex;align-items:center;gap:12px;text-align:left;font-size:12px}.nav.active{background:#303c35;color:#e1f0e6}.nav:hover{background:#29322d;color:white}.nav-count{font-size:9px;background:#455349;padding:3px 5px;border-radius:4px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding:40px 10px 0}.local-label{font-size:9px;display:flex;gap:8px;align-items:center}.sidebar-bottom p{font-size:20px;line-height:1.45;letter-spacing:-.7px;color:#e0e8e2;margin:14px 0 20px}.sidebar-bottom>a,.backup-btn{font-size:10px;color:#a8b5ad;display:flex;justify-content:space-between;line-height:2;background:none;width:100%;padding:0;margin:8px 0}.profile{display:flex;gap:10px;align-items:center;border-top:1px solid #303933;margin-top:22px;padding-top:22px;font-size:10px;color:#e3eae5}.profile>span{background:#c3d5c4;color:#263b2d;padding:10px 8px;border-radius:50%;font-size:9px;font-weight:700}.profile small{font-size:8px;color:#8d9c92;display:block;letter-spacing:1px;margin-top:6px}main{margin-left:222px;padding:0 36px;max-width:1900px}.topbar{height:81px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:15px}.breadcrumb{font-size:10px;letter-spacing:.2px;color:#818b84}.breadcrumb span{margin:0 12px;color:#c3cbc6}.breadcrumb b{color:#4e5b53;font-weight:500}.top-actions{display:flex;align-items:center;gap:16px}.data-tag{font-size:9px;color:#7a867e}.month-control{background:white;border:1px solid var(--line);border-radius:9px;display:flex;align-items:center;gap:9px;padding:9px 12px}.month-control svg{width:15px;height:15px;color:#7d8981}.month-control select{font-size:10px;border:0;background:transparent;color:#3f4c44;max-width:150px}.page-head{display:flex;justify-content:space-between;align-items:center;padding:32px 0 26px}.eyebrow{font-size:8px;font-weight:600;letter-spacing:2px;color:var(--muted)}h1{font-size:32px;letter-spacing:-1.5px;font-weight:620;margin:8px 0 8px}.title-dot{color:var(--green)}.page-head p{font-size:11px;color:var(--muted);margin:0}.primary{background:#238263;color:white;border:1px solid #238263;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 17px;border-radius:9px;font-size:11px;font-weight:550}.primary:hover{background:#186f52;box-shadow:0 3px 12px #23826325}.primary>span{font-size:18px;line-height:10px}.secondary{background:white;border:1px solid #dfe6e1;padding:10px 14px;border-radius:8px;font-size:11px;color:#4e5b54}.secondary:hover{background:#f4f8f5}.subtle{font-size:10px;color:var(--muted);background:none;padding:5px}.hero{background:#e6eee7;border:1px solid #dce7df;border-radius:var(--radius);display:flex;justify-content:space-between;align-items:center;padding:24px 28px;position:relative;overflow:hidden;margin-bottom:22px;min-height:145px}.hero .eyebrow{color:#738c78}.hero h2{font-size:23px;font-weight:560;letter-spacing:-.7px;position:relative;margin:9px 0 9px}.hero p{font-size:10px;line-height:1.7;color:#788b7b;max-width:420px;margin:0}.hero-art{position:relative;width:235px;align-self:stretch;display:flex;align-items:flex-end;justify-content:center;gap:12px;margin:-10px 10px -25px;transform:rotate(-8deg)}.hero-art span{width:40px;border-radius:10px 10px 0 0;background:#bccfbc;height:60%;animation:rise .9s cubic-bezier(.2,.7,.3,1) both;transform-origin:bottom}.hero-art span:nth-child(2){height:85%;background:#91b59a;animation-delay:.1s}.hero-art span:nth-child(3){height:115%;background:#659473;animation-delay:.2s}.hero-art:after{content:'↗';position:absolute;right:-2px;top:5px;font-size:50px;font-weight:200;color:#528361;transform:rotate(8deg)}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:24px}.card{background:white;border:1px solid var(--line);border-radius:var(--radius)}.kpi{padding:20px;min-height:136px}.kpi-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#758279;gap:10px}.icon-tile{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#f0f6f2;color:#659179}.icon-tile svg{width:15px;height:15px}.kpi-value{font-size:26px;letter-spacing:-1.2px;font-weight:570;margin:16px 0 10px;white-space:nowrap}.kpi-value .currency{font-size:13px;color:#a1aaa4;margin-right:4px;font-weight:400;letter-spacing:0}.kpi-foot{font-size:9px;color:#9aa39d;line-height:1.5}.kpi.highlight{background:#238263;border-color:#238263;color:#fff}.kpi.highlight .kpi-top,.kpi.highlight .kpi-foot{color:#c0dcd0}.kpi.highlight .currency{color:#b6d2c5}.kpi.highlight .icon-tile{background:#ffffff1c;color:#c8e6d2}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:12px}.section-title h2{font-size:15px;font-weight:590;letter-spacing:-.4px;margin:0}.section-title p{font-size:9px;color:var(--muted);margin:6px 0 0}.chip{font-size:8px;padding:5px 8px;border-radius:5px;background:#f0f5f1;color:#6e8a77;white-space:nowrap}.middle-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:20px;margin-bottom:27px}.chart-card,.bridge-card{padding:22px}.legend{display:flex;align-items:center;gap:12px;font-size:8px;color:#8e9991}.legend i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--green);margin-right:4px}.legend i.out{background:#d7dfd9}.chart{height:166px;position:relative;margin:20px 0 8px;padding:8px 0 20px;display:flex;align-items:flex-end;gap:6px;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent 44px,#f0f3f1 45px,#f0f3f1 46px)}.chart-day{position:relative;flex:1;height:100%;display:flex;align-items:flex-end;justify-content:center;gap:2px}.chart-bar{width:42%;max-width:12px;min-height:1px;border-radius:3px 3px 0 0;background:var(--green);animation:rise .7s both;transform-origin:bottom}.chart-bar.out{background:#d4dfd7}.chart-day small{position:absolute;bottom:-17px;font-size:7px;color:#9ca69f}.chart-day:hover:before{content:attr(data-tip);position:absolute;bottom:105%;left:50%;transform:translateX(-50%);width:max-content;max-width:220px;background:#293a30;color:white;padding:8px;border-radius:6px;font-size:9px;z-index:2;white-space:pre}.chart-note{font-size:8px;color:#99a29c;line-height:1.6}.bridge-row{display:flex;justify-content:space-between;font-size:10px;color:#758279;gap:12px;margin:19px 0 9px}.bridge-row b{color:#4e5c53;font-weight:550;white-space:nowrap}.track{height:5px;background:#f1f4f2;border-radius:5px;overflow:hidden}.track span{display:block;height:100%;border-radius:5px;background:var(--green);transition:width .7s}.track.out span{background:#b2bdc6}.track.reserve span{background:#c4b6dd}.bridge-total{margin-top:18px;padding-top:15px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:11px;font-weight:600}.bridge-total b{color:var(--green);font-size:16px;letter-spacing:-.5px}.partners{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:25px}.partner{padding:20px;overflow:hidden}.partner-top{display:flex;align-items:center;justify-content:space-between}.partner-identity{display:flex;align-items:center;gap:10px}.avatar{background:#edf1f6;color:#7886ac;width:32px;height:32px;display:grid;place-items:center;font-size:11px;font-weight:600;border-radius:50%}.partner:nth-child(2) .avatar{background:#f5ede3;color:#bb986c}.partner:nth-child(3) .avatar{background:#efeaf9;color:#9782c7}.partner-name{font-size:11px;font-weight:550}.partner-label{color:#a2aaa4;font-size:8px;display:block;margin-top:3px}.percent{font-size:11px;color:#8f9992;background:#f7f8f7;border-radius:6px;padding:6px 8px}.partner-value{font-size:26px;font-weight:550;letter-spacing:-1px;margin:23px 0 7px}.partner-desc{font-size:8px;color:#99a39c;line-height:1.5}.partner .track{height:3px;margin-top:17px}.partner:nth-child(1) .track span{background:#7e91bd}.partner:nth-child(2) .track span{background:#c4a478}.partner:nth-child(3) .track span{background:#a48bcf}.notice{border:1px solid #eee6d2;background:#faf6ed;color:#9d895e;font-size:10px;line-height:1.7;border-radius:10px;padding:11px 15px;margin-bottom:20px;display:flex;align-items:flex-start;gap:10px}.notice svg{width:15px;height:15px;flex:none;margin-top:2px}.notice a{text-decoration:underline}.table-card{overflow:hidden;margin-bottom:24px}.table-top{padding:20px 22px;display:flex;justify-content:space-between;gap:12px;align-items:center}.table-top h2{font-size:14px;margin:0}.table-top p{font-size:9px;color:var(--muted);margin:6px 0 0}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:10px;white-space:nowrap}th{background:#fafbfa;color:#a0aaa3;font-size:8px;font-weight:500;letter-spacing:.6px;padding:12px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:14px 20px;border-bottom:1px solid #f0f3f1;color:#758279}tr:last-child td{border:0}.cell-name{font-weight:540;color:#47564c;font-size:10px}.cell-name small{display:block;color:#acb4ae;font-size:8px;margin-top:4px;font-weight:400}.amount{color:#4f5e54;font-weight:550;text-align:right}.type-icon{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#edf6f0;color:#61a57b;margin-right:9px}.type-icon.out{background:#f3f0eb;color:#bba383}.badge{display:inline-flex;align-items:center;font-size:8px;gap:5px;padding:5px 7px;border-radius:5px;background:#f0f5f1;color:#83988a}.badge:before{content:'';width:4px;height:4px;background:currentColor;border-radius:50%}.badge.overdue{background:#fbefed;color:#be8b7d}.badge.wait{background:#f3f2f8;color:#a093b2}.badge.missing{background:#faf5e9;color:#b9a16f}.table-action{color:#548b6a;background:none;font-size:9px;padding:5px;white-space:nowrap}.table-action:hover{text-decoration:underline}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:17px;flex-wrap:wrap}.search{flex:1;min-width:180px;background:white;border:1px solid var(--line);padding:11px 15px;border-radius:9px;font-size:11px}.toolbar select,.toolbar input[type=month]{background:white;border:1px solid var(--line);padding:10px 13px;border-radius:9px;font-size:11px;color:#748077}.empty{padding:36px;text-align:center;color:#96a098;font-size:12px}.detail-note{font-size:10px;line-height:1.9;color:#8c9890;margin:0 0 20px}.form-card{max-width:720px;padding:26px;margin-bottom:20px}.form-card h2{margin:0 0 8px;font-size:17px;font-weight:550}.form-card p{color:#8d9891;font-size:11px;line-height:1.8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.field{display:flex;flex-direction:column;gap:8px;font-size:10px;color:#718077}.field input,.field select{border:1px solid #dce5de;border-radius:8px;padding:11px 12px;width:100%;color:#405146;background:white}.field.full{grid-column:1/-1}.field small{font-size:9px;color:#97a199;line-height:1.6}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.check-field{display:flex;align-items:flex-start;gap:10px;font-size:11px;color:#76847a;line-height:1.7;margin-top:20px}.check-field input{accent-color:var(--green);margin-top:4px}.formula-box{background:#f6f9f6;padding:18px;border-radius:10px;font-size:12px;color:#728578;line-height:1.9;margin:20px 0}.source-caption{font-size:10px;color:#9aab9f}.closing-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:20px}.closing-grid .form-card{max-width:none}.readiness{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#87968b;padding:14px 0;border-bottom:1px solid var(--line)}.readiness b{font-size:10px;font-weight:500}.readiness b.good{color:var(--green)}.readiness b.bad{color:#b89072}footer{display:flex;justify-content:space-between;gap:20px;padding:22px 0 28px;border-top:1px solid var(--line);font-size:8px;color:#9fa8a2;margin-top:10px}.footer-sep{margin:0 7px}dialog{width:520px;max-width:calc(100vw - 30px);max-height:92vh;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 30px 100px #1c332d33;color:var(--ink)}dialog::backdrop{background:#14231c66;backdrop-filter:blur(4px)}.modal-top{display:flex;justify-content:space-between;align-items:center}.modal-top h2{font-size:23px;letter-spacing:-.7px;font-weight:550;margin:8px 0}.icon-btn{background:#f1f5f2;width:29px;height:29px;border-radius:50%;color:#829287;font-size:21px}.modal-hint{font-size:10px;color:#94a398;line-height:1.7}.form-error{color:#ac6454;background:#fbefeb;padding:10px;border-radius:8px;font-size:11px;line-height:1.6;margin-top:15px}.mini-input{padding:7px;border:1px solid #e2e9e4;border-radius:6px;width:82px;color:#6c7b72;background:#fff;font-size:10px}.mini-input.day{width:48px}.rec-checkbox{accent-color:var(--green);width:15px;height:15px}.tab-fade{animation:fade .4s both}#toast{position:fixed;bottom:24px;left:calc(50% + 111px);transform:translate(-50%,15px);background:#243d2d;color:white;box-shadow:0 10px 30px #21392b22;border-radius:10px;padding:13px 20px;font-size:11px;opacity:0;pointer-events:none;transition:.25s;z-index:20;max-width:80vw}#toast.visible{opacity:1;transform:translate(-50%,0)}.negative{color:#ba7e6d!important}.loading{padding:80px;text-align:center;color:#7d9988;font-size:13px}.button-row{display:flex;gap:10px;flex-wrap:wrap}.count-note{color:#9aa69e;font-size:10px;margin-left:auto}.pulse{animation:pulse 2.8s infinite}.print-only{display:none}@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes rise{from{transform:scaleY(.02);opacity:0}to{transform:scaleY(1);opacity:1}}@keyframes pulse{50%{opacity:.5}}
@media(min-width:1550px){main{padding:0 52px}.kpi-value{font-size:31px}.hero{min-height:165px}}
@media(max-width:1180px){.sidebar{width:192px;padding:28px 15px}main{margin-left:192px;padding:0 24px}.kpi{padding:16px}.kpi-value{font-size:23px}.kpis{gap:10px}.middle-grid{grid-template-columns:1.3fr 1fr}.partner{padding:16px}.partner-value{font-size:23px}.top-actions{gap:8px}.data-tag{display:none}#toast{left:calc(50% + 96px)}}
@media(max-width:900px){.sidebar{width:76px;padding:25px 12px}.brand{margin:0 0 35px}.wordmark{font-size:32px;letter-spacing:-4px}.wordmark>span,.brand-caption,.workspace,.nav-label,.sidebar-bottom,.nav-count{display:none}.nav{font-size:0;padding:14px;justify-content:center}.nav svg{width:20px;height:20px}main{margin-left:76px;padding:0 20px}.middle-grid{grid-template-columns:1fr}.partners{gap:10px}.partner-name{font-size:10px}.percent{font-size:9px;padding:5px}.partner-value{font-size:21px}.kpi-value{font-size:22px}.closing-grid{grid-template-columns:1fr}#toast{left:calc(50% + 38px)}}
@media(max-width:650px){main{margin-left:0;padding:0 17px 70px}.sidebar{inset:auto 0 0;width:100%;height:58px;padding:0;background:#1e2922}.brand{display:none}nav{flex-direction:row;justify-content:space-around;height:100%;align-items:center}.nav{width:50px;padding:13px}.topbar{height:66px}.breadcrumb{font-size:8px}.breadcrumb span{margin:0 6px}.page-head{padding:23px 0}.page-head h1{font-size:29px}.page-head p{max-width:210px;line-height:1.7;font-size:10px}.primary{padding:10px 13px;font-size:10px}.hero{padding:20px;min-height:140px}.hero h2{font-size:21px;max-width:230px}.hero p{max-width:240px;font-size:9px}.hero-art{width:70px;gap:5px;opacity:.65;margin-right:0}.hero-art span{width:18px}.hero-art:after{font-size:26px;right:-5px}.kpis{grid-template-columns:1fr 1fr;gap:10px}.kpi-value{font-size:25px}.kpi{min-height:128px}.partners{grid-template-columns:1fr}.partner{display:grid;grid-template-columns:1fr auto;gap:2px 15px;padding:18px}.partner-top{grid-column:1}.partner-value{grid-column:2;grid-row:1;margin:4px 0;font-size:25px}.partner-desc{grid-column:2;text-align:right}.partner .track{grid-column:1/-1;margin-top:12px}.partner-top .percent{margin-left:15px}.middle-grid{gap:15px}.chart{gap:3px}.chart-card,.bridge-card{padding:18px}.section-title h2{font-size:14px}.section-title .subtle{font-size:9px}footer{flex-direction:column;gap:8px;font-size:8px}.table-top{padding:18px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:1}.form-card{padding:22px}.form-card h2{font-size:16px}dialog{padding:22px}#toast{left:50%;bottom:72px}.month-control{padding:8px}.month-control select{font-size:9px;max-width:110px}.eyebrow{font-size:7px}.hero .eyebrow{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
