@import"https://fonts.googleapis.com/css2?family=Libre+Franklin:wght@400;600;800&display=swap";:root{--color-ground: #FAFAF7;--color-ink: #1B2A4A;--color-primary: #1B2A4A;--color-accent: #9E1B32;--color-muted: #4A5568;--font-display: "Libre Franklin", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "Libre Franklin", system-ui, -apple-system, "Segoe UI", sans-serif;--color-surface: #F1F2F5;--color-option: #FFFFFF;--color-on-accent: #FFFFFF;--color-on-primary: #FFFFFF;--color-border: #DDE1EA;--color-track: #DDE1EA;--color-focus: #9E1B32;--color-danger: #B42318;--color-danger-bg: #FEF3F2;--color-success: #1E6B45;--color-success-bg: #ECF7F1;--color-warning-bg: #FFF7E6;--color-warning-ink: #7A4B00;--chart-1: #1B2A4A;--chart-2: #9E1B32;--font-weight-body: 400;--font-weight-strong: 600;--font-weight-display: 800;--wordmark-tracking: .32em;--radius-panel: 20px;--radius-control: 12px;--radius-small: 8px;--accent-rule: 4px solid var(--color-accent);--shadow-card: 0 1px 2px rgba(27, 42, 74, .06), 0 4px 16px rgba(27, 42, 74, .06);--logo-mark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='68' height='64' viewBox='0 0 68 64'%3E%3Cpath d='M6 6 H62 V44 H28 L14 58 V44 H6 Z' fill='%231B2A4A'/%3E%3Cpath d='M34 13 L37.5 22.5 L47.5 22.8 L39.6 29 L42.4 38.6 L34 33 L25.6 38.6 L28.4 29 L20.5 22.8 L30.5 22.5 Z' fill='%23FAFAF7'/%3E%3C/svg%3E");--logo-mark-aspect: 68 / 64;--logo-wordmark-line1: "OPINION";--logo-wordmark-line2: "INSTITUTE";--logo-wordmark-line1-color: var(--color-ink);--logo-wordmark-line2-color: var(--color-accent)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-ground);color:var(--color-ink);font-family:var(--font-body);font-weight:var(--font-weight-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--font-weight-display);line-height:1.2;margin:0;color:var(--color-ink)}a{color:var(--color-primary)}a:hover{color:var(--color-accent)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}button,input,select,textarea{font:inherit;color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--color-muted)}.small{font-size:.875rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875em}.nowrap{white-space:nowrap}.stack>*+*{margin-top:1rem}.row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.grow{flex:1 1 auto}.logo{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;color:inherit}.logo-mark{display:block;height:2.25rem;aspect-ratio:var(--logo-mark-aspect);background:var(--logo-mark) center / contain no-repeat;flex:none}.logo-words{display:flex;flex-direction:column;line-height:1}.logo-words:before{content:var(--logo-wordmark-line1);font-family:var(--font-display);font-weight:var(--font-weight-display);color:var(--logo-wordmark-line1-color);font-size:1.3rem;letter-spacing:.02em}.logo-words:after{content:var(--logo-wordmark-line2);font-family:var(--font-display);font-weight:var(--font-weight-strong);color:var(--logo-wordmark-line2-color);font-size:.68rem;letter-spacing:var(--wordmark-tracking);margin-top:.3rem}.logo.large .logo-mark{height:4rem}.logo.large .logo-words:before{font-size:2.3rem}.logo.large .logo-words:after{font-size:1.05rem;margin-top:.45rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.6rem 1.1rem;border-radius:var(--radius-control);border:1px solid var(--color-border);background:var(--color-option);color:var(--color-ink);font-weight:var(--font-weight-strong);text-decoration:none;cursor:pointer;transition:background-color .12s,border-color .12s,opacity .12s}.btn:hover{border-color:var(--color-primary);color:var(--color-ink)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-accent{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.btn-accent:hover{color:var(--color-on-accent);filter:brightness(1.08);border-color:var(--color-accent)}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover{color:var(--color-on-primary);filter:brightness(1.15)}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover{background:var(--color-surface);border-color:transparent}.btn-danger{color:var(--color-danger)}.btn-danger:hover{border-color:var(--color-danger);color:var(--color-danger)}.btn-sm{min-height:34px;padding:.3rem .7rem;font-size:.875rem;border-radius:var(--radius-small)}.btn-block{width:100%;min-height:52px;font-size:1.05rem}.link-btn{background:none;border:none;padding:.5rem .25rem;cursor:pointer;color:var(--color-muted);font-weight:var(--font-weight-strong);text-decoration:underline;text-underline-offset:3px;min-height:44px}.link-btn:hover{color:var(--color-ink)}.field{display:flex;flex-direction:column;gap:.35rem}.field>span,.label{font-weight:var(--font-weight-strong);font-size:.9rem}.hint{font-size:.8rem;color:var(--color-muted)}.input,.select,.textarea{width:100%;min-height:44px;padding:.55rem .8rem;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-option)}.textarea{min-height:110px;resize:vertical}.input:focus,.select:focus,.textarea:focus{outline:2px solid var(--color-primary);outline-offset:0;border-color:var(--color-primary)}.check{display:flex;gap:.6rem;align-items:flex-start;cursor:pointer}.check input{width:1.1rem;height:1.1rem;margin-top:.2rem;accent-color:var(--color-primary)}.alert{padding:.75rem 1rem;border-radius:var(--radius-control);background:var(--color-danger-bg);color:var(--color-danger);font-weight:var(--font-weight-strong)}.alert.success{background:var(--color-success-bg);color:var(--color-success)}.alert.warning{background:var(--color-warning-bg);color:var(--color-warning-ink)}.site{min-height:100dvh;display:flex;flex-direction:column}.site-header{border-top:var(--accent-rule);background:var(--color-ground);padding:.9rem 1rem;display:flex;justify-content:center}.site-header.left{justify-content:space-between}.site-main{flex:1;width:100%;max-width:640px;margin:0 auto;padding:1rem 1rem 2.5rem}.site-footer{padding:1.25rem 1rem 2rem;text-align:center;color:var(--color-muted);font-size:.8rem}.landing{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1.25rem;gap:1.5rem}.landing .tagline{font-family:var(--font-display);font-weight:var(--font-weight-strong);font-size:clamp(1.1rem,3.5vw,1.4rem);color:var(--color-muted);margin:0}.landing .rule{width:56px;height:4px;background:var(--color-accent);border:0;margin:.5rem auto}.landing p{max-width:34rem;margin:0 auto;color:var(--color-muted)}.pulse{display:flex;flex-direction:column;gap:1rem}.pulse-intro{padding:.5rem 0 .25rem}.pulse-intro h1{font-size:clamp(1.5rem,5vw,2rem)}.pulse-intro p{color:var(--color-muted);margin:.6rem 0 0}.pulse-progress{display:flex;flex-direction:column;gap:.45rem}.pulse-counter{font-size:.85rem;font-weight:var(--font-weight-strong);color:var(--color-muted);letter-spacing:.04em}.pulse-track{height:4px;border-radius:999px;background:var(--color-track);overflow:hidden}.pulse-fill{height:100%;background:var(--color-accent);border-radius:999px;transition:width .24s ease}.panel{background:var(--color-surface);border-radius:var(--radius-panel);padding:1.4rem 1.1rem 1.25rem}@media(min-width:560px){.panel{padding:2rem 1.75rem 1.75rem}}.question-legend{padding:0;margin:0 0 1.1rem;width:100%}.question-title{font-family:var(--font-display);font-weight:var(--font-weight-display);font-size:clamp(1.2rem,4.2vw,1.5rem);line-height:1.25}.question-meta{margin-top:.4rem;font-size:.875rem;color:var(--color-muted)}fieldset{border:0;margin:0;padding:0;min-width:0}.options{display:flex;flex-direction:column;gap:.6rem}.option{position:relative;display:flex;align-items:center;gap:.8rem;min-height:52px;padding:.75rem 1rem;background:var(--color-option);border:1px solid var(--color-border);border-radius:var(--radius-control);cursor:pointer;transition:border-color .12s,box-shadow .12s}.option:hover{border-color:var(--color-muted)}.option input{width:1.25rem;height:1.25rem;margin:0;flex:none;accent-color:var(--color-primary);cursor:pointer}.option input:focus-visible{outline:none}.option:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.option.selected,.option:has(input:checked){border-color:var(--color-primary);box-shadow:inset 0 0 0 2px var(--color-primary)}.scale .option.selected,.scale .option:has(input:checked){background:var(--color-primary);color:var(--color-on-primary)}.option-label{flex:1;font-weight:var(--font-weight-strong)}.scale{display:grid;grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:.45rem}.scale.wide{grid-template-columns:repeat(6,1fr)}@media(min-width:560px){.scale.wide{grid-template-columns:repeat(11,1fr)}}.scale .option{justify-content:center;padding:0;min-height:48px;font-variant-numeric:tabular-nums}.scale .option input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0}.scale .option .option-label{flex:none}.scale-labels{display:flex;justify-content:space-between;gap:1rem;margin-top:.55rem;font-size:.8rem;color:var(--color-muted)}.scale-labels span:last-child{text-align:right}.pulse .textarea{min-height:140px;font-size:1rem}.char-count{text-align:right;font-size:.75rem;color:var(--color-muted);margin-top:.3rem}.pulse-actions{display:flex;flex-direction:column;gap:.4rem;margin-top:1.25rem}.pulse-actions .row{justify-content:space-between}.pulse-footer{border-top:1px solid var(--color-border);padding-top:1rem;font-size:.8rem;color:var(--color-muted);text-align:center;white-space:pre-line}.preview-banner{background:var(--color-warning-bg);color:var(--color-warning-ink);border-radius:var(--radius-control);padding:.6rem .9rem;font-size:.875rem;font-weight:var(--font-weight-strong);text-align:center}.status-screen{text-align:center;padding:2.25rem 1.25rem 2rem;display:flex;flex-direction:column;align-items:center;gap:.9rem}.status-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--color-option);border:2px solid var(--color-primary);color:var(--color-primary)}.status-icon.accent{border-color:var(--color-accent);color:var(--color-accent)}.status-screen h1{font-size:clamp(1.5rem,5vw,1.9rem)}.status-screen p{margin:0;color:var(--color-muted);max-width:30rem;white-space:pre-line}.status-code{font-family:var(--font-display);font-weight:var(--font-weight-display);color:var(--color-accent);letter-spacing:var(--wordmark-tracking);font-size:.85rem}.spinner{width:32px;height:32px;border-radius:50%;border:3px solid var(--color-track);border-top-color:var(--color-accent);animation:spin .8s linear infinite;margin:3rem auto}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2s}.pulse-fill{transition:none}}.dash{min-height:100dvh;display:flex;flex-direction:column}.dash-header{border-top:var(--accent-rule);border-bottom:1px solid var(--color-border);background:var(--color-option);padding:.6rem 1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.dash-header .logo-mark{height:1.9rem}.dash-header .logo-words:before{font-size:1.05rem}.dash-header .logo-words:after{font-size:.55rem}.dash-nav{display:flex;gap:.25rem;flex-wrap:wrap}.dash-nav a{text-decoration:none;color:var(--color-muted);font-weight:var(--font-weight-strong);padding:.45rem .75rem;border-radius:var(--radius-small)}.dash-nav a:hover{color:var(--color-ink);background:var(--color-surface)}.dash-nav a.active{color:var(--color-primary);background:var(--color-surface)}.dash-main{width:100%;max-width:1120px;margin:0 auto;padding:1.5rem 1rem 3rem}.dash-main h1{font-size:1.6rem}.page-head{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:flex-end;margin-bottom:1.25rem}.page-head p{margin:.25rem 0 0}.card{background:var(--color-option);border:1px solid var(--color-border);border-top:var(--accent-rule);border-radius:var(--radius-control);padding:1.25rem;box-shadow:var(--shadow-card)}.card+.card{margin-top:1rem}.card h2{font-size:1.15rem;margin-bottom:.75rem}.card h3{font-size:1rem}.card.plain{border-top:1px solid var(--color-border)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin-bottom:1rem}.stat{background:var(--color-option);border:1px solid var(--color-border);border-radius:var(--radius-control);padding:.9rem 1rem}.stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);font-weight:var(--font-weight-strong)}.stat-value{font-family:var(--font-display);font-weight:var(--font-weight-display);font-size:1.7rem;color:var(--color-primary);font-variant-numeric:tabular-nums}.table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-option)}table.table{width:100%;border-collapse:collapse;font-size:.9rem}.table th,.table td{text-align:left;padding:.65rem .8rem;border-bottom:1px solid var(--color-border);vertical-align:top}.table th{background:var(--color-surface);font-weight:var(--font-weight-strong);white-space:nowrap}.table tr:last-child td{border-bottom:0}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.badge{display:inline-block;padding:.12rem .55rem;border-radius:999px;font-size:.75rem;font-weight:var(--font-weight-strong);background:var(--color-surface);color:var(--color-muted);text-transform:capitalize}.badge.active{background:var(--color-success-bg);color:var(--color-success)}.badge.closed{background:var(--color-surface);color:var(--color-muted)}.badge.draft{background:var(--color-warning-bg);color:var(--color-warning-ink)}.tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--color-border);margin-bottom:1.25rem;overflow-x:auto}.tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:.7rem .9rem;cursor:pointer;font-weight:var(--font-weight-strong);color:var(--color-muted);white-space:nowrap}.tabs button[aria-selected=true]{color:var(--color-primary);border-bottom-color:var(--color-accent)}.bars{display:flex;flex-direction:column;gap:.55rem}.bar-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem .75rem;font-size:.9rem}.bar-track{grid-column:1 / -1;height:10px;border-radius:999px;background:var(--color-surface);overflow:hidden}.bar-fill{height:100%;background:var(--chart-1);border-radius:999px}.bar-row:nth-child(2n) .bar-fill{background:var(--chart-2)}.grid-2{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:860px){.grid-2{grid-template-columns:1fr 1fr}}.q-editor{border:1px solid var(--color-border);border-radius:var(--radius-control);padding:1rem;background:var(--color-option)}.q-editor+.q-editor{margin-top:.75rem}.q-editor-head{display:flex;gap:.5rem;align-items:center;justify-content:space-between;margin-bottom:.75rem;flex-wrap:wrap}.form-grid{display:grid;gap:.9rem;grid-template-columns:1fr}@media(min-width:720px){.form-grid.two{grid-template-columns:1fr 1fr}}.copy-field{display:flex;gap:.5rem}.copy-field .input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem}.dialog-backdrop{position:fixed;inset:0;background:#00000059;display:grid;place-items:center;padding:1rem;z-index:50}.dialog{background:var(--color-option);border-radius:var(--radius-panel);border-top:var(--accent-rule);width:min(640px,100%);max-height:85dvh;overflow:auto;padding:1.25rem}.toast{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);background:var(--color-primary);color:var(--color-on-primary);padding:.7rem 1.1rem;border-radius:var(--radius-control);font-weight:var(--font-weight-strong);z-index:60;max-width:calc(100% - 2rem);box-shadow:var(--shadow-card)}.toast.error{background:var(--color-danger)}.login-wrap{flex:1;display:grid;place-items:center;padding:2rem 1rem}.login-card{width:min(420px,100%)}
