@font-face{font-family:Merriweather;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/merriweather-latin-400-normal-G4kZaoXi.woff2)format("woff2"),url(/assets/merriweather-latin-400-normal-CvqO63Ah.woff)format("woff")}@font-face{font-family:Merriweather;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/merriweather-latin-700-normal-DoUP8Ce-.woff2)format("woff2"),url(/assets/merriweather-latin-700-normal-D4-nzrAh.woff)format("woff")}@font-face{font-family:Geom Graphic;src:url(/assets/GeomGraphic-Light-B6nzzlFS.ttf)format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Geom Graphic;src:url(/assets/GeomGraphic-Regular-C6snVu1k.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geom Graphic;src:url(/assets/GeomGraphic-Bold-DJ4ayxtV.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}:root{--grego-petrol-050:#eaf2f3;--grego-petrol-100:#cfe1e3;--grego-petrol-200:#a3c6ca;--grego-petrol-300:#6ca3aa;--grego-petrol-400:#36808a;--grego-petrol-500:#115e67;--grego-petrol-600:#0e4e56;--grego-petrol-700:#0b3f46;--grego-petrol-800:#093338;--grego-petrol-900:#07272d;--grego-ink:#07272d;--grego-ink-logo:#05262d;--grego-bone-000:#fff;--grego-bone-050:#faf9f7;--grego-bone-100:#f1efeb;--grego-bone-200:#e7e3dd;--grego-bone-300:#d7d2cb;--grego-bone-400:#bcb6ad;--grego-bone-500:#9c958b;--grego-bone-600:#7a736a;--grego-bone-700:#57514a;--grego-bone-800:#38332e;--grego-ocre-100:#fdefd8;--grego-ocre-300:#f7c46a;--grego-ocre-500:#ed8b00;--grego-ocre-600:#c97600;--grego-ocre-700:#9e5d00;--grego-terracota-100:#ffe3d8;--grego-terracota-300:#ffa37a;--grego-terracota-500:#fc4c02;--grego-terracota-600:#d63f02;--grego-terracota-700:#a93201;--grego-success-100:#e3f2ea;--grego-success-500:#17754f;--grego-success-700:#0f5236;--grego-danger-100:#fbe6e4;--grego-danger-500:#b3261e;--grego-danger-700:#8c1d18;--grego-gradient-symbol:linear-gradient(160deg,#ec8b03 0%,#e94f1b 100%);--grego-gradient-brand:linear-gradient(160deg,#ed8b00 0%,#fc4c02 100%);--grego-gradient-rule:linear-gradient(90deg,#ed8b00 0%,#fc4c02 100%);--font-display:"Geom Graphic","Poppins","Century Gothic",system-ui,sans-serif;--font-sans:"Geom Graphic","Poppins","Century Gothic",system-ui,sans-serif;--font-serif:"Merriweather",Georgia,"Times New Roman",serif;--font-body:var(--font-serif);--font-ui:var(--font-display);--font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--weight-light:300;--weight-regular:400;--weight-bold:700;--tracking-tight:-.01em;--tracking-normal:0em;--tracking-wide:.04em;--tracking-wider:.08em;--tracking-widest:.16em;--leading-flat:1;--leading-tight:1.12;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.7;--size-display-1:72px;--size-display-2:56px;--size-display-3:44px;--size-h1:36px;--size-h2:28px;--size-h3:22px;--size-h4:18px;--size-body-lg:17px;--size-body:15px;--size-body-sm:13.5px;--size-caption:12px;--size-overline:11px;--type-display:var(--weight-bold) var(--size-display-1)/var(--leading-tight) var(--font-display);--type-h1:var(--weight-bold) var(--size-h1)/var(--leading-snug) var(--font-display);--type-h2:var(--weight-bold) var(--size-h2)/var(--leading-snug) var(--font-display);--type-h3:var(--weight-bold) var(--size-h3)/var(--leading-snug) var(--font-display);--type-body:var(--weight-regular) var(--size-body)/var(--leading-relaxed) var(--font-body);--type-body-lg:var(--weight-light) var(--size-body-lg)/var(--leading-relaxed) var(--font-body);--type-body-sm:var(--weight-regular) var(--size-body-sm)/var(--leading-normal) var(--font-body);--type-label:var(--weight-bold) var(--size-caption)/var(--leading-normal) var(--font-ui);--type-num:var(--weight-bold) var(--size-h2)/var(--leading-flat) var(--font-ui);--type-editorial:var(--weight-light) 24px/1.45 var(--font-serif);--measure-narrow:48ch;--measure:62ch;--measure-wide:76ch;--space-0:0px;--space-1:2px;--space-2:4px;--space-3:8px;--space-4:12px;--space-5:16px;--space-6:20px;--space-7:24px;--space-8:32px;--space-9:40px;--space-10:48px;--space-11:64px;--space-12:80px;--space-13:96px;--space-14:128px;--space-section:96px;--space-section-tight:64px;--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-2xl:36px;--radius-pill:999px;--radius-control:var(--radius-pill);--radius-field:var(--radius-sm);--radius-surface:var(--radius-lg);--radius-tile:var(--radius-md);--border-hairline:1px;--border-thick:1.5px;--border-heavy:2px;--shadow-xs:0 1px 2px #07272d0a, 0 4px 14px -8px #07272d1a;--shadow-sm:0 2px 6px #07272d0d, 0 12px 28px -14px #07272d24;--shadow-md:0 6px 18px -6px #07272d1a, 0 24px 48px -20px #07272d33;--shadow-lg:0 10px 30px -8px #07272d24, 0 44px 80px -32px #07272d47;--shadow-hairline:inset 0 0 0 1px var(--grego-bone-200);--shadow-glow-accent:0 0 0 1px #115e672e, 0 14px 34px -16px #115e6773;--shadow-glow-warm:0 0 0 1px #fc4c0229, 0 14px 34px -16px #fc4c0261;--focus-ring:0 0 0 3px #115e6747;--focus-ring-inverse:0 0 0 3px #d7d2cb6b;--duration-instant:90ms;--duration-fast:.14s;--duration-normal:.2s;--duration-slow:.32s;--duration-page:.48s;--ease-standard:cubic-bezier(.2,.6,.2,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in:cubic-bezier(.4,0,1,1);--lift-hover:-1px;--press-scale:.985}@media (prefers-reduced-motion:reduce){:root{--duration-instant:0s;--duration-fast:0s;--duration-normal:0s;--duration-slow:0s;--duration-page:0s;--lift-hover:0px;--press-scale:1}}:root{--container-max:1200px;--container-narrow:840px;--container-wide:1440px;--gutter-mobile:20px;--gutter-tablet:32px;--gutter-desktop:48px;--grid-columns-desktop:12;--grid-columns-tablet:8;--grid-columns-mobile:4;--header-height:72px;--header-height-compact:56px;--sidenav-width:264px;--sidenav-width-collapsed:72px;--touch-target-min:44px;--bp-mobile:390px;--bp-tablet:768px;--bp-laptop:1024px;--bp-desktop:1440px;--surface-page:var(--grego-bone-050);--surface-card:var(--grego-bone-000);--surface-sunken:var(--grego-bone-100);--surface-muted:var(--grego-bone-200);--surface-inverse:var(--grego-ink);--surface-inverse-soft:var(--grego-petrol-800);--surface-accent:var(--grego-petrol-500);--surface-accent-soft:var(--grego-petrol-050);--surface-highlight:var(--grego-terracota-500);--surface-highlight-soft:var(--grego-terracota-100);--text-strong:var(--grego-ink);--text-body:var(--grego-petrol-800);--text-muted:var(--grego-bone-700);--text-subtle:var(--grego-bone-600);--text-accent:var(--grego-petrol-500);--text-highlight:var(--grego-terracota-700);--text-on-accent:var(--grego-bone-050);--text-on-inverse:var(--grego-bone-300);--text-on-inverse-strong:var(--grego-bone-000);--text-on-ocre:var(--grego-ink);--text-on-highlight:var(--grego-bone-000);--text-link:var(--grego-petrol-500);--text-link-hover:var(--grego-petrol-700);--border-subtle:var(--grego-bone-200);--border-default:var(--grego-bone-300);--border-strong:var(--grego-bone-400);--border-accent:var(--grego-petrol-500);--border-inverse:#d7d2cb3d;--action-primary-bg:var(--grego-petrol-500);--action-primary-bg-hover:var(--grego-petrol-600);--action-primary-bg-active:var(--grego-petrol-700);--action-primary-fg:var(--grego-bone-050);--action-secondary-fg:var(--grego-petrol-500);--action-secondary-border:var(--grego-petrol-500);--action-secondary-bg-hover:var(--grego-petrol-050);--action-ghost-fg:var(--grego-ink);--action-ghost-bg-hover:var(--grego-bone-100);--action-highlight-bg:var(--grego-terracota-600);--action-highlight-bg-hover:var(--grego-terracota-700);--action-danger-bg:var(--grego-danger-500);--action-danger-bg-hover:var(--grego-danger-700);--action-disabled-bg:var(--grego-bone-200);--action-disabled-fg:var(--grego-bone-500);--status-success-bg:var(--grego-success-100);--status-success-fg:var(--grego-success-700);--status-success-mark:var(--grego-success-500);--status-warning-bg:var(--grego-ocre-100);--status-warning-fg:var(--grego-ocre-700);--status-warning-mark:var(--grego-ocre-500);--status-danger-bg:var(--grego-danger-100);--status-danger-fg:var(--grego-danger-700);--status-danger-mark:var(--grego-danger-500);--status-info-bg:var(--grego-petrol-050);--status-info-fg:var(--grego-petrol-700);--status-info-mark:var(--grego-petrol-500);--status-neutral-bg:var(--grego-bone-100);--status-neutral-fg:var(--grego-bone-700);--status-neutral-mark:var(--grego-bone-500);--data-physical:var(--grego-petrol-500);--data-financial:var(--grego-ocre-500);--data-track:var(--grego-bone-200);--data-series-1:var(--grego-petrol-500);--data-series-2:var(--grego-ocre-500);--data-series-3:var(--grego-petrol-300);--data-series-4:var(--grego-terracota-500);--data-series-5:var(--grego-bone-500)}.grego-inverse{--surface-page:var(--grego-ink);--surface-card:var(--grego-petrol-800);--surface-sunken:#041e23;--surface-muted:var(--grego-petrol-700);--surface-accent:var(--grego-petrol-500);--surface-accent-soft:#115e6747;--text-strong:var(--grego-bone-000);--text-body:var(--grego-bone-300);--text-muted:#9fb0b3;--text-subtle:#7e9195;--text-accent:var(--grego-ocre-500);--text-link:var(--grego-ocre-500);--text-link-hover:var(--grego-ocre-300);--border-subtle:#d7d2cb29;--border-default:#d7d2cb47;--border-strong:#d7d2cb70;--action-primary-bg:var(--grego-bone-300);--action-primary-bg-hover:var(--grego-bone-200);--action-primary-bg-active:var(--grego-bone-400);--action-primary-fg:var(--grego-ink);--action-secondary-fg:var(--grego-bone-300);--action-secondary-border:#d7d2cb70;--action-secondary-bg-hover:#d7d2cb1f;--action-ghost-fg:var(--grego-bone-300);--action-ghost-bg-hover:#d7d2cb1f;--focus-ring:var(--focus-ring-inverse);background:var(--surface-page);color:var(--text-body)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--surface-page);color:var(--text-body);font:var(--type-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4,h5,h6{color:var(--text-strong);font-family:var(--font-display);font-weight:var(--weight-bold);line-height:var(--leading-snug);text-wrap:balance;margin:0}h1{font-size:var(--size-h1)}h2{font-size:var(--size-h2)}h4{font-size:var(--size-h4)}p{margin:0 0 var(--space-5);max-width:var(--measure);text-wrap:pretty}small{font-size:var(--size-body-sm)}strong{font-weight:var(--weight-bold);color:var(--text-strong)}a{color:var(--text-link);text-underline-offset:2px;transition:color var(--duration-fast) var(--ease-standard);text-decoration:underline;text-decoration-thickness:1px}a:hover{color:var(--text-link-hover)}a:active{color:var(--grego-petrol-800)}:focus-visible{outline:2px solid var(--border-accent);outline-offset:2px;box-shadow:var(--focus-ring)}hr{background:var(--border-subtle);height:1px;margin:var(--space-8) 0;border:0}img,svg{max-width:100%}table{border-collapse:collapse;width:100%}::selection{background:var(--grego-ocre-300);color:var(--grego-ink)}.grego-rule{border-radius:var(--radius-pill);background:var(--grego-gradient-rule);height:4px}.grego-overline{font:var(--type-label);font-size:var(--size-overline);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--text-muted)}.grego-display{font-family:var(--font-display);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-tight);line-height:var(--leading-tight);color:var(--text-strong)}.grego-num{font-family:var(--font-ui);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-tight)}.grego-tile{border-radius:var(--radius-tile);background:var(--surface-accent-soft);width:44px;height:44px;color:var(--text-accent);flex:none;place-items:center;display:grid}.grego-tile--warm{background:var(--grego-ocre-100);color:var(--grego-ocre-700)}.grego-tile--highlight{background:var(--surface-highlight-soft);color:var(--grego-terracota-700)}.grego-tile--inverse{color:var(--grego-bone-300);background:#d7d2cb1a}.grego-tile--lg{border-radius:var(--radius-lg);width:56px;height:56px}.g-btn{justify-content:center;align-items:center;gap:var(--space-3);border:var(--border-hairline) solid transparent;border-radius:var(--radius-control);font-family:var(--font-ui);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard);text-decoration:none;display:inline-flex}.g-btn--sm{height:36px;padding:0 var(--space-5);font-size:var(--size-overline)}.g-btn--md{height:44px;padding:0 var(--space-7);font-size:var(--size-caption)}.g-btn--lg{height:54px;padding:0 var(--space-9);font-size:var(--size-body-sm);letter-spacing:var(--tracking-wide)}.g-btn--block{width:100%}.g-btn--primary{background:var(--action-primary-bg);color:var(--action-primary-fg);box-shadow:var(--shadow-glow-accent)}.g-btn--primary:hover{background:var(--action-primary-bg-hover);transform:translateY(var(--lift-hover))}.g-btn--primary:active{background:var(--action-primary-bg-active);transform:scale(var(--press-scale))}.g-btn--highlight{background:var(--action-highlight-bg);color:var(--text-on-highlight);box-shadow:var(--shadow-glow-warm)}.g-btn--highlight:hover{background:var(--action-highlight-bg-hover);transform:translateY(var(--lift-hover))}.g-btn--highlight:active{transform:scale(var(--press-scale))}.g-btn--secondary{color:var(--action-secondary-fg);border-color:var(--action-secondary-border);background:0 0}.g-btn--secondary:hover{background:var(--action-secondary-bg-hover)}.g-btn--secondary:active{background:var(--grego-petrol-100);transform:scale(var(--press-scale))}.g-btn--ghost{color:var(--action-ghost-fg);background:0 0}.g-btn--ghost:hover{background:var(--action-ghost-bg-hover)}.g-btn--ghost:active{transform:scale(var(--press-scale))}.g-btn--danger{background:var(--action-danger-bg);color:var(--grego-bone-000)}.g-btn--danger:hover{background:var(--action-danger-bg-hover)}.g-btn:focus-visible{outline:2px solid var(--border-accent);outline-offset:2px;box-shadow:var(--focus-ring)}.g-btn[aria-disabled=true],.g-btn:disabled{background:var(--action-disabled-bg);color:var(--action-disabled-fg);cursor:not-allowed;box-shadow:none;border-color:#0000;transform:none}.g-btn[data-loading=true]{cursor:progress}.g-spinner{border-radius:var(--radius-pill);border:2px solid;border-top-color:#0000;width:1em;height:1em;animation:.7s linear infinite g-spin}@keyframes g-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.g-spinner{animation-duration:2s}}.g-iconbtn{border:var(--border-hairline) solid transparent;border-radius:var(--radius-pill);color:var(--action-ghost-fg);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard);background:0 0;justify-content:center;align-items:center;display:inline-flex}.g-iconbtn--sm{width:36px;height:36px}.g-iconbtn--md{width:44px;height:44px}.g-iconbtn--outline{border-color:var(--border-default);background:var(--surface-card)}.g-iconbtn--solid{background:var(--action-primary-bg);color:var(--action-primary-fg)}.g-iconbtn:hover{background:var(--action-ghost-bg-hover)}.g-iconbtn--solid:hover{background:var(--action-primary-bg-hover)}.g-iconbtn:active{transform:scale(var(--press-scale))}.g-iconbtn:focus-visible{outline:2px solid var(--border-accent);outline-offset:2px;box-shadow:var(--focus-ring)}.g-iconbtn:disabled{color:var(--action-disabled-fg);cursor:not-allowed;background:0 0}.g-link{color:var(--text-link);font-family:var(--font-body);text-underline-offset:2px;align-items:center;gap:var(--space-2);text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.g-link:hover{color:var(--text-link-hover)}.g-link--quiet{text-decoration:none}.g-link--quiet:hover{text-decoration:underline}.g-link--standalone{font-family:var(--font-ui);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);font-size:var(--size-caption);text-decoration:none}.g-link--standalone:hover .g-link__arrow{transform:translate(3px)}.g-link__arrow{transition:transform var(--duration-fast) var(--ease-standard)}.g-badge{align-items:center;gap:var(--space-2);height:26px;padding:0 var(--space-4);border-radius:var(--radius-pill);font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-overline);letter-spacing:var(--tracking-wider);text-transform:uppercase;white-space:nowrap;display:inline-flex}.g-badge__dot{border-radius:var(--radius-pill);background:currentColor;flex:none;width:6px;height:6px}.g-badge--neutral{background:var(--status-neutral-bg);color:var(--status-neutral-fg)}.g-badge--info{background:var(--status-info-bg);color:var(--status-info-fg)}.g-badge--success{background:var(--status-success-bg);color:var(--status-success-fg)}.g-badge--warning{background:var(--status-warning-bg);color:var(--status-warning-fg)}.g-badge--danger{background:var(--status-danger-bg);color:var(--status-danger-fg)}.g-badge--highlight{background:var(--surface-highlight-soft);color:var(--text-highlight)}.g-badge--solid{background:var(--surface-inverse);color:var(--text-on-inverse-strong)}.g-badge--outline{background:var(--surface-card);color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border-default)}.g-card{background:var(--surface-card);border:var(--border-hairline) solid var(--border-subtle);border-radius:var(--radius-surface);box-shadow:var(--shadow-xs);min-width:0;position:relative;overflow:hidden}.g-card--flat{box-shadow:none}.g-card--raised{box-shadow:var(--shadow-md)}.g-card--sunken{background:var(--surface-sunken);box-shadow:none}.g-card--inverse{background:var(--surface-inverse);border-color:var(--border-inverse);color:var(--text-on-inverse)}.g-card--glass{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-sm);background:#ffffffb8;border-color:#fff9}.g-card--interactive{cursor:pointer;transition:box-shadow var(--duration-normal) var(--ease-standard),border-color var(--duration-normal) var(--ease-standard),transform var(--duration-normal) var(--ease-standard)}.g-card--interactive:hover{box-shadow:var(--shadow-md);border-color:var(--border-default);transform:translateY(-2px)}.g-card--interactive:active{transform:scale(var(--press-scale))}.g-card--interactive:focus-visible{outline:2px solid var(--border-accent);outline-offset:2px}.g-card--interactive:after{content:"";pointer-events:none;opacity:0;border-radius:inherit;transition:opacity .2s;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #115e6729}.g-card--interactive:hover:after,.g-card--interactive:focus-visible:after{opacity:1}.g-card__rule{background:var(--grego-gradient-rule);height:3px;position:absolute;inset:0 0 auto}.g-card__body{padding:var(--space-7)}.g-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-5);padding:var(--space-7) var(--space-7) 0;flex-wrap:wrap;display:flex}.g-card__header>*{min-width:0}.g-card__footer{align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-7);border-top:var(--border-hairline) solid var(--border-subtle);background:var(--surface-sunken);flex-wrap:wrap;display:flex}.g-card__title{font:var(--type-h3);color:var(--text-strong)}.g-card__meta{font:var(--type-body-sm);color:var(--text-muted)}.g-icon{background-color:currentColor;flex:none;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}@media (max-width:600px){.g-btn{white-space:normal;max-width:100%;height:auto;min-height:44px;padding-block:10px;line-height:1.4}.g-badge{white-space:normal;max-width:100%;height:auto;min-height:26px;padding-block:4px}.g-card__body{padding:20px}.g-card__header{padding:20px 20px 0}.g-card__footer{padding:16px 20px}}@media (prefers-reduced-motion:reduce){.g-card--interactive,.g-card--interactive:after{transition:none}.g-card--interactive:hover,.g-card--interactive:active{transform:none}}.g-field{gap:var(--space-3);flex-direction:column;display:flex}.g-field__label{font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-overline);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted)}.g-field__req{color:var(--grego-terracota-600);margin-left:2px}.g-field__hint{font:var(--type-body-sm);font-size:var(--size-caption);color:var(--text-subtle)}.g-field__msg{align-items:center;gap:var(--space-2);font:var(--type-body-sm);font-size:var(--size-caption);display:flex}.g-field__msg--error{color:var(--status-danger-fg)}.g-field__msg--success{color:var(--status-success-fg)}.g-input,.g-select,.g-textarea{background:var(--surface-card);border:var(--border-hairline) solid var(--border-default);border-radius:var(--radius-field);width:100%;color:var(--text-strong);font:var(--type-body);padding:0 var(--space-5);height:46px;transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.g-textarea{height:auto;min-height:116px;padding:var(--space-4) var(--space-5);line-height:var(--leading-relaxed);resize:vertical}.g-input::placeholder,.g-textarea::placeholder{color:var(--text-subtle)}.g-input:hover,.g-select:hover,.g-textarea:hover{border-color:var(--border-strong)}.g-input:focus,.g-select:focus,.g-textarea:focus{border-color:var(--border-accent);box-shadow:var(--focus-ring);outline:none}.g-input[aria-invalid=true],.g-textarea[aria-invalid=true],.g-select[aria-invalid=true]{border-color:var(--status-danger-mark)}.g-input:disabled,.g-select:disabled,.g-textarea:disabled{background:var(--surface-sunken);color:var(--action-disabled-fg);cursor:not-allowed}.g-input[readonly]{background:var(--surface-sunken)}.g-input--sm{height:38px;font-size:var(--size-body-sm);padding:0 var(--space-4)}.g-input__wrap{align-items:center;display:flex;position:relative}.g-input__wrap .g-input{padding-left:var(--space-9)}.g-input__icon{left:var(--space-5);color:var(--text-subtle);pointer-events:none;display:flex;position:absolute}.g-input__suffix{right:var(--space-5);color:var(--text-subtle);font:var(--type-body-sm);position:absolute}.g-select{appearance:none;border-radius:var(--radius-field);padding-right:var(--space-9);background-image:linear-gradient(45deg,transparent 49%,var(--text-muted) 50%),linear-gradient(-45deg,transparent 49%,var(--text-muted) 50%);background-position:calc(100% - 20px) 21px,calc(100% - 14px) 21px;background-repeat:no-repeat;background-size:6px 6px,6px 6px}.g-select--pill{border-radius:var(--radius-pill);height:38px;font-size:var(--size-body-sm);background-color:var(--surface-card)}.g-search{align-items:center;width:100%;display:flex;position:relative}.g-search .g-input{padding-left:46px;padding-right:var(--space-9);border-radius:var(--radius-pill)}.g-search__clear{right:var(--space-2);position:absolute}.g-check{align-items:flex-start;gap:var(--space-4);min-width:0;min-height:var(--touch-target-min);padding:var(--space-3) 0;cursor:pointer;font:var(--type-body);color:var(--text-body);display:inline-flex;position:relative}.g-check input{opacity:0;z-index:1;width:22px;height:22px;position:absolute}.g-check__box{border:var(--border-thick) solid var(--border-strong);border-radius:var(--radius-xs);background:var(--surface-card);width:22px;height:22px;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard);flex:none;place-items:center;margin-top:2px;display:grid}.g-check__box--radio{border-radius:var(--radius-pill)}.g-check:hover .g-check__box{border-color:var(--border-accent)}.g-check input:checked+.g-check__box{background:var(--action-primary-bg);border-color:var(--action-primary-bg)}.g-check input:focus-visible+.g-check__box{box-shadow:var(--focus-ring)}.g-check input:disabled+.g-check__box{background:var(--surface-sunken);border-color:var(--border-default)}.g-check--disabled{color:var(--action-disabled-fg);cursor:not-allowed}.g-check__mark{width:13px;height:13px;color:var(--action-primary-fg)}.g-check__dot{border-radius:var(--radius-pill);background:var(--action-primary-fg);width:9px;height:9px}.g-check__text{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.g-check__desc{font-size:var(--size-caption);color:var(--text-subtle)}.g-check--card{border:var(--border-hairline) solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-5);background:var(--surface-card);width:100%;transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard)}.g-check--card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.g-check--card:has(input:checked){border-color:var(--border-accent);box-shadow:var(--shadow-glow-accent)}.g-switch{align-items:center;gap:var(--space-4);min-height:var(--touch-target-min);cursor:pointer;font:var(--type-body);color:var(--text-body);display:inline-flex}.g-switch input{opacity:0;width:0;height:0;position:absolute}.g-switch__track{border-radius:var(--radius-pill);background:var(--grego-bone-400);width:46px;height:26px;transition:background var(--duration-normal) var(--ease-standard);flex:none;padding:3px}.g-switch__knob{border-radius:var(--radius-pill);background:var(--grego-bone-000);width:20px;height:20px;box-shadow:var(--shadow-xs);transition:transform var(--duration-normal) var(--ease-standard)}.g-switch input:checked+.g-switch__track{background:var(--action-primary-bg)}.g-switch input:checked+.g-switch__track .g-switch__knob{transform:translate(20px)}.g-switch input:focus-visible+.g-switch__track{box-shadow:var(--focus-ring)}.g-switch input:disabled+.g-switch__track{background:var(--border-default)}.g-fieldset{gap:var(--space-2);border:0;flex-direction:column;margin:0;padding:0;display:flex}.g-fieldset__legend{font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-overline);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-2);padding:0}@media (max-width:600px){.g-check--card{gap:12px;padding:16px}}.g-alert{gap:var(--space-4);padding:var(--space-5) var(--space-6);border-radius:var(--radius-md);border:var(--border-hairline) solid transparent;font:var(--type-body-sm);display:flex}.g-alert__icon{flex:none;margin-top:2px}.g-alert__title{font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-body-sm);letter-spacing:var(--tracking-normal);margin-bottom:3px}.g-alert__body{color:inherit;opacity:.92}.g-alert--info{background:var(--status-info-bg);color:var(--status-info-fg);border-color:var(--grego-petrol-100)}.g-alert--success{background:var(--status-success-bg);color:var(--status-success-fg);border-color:#c6e4d4}.g-alert--warning{background:var(--status-warning-bg);color:var(--status-warning-fg);border-color:var(--grego-ocre-300)}.g-alert--danger{background:var(--status-danger-bg);color:var(--status-danger-fg);border-color:#f2c8c4}.g-alert--neutral{background:var(--status-neutral-bg);color:var(--status-neutral-fg);border-color:var(--border-subtle)}.g-alert__close{margin-left:auto}.g-tooltip{display:inline-flex;position:relative}.g-tooltip__bubble{z-index:40;background:var(--surface-inverse);color:var(--text-on-inverse-strong);font:var(--type-body-sm);font-size:var(--size-caption);padding:var(--space-3) var(--space-5);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);pointer-events:none;width:max-content;max-width:280px;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)}.g-tooltip__bubble--rect{border-radius:var(--radius-sm)}.g-progress{gap:var(--space-3);flex-direction:column;display:flex}.g-progress__head{justify-content:space-between;align-items:baseline;gap:var(--space-4);display:flex}.g-progress__label{font-family:var(--font-ui);font-size:var(--size-overline);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);font-weight:var(--weight-bold)}.g-progress__value{font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-body-sm);color:var(--text-strong);font-variant-numeric:tabular-nums}.g-progress__track{border-radius:var(--radius-pill);background:var(--data-track);height:10px;overflow:hidden}.g-progress__track--lg{height:14px}.g-progress__fill{border-radius:var(--radius-pill);height:100%;transition:width var(--duration-slow) var(--ease-standard)}.g-progress__fill--physical{background:linear-gradient(90deg,var(--grego-petrol-400),var(--grego-petrol-600))}.g-progress__fill--financial{background:linear-gradient(90deg,var(--grego-ocre-500),var(--grego-terracota-500))}.g-progress__fill--estimated{background:repeating-linear-gradient(135deg,var(--grego-bone-400) 0 7px,var(--grego-bone-300) 7px 14px)}.g-progress__foot{font-size:var(--size-caption);color:var(--text-subtle)}.g-empty{text-align:center;align-items:center;gap:var(--space-4);padding:var(--space-11) var(--space-7);border:var(--border-hairline) dashed var(--border-default);border-radius:var(--radius-lg);background:var(--surface-sunken);color:var(--text-muted);flex-direction:column;display:flex}.g-empty__icon{border-radius:var(--radius-md);background:var(--surface-muted);width:44px;height:44px;color:var(--text-subtle);place-items:center;display:grid}.g-empty__title{font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-h4);color:var(--text-strong)}.g-empty__text{font:var(--type-body-sm);max-width:46ch;margin:0}.g-dialog__scrim{padding:var(--space-6);z-index:60;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#07272d85;place-items:center;display:grid;position:fixed;inset:0}.g-dialog{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:496px;box-shadow:var(--shadow-lg);overflow:hidden}.g-dialog__body{padding:var(--space-9) var(--space-9) var(--space-5)}.g-dialog__title{font:var(--type-h3);color:var(--text-strong);margin-bottom:var(--space-4)}.g-dialog__text{font:var(--type-body);color:var(--text-body);margin:0}.g-dialog__actions{justify-content:flex-end;gap:var(--space-4);padding:var(--space-5) var(--space-9) var(--space-9);flex-wrap:wrap;display:flex}.g-navbar{align-items:center;gap:var(--space-8);min-height:80px;padding:16px var(--space-9);background:var(--surface-card);border-bottom:var(--border-hairline) solid var(--border-subtle);flex-wrap:wrap;display:flex}.g-navbar--inverse{background:var(--grego-ink);border-bottom-color:#d7d2cb29}.g-navbar--transparent{background:0 0;border-bottom-color:#0000}.g-navbar__brand{flex:none;align-items:center;display:flex}.g-navbar__links{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;margin-left:auto;display:flex}.g-navbar__link{font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-caption);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);padding:var(--space-3) var(--space-5);border-radius:var(--radius-pill);transition:color var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard);align-items:center;min-height:44px;text-decoration:none;display:flex}.g-navbar__link:hover{color:var(--text-strong);background:var(--surface-sunken)}.g-navbar__link[aria-current=page]{color:var(--text-strong);background:var(--surface-accent-soft)}.g-navbar--inverse .g-navbar__link{color:#d7d2cbc7}.g-navbar--inverse .g-navbar__link:hover{color:var(--grego-bone-000);background:#d7d2cb1a}.g-navbar--inverse .g-navbar__link[aria-current=page]{color:var(--grego-bone-000);background:#d7d2cb24}.g-navbar__actions{align-items:center;gap:var(--space-4);flex-wrap:wrap;min-width:0;display:flex}.g-sidenav{width:var(--sidenav-width);background:var(--grego-ink);color:var(--grego-bone-300);padding:var(--space-7) var(--space-5);gap:var(--space-6);border-radius:var(--radius-xl);margin:var(--space-4);box-shadow:var(--shadow-md);flex-direction:column;flex:none;display:flex}.g-sidenav__brand{padding:0 var(--space-4) var(--space-4)}.g-sidenav__group{gap:var(--space-1);flex-direction:column;display:flex}.g-sidenav__grouplabel{font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-overline);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:#d7d2cb73;padding:var(--space-3) var(--space-4)}.g-sidenav__item{align-items:center;gap:var(--space-4);min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-pill);color:#d7d2cbd1;font:var(--type-body-sm);cursor:pointer;text-align:left;width:100%;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard);background:0 0;border:0;text-decoration:none;display:flex}.g-sidenav__item:hover{color:var(--grego-bone-000);background:#d7d2cb1a}.g-sidenav__item[aria-current=page]{background:var(--grego-petrol-500);color:var(--grego-bone-000);font-family:var(--font-ui);font-weight:var(--weight-bold);box-shadow:var(--shadow-glow-accent)}.g-sidenav__item:focus-visible{outline:2px solid var(--grego-bone-300);outline-offset:2px}.g-sidenav__badge{margin-left:auto}.g-sidenav__foot{margin-top:auto}.g-tabs{gap:var(--space-2);border-bottom:var(--border-hairline) solid var(--border-subtle);flex-wrap:wrap;max-width:100%;display:flex}.g-tab{appearance:none;padding:var(--space-4) var(--space-5);min-height:44px;font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-caption);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);cursor:pointer;align-items:center;gap:var(--space-3);transition:color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard);background:0 0;border:0;border-bottom:2px solid #0000;display:inline-flex}.g-tab:hover{color:var(--text-strong)}.g-tab[aria-selected=true]{color:var(--text-strong);border-bottom-color:var(--grego-terracota-500)}.g-tab:disabled{color:var(--action-disabled-fg);cursor:not-allowed}.g-tab:focus-visible{outline:2px solid var(--border-accent);outline-offset:-2px}.g-tab__count{font-size:var(--size-overline);color:var(--text-subtle);font-variant-numeric:tabular-nums}.g-tabs--pill{background:var(--surface-sunken);padding:var(--space-2);border-radius:var(--radius-pill);gap:var(--space-1);border-bottom:0;display:inline-flex}.g-tabs--pill .g-tab{border-radius:var(--radius-pill);padding:var(--space-3) var(--space-5);min-height:34px;font-size:var(--size-overline);border:0}.g-tabs--pill .g-tab[aria-selected=true]{background:var(--surface-card);box-shadow:var(--shadow-xs);color:var(--text-strong)}.g-crumbs{align-items:center;gap:var(--space-3);font:var(--type-body-sm);font-size:var(--size-caption);color:var(--text-muted);flex-wrap:wrap;display:flex}.g-crumbs a,.g-crumbs button{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none}.g-crumbs a:hover,.g-crumbs button:hover{color:var(--text-strong);text-decoration:underline}.g-crumbs__sep{color:var(--border-strong)}.g-crumbs__current{color:var(--text-strong);font-family:var(--font-ui);font-weight:var(--weight-bold)}.g-pager{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.g-pager__btn{min-width:40px;height:40px;padding:0 var(--space-3);border:var(--border-hairline) solid var(--border-subtle);background:var(--surface-card);border-radius:var(--radius-pill);font-family:var(--font-ui);font-size:var(--size-body-sm);color:var(--text-body);cursor:pointer;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;display:inline-flex}.g-pager__btn:hover{border-color:var(--border-strong);background:var(--surface-sunken)}.g-pager__btn[aria-current=page]{background:var(--action-primary-bg);border-color:var(--action-primary-bg);color:var(--action-primary-fg);font-weight:var(--weight-bold)}.g-pager__btn:disabled{color:var(--action-disabled-fg);cursor:not-allowed;background:var(--surface-sunken)}.g-pager__info{font:var(--type-body-sm);color:var(--text-muted);margin-right:var(--space-4)}@media (max-width:900px){.g-navbar{gap:16px;padding:16px 20px}.g-navbar__links{order:3;gap:4px;width:100%;margin-left:0}.g-navbar__link{padding:10px 12px;font-size:11px}.g-navbar__actions{gap:10px;margin-left:auto}.g-sidenav{max-width:calc(100% - 24px)}}.g-table{border-collapse:collapse;width:100%;font:var(--type-body-sm)}.g-table caption{text-align:left;padding:var(--space-5) var(--space-6);font:var(--type-body-sm);font-size:var(--size-caption);color:var(--text-muted)}.g-table thead th{background:var(--surface-sunken);text-align:left;font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-overline);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);padding:var(--space-4) var(--space-6);border-bottom:var(--border-hairline) solid var(--border-subtle);white-space:nowrap}.g-table tbody td{padding:var(--space-5) var(--space-6);border-bottom:var(--border-hairline) solid var(--border-subtle);color:var(--text-body);vertical-align:middle}.g-table tbody tr:last-child td{border-bottom:0}.g-table tbody tr:hover{background:var(--grego-bone-050)}.g-table tbody tr[aria-selected=true]{background:var(--surface-accent-soft)}.g-table--compact tbody td{padding:var(--space-4) var(--space-6)}.g-table__num{text-align:right;font-family:var(--font-ui);font-variant-numeric:tabular-nums;white-space:nowrap}.g-table__strong{color:var(--text-strong);font-family:var(--font-ui);font-weight:var(--weight-bold)}.g-table__sort{align-items:center;gap:var(--space-2);font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;display:inline-flex}.g-table__wrap{overflow-x:auto}.g-table__foot{justify-content:space-between;align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-6);border-top:var(--border-hairline) solid var(--border-subtle);background:var(--surface-card);flex-wrap:wrap;display:flex}.g-list{background:var(--surface-card);flex-direction:column;display:flex}.g-listrow{align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-6);border-bottom:var(--border-hairline) solid var(--border-subtle);text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border-top:0;border-left:0;border-right:0;display:flex}.g-listrow:last-child{border-bottom:0}.g-listrow--interactive{cursor:pointer;transition:background var(--duration-fast) var(--ease-standard)}.g-listrow--interactive:hover{background:var(--grego-bone-050)}.g-listrow--interactive:focus-visible{outline:2px solid var(--border-accent);outline-offset:-2px}.g-listrow__media{border-radius:var(--radius-tile);background:var(--surface-accent-soft);width:46px;height:46px;color:var(--text-accent);flex:none;place-items:center;display:grid;overflow:hidden}.g-listrow__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.g-listrow__title{font-family:var(--font-ui);font-weight:var(--weight-bold);color:var(--text-strong);font-size:var(--size-body);white-space:normal;overflow-wrap:anywhere}.g-listrow__meta{font:var(--type-body-sm);font-size:var(--size-caption);color:var(--text-muted)}.g-listrow__end{align-items:center;gap:var(--space-4);flex:none;display:flex}.g-filterbar{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--surface-card);border:var(--border-hairline) solid var(--border-subtle);border-radius:var(--radius-pill);box-shadow:var(--shadow-xs);flex-wrap:wrap;display:flex}.g-chip{align-items:center;gap:var(--space-3);height:38px;padding:0 var(--space-5);border-radius:var(--radius-pill);border:var(--border-hairline) solid var(--border-default);background:var(--surface-card);font:var(--type-body-sm);color:var(--text-body);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard);display:inline-flex}.g-chip:hover{border-color:var(--border-strong);background:var(--surface-sunken)}.g-chip[aria-pressed=true]{background:var(--surface-accent);border-color:var(--surface-accent);color:var(--text-on-accent);font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-caption);letter-spacing:var(--tracking-wide);text-transform:uppercase}.g-chip__remove{border-radius:var(--radius-pill);width:18px;height:18px;color:inherit;cursor:pointer;background:#07272d1a;border:0;place-items:center;font-size:10px;line-height:1;display:grid}.g-filterbar__spacer{margin-left:auto}.g-kpi{gap:var(--space-3);padding:var(--space-6) var(--space-7);background:var(--surface-card);border:var(--border-hairline) solid var(--border-subtle);border-radius:var(--radius-surface);box-shadow:var(--shadow-xs);flex-direction:column;min-width:0;transition:box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden;container-type:inline-size}.g-kpi:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.g-kpi__label{font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-overline);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);align-items:center;gap:var(--space-3);overflow-wrap:anywhere;display:flex}.g-kpi__value{font-family:var(--font-ui);font-weight:var(--weight-bold);color:var(--grego-petrol-500);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-tight);overflow-wrap:anywhere;max-width:100%;font-size:clamp(20px,12cqw,40px);line-height:1.2}.g-kpi--warm .g-kpi__value{color:var(--grego-ocre-600)}.g-kpi--highlight .g-kpi__value{color:var(--grego-terracota-600)}.g-kpi--ink .g-kpi__value{color:var(--text-strong)}.g-kpi__unit{color:var(--text-muted);margin-left:4px;font-size:.5em}.g-kpi__row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;min-width:0;display:flex}.g-kpi__delta{align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--size-overline);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);padding:4px var(--space-3);border-radius:var(--radius-pill);display:inline-flex}.g-kpi__delta--up{color:var(--status-success-fg);background:var(--status-success-bg)}.g-kpi__delta--down{color:var(--status-danger-fg);background:var(--status-danger-bg)}.g-kpi__delta--flat{color:var(--text-muted);background:var(--status-neutral-bg)}.g-kpi__foot{font:var(--type-body-sm);font-size:var(--size-caption);color:var(--text-subtle);overflow-wrap:anywhere}.g-kpi__spark{margin-top:var(--space-2);max-width:100%}.g-kpi--inverse{background:var(--grego-petrol-800);border-color:#d7d2cb2e}.g-kpi--inverse .g-kpi__value{color:var(--grego-ocre-500)}.g-kpi--inverse .g-kpi__label,.g-kpi--inverse .g-kpi__foot{color:#d7d2cbb3}.g-timeline{flex-direction:column;display:flex}.g-tl{gap:var(--space-5);grid-template-columns:auto 1fr;display:grid;position:relative}.g-tl__rail{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.g-tl__dot{border-radius:var(--radius-pill);border:var(--border-heavy) solid var(--border-strong);background:var(--surface-card);flex:none;place-items:center;width:16px;height:16px;margin-top:4px;display:grid}.g-tl__dot--done{background:var(--grego-petrol-500);border-color:var(--grego-petrol-500)}.g-tl__dot--current{background:var(--grego-ocre-500);border-color:var(--grego-ocre-500);box-shadow:0 0 0 5px var(--grego-ocre-100)}.g-tl__dot--blocked{background:var(--grego-danger-500);border-color:var(--grego-danger-500)}.g-tl__line{background:var(--border-subtle);flex:1;width:2px;min-height:18px}.g-tl__body{padding-bottom:var(--space-8)}.g-tl__title{font-family:var(--font-ui);font-weight:var(--weight-bold);color:var(--text-strong)}.g-tl__date{font-family:var(--font-ui);font-size:var(--size-caption);color:var(--text-subtle);font-variant-numeric:tabular-nums}.g-tl__text{font:var(--type-body-sm);color:var(--text-muted);margin:var(--space-2) 0 0}@media (max-width:600px){.g-listrow{flex-wrap:wrap}.g-listrow__end{margin-left:auto}}@media (prefers-reduced-motion:reduce){.g-kpi{transition:none}}.g-chart{flex-direction:column;gap:16px;width:100%;min-width:0;display:flex}.g-chart__head{justify-content:space-between;align-items:flex-start;gap:var(--space-5);flex-wrap:wrap;display:flex}.g-chart__title{font-family:var(--font-ui);font-weight:var(--weight-bold);font-size:var(--size-h4);color:var(--text-strong)}.g-chart__sub{font:var(--type-body-sm);font-size:var(--size-caption);color:var(--text-subtle)}.g-chart__legend{align-items:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.g-chart__key{align-items:center;gap:var(--space-3);font:var(--type-body-sm);font-size:var(--size-caption);color:var(--text-muted);display:inline-flex}.g-chart__swatch{border-radius:4px;flex:none;width:12px;height:12px}.g-chart__svg{width:100%;height:auto;display:block;overflow:hidden}.g-chart__grid{stroke:var(--border-subtle);stroke-width:1px;stroke-dasharray:2 6}.g-chart__axis{font-family:var(--font-ui);fill:var(--text-subtle);letter-spacing:0;text-transform:uppercase;font-size:11px}.g-chart__line{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.g-chart__point{stroke:var(--surface-card);stroke-width:2.5px}.g-chart__bar{transition:opacity var(--duration-fast) var(--ease-standard)}.g-chart__bar:hover{stroke:var(--text-strong);stroke-width:2px}.g-chart__center{font-family:var(--font-ui);fill:var(--text-strong);font-variant-numeric:tabular-nums;font-weight:700}.g-chart__centersub{font-family:var(--font-ui);fill:var(--text-subtle);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.g-chart__foot{font:var(--type-body-sm);font-size:var(--size-caption);color:var(--text-subtle)}.g-chart__readout{border-block:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:10px 20px;min-height:44px;padding:12px 0;display:flex}.g-chart__period{font:var(--type-label);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:11px}.g-chart__metric{font:var(--type-body-sm);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.g-chart__metric i,.g-donut__item i{border-radius:50%;flex:none;width:8px;height:8px}.g-chart__metric strong{font-family:var(--font-ui);color:var(--text-strong);font-variant-numeric:tabular-nums;font-size:18px}.g-chart__scrubber{min-height:44px;color:var(--text-muted);font:var(--type-body-sm);align-items:center;gap:16px;font-size:11px;display:flex}.g-chart__scrubber span{flex:none}.g-chart__scrubber input{width:100%;min-width:0;min-height:44px;accent-color:var(--data-physical);cursor:ew-resize}.g-chart__draw{stroke-dasharray:1;animation:.7s cubic-bezier(.2,.6,.2,1) both g-chart-draw}@keyframes g-chart-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.g-donut{text-align:center;align-items:center}.g-donut__svg{flex:none}.g-donut__arc{transition:opacity .2s}.g-donut__summary{gap:4px;width:100%;max-width:100%;display:grid;container-type:inline-size}.g-donut__value{font-family:var(--font-ui);overflow-wrap:anywhere;font-variant-numeric:tabular-nums;color:var(--text-strong);font-size:clamp(18px,6cqw,28px);line-height:1.3}.g-donut__legend{text-align:left;gap:4px;width:100%;display:grid}.g-donut__item{width:100%;min-height:44px;color:var(--text-muted);text-align:left;font:var(--type-body-sm);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;grid-template-columns:8px minmax(0,1fr);align-items:center;gap:6px 10px;padding:10px 12px;font-size:12px;transition:background .18s,border-color .18s;display:grid}.g-donut__item strong{font-family:var(--font-ui);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;color:var(--text-strong);grid-column:2;font-size:13px}.g-donut__item:hover,.g-donut__item[aria-pressed=true]{background:var(--surface-sunken);border-color:var(--border-subtle)}@media (prefers-reduced-motion:reduce){.g-chart__draw{animation:none}.g-chart__bar,.g-donut__arc,.g-donut__item{transition:none}}:root{--app-sidebar:252px}body{font-size:14px}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button svg,a svg{flex-shrink:0}button{color:inherit}h1:focus{box-shadow:none;outline:none}h1{letter-spacing:-.035em;font-size:clamp(27px,3vw,38px)}h2{letter-spacing:-.025em;font-size:19px}h3{font-size:16px}a{text-decoration:none}p{line-height:1.7}.logo{object-fit:contain;width:172px;height:48px}.small{font-size:12px}.muted{color:var(--text-muted)}.eyebrow{font-family:var(--font-ui);letter-spacing:.14em;color:var(--text-muted);font-size:10px;font-weight:700}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--surface-card);padding:12px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:10px}.demo-banner{background:var(--surface-sunken);border-bottom:1px solid var(--border-default);color:var(--text-body);font:400 11px/1.5 var(--font-body);text-align:center;min-height:31px;padding:7px 16px}.demo-dot{background:var(--status-warning-mark);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.selection{max-width:1200px;margin:auto;padding:0 48px}.selection-top{border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:center;padding:27px 0;display:flex}.portal-label{font:700 11px var(--font-ui);text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.selection-intro{justify-content:space-between;align-items:center;gap:28px;margin:60px 0 32px;display:flex}.selection-intro h1{margin:10px 0 14px;font-size:clamp(34px,4vw,48px)}.title-dot{color:var(--status-warning-fg)}.selection-intro p{color:var(--text-muted);margin:0;font-size:14px}.selection-count{border-left:1px solid var(--border-default);align-items:center;gap:14px;padding-left:28px;display:flex}.selection-count strong{font:700 18px var(--font-ui);display:block}.selection-count small{color:var(--text-muted);margin-top:6px;font-size:11px;display:block}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.work-card{background:var(--surface-card);border:1px solid var(--border-default);color:var(--text-body);box-shadow:var(--shadow-sm);border-radius:20px;transition:transform .18s,box-shadow .18s;overflow:hidden}.work-card:hover{color:var(--text-body);box-shadow:var(--shadow-md);transform:translateY(-3px)}.work-image{border-bottom:1px solid var(--border-subtle);position:relative}.facade{aspect-ratio:1.9;object-fit:cover;width:100%;display:block}.facade-empty{background:var(--surface-sunken);color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:28px;font-size:11px;display:flex}.work-image-tag{background:var(--surface-card);font:700 10px var(--font-ui);text-transform:uppercase;letter-spacing:.06em;border-radius:8px;padding:6px 10px;position:absolute;top:18px;left:18px}.work-image-number{font:300 48px var(--font-display);color:var(--text-muted);position:absolute;bottom:10px;right:22px}.work-card-body{padding:26px}.section-head{justify-content:space-between;align-items:center;gap:14px;display:flex}.section-head>div{min-width:0}.round-arrow{border:1px solid var(--border-default);border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.address{color:var(--text-muted);align-items:flex-start;gap:6px;margin:7px 0 18px;font-size:11px;display:flex}.address svg{flex-shrink:0;margin-top:2px}.work-facts{justify-content:space-between;margin-bottom:24px;font-size:11px;display:flex}.work-card-foot{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:18px;display:flex}.work-card-foot small{color:var(--text-muted);font-size:10px}.work-card-foot>span{font:700 11px var(--font-ui);color:var(--text-accent);align-items:center;gap:9px;display:flex}.selection-note{align-items:center;gap:18px;margin:14px 0 35px;padding:30px 0;display:flex}.selection-note p{color:var(--text-muted);margin:0;font-size:12px}.note-mark{background:var(--surface-accent-soft);width:46px;height:46px;color:var(--text-accent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.selection-footer{border-top:1px solid var(--border-default);color:var(--text-muted);justify-content:space-between;padding:25px 0;font-size:10px;display:flex}.badge{line-height:1.4;font:700 10px var(--font-ui);color:var(--status-info-fg);background:var(--status-info-bg);white-space:normal;border-radius:6px;align-items:center;padding:5px 9px;display:inline-flex}.badge.warm{color:var(--status-warning-fg);background:var(--status-warning-bg)}.progress-label{justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;font-size:11px;display:flex}.progress-label strong{font:700 16px var(--font-ui);color:var(--data-physical)}.progress-track,.mini-track{background:var(--data-track);border-radius:6px;height:6px;overflow:hidden}.progress-track span,.mini-track span{background:var(--data-physical);border-radius:6px;height:100%;display:block}.financial .progress-track span{background:var(--data-financial)}.financial .progress-label strong{color:var(--status-warning-fg)}.app-shell{min-height:calc(100vh - 31px);display:flex}.sidebar{width:var(--app-sidebar);background:var(--surface-inverse);color:var(--text-on-inverse);flex-direction:column;flex-shrink:0;height:100dvh;padding:28px 20px;display:flex;position:sticky;top:0;overflow-y:auto}.brand-link{padding:0 12px 25px;display:block}.sidebar-work{border-top:1px solid var(--border-inverse);border-bottom:1px solid var(--border-inverse);margin-bottom:22px;padding:19px 12px}.sidebar-work .eyebrow{color:var(--text-on-inverse);font-size:9px}.sidebar-work strong{color:var(--text-on-inverse-strong);font:700 14px/1.5 var(--font-ui);margin:8px 0 4px;display:block}.sidebar-work>span{font-size:10px;display:block}.sidebar-work>a{font:400 11px var(--font-ui);color:var(--text-on-inverse-strong);align-items:center;gap:8px;min-height:28px;margin-top:14px;display:inline-flex}.nav-group-label{font:700 9px var(--font-ui);letter-spacing:.14em;color:var(--text-on-inverse);padding:0 12px 12px}.nav-item{color:var(--text-on-inverse);min-height:46px;font:400 12px var(--font-ui);border-radius:10px;align-items:center;gap:12px;margin-bottom:4px;padding:10px 13px;display:flex}.nav-item:hover{color:var(--text-on-inverse-strong);background:var(--surface-inverse-soft)}.nav-item.active{background:var(--surface-accent);color:var(--text-on-inverse-strong);font-weight:700}.second-group{margin-top:26px}.sidebar-bottom{margin-top:auto;padding:36px 12px 0}.sidebar-monogram{font:300 32px var(--font-display);color:var(--text-on-inverse);display:block}.sidebar-bottom p{margin:8px 0 22px;font-size:10px;line-height:1.8}.sidebar-bottom button{border:0;border-top:1px solid var(--border-inverse);color:var(--text-on-inverse);font:400 11px var(--font-ui);background:0 0;align-items:center;gap:9px;padding:18px 0 0;display:flex}.workspace{flex:1;min-width:0}.topbar{border-bottom:1px solid var(--border-default);background:var(--surface-card);justify-content:space-between;align-items:center;gap:16px;height:74px;padding:0 34px;display:flex}.breadcrumb{min-width:0;color:var(--text-muted);align-items:center;gap:10px;font-size:10px;display:flex}.breadcrumb a{color:var(--text-muted)}.breadcrumb span{font:700 11px var(--font-ui);color:var(--text-strong)}.switch-work{font:700 10px var(--font-ui);flex-shrink:0;align-items:center;gap:8px;min-height:44px;display:flex}.page-content{max-width:1600px;margin:auto;padding:30px 34px}.page-heading{margin-bottom:26px}.page-heading h1{margin:8px 0;font-size:clamp(24px,2.2vw,32px)}.page-heading p{color:var(--text-muted);margin:0;font-size:12px}.dashboard-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.date-stamp{white-space:nowrap;color:var(--text-muted);align-items:center;gap:7px;margin-top:8px;font-size:10px;display:flex}.stories-strip{background:var(--surface-card);border:1px solid var(--border-default);border-radius:16px;align-items:center;gap:24px;margin-bottom:22px;padding:20px 24px;display:flex}.stories-strip h2{font-size:15px}.stories-strip p{color:var(--text-muted);margin:5px 0 0;font-size:10px}.story{font:400 10px var(--font-ui);color:var(--text-body);text-align:center;flex-direction:column;flex-shrink:0;align-items:center;gap:7px;display:flex}.story-ring{border:2px solid var(--border-accent);outline:3px solid var(--surface-accent-soft);outline-offset:2px;width:60px;height:60px;color:var(--text-accent);background:var(--surface-accent-soft);border-radius:50%;place-items:center;display:grid}.stories-message{border-left:1px solid var(--border-subtle);flex-direction:column;gap:7px;padding-left:22px;font-size:11px;display:flex}.stories-message a{font:700 10px var(--font-ui);align-items:center;gap:6px;min-height:25px;display:flex}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:22px;display:grid}.card{background:var(--surface-card);border:1px solid var(--border-default);box-shadow:var(--shadow-xs);border-radius:16px;min-width:0}.metric{flex-direction:column;padding:20px 20px 17px;display:flex}.metric-label{font:700 10px var(--font-ui);color:var(--text-muted);justify-content:space-between;align-items:center;gap:8px;display:flex}.metric-value{font:700 40px/1.15 var(--font-ui);letter-spacing:-.05em;white-space:nowrap;margin:19px 0 12px;display:block}.metric-value>span{letter-spacing:-.02em;font-size:20px}.metric-value.money{letter-spacing:-.04em;font-size:clamp(19px,2.2vw,30px)}.metric-sub{color:var(--text-muted);margin-bottom:4px;font-size:10px}.metric p{color:var(--text-muted);margin:13px 0 0;font-size:9px;line-height:1.7}.metric .mini-track{margin:0 0 5px}.warm-metric{background:var(--status-warning-bg);border-color:var(--grego-ocre-300)}.dark-metric{background:var(--surface-inverse);border-color:var(--surface-inverse)}.dark-metric strong,.dark-metric p,.dark-metric .metric-label,.dark-metric .metric-sub{color:var(--text-on-inverse)}.dark-metric .metric-value{color:var(--text-on-inverse-strong)}.metric-value.date-value{font-size:32px}.metric-value.date-value span{font-size:14px}.dashboard-columns{grid-template-columns:1.1fr 1fr;gap:20px;margin-bottom:22px;display:grid}.current-phase{padding:24px}.current-phase h2{margin:20px 0 8px;font-size:22px}.current-phase .progress{margin:20px 0}.subtle-note{color:var(--text-muted);align-items:flex-start;gap:8px;margin:0 0 22px;font-size:10px;display:flex}.subtle-note svg{flex-shrink:0;margin-top:2px}.btn{border:1px solid var(--border-default);min-height:44px;font:700 10px/1.4 var(--font-ui);letter-spacing:.035em;color:var(--text-accent);background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:12px;padding:11px 18px;display:inline-flex}.btn.primary{background:var(--action-primary-bg);color:var(--action-primary-fg);border-color:var(--action-primary-bg)}.btn.secondary:hover{background:var(--surface-accent-soft);border-color:var(--border-accent)}.attention-card{flex-direction:column;padding:24px;display:flex}.attention-card h2{font-size:17px}.notice-row{text-align:left;border:0;border-bottom:1px solid var(--border-subtle);background:0 0;align-items:flex-start;gap:12px;margin-top:8px;padding:26px 0;display:flex}.notice-row>span:nth-child(2){flex:1;min-width:0}.notice-icon{background:var(--status-warning-bg);width:36px;height:36px;color:var(--status-warning-fg);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.notice-row strong{font:700 13px/1.5 var(--font-ui);display:block}.notice-row small{color:var(--text-muted);margin-top:6px;font-size:10px;display:block}.notice-status{font:700 9px/1.5 var(--font-ui);color:var(--status-warning-fg);margin-top:12px;display:block}.attention-foot{color:var(--text-muted);align-items:center;gap:8px;margin-top:auto;padding-top:20px;font-size:10px;display:flex}.overview-bottom{grid-template-columns:1.7fr 1fr;gap:20px;display:grid}.finance-summary{padding:24px}.finance-summary h2{font-size:17px}.finance-summary p{margin:5px 0 0}.round-link{background:var(--surface-accent-soft);border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.stacked-bar{border-radius:5px;gap:3px;height:14px;margin:24px 0;display:flex;overflow:hidden}.paid{background:var(--data-financial)}.committed{background:var(--grego-ocre-300)}.estimated{background:var(--data-track)}.finance-legend{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.finance-legend span{color:var(--text-muted);align-items:center;gap:6px;font-size:9px;display:flex}.finance-legend i{border-radius:2px;width:7px;height:7px;display:block}.finance-legend strong{font:700 13px var(--font-ui);margin-top:8px;display:block}.camera-card{color:var(--text-body);flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;padding:24px;display:flex}.camera-icon{background:var(--surface-sunken);border-radius:12px;place-items:center;width:48px;height:48px;display:grid}.camera-card h2{font-size:17px}.camera-card p{color:var(--text-muted);margin:6px 0 0;font-size:10px}.app-footer{border-top:1px solid var(--border-default);color:var(--text-muted);justify-content:space-between;align-items:center;gap:20px;margin:15px 34px 0;padding:22px 0;font-size:9px;display:flex}.app-footer .logo{width:100px;height:30px}.icon-button{border:1px solid var(--border-default);background:0 0;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.menu-button{display:none}.modal{border:1px solid var(--border-default);background:var(--surface-card);width:100%;max-width:min(560px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--text-body);box-shadow:var(--shadow-lg);border-radius:20px;padding:28px;overflow-y:auto}.modal::backdrop{background:#07272da6}.modal .section-head{margin-bottom:22px}.modal .section-head h2{font-size:22px}.modal p{margin-top:18px;font-size:13px}.modal-work{color:var(--text-muted);font-size:11px!important}.empty{text-align:center;padding:70px 25px}.empty-icon{color:var(--text-accent);place-items:center;margin:0 auto 20px;display:grid}.empty h2{margin-bottom:14px}.empty p{color:var(--text-muted);max-width:55ch;margin:auto;font-size:13px}.not-found{text-align:center;max-width:700px;margin:60px auto;padding:24px}.phase-layout{grid-template-columns:1fr 1.3fr;gap:22px;display:grid}.phase-list,.phase-detail{padding:26px}.phase-list>p{margin:8px 0 26px}.phase-option{text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:14px;width:100%;margin-bottom:8px;padding:18px 12px;display:flex}.phase-option.selected{background:var(--surface-accent-soft);border-color:var(--border-accent)}.phase-option>span:nth-child(2){flex:1}.phase-option strong{font:700 12px/1.6 var(--font-ui);display:block}.phase-option small{color:var(--text-muted);margin-top:4px;font-size:10px;display:block}.phase-number{background:var(--surface-sunken);width:32px;height:32px;color:var(--text-body);font:700 11px var(--font-ui);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.phase-number.done{background:var(--surface-accent);color:var(--text-on-accent)}.phase-detail>h2{margin:22px 0 12px;font-size:24px}.phase-detail>p{color:var(--text-muted);font-size:12px}.phase-dates{border-block:1px solid var(--border-subtle);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px;padding:20px 0;display:grid}.phase-dates span,.phase-money span{color:var(--text-muted);font-size:10px;display:block}.phase-dates strong{font:700 12px var(--font-ui);margin-top:8px;display:block}.phase-detail .progress{margin:20px 0}.phase-money{border-top:1px solid var(--border-subtle);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0;padding:20px 0;display:grid}.phase-money strong{font:700 16px var(--font-ui);margin-top:8px;display:block}.filter-bar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.filter-bar label{align-items:center;gap:12px;font-size:12px;display:flex}.filter-bar select{background:var(--surface-card);max-width:100%;min-height:44px;color:var(--text-body);border:1px solid var(--border-default);border-radius:9px;padding:8px 32px 8px 12px;font-size:12px}.finance-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:22px;display:grid}.finance-kpis .card{padding:21px}.finance-kpis span{font:700 10px var(--font-ui);color:var(--text-muted);display:block}.finance-kpis strong{font:700 clamp(17px, 1.9vw, 25px) var(--font-ui);letter-spacing:-.04em;margin:18px 0 10px;display:block}.finance-kpis small{color:var(--text-muted);font-size:10px;display:block}.estimated-card{border-style:dashed}.finance-explanation{background:var(--surface-accent-soft);align-items:flex-start;gap:14px;margin-bottom:22px;padding:20px;display:flex}.finance-explanation svg{flex-shrink:0;margin-top:4px}.finance-explanation p{max-width:none;margin:0;font-size:12px}.payments-card{padding:25px}.payments-card .section-head p{margin:6px 0 0}.recipient-filter{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:18px 0;display:flex}.recipient-filter label{font:700 10px var(--font-ui);border:1px solid var(--border-default);cursor:pointer;border-radius:50px;align-items:center;gap:7px;min-height:44px;padding:10px 12px;display:flex}.recipient-filter label.active{border-color:var(--border-accent);background:var(--surface-accent-soft);color:var(--text-accent)}.recipient-filter input{accent-color:var(--surface-accent);margin:0}.payment-row{border:0;border-top:1px solid var(--border-subtle);text-align:left;background:0 0;align-items:center;gap:14px;width:100%;padding:20px 0;display:flex}.payment-row:hover{background:var(--surface-page)}.payment-icon{background:var(--surface-sunken);border-radius:10px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.payment-description{flex:1;min-width:0}.payment-description strong{font:700 12px var(--font-ui);display:block}.payment-description small{color:var(--text-muted);margin-top:5px;font-size:10px;display:block}.payment-value{font:700 14px var(--font-ui);white-space:nowrap}.paid-tag{background:var(--status-success-bg);color:var(--status-success-fg);font:700 10px var(--font-ui);border-radius:5px;padding:5px 8px}.payment-total{border-top:1px solid var(--border-default);justify-content:space-between;padding:20px 0 0;font-size:12px;display:flex}.payment-total strong{font:700 18px var(--font-ui)}.detail-amount{font:700 30px var(--font-ui);margin:20px 0;display:block}.quiet-state{text-align:center;color:var(--text-muted);padding:38px 12px}.quiet-state svg{color:var(--text-accent)}.quiet-state h3{margin:15px 0 8px}.quiet-state p{margin:0;font-size:12px}.mobile-nav{background:var(--surface-inverse);color:var(--text-on-inverse);border-radius:12px;padding:20px}.mobile-nav .sidebar-bottom,.mobile-nav .brand-link{display:none}@media (min-width:1650px){.page-content{padding-top:40px}.metric-value.money{font-size:33px}}@media (max-width:1200px){:root{--app-sidebar:224px}.page-content{padding:26px}.topbar{padding:0 26px}.metrics-grid,.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-value.money{font-size:29px}.date-stamp{display:none}.finance-kpis strong{font-size:24px}.overview-bottom{grid-template-columns:1.5fr 1fr}.phase-layout{grid-template-columns:1fr}.phase-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 15px;display:grid}.phase-list>h2,.phase-list>p{grid-column:1/-1}}@media (max-width:900px){.sidebar{display:none}.menu-button{display:grid}.topbar{height:auto;min-height:72px;padding:12px 24px}.breadcrumb{flex:1}.breadcrumb>a,.breadcrumb>svg{display:none}.page-content{padding:28px 24px}.dashboard-columns{grid-template-columns:1fr 1fr}.metric-value.money{font-size:30px}.app-footer{margin-inline:24px}.selection{padding-inline:28px}.work-card-body{padding:22px}.selection-intro{margin-top:38px}.work-card-foot{flex-wrap:wrap}.selection-count{padding-left:18px}.work-facts{font-size:10px}.date-stamp{display:none}}@media (max-width:620px){body{font-size:13px}.demo-banner{font-size:10px}.demo-detail{display:none}.selection{padding-inline:20px}.selection-top{padding:20px 0}.logo{width:148px;height:42px}.portal-label{font-size:8px}.selection-intro{margin:32px 0 26px;display:block}.selection-intro h1{font-size:36px}.selection-intro p{font-size:12px}.selection-count{display:none}.work-grid{grid-template-columns:1fr;gap:22px}.work-card-body{padding:23px}.work-card h2{font-size:20px}.selection-note{margin:0;padding:27px 0}.selection-note p{font-size:11px}.selection-footer{font-size:9px;display:block}.selection-footer span{margin-bottom:6px;display:block}.facade{aspect-ratio:1.9}.topbar{gap:10px;padding:12px 16px}.breadcrumb span{font-size:11px}.switch-work{gap:5px;max-width:100px;font-size:9px}.switch-work span{line-height:1.5}.page-content{padding:24px 16px}.page-heading h1{font-size:27px}.page-heading p{font-size:11px}.page-heading .eyebrow{font-size:9px}.stories-strip{flex-wrap:wrap;gap:16px;padding:18px 16px}.stories-strip>div:first-child{flex:1}.stories-message{border-left:0;border-top:1px solid var(--border-subtle);width:100%;padding:12px 0 0;font-size:10px}.story-ring{width:52px;height:52px}.metric{padding:16px 13px}.metrics-grid,.finance-kpis{gap:10px}.metric-label{gap:4px;font-size:9px}.metric-label svg{width:15px}.metric-value{font-size:34px}.metric-value.money{font-size:23px}.metric-value.date-value{font-size:25px}.metric-value.date-value span{font-size:11px}.metric-sub,.metric p{font-size:9px}.dashboard-columns,.overview-bottom{grid-template-columns:1fr;gap:16px}.current-phase,.attention-card,.finance-summary{padding:22px}.current-phase h2{font-size:21px}.attention-card h2{font-size:16px}.camera-card{flex-direction:row;align-items:center;gap:14px;padding:22px}.camera-card>div{flex:1}.camera-card h2{font-size:15px}.camera-icon{flex-shrink:0;width:40px;height:40px}.finance-summary h2{font-size:16px}.finance-legend{gap:8px}.finance-legend strong{font-size:12px}.finance-legend span{font-size:9px}.app-footer{align-items:flex-start;margin:0 16px}.app-footer>span{text-align:right;max-width:180px}.phase-list{padding:22px;display:block}.phase-detail{padding:22px}.phase-dates{gap:8px}.phase-dates strong{font-size:11px}.phase-dates span{font-size:9px}.phase-money{grid-template-columns:1fr;gap:16px}.phase-money>div{justify-content:space-between;align-items:center;display:flex}.phase-money strong{margin:0}.filter-bar,.filter-bar label{display:block}.filter-bar select{width:100%;margin:6px 0 10px;display:block}.finance-kpis .card{padding:18px 13px}.finance-kpis strong{font-size:20px}.finance-kpis span{min-height:28px;font-size:9px}.payments-card{padding:20px 16px}.payment-row{grid-template-columns:32px minmax(0,1fr) auto;gap:10px;display:grid}.payment-icon{grid-row:span 2;width:32px;height:32px}.payment-description{grid-column:2/4}.payment-value{grid-column:2;font-size:14px}.paid-tag{grid-area:2/3}.payment-row>svg{display:none}.payment-total{gap:12px;font-size:10px}.payment-total strong{font-size:16px}.modal{padding:22px}.modal .section-head h2{font-size:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.phase-filter{align-items:center;gap:12px;display:flex}@media (max-width:620px){.phase-filter{display:block}}@media (max-width:400px){.finance-kpis{grid-template-columns:1fr}.finance-kpis .card{padding:20px}.finance-kpis span{min-height:0}.finance-kpis strong{font-size:26px}}@media (max-width:620px){.metric p,.metric-sub,.stories-strip p,.stories-message,.notice-row small,.attention-foot,.camera-card p,.app-footer,.subtle-note{font-size:11px}.metric-label,.metric-label span{font-size:10px}.finance-legend{grid-template-columns:1fr;gap:14px}.finance-legend>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.finance-legend span{font-size:11px}.finance-legend strong{margin:0;font-size:14px}.payment-description small,.phase-option small{font-size:11px}}.mobile-nav .sidebar-bottom{padding:10px 12px;display:block}.mobile-nav .sidebar-bottom>span,.mobile-nav .sidebar-bottom>p{display:none}.budget-note{color:var(--text-muted);font-size:12px}.metric-value.money{font-size:clamp(18px,1.8vw,27px)}@media (max-width:1200px){.finance-legend{grid-template-columns:1fr}.finance-legend>div{justify-content:space-between;display:flex}.finance-legend strong{margin-top:0}}@media (max-width:620px){.metric-value.money{font-size:20px}.finance-kpis{grid-template-columns:1fr}.finance-kpis strong{font-size:26px}.phase-money strong{font-size:15px}}.finance-kpis strong{font-size:20px}@media (min-width:1700px){.finance-kpis strong{font-size:26px}}@media (min-width:621px) and (max-width:1400px){.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-kpis strong{font-size:24px}}@media (max-width:620px){.finance-kpis strong{font-size:26px}}.selection-top-side{align-items:center;gap:18px;display:flex}.exit-button{border:1px solid var(--border-default);min-height:44px;color:var(--text-accent);font:700 10px/1.4 var(--font-ui);letter-spacing:.035em;text-transform:uppercase;background:0 0;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;display:inline-flex}.exit-button:hover{background:var(--surface-accent-soft);border-color:var(--border-accent)}.login{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:calc(100vh - 34px);display:grid}.login-side{background:var(--surface-inverse);color:var(--text-on-inverse);flex-direction:column;justify-content:space-between;gap:40px;padding:44px 48px;display:flex}.login-side-body h2{font:400 40px/1.1 var(--font-display);color:var(--text-on-inverse-strong);margin:14px 0 18px}.login-side-body .eyebrow{color:var(--grego-ocre-300)}.login-side-body p{font:400 15px/1.6 var(--font-body);max-width:34ch}.login-side-foot{font:400 12px/1.5 var(--font-ui);color:var(--text-on-inverse);opacity:.75}.login-main{background:var(--surface-page);justify-content:center;align-items:center;padding:48px;display:flex}.login-card{width:100%;max-width:430px}.login-head h1{font:400 42px/1.1 var(--font-display);color:var(--text-strong);margin:12px 0 10px}.login-head p{font:400 15px/1.6 var(--font-body);color:var(--text-muted);margin-bottom:30px}.field{margin-bottom:18px}.field label{font:700 10px/1.4 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px;display:block}.field-control{border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-muted);border-radius:12px;align-items:center;gap:11px;padding:0 16px;display:flex}.field-control:focus-within{border-color:var(--border-accent);box-shadow:var(--shadow-xs)}.field-control input{min-width:0;min-height:48px;font:400 15px var(--font-body);color:var(--text-strong);background:0 0;border:none;outline:none;flex:1}.field-control input[aria-invalid=true]{color:var(--status-warning-fg)}.login-error{min-height:22px;font:400 13px/1.4 var(--font-body);color:var(--status-warning-fg);align-items:center;gap:8px;margin:2px 0 14px;display:flex}.login-submit{width:100%}.login-hint{background:var(--status-info-bg);color:var(--status-info-fg);border-radius:14px;gap:12px;margin-top:28px;padding:16px 18px;display:flex}.login-hint svg{flex-shrink:0;margin-top:2px}.login-hint p{font:400 13px/1.6 var(--font-body)}.login-hint code{font:700 13px var(--font-ui);background:var(--surface-card);border-radius:6px;padding:1px 6px}@media (max-width:900px){.login{grid-template-columns:1fr}.login-side{gap:24px;padding:30px 24px}.login-side-body h2{margin:10px 0 12px;font-size:31px}.login-side-foot{display:none}.login-main{padding:34px 24px 48px}}@media (max-width:620px){.selection-top-side{gap:12px}.portal-label{display:none}.login-head h1{font-size:34px}}
