@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";/*! tailwindcss v4.3.5 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.table{display:table}.table\!{display:table!important}.resize{resize:both}}:root{--accent:#4b711f;--accent-ink:#fff;--bg:#f3f5ee;--panel:#fff;--ink:#202b20;--muted:#536153;--line:#dce4d7;--soft:#f0f4eb;--tint:var(--accent);font-family:Manrope,system-ui,sans-serif}@supports (color:color-mix(in lab,red,red)){:root{--tint:color-mix(in srgb,var(--accent) 11%,var(--panel))}}:root{color:var(--ink);background:var(--bg)}[data-theme=dark]{color-scheme:dark;--accent:#addd75;--accent-ink:#152110;--bg:#101412;--panel:#171f1a;--ink:#edf4ed;--muted:#aebcaf;--line:#2e4032;--soft:#1c2920}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--panel);white-space:nowrap;color:var(--ink);border-radius:10px;padding:9px 13px;font-weight:750;transition:background .15s}button:hover{background:var(--tint)}button:focus-visible,input:focus-visible,select:focus-visible,.bar:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.primary{background:var(--accent);color:var(--accent-ink);border-color:#0000}.primary:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.primary:hover{background:color-mix(in srgb,var(--accent) 86%,black)}}h1,h2,h3,p{margin:0}h1{letter-spacing:-.045em;font-size:clamp(26px,3vw,40px);font-weight:800;line-height:1.18}h2{letter-spacing:-.03em;font-size:19px;font-weight:800}p,small{color:var(--muted)}small{font-size:12px}.app{grid-template-columns:230px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;gap:5px;height:100vh;padding:27px 16px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:0 8px;display:flex}.brand>div{background:var(--accent);color:var(--accent-ink);width:40px;height:40px;box-shadow:0 4px 12px var(--accent);border-radius:12px;place-items:center;font-size:25px;display:grid}@supports (color:color-mix(in lab,red,red)){.brand>div{box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 35%,transparent)}}.brand b{font-size:20px;font-weight:800;line-height:1.1}.brand small,.sidebar-foot small{letter-spacing:.07em;font-size:9px;font-weight:800;display:block}.nav-title{letter-spacing:.09em;color:var(--muted);margin:39px 10px 10px;font-size:10px;font-weight:800}.nav{text-align:left;color:var(--muted);background:0 0;border:0;font-size:13px}.nav span{vertical-align:middle;width:27px;font-size:18px;display:inline-block}.selected{background:var(--tint);color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.selected{color:color-mix(in srgb,var(--accent) 75%,var(--ink))}}.sidebar-foot{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:auto;padding:16px 3px 0;font-size:13px;display:flex}.avatar{background:var(--tint);border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.top{border-bottom:1px solid var(--line);background:var(--panel);height:65px;color:var(--muted);justify-content:space-between;align-items:center;padding:0 30px;font-size:13px;display:flex}.top span{margin:0 8px}.top b{color:var(--ink)}.top button{font-size:20px;line-height:1}.content{max-width:1600px;margin:auto;padding:32px 30px 50px}.hero,.chart-head,.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hero,.chart-head{justify-content:space-between}.hero{gap:18px;margin-bottom:24px}.hero p,.chart-head p{margin-top:7px;font-size:13px}.eyebrow{color:var(--muted);letter-spacing:.1em;align-items:center;gap:7px;margin-bottom:9px;font-size:10px;font-weight:800;display:flex}.eyebrow i{background:#13a78e;border-radius:50%;width:7px;height:7px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 3px 12px #22244406}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.metric{padding:15px 17px}.metric-top{color:var(--muted);justify-content:space-between;align-items:center;gap:4px;font-size:12px;font-weight:800;display:flex}.metric-top i{background:var(--tint);color:var(--accent);border-radius:9px;place-items:center;width:30px;height:30px;font-size:17px;font-style:normal;display:grid}.m2 i{color:#087c65;background:#daf8ed}.m3 i{color:#b72c52;background:#ffe8ec}.metric strong{letter-spacing:-.045em;margin:6px 0 3px;font-size:30px;line-height:1.2;display:block}.metric small{font-size:11px}.chart{overflow:hidden}.chart-head{padding:17px 18px}.chart-head button,.legend button{font-size:12px}.segments{background:var(--soft);border-radius:10px;padding:3px;display:flex}.segments button{background:0 0;border:0;padding:6px 10px}.segments .selected{background:var(--panel);box-shadow:0 1px 5px #20213a22}.gantt-scroll{border-block:1px solid var(--line);isolation:isolate;overflow:auto}.g-row{border-bottom:1px solid var(--line);grid-template-columns:300px 1fr;min-height:42px;display:grid}.g-row:last-child{border:0}.g-label{z-index:3;background:var(--panel);border-right:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:0 13px;font-size:12px;display:flex;position:sticky;left:0}.g-label button{text-align:left;text-overflow:ellipsis;background:0 0;border:0;padding:2px 0;font-size:12px;overflow:hidden}.g-label span{color:var(--muted);white-space:nowrap;font-weight:700}.stage .g-label,.stage .timeline,.calendar .g-label,.calendar .timeline{background-color:var(--soft)}.calendar .g-label{letter-spacing:.055em;font-size:10px;font-weight:800}.calendar{height:57px}.timeline{background-image:linear-gradient(to right,var(--line) 1px,transparent 1px);position:relative}.timeline small{white-space:nowrap;font-size:10px;position:absolute;bottom:6px}.month{text-transform:capitalize;font-size:11px;font-weight:800;position:absolute;top:7px;left:8px}.weekend,.today{pointer-events:none;position:absolute;inset-block:0}.weekend{background:var(--muted)}@supports (color:color-mix(in lab,red,red)){.weekend{background:color-mix(in srgb,var(--muted) 7%,transparent)}}.today{background:var(--accent);z-index:1;opacity:.55}.today-label{color:var(--accent-ink);background:var(--accent);z-index:2;border-radius:5px;padding:3px 7px;font-size:9px;position:absolute;top:9px}.bar{z-index:2;touch-action:none;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:6px;height:24px;font-size:10px;font-weight:800;position:absolute;top:9px;overflow:hidden}.bar span{text-overflow:ellipsis;padding:4px 7px;display:block;position:relative;overflow:hidden}.bar i{opacity:.15;background:currentColor;position:absolute;inset:0 auto 0 0}.bar em{cursor:ew-resize;border-right:3px solid;width:9px;position:absolute;top:0;bottom:0;right:0}.planned{color:#4e5a79;background:#e4e8f3}.active{color:#355221;background:#dcecc7}.done{color:#076b59;background:#cef4e9}.late{color:#a32a4d;background:#ffdce4}.critical{outline-offset:-2px;outline:2px solid #e57422}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;padding:12px 17px;font-size:11px;display:flex}.legend span{align-items:center;gap:5px;display:flex}.legend i{border:1px solid;border-radius:3px;width:9px;height:9px}.legend button{margin-left:auto}.settings,.paper{padding:24px}.settings>*+*,.paper>*+*{margin-top:13px}.settings label,.form label{flex-direction:column;gap:7px;font-size:12px;font-weight:800;display:flex}.project{border-top:1px solid var(--line);padding:13px 0}.project>*+*{margin-top:8px}input,select{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:8px;min-width:0;padding:8px 10px}input[type=color]{width:60px;height:40px}.empty{color:var(--muted);padding:24px}.error{color:#9b2246;overflow-wrap:anywhere;background:#ffe8ec;border-radius:8px;margin-bottom:12px;padding:10px}.error button{margin-left:10px;padding:1px 6px}.overlay,.auth{place-items:center;padding:16px;display:grid}.overlay{z-index:10;background:#16162b75;position:fixed;top:0;right:0;bottom:0;left:0}.auth{min-height:100vh}.form{gap:12px;width:min(100%,480px);padding:20px;display:grid}.dialog{max-height:90vh;overflow:auto}.form .chart-head{padding:0}.form fieldset{gap:9px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.danger{color:#ba3351}.print-actions{margin-bottom:15px}.paper{color:#172030;background:#fff;overflow:auto}.paper p{color:inherit}.paper h2{text-align:center}.paper table{border-collapse:collapse;width:100%;font-size:13px}.paper td,.paper th{text-align:left;border:1px solid #777;padding:8px}.signatures{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:26px;display:flex}@media(max-width:950px){.app{grid-template-columns:175px minmax(0,1fr)}.content,.top{padding-inline:16px}.metric{padding:10px}.metrics{gap:8px}}@media(max-width:650px){.app{display:block}.sidebar{flex-direction:row;align-items:center;height:auto;padding:8px;position:static;overflow:auto}.sidebar .brand section,.nav-title,.sidebar-foot{display:none}.nav span{width:auto;margin-right:4px}.top{height:45px}.content{padding-top:20px}.metrics{grid-template-columns:1fr 1fr}.g-row{grid-template-columns:190px 1fr}.g-label{padding-inline:7px}}@page{size:A4 landscape;margin:15mm}@media print{body,.app,.content,.paper{max-width:none;margin:0;padding:0;display:block;color:#000!important;background:#fff!important}.sidebar,.top,.hero,.print-actions,.error,.overlay{display:none!important}.paper{box-shadow:none;border:0;font-family:serif;overflow:visible}.paper tr,.signatures{break-inside:avoid}.paper table{font-size:11pt}}:root[data-custom-accent]{--accent:var(--custom-accent)}.sidebar{background:var(--soft)}.eyebrow{color:var(--accent);font-family:ui-monospace,monospace}@supports (color:color-mix(in lab,red,red)){.eyebrow{color:color-mix(in srgb,var(--accent) 75%,var(--ink))}}.eyebrow i{background:var(--accent)}[data-theme=dark] body{background:radial-gradient(ellipse at 83% 50%,#203521 0%,transparent 63%),var(--bg)}[data-theme=dark] main{background-image:radial-gradient(#addd751f 1px,#0000 1px);background-size:22px 22px}[data-theme=dark] .sidebar,[data-theme=dark] .top{background:#121915}[data-theme=dark] .panel{box-shadow:0 10px 24px #0003}[data-theme=dark] .planned{color:#d0ddd2;background:#2a3931}[data-theme=dark] .active{color:#c9ed9f;background:#344a28}[data-theme=dark] .done{color:#a6e7c6;background:#204637}[data-theme=dark] .late{color:#ffc7cd;background:#522e32}[data-theme=dark] .critical{outline-color:#edc37e}@media print{[data-theme=dark] body,[data-theme=dark] main{background:#fff!important}}.brand>div{--brand-mark:#59852d;color:#536153;box-shadow:none;background:0 0;border-radius:0}.brand svg{width:34px;height:34px}[data-theme=dark] .brand>div{--brand-mark:#aadc73;color:#aebcaf}
