[hidden]{display:none!important}
:root{font-family:Inter,"Segoe UI",Arial,sans-serif;background:#edf1e9;color:#183b31;font-size:15px;--green:#133d32;--deep:#0e2e26;--gold:#b59257;--paper:#f9f8f3;--muted:#61766c;--border:#dae2d8;--ink:#1b332b}*{box-sizing:border-box}html,body{margin:0;min-height:100%;}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.54}input,select,textarea{border:1px solid #c7d1c6;border-radius:10px;padding:11px 13px;background:#fff;color:var(--ink);width:100%;max-width:100%}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #ad955e;outline-offset:2px}textarea{min-height:90px;resize:vertical}label{font-weight:600;font-size:13px;display:flex;flex-direction:column;gap:6px;margin-bottom:16px}p{line-height:1.55}.eyebrow{color:var(--muted);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.auth-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#cad9ce,#eef0e9)}.auth-card{width:min(92vw,430px);background:var(--paper);padding:35px;border:1px solid var(--border);border-radius:24px;box-shadow:0 24px 70px #1c47311a}.auth-card h1{font-family:Georgia,serif;font-weight:500;font-size:34px}.auth-card p{color:var(--muted)}.auth-card form button{width:100%}.small{font-size:12px;color:var(--muted)}.topbar{height:76px;display:flex;justify-content:space-between;align-items:center;padding:10px 24px;background:#10372c;color:#fff;gap:12px}.topbar>div{display:flex;align-items:center;gap:12px}.brandmark{width:42px;height:42px;border:1px solid #a59a72;border-radius:14px;display:grid;place-items:center;font-family:Georgia,serif;font-size:24px;color:#dfcfaa}.topbar strong{display:block;font-size:15px;letter-spacing:.24em}.topbar small{font-size:9px;color:#c5d0c5;letter-spacing:.15em}.top-actions{flex-wrap:wrap}.top-actions span{font-size:12px}.topbar .quiet{border-color:#648376;color:#fff}.shell{display:grid;grid-template-columns:minmax(190px,248px) minmax(0,1fr) minmax(205px,270px);max-width:1700px;margin:auto;min-height:calc(100vh - 76px)}.side{padding:30px 18px 30px 24px;border-right:1px solid #d1dcd2;background:#e5ebe3}.sidebar-heading h2{font:normal 27px Georgia,serif;margin:12px 0}.sidebar-heading p:last-child{color:var(--muted);font-size:13px}.side nav{display:grid;gap:8px;margin:30px 0}.step{display:flex;align-items:center;gap:14px;border:1px solid transparent;background:transparent;text-align:left;padding:13px;border-radius:12px;color:var(--ink);font-weight:600}.step span{font-size:10px;color:#84958d}.step.active{background:var(--paper);border-color:#d0dcd0;box-shadow:0 5px 18px #3b5b4311}.step.active span{color:var(--gold)}.subtle{font-size:12px;color:#496358;border-top:1px solid #c8d2cb;padding-top:18px}main{padding:27px min(4vw,58px) 40px;min-width:0;background:#f7f8f3}.context{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:30px;flex-wrap:wrap}.context .eyebrow{margin:0}.context-right{display:flex;align-items:center;gap:9px}.context-right span{font-size:10px;color:#677c70;letter-spacing:.07em}.stage-header .eyebrow{color:var(--gold)}.stage-header h1{font:normal clamp(32px,3.4vw,52px)/1.1 Georgia,serif;margin:10px 0 16px;letter-spacing:-.02em}.stage-header p{color:var(--muted);max-width:650px;margin-bottom:27px}.panel{background:var(--paper);border:1px solid #dde2d7;border-radius:20px;padding:22px 24px;box-shadow:0 8px 26px #243b2810;min-width:0}.panel+.panel{margin-top:16px}.panel h2{font:normal 23px Georgia,serif;margin:0 0 18px}.panel h3{margin:0 0 8px;font-size:15px}.panel p{font-size:13px;color:#547063}.panel strong{color:#214539}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.stack{display:grid;gap:8px}.chipline{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid #c6d5ca;border-radius:11px;background:white;padding:9px 13px}.chip.active{border-color:#a6ac77;background:#e9f0e5}.warning{background:#fbf5e8;border-left:3px solid var(--gold);padding:12px 15px;color:#534c34!important;border-radius:0 9px 9px 0;font-size:13px}.good{background:#eef5eb;padding:10px 13px;border-left:3px solid #4b8766}.muted{color:#678171}.rule{height:1px;background:#d7ded6;margin:23px 0}.evidence{padding:0 0 20px}.evidence strong{font-size:12px}.evidence p{font-size:12px;color:#607b6c;white-space:pre-line;overflow-wrap:anywhere}.detail{padding:36px 23px;background:#eaf0e8;border-left:1px solid #d6dfd3}.detail h2{font:normal 23px Georgia,serif}.detail>p{font-size:13px;color:#5f766c}.plain-link{font-weight:700;color:var(--green);text-decoration:underline;font-size:13px;line-height:1.5}.actionbar{display:flex;gap:12px;justify-content:space-between;margin:22px 0}.primary,.quiet{border-radius:10px;padding:11px 19px;min-height:43px;font-weight:650}.primary{color:white;background:#1d553e;border:1px solid #1d553e}.primary:hover:not(:disabled){background:#133d32}.quiet{background:transparent;border:1px solid #b5c6ba;color:#1c4838}.quiet:hover:not(:disabled){background:#e9f0e8}.notice{position:fixed;right:16px;top:10px;z-index:50;max-width:min(92vw,450px);padding:12px 17px;color:#fff;background:#3a584a;border-radius:11px;box-shadow:0 3px 20px #0002;white-space:pre-line}.notice.error{background:#8f4639}.project-row{border:1px solid #d3dfd2;padding:13px 15px;border-radius:12px;background:#fff;width:100%;text-align:left;margin:5px 0}.project-row:hover{border-color:var(--gold)}.project-row small{display:block;color:#60766d;margin-top:5px}.tag{display:inline-block;padding:4px 8px;border:1px solid #c6d6cc;border-radius:7px;font-size:10px;color:#517361;font-weight:700}.fake-lock{background:#eef1e9;padding:14px;border-radius:10px}.flex-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.flex-row>button{max-width:100%}dialog{max-width:min(560px,calc(100vw - 24px));width:100%;border:1px solid #cbd6c8;border-radius:18px;box-shadow:0 20px 60px #142f2b66;padding:0;max-height:calc(100dvh - 28px);overflow:auto}dialog::backdrop{background:#0d281da8}.modal{padding:24px;background:var(--paper)}.modal h2{font:normal 27px Georgia,serif}.modal li{margin:9px 0;font-size:13px}.gridchecks{display:flex;flex-direction:column;gap:13px;margin:16px 0}.gridchecks label{flex-direction:row;align-items:center;font-size:14px;margin:0}.gridchecks input{width:auto}.history{display:grid;gap:8px}.history button{text-align:left}.error-text{color:#a03934;font-size:12px}.save-fail{color:#a63f3f!important;font-weight:700}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.mini-key{font-size:11px;letter-spacing:.08em;color:#6e8276}@media(max-width:1080px){.shell{grid-template-columns:205px minmax(0,1fr)}.detail{grid-column:2;border-left:0;border-top:1px solid var(--border);padding:15px 25px}.detail h2{margin:7px 0}.detail .evidence{display:block}.detail .evidence p{overflow-wrap:anywhere}}@media(max-width:640px){.topbar{padding:10px 12px;min-height:71px;height:auto}.topbar strong{font-size:13px}.topbar small{font-size:8px}.top-actions{gap:5px!important}.top-actions span{display:none}.top-actions button{font-size:11px;padding:7px}.shell{display:block}.side{padding:14px 15px 8px;border-right:0}.sidebar-heading{display:none}.side nav{display:flex;gap:4px;margin:0;overflow-x:auto;max-width:100%;padding-bottom:5px}.step{font-size:11px;padding:11px 8px;white-space:nowrap;min-width:0;gap:5px}.step span{font-size:9px}.side .subtle{display:none}main{padding:20px 14px 24px}.context{margin-bottom:16px}.stage-header h1{font-size:35px}.stage-header p{font-size:13px;margin-bottom:18px}.panel{padding:17px 15px;border-radius:15px}.two-col{display:block}.two-col>*+*{margin-top:14px}.detail{padding:17px 16px}.detail .small{font-size:11px}.actionbar{position:static;padding:0;margin:16px 0}.actionbar button{max-width:48%;white-space:normal}.auth-card{padding:26px 18px}}@media(max-width:350px){.topbar strong{letter-spacing:.07em}.brandmark{width:34px;height:34px}.topbar small{letter-spacing:0}.step{font-size:10px;padding:8px 5px}.panel h2{font-size:21px}body{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.two-col{align-items:start}
.two-col>.panel+.panel{margin-top:0}
.journey-client{padding-block:12px;border-top:1px solid var(--border);overflow-wrap:anywhere}
.journey-client .quiet{margin-top:8px}
.journey-feedback{margin:12px 0 0;overflow-wrap:anywhere}
.journey-feedback:empty{display:none}
.journey-optional{margin:20px 0}
.journey-optional[open] summary,.journey-report[open] summary{margin-bottom:14px}
.journey-optional summary,.journey-report summary{cursor:pointer;font-weight:650}
.journey-steps{display:grid;gap:18px;margin:0;padding-left:1.3rem}
.journey-step+.journey-step{padding-top:18px;border-top:1px solid var(--border)}
.journey-step-heading{display:flex;gap:8px 14px;align-items:center;flex-wrap:wrap}
.journey-step-heading h3{margin:0}
.journey-report{margin-top:16px;overflow-wrap:anywhere}
.journey-finding{border-top:1px solid var(--border);padding-top:8px}
@media(max-width:640px){.two-col>.panel+.panel{margin-top:14px}}

/* P0: no flash of login UI while a valid cookie is verified. */
.auth-shell[hidden], #bootScreen[hidden] { display: none !important; }

/* P0 owner UX: clearer client/project hierarchy while retaining Quiet Threshold art. */
.shell,.shell>*,.intake-layout,.intake-layout>*{min-width:0}
.project-entry{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;
 padding:14px 0;border-top:1px solid var(--border)}
.project-entry strong{display:block;font-size:15px;overflow-wrap:anywhere}
.project-entry p{margin:6px 0;font-size:12px;overflow-wrap:anywhere}
.project-entry .project-meta{font-size:11px;color:#536b61;line-height:1.45}
.project-summary{min-width:0;flex:1}
.project-tools{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end;align-items:center}
.project-tools .primary,.project-tools .quiet{font-size:12px;padding:7px 10px;min-height:38px;line-height:1.3}
.client-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.client-heading h3{margin:0}
.client-heading p{margin:5px 0 0}
.intake-layout{grid-template-columns:minmax(0,1.16fr) minmax(285px,.84fr);gap:14px;margin-top:16px}
.passport-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.passport-fields label:has(textarea){grid-column:1 / -1}
.duplicate-match{border-top:1px solid #cdbf9a;padding:9px 0;display:flex;gap:12px;
 align-items:center;justify-content:space-between;flex-wrap:wrap}
.duplicate-match span{min-width:0;overflow-wrap:anywhere}
.duplicate-match small{display:block;color:#635e4f;font-size:11px}
.duplicate-match button{flex-shrink:0}
.detail{min-width:0;overflow-wrap:anywhere}
.detail .evidence,.detail .evidence p{min-width:0;overflow-wrap:anywhere}
@media(max-width:1450px){.intake-layout{grid-template-columns:minmax(0,1fr)}.intake-layout>.panel+.panel{margin-top:14px}}
@media(max-width:1080px){.detail{width:100%;max-width:100%;grid-column:2}.project-entry{flex-wrap:wrap}.project-tools{justify-content:flex-start}}
@media(max-width:640px){
 .project-entry,.client-heading{display:block}
 .project-tools{justify-content:flex-start;margin-top:10px}
 .project-tools .primary,.project-tools .quiet{min-height:42px}
 .passport-fields{grid-template-columns:minmax(0,1fr)}
 .passport-fields label:has(textarea){grid-column:auto}
 .detail{grid-column:auto}
 .topbar{gap:8px}
 .top-actions{max-width:65%;justify-content:flex-end}
 #changePasswordBtn{font-size:11px;padding:7px}
}

/* P0 ART targeted peer fixes: selected client, permanent project identity and rail. */
.intake-target{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;
 padding:12px 14px;border:1px solid var(--border);border-radius:10px;
 margin:6px 0 12px;overflow-wrap:anywhere}
.intake-target strong{font-weight:700}
.intake-target span{font-size:11px;opacity:.82}
.project-identity{display:grid;gap:7px;min-width:0;max-width:100%;
 border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin:12px 0 16px}
.project-identity strong{font-size:clamp(14px,1.25vw,18px);line-height:1.35;overflow-wrap:anywhere}
.project-identity p{margin:0;overflow-wrap:anywhere}
.project-identity-url{font-size:13px;word-break:break-word}
.project-identity button{justify-self:start}
button[disabled]{cursor:not-allowed;opacity:.6}
#switchProjectDialog .flex-row{display:flex;gap:8px;flex-wrap:wrap}
#switchProjectDialog .flex-row button{min-height:42px}
#nextInstruction,#technicalFacts{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:640px){
 .project-identity{padding:12px;gap:8px}
 .project-identity strong{font-size:15px}
 .project-identity-url{font-size:12px}
 .intake-target{display:block}
 .intake-target span{display:block;margin-top:6px}
 #switchProjectDialog .flex-row{flex-direction:column}
 #switchProjectDialog button{width:100%}
}
