/* Hallmark · macrostructure: Workbench · tone: austere · anchor hue: neutral · theme: Quiet */
/* Hallmark · pre-emit critique: P4 H5 E4 S5 R5 V4 */
@import url('/static/vendor/reference-fonts.css');
*{box-sizing:border-box}
html,body{overflow-x:clip;margin:0;min-width:0}
body{font-family:var(--font-body);background:var(--color-paper);color:var(--color-ink);font-size:var(--text-md);line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}
button,a,input,select{ -webkit-tap-highlight-color:var(--color-transparent)}
a{color:inherit;text-underline-offset:4px}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.2;min-width:0;overflow-wrap:anywhere}
h1{font-size:var(--text-display);letter-spacing:-.035em}
h2{font-size:var(--text-xl);letter-spacing:-.02em}
h3{font-size:var(--text-md)}
p{overflow-wrap:anywhere}
hr{width:100%;border:0;border-top:var(--rule-width) solid var(--color-rule);margin:var(--space-sm) 0}
:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}
[hidden]{display:none!important}
.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:clip;clip-path:inset(50%);white-space:nowrap}
.skip-link{position:fixed;top:var(--space-md);left:var(--space-md);transform:translateY(-160%);z-index:20;padding:var(--space-sm) var(--space-md);background:var(--color-ink);color:var(--color-surface)}
.skip-link:focus{transform:translateY(0)}
.site-header{min-height:88px;display:flex;gap:var(--space-md);align-items:center;justify-content:space-between;padding:var(--space-lg) clamp(1rem,4vw,4rem);border-bottom:2px solid var(--brand-blue);background:var(--color-surface);color:var(--color-ink);flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:var(--space-sm);font-weight:650;font-size:var(--text-lg);line-height:1.2;text-decoration:none;white-space:nowrap}
.brand-logo{display:block;width:clamp(150px,16vw,190px);height:auto}
.brand-caption{display:block;font-weight:400;font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-xs)}
.header-actions{display:flex;gap:var(--space-sm);align-items:center;flex-wrap:wrap}
.header-actions form{margin:0}
.user-name{display:none;font-size:var(--text-sm);color:var(--color-muted)}
.nav-link{padding:var(--space-sm);white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;text-decoration:none;font-size:var(--text-sm)}
.workspace{width:min(1200px,100%);margin-inline:auto;padding:var(--space-xl) var(--space-md) var(--space-3xl);min-height:calc(100dvh - 180px)}
.site-footer{border-top:var(--rule-width) solid var(--color-rule);padding:var(--space-lg) clamp(1rem,4vw,4rem);display:flex;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap;color:var(--color-muted);font-size:var(--text-xs)}
.site-footer span:first-child{font-weight:600;color:var(--color-ink)}
.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg);flex-direction:column;margin-bottom:var(--space-2xl)}
.page-heading p{margin-top:var(--space-sm)}
.page-heading>div{min-width:0}
.muted{color:var(--color-muted)}
.fine-print,.field-help{font-size:var(--text-xs);color:var(--color-muted);line-height:1.65}
.field-help{min-height:1.65em;margin-top:var(--space-xs)}
.button{min-height:44px;max-width:100%;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);border:var(--rule-width) solid var(--color-transparent);border-radius:var(--radius-sm);padding:.625rem 1rem;font-weight:600;font-size:var(--text-sm);line-height:1.4;cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}
.button-primary{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}
.button-secondary{background:var(--color-surface);color:var(--color-ink);border-color:var(--color-input-rule)}
.button-quiet{background:var(--color-transparent);color:var(--color-muted);padding-inline:.625rem}
.button-danger{background:var(--color-error-paper);color:var(--color-error);border-color:var(--brand-clay)}
.button:active{transform:translateY(1px)}
.button:disabled,.button[aria-disabled=true]{opacity:.5;cursor:not-allowed;transform:none}
.button[data-state=loading]{opacity:.7;cursor:wait}
.button[data-state=success]{border-color:var(--color-success)}
.button[data-state=error]{border-color:var(--color-error)}
.full-width{width:100%}
.back-link{display:inline-flex;align-items:center;min-height:44px;font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-lg);text-decoration:none;white-space:nowrap}
.metrics{margin:0 0 var(--space-2xl);padding:var(--space-lg) 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg);border-top:var(--rule-width) solid var(--color-rule);border-bottom:var(--rule-width) solid var(--color-rule)}
.metrics dt{font-size:var(--text-sm);color:var(--color-muted)}
.metrics dd{font-size:2rem;font-weight:600;margin:var(--space-xs) 0 0;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
.list-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);flex-direction:column;margin-bottom:var(--space-lg)}
.list-toolbar h2{align-self:flex-start;font-size:var(--text-lg)}
.search-field{width:100%}
.list-columns{display:none}
.proposal-list{border-top:var(--rule-width) solid var(--color-rule)}
.proposal-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-md);align-items:center;padding:var(--space-lg) 0;border-bottom:var(--rule-width) solid var(--color-rule)}
.proposal-name{grid-column:1;min-width:0}
.proposal-name h3{font-size:var(--text-lg)}
.proposal-name a{text-decoration:none;display:block;white-space:normal;overflow-wrap:anywhere}
.proposal-name p{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-xs)}
.version-label{font-family:var(--font-mono);font-size:var(--text-xs);margin-inline-start:var(--space-sm)}
.proposal-row>div:nth-child(2){grid-column:1}
.row-stat,.last-view{font-size:var(--text-sm);display:flex;gap:var(--space-sm);flex-wrap:wrap;grid-column:1}
.mobile-label{color:var(--color-muted)}
.row-stat strong{font-variant-numeric:tabular-nums;font-weight:600}
.row-open{grid-column:2;grid-row:1 / span 4;min-width:44px;min-height:44px;display:grid;place-items:center;font-size:var(--text-xl);text-decoration:none;border-radius:var(--radius-sm)}
.status{display:inline-flex;align-items:center;min-height:26px;padding:.2rem .65rem;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600;white-space:nowrap}
.status-draft{background:var(--color-draft-paper);color:var(--color-draft-ink)}
.status-published{background:var(--color-success-paper);color:var(--color-success);border:1px solid var(--brand-cyan)}
.status-revoked{background:var(--color-paper-2);color:var(--color-muted)}
.tracking-note{margin-top:var(--space-lg);max-width:65rem}
.empty-state{text-align:center;padding:var(--space-3xl) var(--space-md);border:var(--rule-width) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink)}
.empty-state p{color:var(--color-muted);max-width:36rem;margin:var(--space-md) auto var(--space-lg)}
.empty-symbol{display:inline-block;font-size:2.5rem;margin-bottom:var(--space-lg)}
.empty-search{text-align:center;padding:var(--space-2xl)}
.empty-search p{color:var(--color-muted);margin-top:var(--space-sm)}
.panel{padding:var(--space-lg);background:var(--color-surface);color:var(--color-ink);border:var(--rule-width) solid var(--color-rule);border-radius:var(--radius-md);min-width:0}
.panel>h2{margin-bottom:var(--space-md)}
.editor-layout,.detail-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xl);align-items:start}
.form-stack{display:flex;flex-direction:column;gap:var(--space-lg)}
.field{min-width:0}
.field label{display:block;font-weight:600;font-size:var(--text-sm);margin-bottom:var(--space-sm)}
input:not([type=checkbox]),select{width:100%;max-width:100%;min-width:0;min-height:44px;border:var(--rule-width) solid var(--color-input-rule);border-radius:var(--radius-sm);padding:.625rem .75rem;background:var(--color-surface);color:var(--color-ink);font-size:var(--text-sm);outline-offset:3px}
input::placeholder{color:var(--color-muted)}
input[readonly]{background:var(--color-paper);color:var(--color-muted)}
input:disabled,select:disabled{opacity:.55;cursor:not-allowed}
input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--color-error)}
input[data-state=success]{border-color:var(--color-success)}
input[data-state=loading]{cursor:wait}
.optional{font-weight:400;color:var(--color-muted)}
.file-surface{padding:var(--space-md);background:var(--color-paper);color:var(--color-ink);border:var(--rule-width) dashed var(--color-input-rule);border-radius:var(--radius-sm)}
.file-surface input{border:0;background:var(--color-transparent);color:var(--color-ink);padding:0;min-height:44px}
input[type=file]::file-selector-button{font-family:var(--font-body);background:var(--color-surface);color:var(--color-ink);border:var(--rule-width) solid var(--color-input-rule);border-radius:var(--radius-sm);padding:.625rem .75rem;margin-inline-end:var(--space-sm);min-height:44px;cursor:pointer}
.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);margin-top:var(--space-sm)}
.side-note{padding:var(--space-lg) var(--space-sm)}
.side-note h2{margin-bottom:var(--space-lg);font-size:var(--text-lg)}
.side-note p{margin-bottom:var(--space-lg);font-size:var(--text-sm);color:var(--color-muted)}
.note-symbol{display:block;font-size:2.5rem;margin-bottom:var(--space-lg)}
.notice{padding:var(--space-md);border:var(--rule-width) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-2);color:var(--color-ink);font-size:var(--text-sm);margin-bottom:var(--space-lg)}
.notice-error{background:var(--color-error-paper);color:var(--color-error);border-color:var(--brand-clay)}
.heading-meta{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);font-size:var(--text-xs);color:var(--color-muted)}
.detail-main{display:flex;flex-direction:column;gap:var(--space-xl);min-width:0}
.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm);flex-direction:column;margin-bottom:var(--space-lg)}
.subtle-label,.count-label{font-size:var(--text-xs);color:var(--color-muted);white-space:nowrap}
.count-label{background:var(--color-paper-2);color:var(--color-ink);border-radius:var(--radius-pill);padding:.25rem .65rem;font-variant-numeric:tabular-nums}
.copy-field{display:flex;gap:var(--space-sm);flex-direction:column;margin-top:var(--space-lg)}
.copy-field input{font-family:var(--font-mono);font-size:var(--text-xs)}
.copy-feedback{margin:var(--space-sm) 0 var(--space-md)}
.copy-feedback[data-state=success]{color:var(--color-success)}
.copy-feedback[data-state=error]{color:var(--color-error)}
.publication-actions{display:flex;gap:var(--space-md);align-items:center;flex-wrap:wrap;margin-top:var(--space-lg)}
.publication-actions form{margin:0}
.event-list{margin-top:var(--space-lg)}
.event-row{display:flex;justify-content:space-between;gap:var(--space-sm);flex-direction:column;padding:var(--space-md) 0;border-top:var(--rule-width) solid var(--color-rule);font-size:var(--text-sm)}
.event-row p{margin-top:var(--space-xs)}
.event-row strong{font-weight:500}
.small-empty{padding:var(--space-xl) 0}
.small-empty p{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-sm)}
.compact-form{margin-bottom:var(--space-xl)}
.compact-form .button{align-self:flex-start}
.version-list{list-style:none;margin:0;padding:0}
.version-list li{display:flex;gap:var(--space-sm);justify-content:space-between;flex-wrap:wrap;padding:var(--space-md) 0;border-top:var(--rule-width) solid var(--color-rule);font-size:var(--text-sm)}
.version-list li>span{color:var(--color-muted)}
.checkbox-field{display:flex;gap:var(--space-sm);align-items:flex-start;font-size:var(--text-sm);cursor:pointer;min-height:44px}
.checkbox-field input{width:20px;height:20px;flex:0 0 20px;margin:2px 0 0;accent-color:var(--color-accent)}
.checkbox-field .field-help{display:block}
.access-panel>.fine-print{margin-top:var(--space-lg)}
.auth-layout{width:min(1100px,100%);margin:auto;padding:var(--space-2xl) var(--space-md);min-height:calc(100dvh - 180px);display:grid;align-items:center;gap:var(--space-2xl)}
.auth-intro h1{font-size:clamp(2rem,3vw + .5rem,3.5rem);margin:var(--space-lg) 0}
.auth-intro p{max-width:30rem;color:var(--color-muted)}
.context-label{font-size:var(--text-sm);color:var(--color-muted)}
.auth-panel{background:var(--color-surface);color:var(--color-ink);border:var(--rule-width) solid var(--color-rule);border-radius:var(--radius-md);padding:var(--space-lg)}
.auth-panel>.muted{margin:var(--space-sm) 0 var(--space-xl);font-size:var(--text-sm)}
.auth-panel>.fine-print{margin-top:var(--space-lg)}
.gate-layout{padding:var(--space-2xl) var(--space-md);min-height:calc(100dvh - 180px);display:grid;place-items:center}
.gate-panel{max-width:440px;width:100%;text-align:center}
.gate-icon{font-size:2.75rem;display:block;margin-bottom:var(--space-lg)}
.gate-panel h1{margin-bottom:var(--space-lg);font-size:clamp(1.8rem,3vw,2.5rem)}
.gate-panel>p{color:var(--color-muted);font-size:var(--text-sm);margin-bottom:var(--space-xl)}
.gate-panel .form-stack{text-align:start}
.gate-panel>.fine-print{margin-top:var(--space-lg);font-size:var(--text-xs)}
.viewer-page .site-header,.viewer-page>.skip-link{display:none}
.viewer-page{height:100dvh;overflow:hidden}
.viewer{position:fixed;inset:0;display:flex;flex-direction:column;height:100dvh;width:100%;padding:0}
.viewer-toolbar{display:flex;flex-direction:column;gap:var(--space-md);align-items:flex-start;justify-content:space-between;padding:var(--space-md);background:var(--color-surface);color:var(--color-ink);border-bottom:var(--rule-width) solid var(--color-rule)}
.viewer-toolbar>div{min-width:0}
.viewer-toolbar h1{font-size:var(--text-lg);letter-spacing:-.015em;margin-bottom:var(--space-xs)}
.proposal-frame{width:100%;height:100dvh;border:0;flex:1;min-height:0;background:var(--color-surface);color:var(--color-ink)}
.preview-notice{background:var(--color-draft-paper);color:var(--color-draft-ink);padding:var(--space-sm) var(--space-md);font-size:var(--text-xs);text-align:center}
.team-list{margin-top:var(--space-lg)}
.team-row{display:flex;flex-direction:column;gap:var(--space-md);justify-content:space-between;padding:var(--space-lg) 0;border-top:var(--rule-width) solid var(--color-rule)}
.team-row>div{min-width:0}
.team-row p{font-size:var(--text-sm);color:var(--color-muted);margin:var(--space-xs) 0;overflow-wrap:anywhere}
@media(hover:hover) and (pointer:fine){.button:hover{opacity:.85}.button-secondary:hover{background:var(--color-paper-2);color:var(--color-ink)}.button-quiet:hover{background:var(--color-paper-2);color:var(--color-ink)}.proposal-name a:hover{text-decoration:underline}.row-open:hover{background:var(--color-paper-2);color:var(--color-ink)}.back-link:hover,.nav-link:hover{text-decoration:underline}input:not([readonly]):hover,select:hover{background:var(--color-paper);color:var(--color-ink)}}
@media(min-width:40rem){.workspace{padding:var(--space-2xl) var(--space-xl) var(--space-3xl)}.user-name{display:inline}.page-heading{flex-direction:row;align-items:center}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.list-toolbar{flex-direction:row}.search-field{width:260px}.panel,.auth-panel{padding:var(--space-xl)}.section-heading{flex-direction:row;align-items:center}.copy-field{flex-direction:row}.copy-field input{flex:1}.event-row{flex-direction:row}.event-row>div:last-child{text-align:end}.viewer-toolbar{flex-direction:row;align-items:center;padding-inline:var(--space-xl)}.team-row{flex-direction:row;align-items:center}.auth-layout{padding:var(--space-3xl) var(--space-xl)}}
@media(min-width:60rem){.editor-layout{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.detail-layout{grid-template-columns:minmax(0,2.1fr) minmax(0,1fr)}.auth-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:var(--space-3xl)}.list-columns,.proposal-row{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(0,1.2fr) minmax(0,.7fr) minmax(0,1.2fr) 44px;gap:var(--space-md)}.list-columns{color:var(--color-muted);font-size:var(--text-xs);padding:var(--space-md) 0;border-bottom:var(--rule-width) solid var(--color-rule)}.proposal-row>div:nth-child(2),.proposal-name,.row-stat,.last-view,.row-open{grid-column:auto;grid-row:auto}.mobile-label{display:none}.access-panel{position:sticky;top:var(--space-xl)}.side-note{padding:var(--space-xl)}.last-view{font-size:var(--text-xs)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.button:active{transform:none}}
