:root{
  color-scheme:light;
  --topbar:64px;--tabs:54px;
  --canvas:#fffdf7;--surface:#fffefa;--surface-soft:#fffaf3;--surface-raised:#ffffff;
  --ink:#332924;--muted:#74645c;--faint:#9d8b81;--line:#eadfd3;--line-strong:#d9c5b2;
  --accent:#b96f47;--accent-strong:#955235;--accent-soft:#f5dfcf;--accent-text:#ffffff;
  --sidebar:#fbf7ee;--sidebar-ink:#3f3029;--sidebar-muted:#806d62;--sidebar-hover:#f5e9dc;
  --blue:#2f80c4;--blue-soft:#dceefe;--red:#c94858;--red-soft:#ffdfe2;
  --yellow:#a97800;--yellow-soft:#fff1b8;--green:#267354;--green-soft:#d9f1e5;
  --shadow:0 10px 28px rgba(65,42,31,.09);--radius:12px;
  font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--canvas);color:var(--ink);font-family:inherit;overflow:hidden}
body.intro-open{touch-action:none}
button,input,textarea,select{font:inherit}
button{min-height:36px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);padding:.48rem .78rem;border-radius:8px;cursor:pointer;font-size:.76rem;font-weight:700;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}
button:hover{border-color:var(--accent);box-shadow:0 4px 12px rgba(52,35,31,.09);transform:translateY(-1px)}
button.active,button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--yellow-soft);outline-offset:2px}
.hidden{display:none!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.eyebrow{margin:0 0 .35rem;color:var(--accent);text-transform:uppercase;letter-spacing:.13em;font-size:.64rem;font-weight:850}.fine,.empty{font-size:.75rem;color:var(--muted)}

.avatar{width:32px;height:32px;flex:0 0 32px;display:inline-grid;place-items:center;overflow:hidden;border-radius:50%;border:2px solid var(--surface);background:var(--blue-soft);color:var(--blue);box-shadow:0 0 0 1px var(--line);font-size:.58rem;font-weight:850}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.red{background:var(--red-soft);color:var(--red)}.avatar.mustard{background:var(--yellow-soft);color:var(--yellow)}.avatar.copper{background:var(--accent-soft);color:var(--accent)}.avatar-group{display:flex}.avatar-group .avatar+.avatar{margin-left:-8px}
.profile-pill{display:flex;align-items:center;gap:.6rem;padding:.45rem .2rem;color:var(--sidebar-ink);font-size:.7rem;font-weight:700}.profile-pill .avatar{border-color:var(--sidebar);box-shadow:0 0 0 1px var(--line-strong)}

.intro-hero{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:hidden;background:#fff;cursor:pointer;opacity:0;transform:translateY(0);transition:opacity .18s ease,transform .34s cubic-bezier(.7,0,.2,1)}
.intro-hero[hidden]{display:none}.intro-hero.intro-visible{opacity:1}.intro-hero.intro-leaving{opacity:0;transform:translateY(-102%)}
.intro-hero-inner{display:grid;justify-items:center;width:min(940px,94vw);padding:2rem;text-align:center}
.intro-logo{width:clamp(290px,35vw,440px);height:clamp(290px,35vw,440px);display:grid;place-items:center;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.intro-logo:hover{border:0;box-shadow:none;transform:scale(1.012)}.intro-logo:focus-visible{outline:0;box-shadow:none}.intro-logo:focus-visible img{filter:drop-shadow(0 0 10px rgba(185,111,71,.34)) drop-shadow(0 14px 28px rgba(185,111,71,.14))}.intro-logo img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 28px rgba(185,111,71,.14))}
.intro-title{margin:1.55rem 0 0;padding-left:.38em;color:var(--accent);font-size:clamp(3rem,7.7vw,6.5rem);font-weight:400;line-height:.96;letter-spacing:.38em;text-transform:uppercase}

.vault-screen{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:var(--canvas)}
.vault-card{width:min(640px,94vw);display:grid;justify-items:center;padding:1.5rem;border:0;border-radius:0;background:transparent;box-shadow:none;text-align:center}.vault-mark{display:grid;place-items:center;width:clamp(210px,24vw,300px);height:clamp(210px,24vw,300px);border:0;background:transparent}.vault-mark img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(185,111,71,.11))}.vault-card h1{margin:1rem 0 0;padding-left:.3em;color:var(--accent);font-size:clamp(2.5rem,5.2vw,4rem);font-weight:400;line-height:1;letter-spacing:.3em}.vault-card form{width:min(390px,82vw);display:grid;justify-items:center;margin-top:2.2rem}.vault-card input{width:100%;padding:.75rem .2rem;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--accent);border-radius:0;text-align:center;font-size:1rem;letter-spacing:.04em}.vault-card input::placeholder{color:var(--faint)}.vault-card input:focus-visible{outline:0;border-bottom-color:var(--accent-strong);box-shadow:0 1px 0 var(--accent-strong)}.vault-card button{width:auto;min-height:34px;margin-top:.8rem;padding:.35rem .15rem;border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;color:var(--accent);font-size:.68rem;font-weight:780;letter-spacing:.14em;text-transform:uppercase;box-shadow:none}.vault-card button:hover{border-bottom-color:var(--accent);background:transparent;box-shadow:none;transform:none}.vault-card .fine{margin:1.4rem 0 0}.vault-card #vault-message{min-height:1.2em;margin:.8rem 0 0;color:var(--muted);font-size:.74rem}

