:root{--metric-month-width: 140px;font-family:Inter,SF Pro Display,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;font-weight:400;color:#0f172a;background-color:#f5f7fb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:#f5f7fb}a{color:inherit}button{font-family:inherit}.pillar-card{width:100%;border:2px solid transparent;border-radius:18px;padding:0;background:#fff;text-align:left;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;min-height:320px}.pillar-card:focus-visible{outline:none;box-shadow:0 0 0 3px #0000001a}.pillar-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #0f172a1a,inset 0 0 0 1px #0f172a0d}.pillar-card__header{display:flex;justify-content:space-between;padding:14px 18px;border-radius:15px 15px 0 0;font-weight:600;font-size:.95rem;letter-spacing:.4px}.pillar-card__body{padding:20px;flex:1;display:flex;flex-direction:column;gap:12px}.pillar-card__body h3{margin:0;font-size:1.15rem;color:#0f172a}.pillar-card__body ul{margin:0;padding-left:20px;color:#1e293b;line-height:1.4;flex:1}.pillar-card__body li{margin-bottom:6px}.pillar-card__cta{font-weight:600;color:#0369a1;margin:0}.project-details--loading{align-items:center;justify-content:center}.project-spinner{width:48px;height:48px;border-radius:50%;border:3px solid rgba(15,23,42,.15);border-top-color:#0f5edd;animation:project-spinner .8s linear infinite}@keyframes project-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app-shell{min-height:100vh;background:#f5f7fb;color:#0f172a;display:flex;flex-direction:column}.app-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:1rem 2.5rem;border-bottom:1px solid rgba(15,23,42,.08);background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{font-weight:700;font-size:1.2rem;text-decoration:none;color:#0f172a}.app-header nav{display:flex;gap:1rem}.nav-link{padding:.5rem 1rem;border-radius:999px;text-decoration:none;color:#475569}.nav-link-active{background:#0f172a;color:#fff}.current-path{font-size:.95rem;color:#64748b}.app-main{flex:1;padding:2rem;max-width:1400px;width:100%;margin:0 auto}.app-footer{padding:1.5rem 2rem;border-top:1px solid rgba(15,23,42,.08);display:flex;justify-content:space-between;font-size:.9rem;color:#475569}.home-page{display:flex;flex-direction:column;gap:1.5rem}.north-star{background:#0f5edd;color:#fff;padding:1.5rem;border-radius:20px;display:flex;flex-direction:column;gap:.75rem}.badge{font-weight:700;text-transform:uppercase;letter-spacing:1px}.north-star__metrics{display:flex;flex-wrap:wrap;gap:1rem;font-size:1.05rem}.pillars-section{background:#fff;border-radius:24px;padding:1.5rem;box-shadow:0 20px 50px #0f172a14}.pillars-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}.home-note{font-size:1rem;color:#475569;background:#94a3b826;padding:1.25rem 1.5rem;border-radius:18px}.roadmap-page{display:flex;flex-direction:column;gap:1.5rem}.roadmap-hero{background:linear-gradient(120deg,#0f5edd,#4f8ef1);border-radius:24px;padding:2rem;color:#fff;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.roadmap-hero__actions{display:flex;align-items:center;gap:.75rem}.settings-link{border:1px solid rgba(255,255,255,.6);border-radius:999px;padding:.35rem .8rem;color:#fff;text-decoration:none;font-weight:600}.settings-link:hover{background:#ffffff26}.eyebrow{text-transform:uppercase;letter-spacing:1.6px;font-size:.75rem;margin-bottom:.4rem;color:#ffffffd9}.range-pill{background:#ffffff26;padding:.75rem 1.25rem;border-radius:999px;font-weight:600}.timeline-controls{display:flex;flex-direction:column;gap:1.25rem;background:#fff;padding:1.5rem;border-radius:18px;box-shadow:0 12px 30px #0f172a14}.control-group{display:flex;flex-direction:column;gap:.6rem}.control-group label{font-size:.85rem;text-transform:uppercase;letter-spacing:1px;color:#64748b}.control-matrix{display:flex;flex-direction:column;gap:1rem}.control-matrix__row{display:flex;flex-wrap:wrap;gap:1rem}.control-matrix__cell{flex:1;min-width:220px;display:flex;flex-direction:column;gap:.5rem}.control-matrix__cell>label{font-size:.85rem;text-transform:uppercase;letter-spacing:1px;color:#64748b}.control-matrix__label-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.control-matrix__label-row label{font-size:.85rem;text-transform:uppercase;letter-spacing:1px;color:#64748b}.control-matrix__clear-btn{border:none;background:transparent;color:#0f5edd;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;padding:0}.control-matrix__clear-btn:disabled{color:#cbd5f5;cursor:not-allowed}.range-inputs{display:flex;align-items:center;gap:.5rem}.range-inputs input{flex:1;border-radius:10px;border:1px solid #cbd5f5;padding:.4rem .6rem;font-size:.95rem}.ghost-btn{border-radius:999px;border:1px solid #cbd5f5;background:transparent;padding:.4rem .9rem;cursor:pointer;transition:background .2s ease}.ghost-btn:hover{background:#0f5edd14}.ghost-btn:disabled{opacity:.55;cursor:not-allowed}.chip{border-radius:999px;border:1px solid #cbd5f5;padding:.35rem 1rem;background:#fff;cursor:pointer;font-size:.9rem}.chip-active{background:#0f5edd;border-color:#0f5edd;color:#fff}.chip-light{background:#0f5edd14}.multi-select{display:flex;flex-direction:column;gap:.35rem;width:100%;position:relative}.multi-select__label{font-size:.85rem;text-transform:uppercase;letter-spacing:1px;color:#64748b}.multi-select__field{border:1px solid rgba(148,163,184,.6);border-radius:14px;padding:.35rem .5rem;background:#fff;cursor:text;min-height:36px;transition:box-shadow .15s ease,border-color .15s ease}.multi-select__field--open{border-color:#0f5edd;box-shadow:0 0 0 1px #0f5edd33}.multi-select__field--disabled{background:#f8fafc}.multi-select__field input{border:none;outline:none;flex:1;min-width:140px;font-size:.9rem}.multi-select__chips{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}.multi-select__chip{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;background:#0f5edd1a;border:none;border-radius:999px;font-size:.85rem;cursor:pointer}.multi-select__dropdown{position:absolute;top:100%;left:0;right:0;margin-top:.35rem;background:#fff;border:1px solid rgba(148,163,184,.4);border-radius:14px;box-shadow:0 16px 40px #0f172a1f;max-height:240px;overflow-y:auto;z-index:10}.multi-select__option{width:100%;text-align:left;padding:.65rem .85rem;border:none;background:transparent;display:flex;justify-content:space-between;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem}.multi-select__option:hover{background:#0f5edd0f}.multi-select__option--active{background:#0f5edd1f;font-weight:600}.multi-select__option--empty{cursor:default;color:#94a3b8}.multi-select__option-meta{font-size:.8rem;color:#64748b}.multi-select__option-check{font-weight:600;color:#0f5edd}.multi-select__field--disabled{background:#f8fafc;cursor:not-allowed}.primary-btn{border-radius:999px;border:none;background:#0f5edd;color:#fff;font-weight:600;padding:.5rem 1.5rem;cursor:pointer}.primary-btn:disabled{opacity:.5;cursor:not-allowed}.actions-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.pending-indicator{font-size:.9rem;color:#475569}.zoom-options,.pillars,.domains{display:flex;flex-wrap:wrap;gap:.5rem}.impact-summary{background:#fff;border-radius:18px;padding:1.5rem;box-shadow:0 12px 30px #0f172a14}.impact-summary__header{display:flex;justify-content:space-between;align-items:baseline}.impact-summary__header h3{margin:0;font-size:1.25rem;font-weight:600;color:#0f172a}.impact-summary__header p{margin:.15rem 0 0;color:#475569;font-size:.95rem}.impact-summary__grid{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.impact-summary__filter{margin-top:.75rem;padding:.6rem .75rem;background:#3b82f614;border-radius:12px;font-size:.95rem;color:#1d4ed8}.impact-chip{background:#0f172a08;border-radius:16px;padding:1rem;display:flex;flex-direction:column;gap:.2rem;border:none;outline:none}.impact-chip--interactive{border:1px solid transparent;cursor:pointer;text-align:left;font:inherit;color:inherit;appearance:none;transition:background .2s ease,border-color .2s ease,transform .2s ease}.impact-chip--interactive:hover{background:#3b82f614;border-color:#3b82f64d}.impact-chip--active{background:#dbeafe;border-color:#1d4ed8;box-shadow:0 8px 20px #1e40af26}.impact-chip__value{font-size:1.5rem;font-weight:700}.impact-chip__metric{font-size:.95rem;color:#475569}.impact-chip__category{font-size:.8rem;text-transform:uppercase;color:#94a3b8}.helper-card{background:#fff;border-radius:18px;padding:1.25rem 1.5rem;box-shadow:0 10px 25px #0f172a14;display:flex;flex-direction:column;gap:.75rem;font-size:.95rem;color:#475569}.helper-card pre{background:#0f172a;color:#f8fafc;padding:.8rem 1rem;border-radius:12px;overflow-x:auto;font-size:.85rem}.governance-page{display:flex;flex-direction:column;gap:2rem}.governance-hero{background:#0f172a;color:#f8fafc;padding:1.75rem;border-radius:20px;box-shadow:0 12px 30px #0f172a4d}.governance-section{background:#fff;border-radius:18px;padding:1.5rem;box-shadow:0 12px 30px #0f172a14;display:flex;flex-direction:column;gap:1rem;min-height:70vh}.governance-table-wrapper{overflow-x:auto;overflow-y:auto;flex:1}.governance-table{width:100%;border-collapse:collapse;font-size:.95rem}.governance-table th,.governance-table td{padding:1rem;border-bottom:1px solid rgba(148,163,184,.3);text-align:left;vertical-align:top}.governance-table th{text-transform:uppercase;font-size:.82rem;letter-spacing:1px;color:#475569;position:relative}.governance-table__actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;align-items:center}.governance-table__paging{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;font-size:.9rem;color:#475569}.governance-table__page-size{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#475569}.governance-filter-trigger{background:transparent;border:none;padding:0;font:inherit;text-transform:uppercase;letter-spacing:1px;color:inherit;cursor:pointer}.governance-filter-trigger--active{color:#0f5edd}.governance-filter-panel{position:absolute;top:calc(100% + .5rem);left:0;z-index:10;background:#fff;border:1px solid rgba(148,163,184,.4);border-radius:12px;padding:.75rem;box-shadow:0 12px 24px #0f172a1f;min-width:220px;display:flex;flex-direction:column;gap:.75rem;text-transform:none;align-items:flex-start;text-align:left}.governance-filter-panel label{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem;color:#475569}.governance-filter-panel input[type=text],.governance-filter-panel input[type=date]{border:1px solid rgba(148,163,184,.5);border-radius:8px;padding:.4rem .6rem;font-size:.9rem}.governance-filter-list{display:flex;flex-direction:column;gap:.5rem;max-height:220px;overflow-y:auto;align-items:flex-start}.governance-filter-panel .governance-filter-option{display:flex;flex-direction:row;align-items:center;gap:.5rem;font-size:.85rem;color:#0f172a;text-align:left}.governance-filter-actions{display:flex;justify-content:flex-end}.domain-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.domain-card{border:1px solid rgba(148,163,184,.4);border-radius:16px;padding:1rem;background:#f8fafc;display:flex;flex-direction:column;gap:.5rem;text-align:left;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.domain-card:hover{border-color:#0f5edd;box-shadow:0 10px 20px #0f172a1a;transform:translateY(-2px);background:#fff}.domain-card--active{border-color:#0f5edd;box-shadow:0 12px 28px #0f172a26;background:#fff}.domain-card h3{margin:0;font-size:1.05rem;color:#0f172a}.domain-areas{margin:0;color:#475569;font-size:.9rem}.domain-card__hint{font-size:.8rem;color:#475569;margin-top:auto;text-transform:uppercase;letter-spacing:.05em}.domain-contacts{margin:0;font-size:.9rem;color:#0f172a}.okr-panel{margin-top:1.5rem;border:1px solid rgba(148,163,184,.4);border-radius:20px;padding:1.5rem;background:#f8fafc;display:flex;flex-direction:column;gap:1.5rem}.okr-panel__header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem}.okr-panel__header-text{display:flex;flex-direction:column;gap:.25rem}.okr-panel__header-text h3{margin:0;font-size:1.5rem;line-height:1.3;color:#0f172a}.okr-panel__header-text p{margin:0;color:#0f172a;line-height:1.4}.okr-objectives{display:flex;flex-direction:column;gap:1rem}.okr-objective{background:#fff;border-radius:16px;padding:1.25rem;box-shadow:0 12px 25px #0f172a14;display:flex;flex-direction:column;gap:1rem}.okr-objective__title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.okr-objective__label{margin:0;font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;color:#475569}.okr-objective__summary{margin:0;color:#475569;line-height:1.5}.okr-key-result__header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.okr-card-actions{display:flex;align-items:center;gap:.5rem}.icon-btn{border:1px solid rgba(148,163,184,.7);background:#fff;border-radius:999px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:.95rem;transition:border-color .15s ease,box-shadow .15s ease}.icon-btn:hover{border-color:#0f5edd;box-shadow:0 0 0 2px #0f5edd1a}.okr-field{display:flex;flex-direction:column;gap:.4rem}.okr-field span{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:#475569}.okr-field textarea,.okr-field input[type=text],.okr-field input[type=month]{border-radius:12px;border:1px solid #cbd5f5;padding:.45rem .6rem;font-size:.95rem;background:#fff}.okr-key-results{display:flex;flex-direction:column;gap:1rem;border-top:1px solid #e2e8f0;padding-top:1rem}.okr-key-result{border:1px dashed rgba(148,163,184,.8);border-radius:14px;padding:1rem;display:flex;flex-direction:column;gap:.75rem;background:#f8fafc}.okr-key-result--editing{border-style:solid;background:#fff;box-shadow:0 10px 25px #0f172a14}.okr-key-result__label{margin:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#475569}.okr-key-result__meta{margin:.2rem 0 0;font-size:.85rem;color:#475569}.okr-results{display:flex;flex-direction:column;gap:.75rem}.okr-results__rows{display:flex;flex-direction:column;gap:.5rem}.okr-results__row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.okr-results__row input[type=text]{flex:1;min-width:220px}.okr-editor-panel{display:flex;flex-direction:column;gap:.75rem}.okr-key-result__markdown{font-size:.9rem;color:#0f172a;white-space:pre-line}.okr-key-result__markdown p{margin:.25rem 0}.okr-key-result__results ul{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:.25rem}.okr-key-result__results li{color:#475569;font-size:.9rem}.okr-key-result__results strong{color:#0f172a}.project-form{background:#fff;border-radius:20px;padding:1.75rem;box-shadow:0 12px 30px #0f172a14;display:flex;flex-direction:column;gap:1rem}.project-form header h3{margin:0}.project-form__layout{display:flex;flex-direction:column;gap:1rem}.project-form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;align-items:start}.project-form__grid--two{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.project-form__divider{height:1px;background:#e2e8f0;margin:.5rem 0 1rem}.pillars-picker{display:flex;flex-direction:column;gap:.5rem}.risk-section{display:flex;flex-direction:column;gap:1rem}.risk-levels>span{display:block;margin-bottom:.4rem;font-weight:600}.risk-notes__editor{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.risk-note-row{display:flex;gap:.5rem;flex-wrap:wrap}.risk-note-row input{flex:1;min-width:220px;border-radius:10px;border:1px solid #cbd5f5;padding:.4rem .6rem}.pillars-picker{margin-top:.5rem;display:flex;flex-direction:column;gap:.5rem}.project-meta-chips{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.priority-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;border-radius:999px;border:2px solid #f97316;color:#9a3412;font-weight:600;text-transform:uppercase;font-size:.8rem;background:#f973161a}.completed-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;border-radius:999px;border:2px solid #22c55e;color:#166534;font-weight:600;text-transform:uppercase;font-size:.8rem;background:#22c55e1a}.readonly-pillars{display:flex;flex-direction:column;gap:.4rem}.pillars__label{font-size:.8rem;text-transform:uppercase;letter-spacing:1px;color:#94a3b8}.pillars__chips{display:flex;flex-wrap:wrap;gap:.4rem}.readonly-pillars .chip-light{background:#0f172a0d;border:none}.project-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;color:#475569}.chip__label{display:block}.chip__subtext{display:block;font-size:.7rem;text-transform:none;color:#0f172acc}.priority-toggle{border:1px solid rgba(148,163,184,.4);border-radius:16px;padding:.75rem 1rem;background:#f8fafc}.priority-toggle__content{display:flex;align-items:center;gap:.4rem;font-weight:600;color:#0f172a}.priority-toggle__content input{width:1rem;height:1rem}.priority-toggle__hint{font-size:.85rem;color:#0f5edd;cursor:help}.priority-toggle__copy{margin:0;font-size:.85rem;color:#475569}.project-form input,.project-form select,.project-form textarea{border-radius:12px;border:1px solid rgba(148,163,184,.6);padding:.6rem .75rem;font-size:.95rem;background:#f8fafc}.project-form textarea{resize:vertical}[data-error-field]{scroll-margin-top:140px}.input-error,.project-form select.input-error{border-color:#f87171!important;background:#fef2f2}.form-error-text{color:#dc2626;font-size:.85rem;margin-top:.25rem}.chip-group{border-radius:14px}.chip-group--error{border:1px solid #fca5a5;background:#fff1f2;padding:.5rem}.project-form-panel{background:#fff;border-radius:18px;padding:1.25rem 1.5rem;box-shadow:0 12px 30px #0f172a14;margin-bottom:1.5rem}.project-form-panel__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.project-form-panel__header h3{margin-bottom:.2rem}.project-form-panel__header p{color:#475569}.project-raci-section{border:1px solid rgba(148,163,184,.35);border-radius:18px;padding:1rem;background:#f8fafc;display:flex;flex-direction:column;gap:1rem}.project-raci-section__header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.raci-chip-group{flex-wrap:wrap}.project-raci-display{border:1px solid rgba(148,163,184,.35);border-radius:18px;padding:1rem;background:#fff;display:flex;flex-direction:column;gap:.8rem}.project-raci-display__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.project-form__impacts{display:flex;flex-direction:column;gap:.75rem}.impacts-header{display:flex;justify-content:space-between;align-items:center}.impact-row{display:flex;flex-direction:column;gap:.85rem;padding:1rem;border:1px solid rgba(148,163,184,.4);border-radius:16px;background:#f8fafc}.impact-row__top,.impact-row__bottom{display:grid;gap:.75rem}.impact-row__top{grid-template-columns:minmax(230px,2fr) repeat(auto-fit,minmax(140px,1fr))}.impact-row__bottom{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end}.impact-row__remove{justify-self:start;align-self:end}.project-form .actions-row{margin-top:1rem}.subprojects-section{display:flex;flex-direction:column;gap:.75rem}.subprojects-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.subprojects-header h4{margin:0;font-size:1rem}.subprojects-header p{margin:.25rem 0 0;color:#64748b;font-size:.85rem}.subprojects-grid{display:grid;gap:.75rem}.subproject-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:.75rem;align-items:end}.subproject-row label{display:flex;flex-direction:column;gap:.35rem}.roadmap-timeline{background:#fff;border-radius:20px;padding:1.5rem;box-shadow:0 12px 30px #0f172a14;overflow-x:visible}.timeline-scroll{overflow-x:auto}.timeline-header{display:flex;gap:0;border-bottom:1px solid rgba(15,23,42,.08);min-width:100%}.timeline-legend{display:flex;gap:1rem;margin-bottom:1rem;align-items:center;flex-wrap:wrap;justify-content:space-between}.timeline-legend__left{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.timeline-legend__actions{display:flex;align-items:center;justify-content:flex-end;margin-left:auto}.timeline-legend__item{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:#475569}.timeline-legend__swatch{width:14px;height:14px;border-radius:999px}.timeline-legend__swatch--priority{background:transparent;border:2px solid #f97316;box-shadow:inset 0 0 0 1px #f9731666}.timeline-segment{flex:1;min-width:110px;text-align:center;padding-bottom:.75rem;font-size:.9rem;color:#475569}.timeline-rows{margin-top:1rem;display:flex;flex-direction:column;gap:1rem}.timeline-row{display:flex;gap:1rem;align-items:flex-start}.timeline-row__label{flex:0 0 auto;font-weight:600;color:#1e293b}.timeline-row__bars{position:relative;min-height:70px}.timeline-bar{position:absolute;top:5px;min-height:56px;height:auto;border:none;border-radius:14px;color:#0f172a;padding:.5rem .75rem;text-align:left;display:flex;flex-direction:column;gap:.25rem;cursor:pointer;box-shadow:0 10px 25px #0f172a1f}.timeline-bar[role=button]:focus-visible{outline:2px solid rgba(15,23,42,.6);outline-offset:2px}.timeline-bar--completed{opacity:.45;filter:grayscale(.2)}.timeline-bar--priority{box-shadow:0 0 0 3px #f97316,0 10px 25px #0f172a1f;transform:translateZ(0)}.timeline-capture-area--export .timeline-bar--priority{border:3px solid #f97316;box-shadow:0 10px 25px #0f172a1f;box-sizing:border-box}.timeline-bar__name{display:flex;align-items:center;gap:.3rem}.timeline-bar__name-text{font-weight:600;font-size:.86rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.timeline-bar__dates{font-size:.75rem;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-bar__toggle{border:none;background:#0f172a14;color:inherit;font-size:.7rem;font-weight:700;width:18px;height:18px;line-height:1;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:0 0 auto}.timeline-bar__toggle:focus-visible{outline:2px solid rgba(15,23,42,.6);outline-offset:2px}.timeline-bar--subproject{color:#fff;box-shadow:0 0 0 2px #0f172a14,0 6px 14px #0f172a1f;opacity:.9}.timeline-bar--subproject[role=button]{cursor:pointer}.timeline-bar--subproject-bar{display:flex;align-items:center;border-radius:8px}.timeline-bar__subproject-label{position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);color:#0f172a;font-weight:600;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px;pointer-events:none}.timeline-bar__parent{font-size:.7rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roadmap-empty,.loading-panel,.error-banner,.error-state{background:#fff;padding:1rem 1.5rem;border-radius:16px;box-shadow:0 12px 30px #0f172a14}.error-banner{border-left:4px solid #ef4444;color:#b91c1c}.error-state{text-align:center;display:flex;flex-direction:column;gap:.8rem}.project-details{display:flex;flex-direction:column;gap:1rem;background:#fff;padding:2rem;border-radius:20px;box-shadow:0 12px 30px #0f172a14}.project-details--drawer{height:100%;max-height:100%;overflow-y:auto;border-radius:0;box-shadow:none;padding:1.5rem}.project-details__summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}.project-details__summary-label{display:block;color:#64748b;font-size:.8rem;margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.08em}.project-details__summary-value{font-weight:600;color:#0f172a}.project-details__close{align-self:flex-start}.project-details header{display:flex;flex-direction:column;gap:.2rem}.project-header__top{display:flex;justify-content:space-between;align-items:center;gap:1rem}.project-header__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.project-header__title-row h1{margin:0;flex:1}.project-size-badge{width:36px;height:36px;border-radius:8px;background:#0f5edd;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;line-height:1;flex:0 0 auto}.project-header__actions{display:inline-flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:flex-end}.project-priority-control{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;font-weight:600;color:#475569;cursor:pointer}.project-priority-control input{width:1rem;height:1rem}.project-priority-hint{position:relative;display:inline-flex}.project-priority-control__hint{font-size:.95rem;color:#0f5edd;cursor:pointer;border:none;background:transparent;line-height:1;padding:0}.project-priority-control--disabled{opacity:.75;cursor:default}.project-priority-control--disabled input{cursor:not-allowed}.project-actions-row{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:.75rem;width:100%}.project-actions-row>button{width:100%;justify-content:center}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:#fff;border-radius:14px;padding:1.25rem 1.5rem;width:min(420px,100%);box-shadow:0 12px 30px #0f172a24;display:flex;flex-direction:column;gap:.75rem}.modal h4{margin:0}.modal p{margin:0;color:#475569}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.danger-btn{color:#b91c1c;border-color:#fecdd3;background:#fff1f2}.danger-btn:hover{background:#ffe4e6}.project-priority-tooltip{position:absolute;top:120%;right:0;width:220px;background:#0f172a;color:#f8fafc;padding:.6rem .75rem;border-radius:10px;font-size:.8rem;box-shadow:0 10px 25px #0f172a33;z-index:5}.project-priority-tooltip:after{content:"";position:absolute;top:-6px;right:10px;width:10px;height:10px;background:#0f172a;transform:rotate(45deg)}.settings-page{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem}.settings-page__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.settings-card{background:#fff;border-radius:18px;padding:1.25rem;box-shadow:0 12px 30px #0f172a14;display:flex;flex-direction:column;gap:1rem}.settings-card__header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.role-editor{display:flex;flex-direction:column;gap:.75rem}.role-editor__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.5rem;align-items:center}.role-editor__row input{border-radius:10px;border:1px solid rgba(148,163,184,.6);padding:.45rem .6rem}.role-editor__actions{display:flex;gap:.5rem;justify-content:flex-end}.role-editor__create{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.5rem;align-items:center}.settings-footnote{font-size:.85rem;color:#475569}.project-details header .eyebrow{color:#94a3b8;letter-spacing:1.2px}.project-details header h1{margin:0;font-size:2rem;font-weight:700;color:#0f172a}.project-details header p{margin:0;color:#475569;font-size:.95rem}.project-description{font-size:1rem;color:#475569;line-height:1.6}.project-description p{margin:0 0 .75rem}.project-description ul,.project-description ol{margin:0 0 .75rem 1.25rem;padding-left:1.25rem}.project-description li{margin-bottom:.35rem}.project-impacts h3{margin-bottom:.75rem}.project-risks{background:#0f172a08;padding:1rem;border-radius:12px;margin:1rem 0}.project-risks h3{margin:0 0 .4rem;font-size:1.1rem;font-weight:600;color:#0f172a}.project-risks p{margin:.4rem 0;color:#475569}.project-risks ul{margin:.5rem 0 0 1.25rem;list-style:disc}.project-readiness{background:#0f172a05;padding:1rem;border-radius:12px;margin:.5rem 0 1rem}.project-drawer-container{position:fixed;inset:0;display:flex;justify-content:flex-end;z-index:2000;pointer-events:none}.project-drawer-overlay{position:absolute;inset:0;background:#0f172a73;opacity:0;transition:opacity .2s ease;pointer-events:none}.project-drawer{position:relative;width:min(720px,100%);height:100%;background:#fff;box-shadow:-12px 0 30px #0f172a33;transform:translate(100%);transition:transform .25s ease;display:flex;flex-direction:column;overflow-y:auto;pointer-events:auto}.project-drawer-open{pointer-events:auto}.project-drawer-open .project-drawer-overlay{opacity:1;pointer-events:auto}.project-drawer-open .project-drawer-overlay{opacity:1}.project-drawer-open .project-drawer{transform:translate(0)}.loading-panel{text-align:center}.metrics-page{display:flex;flex-direction:column;gap:1.5rem}.metrics-hero{background:linear-gradient(120deg,#312e81,#6366f1);border-radius:26px;padding:2rem;color:#fff;display:flex;justify-content:space-between;gap:1rem}.metrics-period-label{font-weight:600;margin-top:.5rem}.metrics-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;background:#fff;border-radius:18px;padding:1.5rem;box-shadow:0 15px 35px #0f172a14;align-items:flex-start;grid-template-areas:"period period period period" "scenario country actions actions"}@media(max-width:1100px){.metrics-controls{grid-template-areas:"period period" "scenario country" "actions actions"}}@media(max-width:640px){.metrics-controls{grid-template-areas:"period" "scenario" "country" "actions"}}.control-group--period{grid-area:period}.control-group--scenario{grid-area:scenario}.control-group--country{grid-area:country}.control-group--actions{grid-area:actions}.scenario-toggle{display:flex;gap:.8rem;flex-wrap:wrap}.scenario-toggle .chip{align-items:flex-start;display:flex;flex-direction:column;gap:.15rem}.scenario-toggle small{font-size:.7rem;color:inherit;opacity:.8}.country-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.metrics-table-wrapper{background:#fff;border-radius:20px;padding:0;box-shadow:0 18px 40px #0f172a14;overflow-x:auto}.metrics-table{border-collapse:collapse;min-width:calc(160px + 420px + 6 * var(--metric-month-width));table-layout:fixed}.metrics-table__col-domain{width:160px}.metrics-table__col-metric{min-width:300px}.metrics-table__col-month{min-width:var(--metric-month-width)}.metrics-table th:nth-child(2),.metrics-table td:nth-child(2){width:420px}.metrics-table th{text-align:left;padding:1rem;font-size:.85rem;text-transform:uppercase;letter-spacing:1px;color:#94a3b8;border-bottom:1px solid rgba(15,23,42,.1)}.metrics-table td{padding:.85rem 1rem;border-bottom:1px solid rgba(15,23,42,.06)}.domain-row td{background:#0f172a0a;font-weight:700;letter-spacing:.6px;text-transform:uppercase}.domain-cell{width:160px;font-weight:600;color:#334155}.metric-cell{width:420px;font-weight:500}.metric-value{text-align:right;font-variant-numeric:tabular-nums;color:#0f172a}.metric-value--variant{background:#bbf7d0}.metric-value--variant input{background:#ffffffd9;border-color:#15803d;box-shadow:none}.metric-value input{width:100%;border:1px solid rgba(148,163,184,.6);border-radius:12px;padding:.5rem .75rem;font-size:.95rem;font-variant-numeric:tabular-nums;background:#f8fafc;min-height:42px}.metric-value input:disabled{background:#e2e8f0;color:#94a3b8;border-color:#cbd5f5;cursor:not-allowed}.metric-row--incremental td{background:#4f46e514;font-weight:600}.success-banner{background:#ecfdf5;border-left:4px solid #059669;color:#065f46;padding:.75rem 1rem;border-radius:14px;box-shadow:0 8px 20px #055f4626}.empty-copy{color:#64748b;font-size:.92rem}.muted-copy{color:#94a3b8;font-size:.82rem}@media(max-width:900px){.app-header{flex-direction:column;gap:.5rem}.timeline-row{flex-direction:column}.timeline-row__label{width:auto}}
