:root{--green:#166a4c;--dark:#143f32;--mint:#eef7f1;--ink:#23372c;--muted:#819087;--line:#e3eae5;--bg:#f5f7f5}*{box-sizing:border-box}body{margin:0;display:grid;grid-template-columns:220px minmax(0,1fr) 300px;background:var(--bg);color:var(--ink);font:14px/1.5 "Segoe UI",system-ui,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer;transition:background .15s}button:focus-visible,a:focus-visible{outline:3px solid #7bc69f;outline-offset:3px}button:hover{filter:brightness(.96)}.sidebar{height:100vh;position:sticky;top:0;background:var(--dark);padding:30px 16px;display:flex;flex-direction:column;color:#fff}.logo{display:flex;gap:10px;align-items:center;color:#fff;text-decoration:none;font-size:22px;font-weight:650;padding:0 7px}.logo b{font-weight:500;color:#8ed6ad}.logo-icon{display:grid;place-items:center;background:#92d4b0;color:var(--dark);width:34px;height:36px;border-radius:11px;font-size:24px}.menu-label{color:#7c9f8e;font-size:9px;letter-spacing:.15em;margin:40px 10px 16px}nav{display:grid;gap:7px}nav button{border:0;border-radius:8px;background:transparent;color:#b1c9bd;text-align:left;padding:12px;font-size:18px}nav span{font-size:13px;margin-left:9px}nav button.active{background:#2b5b46;color:#fff}.sidebar-bottom{margin-top:auto}.local{border:1px solid #38624f;border-radius:10px;padding:14px;font-size:12px}.local small{display:block;color:#87aa98;font-size:10px;margin-top:4px}i{display:inline-block;background:#78c89b;width:6px;height:6px;border-radius:50%;margin-right:5px}.profile{display:flex;align-items:center;gap:11px;border-top:1px solid #38624f;margin-top:20px;padding-top:20px;font-size:12px}.profile>span{width:32px;height:32px;background:#e1eee5;border-radius:50%;display:grid;place-items:center;color:var(--dark);font-size:10px;font-weight:700}.profile small{display:block;color:#8aad9a;font-size:10px}main{padding:30px 28px;min-width:0}header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:26px}.eyebrow{font-size:9px;color:var(--muted);letter-spacing:.1em;margin:0 0 5px}h1{font-size:25px;font-weight:650;margin:0;letter-spacing:-.6px}h2,h3,p{margin-top:0}.header-actions,.tools{display:flex;gap:8px;align-items:center}.primary,.secondary{border:1px solid transparent;border-radius:7px;padding:9px 13px;font-size:12px;font-weight:600;white-space:nowrap}.primary{background:var(--green);color:#fff}.secondary{background:#fff;border-color:var(--line);color:#506457}.page{display:none}.page.active{display:block}.project-banner{display:flex;justify-content:space-between;gap:15px;background:linear-gradient(115deg,#164b36,#2c7351);border-radius:14px;padding:25px;color:#fff;position:relative;overflow:hidden}.project-banner:after{content:"";position:absolute;width:220px;height:220px;border:35px solid #ffffff06;border-radius:50%;right:-30px;top:-50px;pointer-events:none}.badge{background:#ffffff16;color:#c8ecd7;font-size:10px;padding:4px 8px;border-radius:5px}.project-banner h2{font-size:23px;font-weight:600;margin:12px 0 4px;letter-spacing:-.4px}.project-banner p{color:#b4d3bf;font-size:12px;margin:0}.banner-side{display:flex;flex-direction:column;text-align:right;justify-content:center;min-width:160px;z-index:1}.banner-side>span,.banner-side small{color:#b4d3bf;font-size:10px}.banner-side strong{font-size:20px;font-weight:500;margin:3px 0}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 22px}.stats article{background:#fff;border:1px solid var(--line);padding:15px;border-radius:10px}.stats article>span{display:block;font-size:10px;color:#768b7d}.stats strong{display:block;font-size:20px;white-space:nowrap;margin:6px 0;font-weight:650;letter-spacing:-.6px}.stats small{font-size:9px;color:#94a196}.stats .highlight{background:#e9f4ed;border-color:#caddd0}.highlight strong{color:var(--green)}#vat-rate{width:35px;border:0;background:transparent;color:inherit;font-size:10px;padding:0}.card{background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden}.card-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 19px}.card h3{margin:0;font-size:14px}.card-head p{font-size:10px;color:#92a196;margin:3px 0 0}.tools input{width:130px;border:1px solid var(--line);border-radius:7px;padding:8px;font-size:11px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:680px;text-align:left}th{background:#f6f8f6;padding:11px 14px;font-size:9px;letter-spacing:.04em;text-transform:uppercase;color:#88978d;font-weight:500}td{padding:17px 14px;border-top:1px solid #edf1ed;font-size:11px}td strong{display:block;font-size:12px;font-weight:550;min-width:190px}td small{display:block;color:#92a397;font-size:9px;margin-top:4px}td input{width:75px;padding:5px;border:1px solid transparent;border-radius:5px;background:transparent;font-size:11px;color:var(--ink)}td input:hover,td input:focus{border-color:var(--line);background:#f7faf8}td input[data-field="price"]{width:85px}.row-total{font-weight:650;white-space:nowrap}td button,.dialog-head button,.ai-head button{background:transparent;border:0;color:#9caf9f;font-size:20px}.table-footer{display:flex;justify-content:space-between;padding:15px 19px;border-top:1px solid var(--line);font-size:10px;color:#91a194}.table-footer strong{color:var(--green);font-size:14px}.note{margin-top:18px;display:flex;align-items:center;gap:13px;border:1px solid #d8e8dc;border-radius:10px;padding:15px;background:#f0f7f2}.note>span{color:var(--green);font-size:26px}.note b{font-size:12px;font-weight:600}.note p{color:#87998b;font-size:10px;margin:3px 0 0}.note button{margin-left:auto}footer{margin-top:30px;color:#9daa9f;font-size:9px;letter-spacing:.1em}footer span{float:right;letter-spacing:0}.ai-panel{border-left:1px solid var(--line);height:100vh;position:sticky;top:0;background:#fff;padding:26px 20px;display:flex;flex-direction:column}.ai-head{display:flex;align-items:center;gap:10px}.ai-icon{display:grid;place-items:center;border-radius:11px;width:35px;height:35px;background:#e8f4eb;color:#2b8051;font-size:25px}.ai-head h2{font-size:15px;margin:0}.ai-head small{font-size:9px;color:#8a9f90}.ai-head button{margin-left:auto}.ai-intro{font-size:20px;line-height:1.4;margin:30px 0 13px;color:#637f6d}.ai-intro b{color:var(--dark);font-weight:600}.ai-intro p{font-size:11px;color:#8da293;line-height:1.6;margin:12px 0 0}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.chips button{font-size:9px;padding:5px 8px;background:#f3f8f4;border:1px solid #dfece2;border-radius:20px;color:#658570}.chat{flex:1;overflow:auto;min-height:100px}.message{margin:8px 0;padding:12px;border-radius:10px;background:#f1f6f2;font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere}.message.user{background:#e5f2e9;margin-left:25px}.message small{display:block;font-size:8px;color:#94a99a;margin-bottom:5px}.ai-panel form{display:flex;align-items:end;gap:7px;border:1px solid #dce9df;border-radius:10px;padding:8px;margin-top:15px}.ai-panel textarea{border:0;outline:0;resize:none;flex:1;min-width:0;font-size:11px;height:50px}.ai-panel form button{padding:5px 10px;font-size:20px}.ai-foot{text-align:center;font-size:8px;color:#a2b3a7;margin-top:9px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:20px 0}.section-heading h2{font-size:21px;margin-bottom:4px}.section-heading p{font-size:12px;color:var(--muted);margin:0}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.project-tile,.journal-entry,.check-result{padding:22px;background:#fff;border:1px solid var(--line);border-radius:11px;margin-bottom:12px;overflow-wrap:anywhere}.project-tile h3{margin:10px 0 5px}.project-tile p,.journal-entry small{color:var(--muted)}.journal-form{padding:20px;margin-bottom:20px}.journal-form textarea{width:100%;margin:8px 0 10px;min-height:100px}.journal-entry p{white-space:pre-wrap;margin:8px 0}.journal-entry button{float:right}.disclosure{padding:18px;background:#eaf4ed;border-radius:10px;font-size:12px;color:#587761;margin-bottom:20px}.check-result.pass{border-left:4px solid #52996b}.check-result.warn{border-left:4px solid #d1a254}.check-result p{font-size:12px;color:#768c7c;margin:5px 0 0}dialog{border:0;border-radius:14px;padding:24px;width:min(480px,92vw);box-shadow:0 20px 90px #102e2255}dialog::backdrop{background:#10332675}dialog form{display:grid;gap:15px}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{font-size:20px;margin:0}label{display:block;font-size:12px;color:#708778}label input,label textarea{display:block;width:100%;border:1px solid #dce5de;border-radius:7px;padding:10px;margin-top:5px;background:#fafcfb}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--dark);color:#fff;padding:12px 20px;border-radius:9px;box-shadow:0 5px 25px #153c3033;opacity:0;pointer-events:none;z-index:10;font-size:12px}#toast.show{opacity:1}#open-ai{display:none}.ai-panel.hidden{display:none}body.ai-hidden{grid-template-columns:220px minmax(0,1fr)}body.ai-hidden #open-ai{display:block}@media(min-width:1500px){main{padding:35px 40px}.stats strong{font-size:25px}.ai-panel{padding:28px}body{grid-template-columns:235px minmax(0,1fr) 340px}}@media(max-width:1200px){body{grid-template-columns:185px minmax(0,1fr)}.sidebar{padding:25px 10px}.ai-panel{position:fixed;right:0;top:0;width:320px;z-index:5;box-shadow:-10px 0 60px #153c3022}.ai-panel:not(.opened){display:none}#open-ai{display:block}.stats strong{font-size:19px}}@media(max-width:760px){body,body.ai-hidden{display:block}.sidebar{position:static;height:auto;padding:16px}.logo{font-size:20px}.menu-label,.sidebar-bottom{display:none}nav{display:flex;justify-content:space-between;margin-top:15px}nav button{padding:8px;font-size:16px}nav span{font-size:10px;margin-left:4px}main{padding:20px 15px}.eyebrow{font-size:8px}h1{font-size:21px}.header-actions{gap:4px}.project-banner{padding:20px}.project-banner h2{font-size:20px}.banner-side{display:none}.stats{grid-template-columns:1fr 1fr}.card-head{display:block}.tools{margin-top:15px;flex-wrap:wrap}.note{align-items:flex-start;flex-wrap:wrap}.note button{margin-left:35px}.project-grid{grid-template-columns:1fr}.ai-panel{width:min(340px,100vw)}footer span{display:none}}