.app{height:100vh;display:grid;grid-template-columns:228px minmax(0,1fr) 296px;grid-template-rows:var(--topbar) minmax(0,1fr);overflow:hidden;background:var(--canvas)}
.topbar{z-index:30;grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1rem;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(16px)}
.brand-lockup{display:flex;align-items:center;gap:.72rem;min-width:0}.mini-sigil{display:grid;place-items:center;width:34px;height:44px;flex:0 0 34px;padding:2px;border:1px solid var(--accent);border-radius:9px;background:#fff;box-shadow:inset 0 0 0 2px #fff,0 2px 8px rgba(65,42,31,.08);overflow:hidden}.mini-sigil img{width:29px;height:36px;object-fit:contain}.wordmark{color:var(--ink);font-weight:780;letter-spacing:.13em}.actions{display:flex;align-items:center;gap:.48rem;flex-wrap:wrap}.saved{padding:.38rem .6rem;border-radius:999px;background:var(--green-soft);color:var(--green);font-size:.66rem;font-weight:850}

.sidebar,.detail{min-height:0;overflow-y:auto}.sidebar{grid-column:1;grid-row:2;padding:1rem;background:var(--sidebar);color:var(--sidebar-ink);border-right:1px solid var(--line)}.sidebar>.eyebrow{margin-top:1.35rem;color:var(--sidebar-muted)}.detail{grid-column:3;grid-row:2;padding:1.1rem;background:var(--surface);border-left:1px solid var(--line)}.detail .eyebrow{color:var(--accent)}
.project-item{padding:.68rem .72rem;border-radius:8px;color:var(--sidebar-muted);cursor:pointer;margin-bottom:.25rem;font-size:.76rem;font-weight:680}.project-item:hover{background:var(--sidebar-hover);color:var(--sidebar-ink)}.project-item.active{background:var(--sidebar-hover);color:var(--sidebar-ink);box-shadow:inset 3px 0 0 var(--yellow)}.wide{width:100%;margin-top:.75rem;background:var(--surface);color:var(--accent-strong);border-color:var(--line-strong)}.security-card{display:grid;gap:.25rem;margin-top:1.5rem;padding:.82rem;border:1px solid #b8dbc7;background:var(--green-soft);border-radius:10px;font-size:.7rem}.security-card span{color:var(--green)}

main{grid-column:2;grid-row:2;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;background:var(--canvas);scroll-snap-type:y mandatory;scroll-padding-top:var(--tabs);overscroll-behavior-y:contain;scroll-behavior:smooth}
.view-tabs{position:sticky;top:0;z-index:20;min-height:var(--tabs);display:flex;align-items:center;gap:.18rem;padding:.58rem 1.1rem;overflow-x:auto;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 95%,transparent);backdrop-filter:blur(14px);scrollbar-width:none}.view-tabs::-webkit-scrollbar{display:none}.view-tabs button{min-height:32px;padding:.4rem .68rem;white-space:nowrap;border-color:transparent;background:transparent;color:var(--muted)}.view-tabs button:hover{background:var(--surface-soft);border-color:var(--line);transform:none;box-shadow:none}.view-tabs button.active{background:var(--accent-soft);border-color:transparent;color:var(--accent)}
.workspace-view{min-height:calc(100vh - var(--topbar) - var(--tabs));scroll-snap-align:start;scroll-snap-stop:always;padding:1.25rem 1.35rem 1.5rem;display:flex;flex-direction:column}.workspace-view+.workspace-view{border-top:1px solid var(--line)}
.hero{display:flex;align-items:flex-end;justify-content:space-between;gap:1.1rem;flex:0 0 auto}.hero h2{color:var(--ink);font-size:clamp(1.35rem,2.5vw,1.9rem);line-height:1.12;margin:.15rem 0}.hero p{color:var(--muted);max-width:720px;margin:.3rem 0;font-size:.82rem;line-height:1.45}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem;margin:1rem 0}.stat{min-height:82px;display:flex;flex-direction:column;justify-content:space-between;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.85rem}.stat:nth-child(1){border-top:4px solid var(--blue)}.stat:nth-child(2){border-top:4px solid var(--yellow)}.stat:nth-child(3){border-top:4px solid var(--accent)}.stat:nth-child(4){border-top:4px solid var(--red)}.stat strong{color:var(--ink);font-size:1.45rem}.stat span{font-size:.68rem;color:var(--muted);font-weight:700}
.board{display:grid;grid-template-columns:repeat(3,minmax(210px,1fr));gap:.75rem;overflow-x:auto;flex:1;min-height:350px}.column{min-height:350px;background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius);padding:.72rem}.column-head{display:flex;justify-content:space-between;padding:.18rem .18rem .7rem;text-transform:uppercase;letter-spacing:.09em;font-size:.66rem;color:var(--muted);font-weight:850}.column:nth-child(1) .column-head{color:var(--blue)}.column:nth-child(2) .column-head{color:var(--yellow)}.column:nth-child(3) .column-head{color:var(--green)}
.task{background:var(--surface-raised);border:1px solid var(--line);border-radius:9px;padding:.78rem;margin:.55rem 0;cursor:pointer;box-shadow:0 2px 8px rgba(40,30,24,.04)}.task:hover,.task.selected{border-color:var(--accent);box-shadow:0 5px 15px rgba(40,30,24,.09)}.task h4{color:var(--ink);margin:0 0 .35rem;font-size:.84rem}.task p,.detail p{color:var(--muted);font-size:.72rem;line-height:1.45}.task-actions{display:flex;justify-content:space-between;margin-top:.65rem}.task-actions button{min-width:34px;min-height:28px;padding:.15rem .45rem}.comment{padding:.7rem 0;border-top:1px solid var(--line)}.comment strong{font-size:.7rem}.comment span{display:block;color:var(--muted);font-size:.66rem}.comment-form textarea{width:100%;min-height:78px;background:var(--surface-soft);color:var(--ink);border:1px solid var(--line-strong);border-radius:9px;padding:.65rem;margin:.5rem 0}

