.text-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);min-height:2.6rem;max-width:100%;padding:.65rem .95rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-accent-contrast);font-weight:700;line-height:1.2;text-align:left;text-decoration:none;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease,opacity .15s ease}.text-button:hover:not(:disabled){transform:translateY(-1px)}.text-button:disabled,.text-button[aria-disabled=true]{cursor:not-allowed;opacity:.45}.text-button--secondary{background:transparent;color:var(--color-text)}.text-button--danger{border-color:var(--color-danger);background:var(--color-danger);color:var(--color-accent-contrast)}.text-button__icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center}.text-button__icon svg{width:1.1rem;height:1.1rem}.text-button__label{min-width:0;overflow-wrap:anywhere}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:var(--space-lg);background:#11111175;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.overlay__surface{width:min(32rem,100%);display:grid;gap:var(--space-lg);padding:var(--space-xl);border:1px solid rgba(17,17,17,.12);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.overlay__body{display:grid;gap:var(--space-sm)}.overlay__body p:last-child{margin-bottom:0}.overlay__actions{display:flex;justify-content:flex-end;gap:var(--space-sm)}@media (max-width: 720px){.overlay{padding:var(--space-md)}.overlay__surface{padding:var(--space-lg)}.overlay__actions{flex-direction:column-reverse}}.editor-node{--editor-node-rail-bg: #ff6f77;--editor-node-header-tint: #ff6f77;position:relative;display:grid;align-items:stretch;grid-template-columns:3.5rem minmax(0,1fr)}.editor-node__rail{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);justify-content:space-between;padding:var(--space-sm) var(--space-xs);color:#fff;border-radius:var(--radius-md) 0 0 var(--radius-md);background:var(--editor-node-rail-bg)}.editor-node__rail-primary{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.editor-node__rail-actions{display:flex;flex-direction:column;gap:var(--space-xs)}.editor-node__rail .square-icon{background:transparent;border-color:#ffffff3d;color:inherit}.editor-node__rail .square-icon:hover:not(:disabled){background:#ffffff29;border-color:#ffffff80;color:inherit}.editor-node__index{display:inline-flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;border-radius:999px;background:#fff;color:var(--color-text);font-size:.9rem;font-weight:700}.editor-node__surface{border:1px solid rgba(17,17,17,.12);border-left:0;border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--color-surface);overflow:hidden}.editor-node__header{display:flex;justify-content:space-between;gap:var(--space-md);padding:var(--space-lg) var(--space-lg) var(--space-md);background-color:color-mix(in srgb,var(--editor-node-header-tint) 7%,transparent);align-items:flex-start}.editor-node__actions{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.editor-node__header-main{flex:1;min-width:0;display:flex;justify-content:space-between;gap:var(--space-md)}.editor-node__header-side{width:min(14rem,100%)}.editor-node__body{display:grid;gap:var(--space-md);padding:var(--space-lg);border-top:1px solid rgba(17,17,17,.08)}.editor-settings-toggle{display:inline-flex;align-items:center;gap:var(--space-xs);justify-content:flex-start;padding:0;border:0;background:transparent;color:var(--color-text-muted);box-shadow:none}.editor-settings-toggle:hover:not(:disabled){transform:none;background:transparent;color:var(--color-text)}.editor-settings-toggle svg{width:1rem;height:1rem;flex:0 0 auto}.editor-node--dragging{opacity:.55}.editor-node--drop-before:before,.editor-node--drop-after:after{content:"";position:absolute;left:0;right:0;height:4px;border-radius:999px;background:var(--color-drop)}.editor-node--drop-before:before{top:-.8rem}.editor-node--drop-after:after{bottom:-.8rem}@media (max-width: 720px){.editor-node__surface{padding:var(--space-md)}.editor-node{grid-template-columns:1fr}.editor-node__rail{flex-direction:row;justify-content:space-between;border-radius:var(--radius-md) var(--radius-md) 0 0}.editor-node__rail-primary,.editor-node__rail-actions{flex-direction:row}.editor-node__surface{border-left:1px solid rgba(17,17,17,.12);border-top:0;border-radius:0 0 var(--radius-md) var(--radius-md)}.editor-node__header-main{flex-direction:column}}.editor-node--block{--editor-node-rail-bg: #95a7c0;--editor-node-header-tint: #95a7c0}.editor-block__type{display:grid;gap:var(--space-xs)}.editor-block__settings{display:grid;gap:var(--space-sm);padding-top:var(--space-md);border-top:1px dashed rgba(17,17,17,.14)}.editor-block__settings-grid{display:grid;gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(12rem,max-content));align-items:center}.editor-block-drag-overlay{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:var(--space-2xs) var(--space-xs);inline-size:15rem;max-inline-size:calc(100vw - 2rem);padding:var(--space-sm) var(--space-md);border:2px solid var(--color-drop);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:0 .75rem 2rem #11111129;pointer-events:none}.editor-block-drag-overlay:before{content:"";grid-row:1/span 2;align-self:center;justify-self:center;inline-size:.75rem;block-size:1.6rem;border-inline:2px dotted var(--color-text-muted);opacity:.75}.editor-block-drag-overlay__eyebrow{min-width:0;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.editor-block-drag-overlay__label{min-width:0;overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.editor-node--section{--editor-node-rail-bg: #6084b6;--editor-node-header-tint: #6084b6}.editor-section__blocks{position:relative;display:grid;gap:var(--space-md);min-height:4rem;border-radius:var(--radius-sm)}.editor-section__block-slot{position:relative}.editor-section__block-insertion-target{position:absolute;z-index:2;inset-inline:0;block-size:2rem;pointer-events:none}.editor-section__block-insertion-target--before{inset-block-start:-1rem}.editor-section__block-insertion-target--after{inset-block-end:-1rem}.editor-section__empty-drop-target{transition:border-color .15s ease,outline-color .15s ease}.editor-section__empty-drop-target--drop{outline:2px solid var(--color-drop);outline-offset:var(--space-xs)}.editor-section__add-row,.editor-section__settings{display:grid;gap:var(--space-sm);padding-top:var(--space-md);border-top:1px dashed rgba(17,17,17,.14)}.editor-section__settings-panel{display:grid;gap:var(--space-sm)}.handler-settings{display:grid;gap:var(--space-md);padding-top:var(--space-sm);border-top:1px solid rgba(17,17,17,.12)}.handler-settings__list{display:grid;gap:var(--space-md)}.editor-node--handler{--editor-node-rail-bg: #4f8f7d;--editor-node-header-tint: #4f8f7d}.tabs{display:grid;gap:var(--space-md)}.tabs__list{display:flex;flex-wrap:wrap;gap:var(--space-lg);border-bottom:1px solid rgba(17,17,17,.12)}.tabs__tab{position:relative;padding:0 0 var(--space-sm);border:0;border-radius:0;background:transparent;color:var(--color-text-muted);font-size:1rem;font-weight:700;box-shadow:none}.tabs__tab:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:3px;background:transparent}.tabs__tab:hover:not(:disabled){transform:none;color:var(--color-text)}.tabs__tab--active{color:var(--color-text)}.tabs__tab--active:after{background:#00b8aa}.tabs__panel{display:grid;gap:var(--space-md)}:root{--color-bg: #f5f1ea;--color-surface: #fffdf9;--color-surface-muted: #ece6db;--color-text: #111111;--color-text-muted: rgba(17, 17, 17, .65);--color-border: #111111;--color-accent: #111111;--color-accent-contrast: #fffdf9;--color-danger: #9d1d17;--color-drop: #111111;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--radius-sm: .35rem;--radius-md: .65rem;--font-sans: "Work Sans", "Avenir Next", "Helvetica Neue", sans-serif;--font-mono: "IBM Plex Mono", "SFMono-Regular", monospace}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh;font-family:var(--font-sans);line-height:1.5;color:var(--color-text);background:radial-gradient(circle at top left,rgba(17,17,17,.08),transparent 35%),linear-gradient(180deg,#f9f6f0 0%,var(--color-bg) 100%)}img,svg{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}button{border:0;background:transparent;padding:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}button:disabled{cursor:not-allowed;opacity:.45}input,textarea,select{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:.8rem .95rem}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--color-border);outline-offset:2px}textarea{resize:vertical;min-height:6rem}label{display:block;margin-bottom:var(--space-xs);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}h1,h2,h3,h4,p,ul{margin-top:0}h1,h2,h3,h4{line-height:1.05;letter-spacing:-.03em}h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:var(--space-xs)}h2{font-size:clamp(1.4rem,3vw,2rem);margin-bottom:var(--space-sm)}h3{font-size:1.15rem;margin-bottom:var(--space-xs)}h4{font-size:1rem;margin-bottom:var(--space-xs)}code{font-family:var(--font-mono);font-size:.92em}ul{padding-left:1.2rem}.app-shell{--app-shell-padding: var(--space-lg);padding:var(--app-shell-padding)}.app-shell__header{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:minmax(12rem,1fr) minmax(0,2fr) auto;align-items:center;gap:var(--space-md);margin:calc(var(--app-shell-padding) * -1) calc(var(--app-shell-padding) * -1) var(--space-lg);padding:var(--space-sm) var(--app-shell-padding);border-bottom:1px solid rgba(17,17,17,.12);background:#fffdf9eb;-webkit-backdrop-filter:blur(.75rem);backdrop-filter:blur(.75rem)}.app-shell__brand{display:grid;gap:.05rem}.app-shell__brand .eyebrow,.app-shell__brand h1,.app-shell__brand .helper-text,.app-shell__status p{margin:0}.app-shell__brand .eyebrow{font-size:.65rem}.app-shell__brand h1{font-size:1.1rem;line-height:1.15}.app-shell__brand .helper-text{font-size:.78rem}.app-shell__status{min-width:0;display:flex;flex-wrap:wrap;gap:var(--space-xs);align-items:center;justify-content:flex-end}.app-shell__status .status-pill{max-width:24rem;padding:.32rem .55rem;overflow:hidden;font-size:.75rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.app-nav{display:flex;gap:var(--space-xs);align-items:flex-start;list-style:none;padding:0;margin:0}.route-page,.editor-layout{display:flex;align-items:start;justify-content:center}.route-page--auth{grid-template-columns:minmax(0,24rem) minmax(20rem,28rem);align-items:center;min-height:calc(100vh - 11rem)}.route-page--surveys{display:grid;justify-content:stretch;gap:var(--space-lg)}.route-page>.panel,.editor-layout__main{display:grid;gap:var(--space-lg);max-width:80rem;flex-grow:1}.panel,.block-card,.question-card{position:relative;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.panel{padding:var(--space-lg)}.panel--hero{background:linear-gradient(145deg,rgba(17,17,17,.03),transparent 45%),var(--color-surface)}.panel__header,.block-card__header,.question-card__header,.option-list__row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-md)}.panel__stack{display:grid;gap:var(--space-md)}.eyebrow{margin-bottom:var(--space-xs);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted)}.button-group,.card-actions,.toggle-row,.add-row{display:flex;flex-wrap:wrap;gap:var(--space-xs);align-items:center}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.helper-text{margin:0;color:var(--color-text-muted);font-size:.92rem}.status-pill{display:inline-flex;align-items:center;padding:.45rem .7rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-muted);font-size:.85rem;font-weight:600}.status-pill--ok{background:#30844a24}.status-pill--error{color:var(--color-danger);background:#9d1d171f}.block-list{display:grid;gap:var(--space-lg)}.square-icon{width:2.4rem;height:2.4rem;min-width:2.4rem;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#ffffffc7;color:var(--color-text);border:1px solid rgba(17,17,17,.12);border-radius:var(--radius-sm);box-shadow:none}.square-icon:hover:not(:disabled){background:var(--color-accent);color:var(--color-accent-contrast)}.square-icon--danger{color:var(--color-danger)}.square-icon--active{background:#11111114}.square-icon svg{width:1.1rem;height:1.1rem}.block-card,.question-card,.option-list__item{position:relative}.block-card{padding:var(--space-lg)}.block-card__body,.question-card__body,.block-card__questions,.option-list{display:grid;gap:var(--space-md)}.block-card__questions{margin-top:var(--space-md)}.block-card__footer{padding-top:var(--space-sm);border-top:1px solid rgba(17,17,17,.15)}.question-card{padding:1.1rem 1.25rem .9rem;border-left:4px solid #4a74d6;background:linear-gradient(180deg,rgba(17,17,17,.02),transparent 24%),var(--color-surface)}.question-card__body{margin-top:var(--space-sm)}.question-card__type{width:min(15rem,100%);display:grid;gap:var(--space-xs)}.question-card__controls{display:grid;justify-items:end;gap:var(--space-sm)}.question-card__footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-md);align-items:center;padding-top:var(--space-sm);border-top:1px solid rgba(17,17,17,.12)}.card-title{display:flex;gap:var(--space-sm);align-items:flex-start;min-width:0}.drag-handle{cursor:grab}.checkbox{display:inline-flex;gap:var(--space-xs);align-items:center;margin:0;font-size:.92rem;font-weight:600;text-transform:none;letter-spacing:normal}.checkbox input{width:1rem;height:1rem;accent-color:var(--color-accent)}.option-list{padding:var(--space-sm) 0 0;border:0;border-radius:var(--radius-sm);background:transparent}.option-list__header,.option-list__item,.option-list__actions{display:grid;gap:var(--space-sm)}.option-list__item{padding:var(--space-xs) 0;border-top:0}.option-list__item:first-of-type{padding-top:0;border-top:0}.option-list__row{align-items:center;gap:var(--space-sm)}.option-list__main{min-width:0;flex:1}.option-list__bullet{width:1.1rem;height:1.1rem;margin-top:2rem;border:1px solid rgba(17,17,17,.35);border-radius:999px}.option-list__route{width:min(16rem,100%)}.option-list__actions{align-items:center;justify-items:end}.option-list__item--other{padding-top:var(--space-xs)}.option-list__other-toggle{padding-top:var(--space-xs);border-top:1px solid rgba(17,17,17,.12)}.flow-rule,.translation-input{display:grid;gap:var(--space-xs)}.translation-input__header{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:var(--space-xs);align-items:center}.translation-input__body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-sm);align-items:start}.translation-input__field-wrap{min-width:0}.translation-input__controls{display:grid;gap:var(--space-xs);align-content:start}.translation-input__language{width:10rem;padding:.45rem .65rem}.translation-input__badge{display:inline-flex;align-items:center;padding:.25rem .55rem;border:1px solid currentColor;border-radius:999px;color:var(--color-danger);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.translation-input__badge--neutral{color:var(--color-text-muted)}.translation-input--missing .translation-input__field{border-color:var(--color-danger);background:#9d1d170d}.translation-input--option{gap:var(--space-2xs)}.translation-input--option .translation-input__field{border-width:0 0 1px;border-radius:0;background:transparent;padding:.6rem .4rem}.translation-input--option.translation-input--missing .translation-input__field{background:#9d1d1708}.language-settings{display:grid;gap:var(--space-md);padding-top:var(--space-sm);border-top:1px solid rgba(17,17,17,.12)}.language-settings__list{display:grid;gap:var(--space-sm)}.language-settings__row{display:grid;grid-template-columns:minmax(0,12rem) minmax(0,1fr) auto auto;gap:var(--space-sm);align-items:end}.language-settings__field,.language-settings__default{display:grid;gap:var(--space-xs)}.option-list__missing-note{padding-left:2rem}.survey-list{display:grid;gap:var(--space-xs);list-style:none;padding:0;margin:0}.survey-list__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-xs);align-items:stretch}.survey-list__row--active .survey-list__item{background:var(--color-accent);color:var(--color-accent-contrast)}.survey-list__item{width:100%;display:grid;gap:.2rem;padding:.7rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);text-align:left;background:transparent;color:var(--color-text)}.survey-list__delete{align-self:stretch;white-space:nowrap}.block-card--dragging,.question-card--dragging,.option-list__item--dragging{opacity:.55}.empty-state{padding:var(--space-md);border:1px dashed rgba(17,17,17,.25);border-radius:var(--radius-sm);background:#ffffff80}.empty-state p:last-child{margin-bottom:0}.empty-state--subtle{padding:.85rem}.block-card--drop-before:before,.block-card--drop-after:after,.question-card--drop-before:before,.question-card--drop-after:after,.option-list__item--drop-before:before,.option-list__item--drop-after:after{content:"";position:absolute;left:0;right:0;height:4px;border-radius:999px;background:var(--color-drop)}.block-card--drop-before:before,.question-card--drop-before:before,.option-list__item--drop-before:before{top:-.8rem}.block-card--drop-after:after,.question-card--drop-after:after,.option-list__item--drop-after:after{bottom:-.8rem}.u-mt-sm{margin-top:var(--space-sm)}.u-mt-md{margin-top:var(--space-md)}.u-p-md{padding:var(--space-md)}@media (max-width: 960px){.app-shell__header{grid-template-columns:1fr;align-items:start}.app-shell__status,.app-nav{justify-content:flex-start}.route-page--auth{grid-template-columns:1fr}}@media (max-width: 720px){.app-shell{--app-shell-padding: var(--space-md)}.field-grid{grid-template-columns:1fr}.panel,.block-card,.question-card{padding:var(--space-md)}.card-title,.option-list__row{flex-direction:column}.language-settings__row{grid-template-columns:1fr;align-items:stretch}.translation-input__body{grid-template-columns:1fr}.translation-input__language{width:100%}}