.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(210px,1fr));gap:.75rem;margin-top:1rem;align-content:start}.dashboard-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.85rem;box-shadow:0 3px 12px rgba(40,30,24,.04)}.dashboard-panel:nth-child(3n+1){border-top:4px solid var(--red)}.dashboard-panel:nth-child(3n+2){border-top:4px solid var(--blue)}.dashboard-panel:nth-child(3n+3){border-top:4px solid var(--yellow)}.record-list{display:grid;gap:.52rem}.record{padding:.7rem;background:var(--surface-soft);border:1px solid var(--line);border-radius:9px}.record strong{display:block;color:var(--ink);font-size:.79rem}.record span{color:var(--muted);font-size:.67rem}.badge{display:inline-block!important;width:fit-content;padding:.22rem .5rem;border-radius:999px;background:var(--accent-soft);color:var(--accent)!important;margin-top:.4rem;font-weight:800}.badge.critical,.badge.high,.badge.open,.badge.failed,.badge.rejected{background:var(--red-soft);color:var(--red)!important}.badge.medium,.badge.active,.badge.running,.badge.inconclusive{background:var(--yellow-soft);color:var(--yellow)!important}.badge.low,.badge.planned,.badge.queued,.badge.deferred{background:var(--blue-soft);color:var(--blue)!important}.badge.approved,.badge.verified,.badge.complete,.badge.passed{background:var(--green-soft);color:var(--green)!important}

.search-bar{display:grid;grid-template-columns:1fr 210px;gap:.65rem;margin:1rem 0}.search-bar input,.search-bar select,#record-fields input,#record-fields textarea,#record-fields select,.team-form input,.team-form select{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);border-radius:8px;padding:.72rem .82rem}.search-bar input{width:100%}
dialog{border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);width:min(520px,92vw);box-shadow:var(--shadow)}dialog::backdrop{background:rgba(20,14,12,.45);backdrop-filter:blur(3px)}dialog h3{color:var(--ink)}dialog form,#record-fields{display:grid;gap:.9rem;padding:.5rem}dialog label,.team-form label{display:grid;gap:.38rem;color:var(--ink);font-size:.74rem;font-weight:700}dialog input,dialog textarea,dialog select{background:var(--surface-soft);color:var(--ink);border:1px solid var(--line-strong);border-radius:8px;padding:.68rem .78rem}dialog textarea,#record-fields textarea{min-height:100px}.dialog-actions{display:flex;justify-content:flex-end;gap:.5rem}.team-form{display:grid;gap:.7rem}code{color:var(--accent);background:var(--accent-soft);padding:.1rem .3rem;border-radius:5px}

.product-preview{justify-content:flex-start}.stage-badge{align-self:flex-start;padding:.42rem .68rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.66rem;font-weight:850;white-space:nowrap}.architecture-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin:1.15rem 0}.architecture-card{min-height:235px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.05rem;box-shadow:0 3px 12px rgba(40,30,24,.04)}.architecture-card:nth-child(1){border-top:5px solid var(--blue)}.architecture-card:nth-child(2){border-top:5px solid var(--yellow)}.architecture-card:nth-child(3){border-top:5px solid var(--green)}.card-index{color:var(--faint);font-size:.64rem;font-weight:850;letter-spacing:.12em}.architecture-card h3{margin:1.25rem 0 .45rem;color:var(--ink);font-size:1rem}.architecture-card p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.55}.architecture-state{margin-top:auto;padding-top:1rem;color:var(--accent);font-size:.66rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.decision-note{display:flex;align-items:center;gap:.75rem;margin-top:auto;padding:.8rem .9rem;background:var(--blue-soft);border:1px solid color-mix(in srgb,var(--blue) 35%,var(--line));border-radius:10px;color:var(--ink);font-size:.72rem}.decision-note strong{white-space:nowrap;color:var(--blue)}.decision-note span{color:var(--muted)}.decision-note.caution{background:var(--yellow-soft);border-color:color-mix(in srgb,var(--yellow) 35%,var(--line))}.decision-note.caution strong{color:var(--yellow)}

@media(max-width:1180px){.app{grid-template-columns:200px minmax(0,1fr)}.detail{display:none}.dashboard-grid{grid-template-columns:repeat(2,minmax(210px,1fr))}.architecture-card{min-height:250px}}
@media(max-width:820px){:root{--topbar:60px;--tabs:50px}.app{grid-template-columns:1fr;grid-template-rows:var(--topbar) 58px minmax(0,1fr)}.topbar{grid-column:1;grid-row:1;padding:.55rem .75rem}.topbar .avatar-group,.topbar .actions button:not(#lock-button),.saved{display:none}.sidebar{grid-column:1;grid-row:2;display:flex;align-items:center;gap:.55rem;padding:.5rem .72rem;overflow-x:auto;border:0;border-bottom:1px solid var(--line)}.sidebar .profile-pill,.sidebar>.eyebrow,.sidebar .wide,.sidebar .security-card{display:none}#project-list{display:flex;gap:.3rem}.project-item{margin:0;white-space:nowrap;padding:.55rem .7rem}.project-item.active{box-shadow:inset 0 -3px 0 var(--yellow)}main{grid-column:1;grid-row:3}.workspace-view{min-height:calc(100vh - var(--topbar) - 58px - var(--tabs));padding:1rem}.stats{grid-template-columns:repeat(2,1fr)}.board{grid-template-columns:repeat(3,82vw)}.dashboard-grid,.architecture-grid,.search-bar{grid-template-columns:1fr}.architecture-card{min-height:190px}.hero{align-items:flex-start;flex-direction:column}.decision-note{align-items:flex-start;flex-direction:column}.wordmark{font-size:.88rem}.intro-title{letter-spacing:.2em;padding-left:.2em}}
@media(max-width:480px){.brand-lockup{gap:.5rem}.mini-sigil{width:30px;height:40px;flex-basis:30px;border-radius:8px}.mini-sigil img{width:26px;height:33px}.topbar #lock-button{min-height:32px;padding:.35rem .55rem}.view-tabs{padding:.5rem .7rem}.workspace-view{padding:.85rem}.stats{gap:.5rem}.stat{min-height:72px}.architecture-card{min-height:175px}.intro-logo{width:clamp(230px,70vw,310px);height:clamp(230px,70vw,310px)}.intro-title{font-size:clamp(2.45rem,12vw,3.35rem);font-weight:400;letter-spacing:.23em;padding-left:.23em}.vault-screen{padding:1rem}.vault-card{padding:.5rem}.vault-mark{width:clamp(190px,58vw,250px);height:clamp(190px,58vw,250px)}.vault-card h1{font-size:clamp(2.2rem,10vw,3rem);letter-spacing:.22em;padding-left:.22em}.vault-card form{margin-top:1.7rem}}
@media(prefers-reduced-motion:reduce){html,main{scroll-behavior:auto!important}*,*::before,*::after{transition:none!important}}
@media(forced-colors:active){button,.record,.task,.dashboard-panel,.stat,.architecture-card{border:1px solid ButtonText}}
