.cm{--cm-font-ui: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--cm-n0: #ffffff;--cm-n50: #f8f8f9;--cm-n100: #f1f1f3;--cm-n150: #e9e9ec;--cm-n200: #e0e0e4;--cm-n300: #cfcfd5;--cm-n400: #a3a3ad;--cm-n500: #74747f;--cm-n600: #55555f;--cm-n700: #3d3d46;--cm-n900: #1b1b20;--cm-accent: #2f5fd0;--cm-accent-hover: #2550b8;--cm-accent-press: #1d4399;--cm-accent-subtle: #ecf1fd;--cm-accent-subtle-hover: #dde6fb;--cm-accent-text: #1f4bb3;--cm-on-accent: #ffffff;--cm-on-accent-divider: rgb(255 255 255 / .35);--cm-on-accent-hover: rgb(255 255 255 / .12);--cm-scrim: rgb(20 20 30 / .28);--cm-danger: #b42318;--cm-danger-subtle: #fdeceb;--cm-warning: #a15c07;--cm-warning-subtle: #fdf3e2;--cm-success: #18794e;--cm-success-subtle: #e8f5ee;--cm-text: var(--cm-n900);--cm-text-muted: var(--cm-n600);--cm-text-faint: var(--cm-n500);--cm-border: var(--cm-n200);--cm-border-strong: var(--cm-n300);--cm-surface: var(--cm-n0);--cm-chrome: var(--cm-n50);--cm-canvas: var(--cm-n150);--cm-s1: 4px;--cm-s2: 8px;--cm-s3: 12px;--cm-s4: 16px;--cm-s5: 24px;--cm-s6: 32px;--cm-r1: 4px;--cm-r2: 6px;--cm-r3: 10px;--cm-control: 32px;--cm-shadow-1: 0 1px 2px rgb(20 20 30 / .08);--cm-shadow-2: 0 4px 16px rgb(20 20 30 / .12), 0 1px 3px rgb(20 20 30 / .08);--cm-shadow-3: 0 16px 48px rgb(20 20 30 / .22);--cm-focus: 0 0 0 2px var(--cm-n0), 0 0 0 4px var(--cm-accent);--color-bg: var(--cm-chrome);--color-surface: var(--cm-n100);--color-text: var(--cm-text);--color-divider: var(--cm-border);--color-accent: var(--cm-accent);--color-accent-2: var(--cm-accent);--color-neutral-100: var(--cm-n50);--color-neutral-200: var(--cm-n100);--color-neutral-300: var(--cm-n200);--color-neutral-400: var(--cm-n300);--color-neutral-500: var(--cm-n400);--color-neutral-600: var(--cm-n500);--color-neutral-700: var(--cm-n600);--color-neutral-800: var(--cm-n700);--color-neutral-900: var(--cm-n900);--color-accent-100: var(--cm-accent-subtle);--color-accent-200: var(--cm-accent-subtle-hover);--color-accent-300: color-mix(in srgb, var(--cm-accent) 35%, var(--cm-n0));--color-accent-400: color-mix(in srgb, var(--cm-accent) 60%, var(--cm-n0));--color-accent-500: var(--cm-accent);--color-accent-600: var(--cm-accent-hover);--color-accent-700: var(--cm-accent-press);--color-accent-800: var(--cm-accent-text);--color-accent-900: color-mix(in srgb, var(--cm-accent) 50%, var(--cm-n900));--color-accent-2-100: var(--color-accent-100);--color-accent-2-200: var(--color-accent-200);--color-accent-2-300: var(--color-accent-300);--color-accent-2-400: var(--color-accent-400);--color-accent-2-500: var(--color-accent-500);--color-accent-2-600: var(--color-accent-600);--color-accent-2-700: var(--color-accent-700);--color-accent-2-800: var(--color-accent-800);--color-accent-2-900: var(--color-accent-900);--font-heading: var(--cm-font-ui);--font-body: var(--cm-font-ui);--radius-sm: var(--cm-r1);--radius-md: var(--cm-r2);--radius-lg: var(--cm-r3);--shadow-sm: var(--cm-shadow-1);--shadow-md: var(--cm-shadow-2);--shadow-lg: var(--cm-shadow-3);--ink: var(--cm-text);--ink-soft: var(--cm-text-muted);--line: var(--cm-border);--paper: var(--cm-surface);--paper-strong: var(--cm-n100);--accent: var(--cm-accent);font-family:var(--cm-font-ui);font-size:13px;line-height:1.4;color:var(--cm-text);-webkit-font-smoothing:antialiased}.cm *,.cm *:before,.cm *:after{box-sizing:border-box}.cm :focus-visible{outline:none;box-shadow:var(--cm-focus)}.cm h1,.cm h2,.cm h3,.cm h4,.cm p{margin:0}.cm-app{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:auto auto auto 1fr auto;background:var(--cm-chrome)}.cm-titlebar{display:flex;align-items:center;gap:var(--cm-s2);height:44px;padding:0 var(--cm-s2);background:var(--cm-surface);border-bottom:1px solid var(--cm-border)}.cm-brand{display:flex;align-items:center;gap:var(--cm-s2);font-weight:650;font-size:14px;padding-right:var(--cm-s2)}.cm-title{display:flex;align-items:center;gap:var(--cm-s2);min-width:0}.cm-title-input{font:inherit;font-size:14px;font-weight:550;color:var(--cm-text);border:1px solid transparent;background:transparent;border-radius:var(--cm-r1);padding:4px 6px;width:22ch;min-width:8ch}.cm-title-input:hover{border-color:var(--cm-border)}.cm-title-input:focus{border-color:var(--cm-accent);background:var(--cm-surface)}.cm-save-state{color:var(--cm-text-faint);font-size:12px;white-space:nowrap}.cm-save-state[data-tone=warn]{color:var(--cm-warning)}.cm-save-state[data-tone=error]{color:var(--cm-danger)}.cm-titlebar-spacer{flex:1}.cm-search{display:flex;align-items:center;gap:var(--cm-s2);width:min(320px,30vw);height:30px;padding:0 var(--cm-s2) 0 10px;border:1px solid var(--cm-border);border-radius:var(--cm-r2);background:var(--cm-n50);color:var(--cm-text-faint);font:inherit;cursor:text}.cm-search:hover{border-color:var(--cm-border-strong)}.cm-search>span{flex:1;text-align:left}.cm-kbd{font-family:var(--cm-font-ui);font-size:11px;color:var(--cm-text-muted);border:1px solid var(--cm-border);border-bottom-width:2px;border-radius:var(--cm-r1);padding:0 5px;background:var(--cm-surface);white-space:nowrap}.cm-tabs{display:flex;align-items:flex-end;gap:2px;padding:0 var(--cm-s3);background:var(--cm-surface)}.cm-tab{position:relative;font:inherit;font-weight:550;color:var(--cm-text-muted);background:transparent;border:0;padding:9px 14px 10px;cursor:pointer;border-radius:var(--cm-r1) var(--cm-r1) 0 0}.cm-tab:hover{color:var(--cm-text);background:var(--cm-n100)}.cm-tab[aria-selected=true]{color:var(--cm-accent-text)}.cm-tab[aria-selected=true]:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--cm-accent)}.cm-tab-step{color:var(--cm-text-faint);font-weight:450;margin-right:6px;font-variant-numeric:tabular-nums}.cm-tab[data-contextual=true]{color:var(--cm-success)}.cm-ribbon{display:flex;align-items:stretch;gap:var(--cm-s1);min-height:48px;padding:var(--cm-s1) var(--cm-s3);background:var(--cm-surface);border-top:1px solid var(--cm-border);border-bottom:1px solid var(--cm-border);overflow-x:auto}.cm-ribbon-group{display:flex;align-items:center;gap:2px;padding:0 var(--cm-s2);border-right:1px solid var(--cm-border)}.cm-ribbon-group:last-child{border-right:0}.cm-ribbon-group-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.cm-ribbon-end{flex:0 1 320px;min-width:200px;margin-left:auto;display:flex;align-items:center;gap:var(--cm-s2);color:var(--cm-text-muted);font-size:12px}.cm-ribbon-hint{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.cm-body{display:flex;min-height:0}.cm-rail{display:flex;flex-direction:column;align-items:center;gap:2px;width:52px;padding:var(--cm-s2) 0;background:var(--cm-surface);border-right:1px solid var(--cm-border)}.cm-rail-sep{width:28px;height:1px;background:var(--cm-border);margin:var(--cm-s1) 0}.cm-side{width:320px;flex:none;display:flex;flex-direction:column;min-height:0;background:var(--cm-surface);border-right:1px solid var(--cm-border)}.cm-canvas{position:relative;flex:1;min-width:0;min-height:0;background:var(--cm-canvas);outline:none}.cm-canvas:focus-visible{box-shadow:inset 0 0 0 2px var(--cm-accent)}.cm-inspector{width:340px;flex:none;display:flex;flex-direction:column;min-height:0;overflow-y:auto;background:var(--cm-surface);border-left:1px solid var(--cm-border)}.cm-banner{display:flex;align-items:center;gap:var(--cm-s3);padding:var(--cm-s2) var(--cm-s4);border-bottom:1px solid var(--cm-border);background:var(--cm-accent-subtle)}.cm-banner[data-tone=warn]{background:var(--cm-warning-subtle)}.cm-banner[data-tone=error]{background:var(--cm-danger-subtle)}.cm-banner>p{flex:1}.cm-main{flex:1;min-width:0;display:flex;flex-direction:column}.cm-status{display:flex;align-items:center;gap:2px;height:28px;padding:0 var(--cm-s2);background:var(--cm-surface);border-top:1px solid var(--cm-border);color:var(--cm-text-muted);font-size:12px}.cm-status-item{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 var(--cm-s2);border:0;border-radius:var(--cm-r1);background:transparent;color:inherit;font:inherit;white-space:nowrap}button.cm-status-item{cursor:pointer}button.cm-status-item:hover:not(:disabled){background:var(--cm-n100);color:var(--cm-text)}.cm-status-item[data-tone=error]{color:var(--cm-danger)}.cm-status-item[data-tone=warn]{color:var(--cm-warning)}.cm-status-item[data-tone=ok]{color:var(--cm-success)}.cm-status-spacer{flex:1}.cm-status-zoom{min-width:44px;justify-content:center;font-variant-numeric:tabular-nums}.cm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--cm-control);padding:0 12px;border:1px solid var(--cm-border-strong);border-radius:var(--cm-r2);background:var(--cm-surface);color:var(--cm-text);font:inherit;font-weight:520;white-space:nowrap;cursor:pointer}.cm-btn:hover:not(:disabled){background:var(--cm-n100)}.cm-btn:active:not(:disabled){background:var(--cm-n150)}.cm-btn:disabled{color:var(--cm-n400);cursor:default}.cm-btn[data-variant=primary]{background:var(--cm-accent);border-color:var(--cm-accent);color:var(--cm-on-accent)}.cm-btn[data-variant=primary]:hover:not(:disabled){background:var(--cm-accent-hover)}.cm-btn[data-variant=primary]:active:not(:disabled){background:var(--cm-accent-press)}.cm-btn[data-variant=primary]:disabled{background:var(--cm-n200);border-color:var(--cm-n200);color:var(--cm-n500)}.cm-btn[data-variant=danger]{color:var(--cm-danger)}.cm-btn[data-variant=ghost],.cm-btn[data-variant=ribbon],.cm-btn[data-variant=rail]{border-color:transparent;background:transparent}.cm-btn[data-variant=ribbon]{padding:0 10px}.cm-btn[data-variant=ribbon][aria-pressed=true],.cm-btn[data-variant=rail][aria-pressed=true]{background:var(--cm-accent-subtle);color:var(--cm-accent-text)}.cm-btn[data-variant=rail]{width:40px;height:40px;padding:0;flex-direction:column;gap:0}.cm-btn[data-variant=rail] .cm-btn-key{font-size:9px;line-height:1;color:var(--cm-text-faint)}.cm-btn[data-size=small]{height:26px;padding:0 8px;font-size:12px}.cm-btn[data-icon-only=true]{width:var(--cm-control);padding:0}.cm-btn[data-size=small][data-icon-only=true]{width:26px}.cm-btn svg{flex:none}.cm-split{display:inline-flex}.cm-split>.cm-btn:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.cm-split>.cm-btn:last-child,.cm-split>.cm-menu-anchor>.cm-btn{border-top-left-radius:0;border-bottom-left-radius:0;border-left-color:var(--cm-on-accent-divider);padding:0 6px}.cm-segmented{display:inline-flex;padding:2px;gap:2px;border-radius:var(--cm-r2);background:var(--cm-n100)}.cm-segmented>button{white-space:nowrap;height:26px;padding:0 10px;border:0;border-radius:var(--cm-r1);background:transparent;color:var(--cm-text-muted);font:inherit;font-weight:520;cursor:pointer}.cm-segmented>button:hover:not(:disabled){color:var(--cm-text)}.cm-segmented>button[aria-pressed=true]{background:var(--cm-surface);color:var(--cm-text);box-shadow:var(--cm-shadow-1)}.cm-segmented>button:disabled{color:var(--cm-n400);cursor:default}.cm-check{display:flex;align-items:flex-start;gap:var(--cm-s2);cursor:pointer}.cm-check input{margin:2px 0 0;accent-color:var(--cm-accent)}.cm-field{display:flex;flex-direction:column;gap:var(--cm-s1)}.cm-label{font-size:12px;font-weight:550;color:var(--cm-text-muted)}.cm-input,.cm-select,.cm-textarea{font:inherit;color:var(--cm-text);background:var(--cm-surface);border:1px solid var(--cm-border-strong);border-radius:var(--cm-r2);padding:6px 8px}.cm-input,.cm-select{height:var(--cm-control)}.cm-input:focus,.cm-select:focus,.cm-textarea:focus{outline:none;border-color:var(--cm-accent);box-shadow:0 0 0 1px var(--cm-accent)}.cm-menu-anchor{position:relative;display:inline-flex}.cm-menu{position:absolute;z-index:40;top:calc(100% + 4px);left:0;min-width:220px;padding:var(--cm-s1);background:var(--cm-surface);border:1px solid var(--cm-border);border-radius:var(--cm-r2);box-shadow:var(--cm-shadow-2)}.cm-menu[data-floating=true]{top:auto;z-index:60;max-height:calc(100vh - 140px);overflow-y:auto}.cm-menu[data-align=end]{left:auto;right:0}.cm-menu-item{display:flex;align-items:center;gap:var(--cm-s2);width:100%;min-height:30px;padding:4px 8px;border:0;border-radius:var(--cm-r1);background:transparent;color:var(--cm-text);font:inherit;text-align:left;cursor:pointer}.cm-menu-item:hover:not(:disabled),.cm-menu-item[data-active=true]{background:var(--cm-n100)}.cm-menu-item:disabled{color:var(--cm-n400);cursor:default}.cm-menu-item>.cm-menu-label{flex:1}.cm-menu-item .cm-menu-detail{display:block;font-size:12px;color:var(--cm-text-faint)}.cm-menu-check{width:16px;display:inline-flex;color:var(--cm-accent)}.cm-menu-sep{height:1px;margin:var(--cm-s1) 0;background:var(--cm-border)}.cm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;background:var(--cm-scrim)}.cm-dialog{display:flex;flex-direction:column;width:min(560px,92vw);max-height:72vh;background:var(--cm-surface);border-radius:var(--cm-r3);box-shadow:var(--cm-shadow-3);overflow:hidden}.cm-dialog-head{display:flex;align-items:center;gap:var(--cm-s2);padding:var(--cm-s3) var(--cm-s4);border-bottom:1px solid var(--cm-border)}.cm-dialog-head h2{flex:1;font-size:15px;font-weight:620}.cm-dialog-body{padding:var(--cm-s4);overflow-y:auto}.cm-palette-input{width:100%;border:0;border-bottom:1px solid var(--cm-border);padding:14px var(--cm-s4);font:inherit;font-size:15px;outline:none}.cm-palette-list{overflow-y:auto;padding:var(--cm-s1)}.cm-palette-group{padding:8px 8px 4px;font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--cm-text-faint)}.cm-palette-empty{padding:var(--cm-s4);color:var(--cm-text-muted)}.cm-shortcut-table{width:100%;border-collapse:collapse}.cm-shortcut-table th{text-align:left;font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--cm-text-faint);padding:var(--cm-s3) 0 var(--cm-s1)}.cm-shortcut-table td{padding:5px 0;border-bottom:1px solid var(--cm-n100)}.cm-shortcut-table td:last-child{text-align:right}.cm-panel{padding:var(--cm-s4);border-bottom:1px solid var(--cm-border)}.cm-panel:last-child{border-bottom:0}.cm-panel-head{display:flex;align-items:center;gap:var(--cm-s2);margin-bottom:var(--cm-s3)}.cm-panel-title{flex:1;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--cm-text-faint)}.cm-panel-grow{flex:1;min-height:0;display:flex;flex-direction:column}.cm-muted{color:var(--cm-text-muted)}.cm-faint{color:var(--cm-text-faint);font-size:12px}.cm-stack{display:flex;flex-direction:column;gap:var(--cm-s3)}.cm-row{display:flex;align-items:center;gap:var(--cm-s2);flex-wrap:wrap}.cm-pattern{font-family:var(--font-print);font-size:20px;letter-spacing:.18em;font-weight:600}.cm-badge{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:9px;font-size:11px;font-weight:600;background:var(--cm-n100);color:var(--cm-text-muted)}.cm-badge[data-tone=accent]{background:var(--cm-accent-subtle);color:var(--cm-accent-text)}.cm-badge[data-tone=ok]{background:var(--cm-success-subtle);color:var(--cm-success)}.cm-badge[data-tone=warn]{background:var(--cm-warning-subtle);color:var(--cm-warning)}.cm-badge[data-tone=error]{background:var(--cm-danger-subtle);color:var(--cm-danger)}.cm-empty{padding:var(--cm-s5) var(--cm-s4);color:var(--cm-text-muted);text-align:center}.cm-link{border:0;padding:0;background:none;color:var(--cm-accent-text);font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.cm-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@keyframes cm-spin{to{transform:rotate(360deg)}}.cm-spin{animation:cm-spin 1s linear infinite}.cm-candidates{list-style:none;margin:0;padding:0;overflow-y:auto;max-height:52vh;border:1px solid var(--cm-border);border-radius:var(--cm-r2)}.cm-candidates:focus-visible{box-shadow:var(--cm-focus)}.cm-candidate{display:flex;align-items:center;gap:var(--cm-s2);padding:0 var(--cm-s1) 0 0;border-bottom:1px solid var(--cm-n100)}.cm-candidate:last-child{border-bottom:0}.cm-candidate[data-active=true],.cm-candidate:hover{background:var(--cm-accent-subtle)}.cm-candidate-word{flex:1;min-width:0;text-align:left;padding:6px 10px;border:0;background:transparent;font-family:var(--font-print);font-size:15px;letter-spacing:.06em;color:var(--cm-text);cursor:pointer}.cm-candidate[data-band="3"] .cm-candidate-word{color:var(--cm-text-muted)}.cm-candidate-badges{display:flex;gap:4px}.cm-candidate-more{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;border-radius:var(--cm-r1);background:transparent;color:var(--cm-text-faint);cursor:pointer}.cm-candidate-more:hover{background:var(--cm-n150);color:var(--cm-text)}.cm-verdict .panel-sub{margin:0 0 var(--cm-s2);color:var(--cm-text-muted)}.cm-verdict [role=alert]{color:var(--cm-danger)}.cm-verdict .problem-list{margin:0 0 var(--cm-s2);padding-left:18px;color:var(--cm-text-muted)}.cm-verdict .problem-code{font-family:ui-monospace,monospace;font-size:11px}.cm-verdict .link-button{border:0;padding:0;background:none;color:var(--cm-accent-text);font:inherit;text-decoration:underline;cursor:pointer}.cm-attribution{color:var(--cm-text-faint);font-size:11px}.cm-attribution a{color:inherit}.cm-word-clues{margin:0;padding-left:18px;font-family:var(--font-print);font-size:14px}.cm-side-scroll{flex:1;min-height:0;overflow-y:auto}.cm-clue-rows{list-style:none;margin:0;padding:0 0 var(--cm-s4)}.cm-clue-row{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"where answer badge" "text text text";gap:2px var(--cm-s2);width:100%;padding:var(--cm-s2) var(--cm-s4);border:0;border-bottom:1px solid var(--cm-n100);background:transparent;color:var(--cm-text);font:inherit;text-align:left;cursor:pointer}.cm-clue-row:hover{background:var(--cm-n50)}.cm-clue-row[aria-current=true]{background:var(--cm-accent-subtle);box-shadow:inset 3px 0 0 var(--cm-accent)}.cm-clue-row-where{grid-area:where;color:var(--cm-text-faint);font-size:11px;font-variant-numeric:tabular-nums}.cm-clue-row-answer{grid-area:answer;font-family:var(--font-print);font-weight:600;letter-spacing:.08em}.cm-clue-row .cm-badge{grid-area:badge}.cm-clue-row-text{grid-area:text;font-family:var(--font-print);font-size:14px}.cm-clue-row-text[data-empty=true]{color:var(--cm-text-faint);font-style:italic}.cm-clue-editor{display:flex;gap:var(--cm-s4);align-items:flex-start}.cm-clue-input{width:100%;font-family:var(--font-print);font-size:15px}.cm-clue-preview{flex:none;align-self:center;margin-top:var(--cm-s2);border-radius:var(--cm-r1);box-shadow:var(--cm-shadow-1)}.cm-fit-bar{height:4px;border-radius:2px;background:var(--cm-n150);overflow:hidden;margin-bottom:6px}.cm-fit-bar>span{display:block;height:100%;background:var(--cm-success)}.cm-fit[data-fits=false] .cm-fit-bar>span{background:var(--cm-danger)}.cm-fit[data-fits=false] p{color:var(--cm-danger)}.cm-clue-tools .panel-sub{margin:0 0 var(--cm-s2);color:var(--cm-text-muted)}.cm-clue-tools .stored-clue-list{list-style:none;margin:0 0 var(--cm-s2);padding:0;border:1px solid var(--cm-border);border-radius:var(--cm-r2)}.cm-clue-tools .stored-clue{display:flex;justify-content:space-between;gap:var(--cm-s2);width:100%;padding:6px 10px;border:0;border-bottom:1px solid var(--cm-n100);background:transparent;font:inherit;text-align:left;cursor:pointer}.cm-clue-tools .stored-clue:hover{background:var(--cm-accent-subtle)}.cm-clue-tools .stored-clue-text{font-family:var(--font-print);font-size:14px}.cm-clue-tools .stored-clue-meta{color:var(--cm-text-faint);font-size:11px}.cm-clue-tools .btn{display:inline-flex;align-items:center;height:28px;padding:0 10px;border:1px solid var(--cm-border-strong);border-radius:var(--cm-r2);background:var(--cm-surface);font:inherit;cursor:pointer}.cm-clue-tools .btn:hover:not(:disabled){background:var(--cm-n100)}.cm-clue-tools .link-button{border:0;padding:0;background:none;color:var(--cm-accent-text);font:inherit;text-decoration:underline;cursor:pointer}.cm-clue-preview-square{position:relative}.cm-clue-preview-square>svg{display:block;width:100%;height:auto}.cm-clue-preview-square>.cm-clue-preview-outline{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.cm-checklist{list-style:none;margin:0 0 var(--cm-s2);padding:0}.cm-checklist li{padding:3px 0 3px 22px;position:relative}.cm-checklist li:before{content:"";position:absolute;left:2px;top:7px;width:10px;height:10px;border-radius:50%;border:2px solid var(--cm-warning)}.cm-checklist li[data-done=true]:before{border-color:var(--cm-success);background:var(--cm-success)}.cm-problems{list-style:none;margin:0;padding:0}.cm-problem{display:grid;grid-template-columns:18px 1fr auto;gap:var(--cm-s2);align-items:start;padding:var(--cm-s2) 0;border-bottom:1px solid var(--cm-n100)}.cm-problem-icon{padding-top:2px;color:var(--cm-warning)}.cm-problem[data-severity=error] .cm-problem-icon{color:var(--cm-danger)}.cm-print-stage{flex:1;min-height:0;overflow:auto;padding:var(--cm-s6);background:var(--cm-canvas);display:flex;flex-direction:column;align-items:center;gap:var(--cm-s3)}.cm-print-page{height:calc(100vh - 230px);width:auto;max-width:100%;flex:none;box-shadow:var(--cm-shadow-2)}.cm-print-problems{margin:0;color:var(--cm-danger)}.cm-export .panel-title{font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--cm-text-faint);margin:0 0 var(--cm-s3)}.cm-export label,.cm-export .field{display:flex;flex-direction:column;gap:4px;margin-bottom:var(--cm-s3)}.cm-export input,.cm-export select{font:inherit;height:var(--cm-control);padding:4px 8px;border:1px solid var(--cm-border-strong);border-radius:var(--cm-r2)}.cm-export input[type=checkbox]{height:auto}.cm-export a.btn,.cm-export .btn-primary{display:inline-flex;align-items:center;justify-content:center;height:var(--cm-control);padding:0 12px;margin:0 var(--cm-s2) var(--cm-s2) 0;border-radius:var(--cm-r2);border:1px solid var(--cm-border-strong);background:var(--cm-surface);color:var(--cm-text);text-decoration:none}.cm-export .btn-primary{background:var(--cm-accent);border-color:var(--cm-accent);color:var(--cm-on-accent)}.cm-admin{grid-template-rows:auto 1fr}.cm-admin-title{font-size:15px;font-weight:620}.cm-admin-body{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(360px,1fr);min-height:0}.cm-admin-list,.cm-admin-detail{min-height:0;overflow-y:auto;padding:var(--cm-s4)}.cm-admin-detail{background:var(--cm-surface);border-left:1px solid var(--cm-border)}.cm-admin-search{margin-bottom:var(--cm-s3);flex-wrap:nowrap}.cm-admin-search .cm-input{flex:1}.cm-admin-table{width:100%;border-collapse:collapse;background:var(--cm-surface);border:1px solid var(--cm-border);border-radius:var(--cm-r2)}.cm-admin-table th{text-align:left;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--cm-text-faint);padding:var(--cm-s2);border-bottom:1px solid var(--cm-border)}.cm-admin-table td{padding:6px var(--cm-s2);border-bottom:1px solid var(--cm-n100)}.cm-admin-table tr[aria-selected=true] td{background:var(--cm-accent-subtle)}.cm-admin-table tbody tr{cursor:pointer}.cm-num{text-align:right;font-variant-numeric:tabular-nums}.cm-admin-email{flex:1;font-size:16px;font-weight:620;word-break:break-all}.cm-admin-card{padding:var(--cm-s3);border:1px solid var(--cm-border);border-radius:var(--cm-r2)}.cm-admin-card .cm-panel-title{display:block;margin-bottom:var(--cm-s2)}.cm-admin-facts{display:grid;grid-template-columns:auto 1fr;gap:4px var(--cm-s4);margin:0}.cm-admin-facts dt{color:var(--cm-text-muted)}.cm-admin-facts dd{margin:0;font-variant-numeric:tabular-nums}.cm-admin-audit{margin:0;padding-left:18px}.cm-tooltip{position:fixed;z-index:1000;display:grid;gap:2px;max-width:280px;padding:6px var(--cm-s2);border-radius:var(--cm-r1);background:var(--cm-n900);color:var(--cm-n0);font-size:12px;line-height:1.35;box-shadow:var(--cm-shadow-2);pointer-events:none}.cm-tooltip-label{display:flex;align-items:center;gap:var(--cm-s2);font-weight:600}.cm-tooltip .cm-kbd{color:inherit;background:var(--cm-n700);border-color:transparent}.cm-tooltip-detail{color:var(--cm-n300)}.cm-fill-banner{display:flex;align-items:center;gap:var(--cm-s2);padding:var(--cm-s2) var(--cm-s4);background:var(--cm-warning-subtle);border-bottom:1px solid var(--cm-border)}.cm-fill-banner-text{flex:1;margin:0;color:var(--cm-warning)}.cm-backstage{grid-template-rows:none;grid-template-columns:232px minmax(0,1fr)}.cm-backstage-nav{display:flex;flex-direction:column;gap:2px;padding:var(--cm-s4) var(--cm-s2);background:var(--cm-accent-press);color:var(--cm-on-accent);overflow-y:auto}.cm-backstage-back,.cm-backstage-area{display:flex;align-items:center;gap:var(--cm-s2);width:100%;padding:var(--cm-s2) var(--cm-s3);border:0;border-radius:var(--cm-r2);background:none;color:inherit;font:inherit;text-align:left;text-decoration:none;cursor:pointer}.cm-backstage-back span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-backstage-back{margin-bottom:var(--cm-s3);border:1px solid var(--cm-on-accent-divider)}.cm-backstage-back:hover,.cm-backstage-area:hover{background:var(--cm-on-accent-hover)}.cm-backstage-area[aria-current=page]{background:var(--cm-surface);color:var(--cm-accent-text);font-weight:620}.cm-backstage-brand{margin:var(--cm-s2) var(--cm-s3);font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;opacity:.75}.cm-backstage-areas{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.cm-backstage-admin{margin-top:auto}.cm-backstage-main{min-width:0;min-height:0;overflow-y:auto;background:var(--cm-surface)}.cm-backstage-page{max-width:1120px;padding:var(--cm-s5)}.cm-backstage-narrow{max-width:640px}.cm-backstage-title{margin:0 0 var(--cm-s4);font-size:22px;font-weight:620}.cm-backstage-card{display:grid;gap:var(--cm-s2);justify-items:start;margin-bottom:var(--cm-s4);padding:var(--cm-s4);border:1px solid var(--cm-border);border-radius:var(--cm-r2)}.cm-backstage-danger{border-color:var(--cm-danger)}.cm-backstage-failure{color:var(--cm-danger)}.cm-backstage-import{margin-top:var(--cm-s5)}.cm-notices{display:grid;gap:var(--cm-s1);padding:var(--cm-s2) var(--cm-s4);background:var(--cm-danger-subtle);border-bottom:1px solid var(--cm-border);color:var(--cm-danger)}.cm-notices .status-alert{margin:0}.cm-backstage-credit{margin-top:auto;padding:var(--cm-s2) var(--cm-s3);font-size:11px;opacity:.85}.cm-backstage-credit a{color:inherit}.cm-backstage-admin+.cm-backstage-credit{margin-top:var(--cm-s2)}.cm-legend{display:grid;gap:var(--cm-s1);margin:0;padding:0;list-style:none}.cm-legend li{display:flex;align-items:center;gap:var(--cm-s2)}.cm-legend-swatch{width:14px;height:14px;border:1px solid var(--cm-border-strong);border-radius:var(--cm-r1)}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(/fonts/source-serif-4-latin-ext-italic.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(/fonts/source-serif-4-latin-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/fonts/source-serif-4-latin-ext-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/fonts/source-serif-4-latin-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg: #f3f2f2;--color-surface: #eae9e9;--color-text: #201f1d;--color-accent: #b68235;--color-accent-2: #ac803e;--color-divider: color-mix(in srgb, #201f1d 16%, transparent);--color-neutral-100: #f8f4f4;--color-neutral-200: #eae7e7;--color-neutral-300: #d7d3d3;--color-neutral-400: #bab6b6;--color-neutral-500: #9b9797;--color-neutral-600: #7d7979;--color-neutral-700: #605d5d;--color-neutral-800: #444141;--color-neutral-900: #2d2b2b;--color-accent-100: #fff3e4;--color-accent-200: #ffe3bf;--color-accent-300: #facb8d;--color-accent-400: #e1ad66;--color-accent-500: #c28d41;--color-accent-600: #a06f24;--color-accent-700: #7d5411;--color-accent-800: #5a3b0a;--color-accent-900: #3a270d;--color-accent-2-100: #fff3e4;--color-accent-2-200: #ffe3be;--color-accent-2-300: #f5cd96;--color-accent-2-400: #dbaf70;--color-accent-2-500: #bc8f4e;--color-accent-2-600: #9b7232;--color-accent-2-700: #79561f;--color-accent-2-800: #573d14;--color-accent-2-900: #382810;--font-heading: "Source Serif 4", ui-serif, Georgia, "Times New Roman", serif;--font-heading-weight: 600;--font-body: "Source Serif 4", ui-serif, Georgia, "Times New Roman", serif;--font-print: "Source Serif 4", "Source Serif Pro", ui-serif, Georgia, serif;--space-1: 5px;--space-2: 10px;--space-3: 15px;--space-4: 20px;--space-6: 30px;--space-8: 40px;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 7px;--shadow-sm: 0 1px 2px color-mix(in srgb, #2d2b2b 14%, transparent);--shadow-md: 0 3px 10px color-mix(in srgb, #2d2b2b 16%, transparent);--shadow-lg: 0 12px 32px color-mix(in srgb, #2d2b2b 22%, transparent)}*,*:before,*:after{box-sizing:border-box}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.hr{width:100%;height:0;margin:0;border:0;border-top:1px solid var(--color-divider)}.home{display:flex;align-items:stretch;min-height:calc(100vh - 54px)}.home-main{flex:1;min-width:0;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-6);overflow-y:auto}.home-aside{width:360px;flex-shrink:0;padding:var(--space-6) var(--space-4);background:var(--color-neutral-100);border-left:1px solid var(--color-divider);display:flex;flex-direction:column;gap:var(--space-4);overflow-y:auto}@media(max-width:900px){.home{flex-direction:column}.home-aside{width:auto;border-left:0;border-top:1px solid var(--color-divider)}}.home-heading{margin:0;font-family:var(--font-heading);font-weight:400;font-size:30px;line-height:1.1;letter-spacing:-.01em}.home-section-title{margin:0;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:22px}.home-kicker{margin:0 0 var(--space-2);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent-700)}.home-row{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.home-resume{margin-top:var(--space-3);display:flex;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-text);border-radius:var(--radius-md);background:var(--color-neutral-100)}.home-resume-body{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.home-resume-title{margin:0;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:22px}.home-meta{margin:0;font-size:12.5px;color:var(--color-neutral-700);font-feature-settings:"tnum"}.home-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-1)}.home-thumb{display:block;flex-shrink:0;border:1px solid var(--color-neutral-400);background:#fff}.shelf-empty{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px dashed var(--color-neutral-400);border-radius:var(--radius-md)}.shelf-empty .home-thumb{opacity:.55}.shelf-empty-text{margin:0;font-size:13.5px;max-width:46ch;color:var(--color-neutral-700)}.home-note{margin:0;font-size:12px;color:var(--color-neutral-600)}.signin{display:flex;align-items:stretch;min-height:calc(100vh - 54px)}.signin-pitch{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:safe center;gap:var(--space-4);padding:var(--space-8);border-right:1px solid var(--color-divider)}.signin-pitch>*{max-width:520px}.signin-display{margin:0;font-family:var(--font-heading);font-weight:400;font-size:clamp(30px,4vw,46px);line-height:1.08;letter-spacing:-.015em;text-wrap:balance}.signin-lede{margin:0;font-size:15px;line-height:1.65;max-width:46ch;color:var(--color-neutral-800)}.signin-facts{display:flex;flex-wrap:wrap;gap:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-divider)}.signin-fact dt{margin:0;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:24px;font-feature-settings:"tnum"}.signin-fact dd{margin:2px 0 0;font-size:12.5px;color:var(--color-neutral-700)}.signin-aside{width:440px;flex-shrink:0;display:flex;flex-direction:column;justify-content:safe center;gap:var(--space-3);padding:var(--space-8) var(--space-6);background:var(--color-neutral-100);overflow-y:auto}@media(max-width:900px){.signin{flex-direction:column}.signin-pitch{border-right:0;border-bottom:1px solid var(--color-divider);padding:var(--space-6)}.signin-aside{width:auto;padding:var(--space-6)}}.shelf-row.shelf-row-locked{align-items:flex-start;gap:var(--space-2);padding:var(--space-2);font-size:12px;border:1px solid var(--color-neutral-400);border-radius:var(--radius-md);background:var(--color-neutral-200)}.shelf-locked-plate{position:relative;display:grid;place-items:center;flex-shrink:0}.shelf-locked-plate .shelf-thumb{opacity:.35}.shelf-lock{position:absolute;color:var(--color-neutral-800)}.shelf-locked-body{display:flex;flex-direction:column;gap:2px;min-width:0}.shelf-row-locked .shelf-title{color:var(--color-neutral-800)}.shelf-row-locked .shelf-date{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.shelf-locked-note{margin:var(--space-1) 0 0;font-size:12.5px;line-height:1.5;max-width:52ch;color:var(--color-neutral-800)}.signin-card{display:flex;flex-direction:column;gap:var(--space-2)}.signin-card-title{margin:0;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:22px}.signin-card-lede{margin:0 0 var(--space-1);font-size:13px;line-height:1.5;color:var(--color-neutral-700)}.account-form{display:flex;flex-direction:column;gap:var(--space-2)}.field-help{margin:-4px 0 0;font-size:12px;color:var(--color-neutral-600)}.form-error{margin:0;padding:6px 10px;border-left:3px solid var(--color-text);background:var(--color-neutral-200);font-size:13px;color:var(--color-text)}.account-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-1)}.account-privacy{margin:var(--space-2) 0 0;font-size:12.5px;color:var(--color-neutral-700)}.signin-aside>.hr{margin:var(--space-2) 0}.new-puzzle{font-family:var(--font-body);color:var(--color-text);display:flex;flex-direction:column;gap:var(--space-2)}.new-puzzle-title{margin:0;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:20px}.size-starters{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.size-starter{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:var(--space-2);border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-bg);font:inherit;color:inherit;text-align:left;cursor:pointer}.size-starter:hover{border-color:var(--color-accent)}.size-starter:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.size-starter-size{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:15px}.size-starter-note{font-size:11.5px;color:var(--color-neutral-700)}.new-puzzle-or{margin:var(--space-1) 0 0;font-size:12px;color:var(--color-neutral-700)}.new-puzzle-size{display:flex;align-items:flex-end;gap:var(--space-2)}.new-puzzle-size .field{width:5.5em}.new-puzzle-by{padding-bottom:8px;color:var(--color-neutral-600)}.new-puzzle-audience{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:2px}.new-puzzle-audience legend{padding:0;margin-bottom:2px;font-size:12px;color:var(--color-neutral-700)}.form-warning{padding:6px 10px;border-left:3px solid var(--color-accent-600);background:color-mix(in srgb,var(--color-accent) 8%,transparent);color:var(--color-text)}.shelf-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:var(--space-3)}.shelf-row{display:flex;flex-direction:column;border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-neutral-100)}.shelf-row:not(.shelf-row-locked):hover{border-color:var(--color-accent)}.shelf-row[data-open=true]{border-color:var(--color-text)}.shelf-item{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-2) var(--space-2) 4px;font:inherit;font-size:12px;text-align:left;border:0;background:transparent;color:inherit;cursor:pointer}.shelf-item svg{margin-bottom:4px}.shelf-title{font-weight:600;font-size:14px}.shelf-open-mark{font-size:11px;color:var(--color-accent-700)}.shelf-row-foot{display:flex;justify-content:flex-end;padding:0 var(--space-2) 6px;font-size:12px}.shelf-delete{color:var(--color-neutral-600)}.shelf-delete:hover{color:var(--color-text)}.shelf-delete-confirm{display:inline-flex;gap:var(--space-2)}.shelf-delete-failed{padding:0 var(--space-2) 6px}.shelf-empty:has(.shelf-first){border-style:solid;border-color:var(--color-divider);padding:var(--space-4)}.shelf-first{display:flex;flex-direction:column;gap:var(--space-2);max-width:560px}.shelf-first-title{margin:0;font-family:var(--font-heading);font-weight:400;font-size:26px}.shelf-first-text{margin:0 0 var(--space-1);font-size:14px;line-height:1.55;color:var(--color-neutral-800)}.shelf-first .new-puzzle{max-width:420px}.home-import{margin-top:auto;padding-top:var(--space-3);border-top:1px solid var(--color-divider)}.import-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px var(--space-2);cursor:pointer;font-size:13px}.import-link{color:var(--color-accent-700);text-decoration:underline;text-underline-offset:2px}.import-line:focus-within .import-link{outline:2px solid var(--color-accent);outline-offset:2px}.import-note{font-size:12px;color:var(--color-neutral-600)}:root{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body)}body{margin:0;background:var(--color-bg)}[hidden]{display:none!important}#root{display:flex;flex-direction:column;height:100dvh;overflow:hidden}.editor{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body)}.editor-tools,.editor-history{display:flex;gap:var(--space-1)}.editor-tools{align-items:center;flex-wrap:wrap}.editor-history{margin-left:auto}.editor-body{display:flex;flex:1;min-height:0}.editor-canvas{flex:1;min-width:0;min-height:0;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden;position:relative;outline:none;display:grid;place-items:start;padding:var(--space-4)}.editor-canvas:focus-visible{box-shadow:inset 0 0 0 2px var(--color-accent-400)}.pan-zoom{width:100%;height:100%;display:grid;place-items:start;position:relative;cursor:grab;touch-action:none}.pan-zoom-content{will-change:transform}.grid-view{shape-rendering:crispEdges;display:block}.grid-view text{shape-rendering:auto}.editor-side{width:320px;flex-shrink:0;border-left:1px solid var(--color-divider);background:var(--color-neutral-100);overflow-y:auto;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3)}.panel{border:1px solid var(--color-divider);border-radius:var(--radius-sm);padding:var(--space-3);background:var(--color-bg)}.panel-title{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:17px;margin:0 0 2px}.panel-sub{margin:0 0 var(--space-2);font-size:12px;color:color-mix(in srgb,var(--color-text) 55%,transparent)}.theme-progress-bar{width:96px;height:6px;vertical-align:middle;accent-color:var(--color-accent, currentColor)}.field{display:block;margin-bottom:var(--space-2);font-size:12px}.field>span{display:block;margin-bottom:3px;color:color-mix(in srgb,var(--color-text) 62%,transparent)}.input{width:100%;box-sizing:border-box;padding:6px 8px;font:inherit;font-size:14px;color:var(--color-text);background:var(--color-neutral-100);border:1px solid var(--color-divider);border-radius:var(--radius-sm)}.input:focus-visible{outline:2px solid var(--color-accent-400);outline-offset:-1px}.clue-fit{margin:0;font-size:11px;color:color-mix(in srgb,var(--color-text) 55%,transparent)}.clue-fit[data-fits=false]{color:var(--color-text);font-weight:600}.problem-list{margin:0;padding:0;list-style:none;font-size:12px;display:flex;flex-direction:column;gap:4px}.problem-list [data-severity=error]{color:var(--color-text);font-weight:600}.problem-list [data-severity=warning]{color:color-mix(in srgb,var(--color-text) 70%,transparent)}.problem-code{font-family:ui-monospace,monospace;font-size:10px;letter-spacing:.02em;padding:1px 4px;border:1px solid var(--color-divider);border-radius:var(--radius-sm)}.btn{font:inherit;font-size:13px;padding:5px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-divider);background:var(--color-neutral-100);color:var(--color-text);cursor:pointer}.btn:hover:not(:disabled){background:var(--color-neutral-200)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:var(--color-accent-700);border-color:var(--color-accent-800);color:var(--color-neutral-100)}.btn-primary:hover:not(:disabled){background:var(--color-accent-800)}.btn-ghost{background:transparent}.status-strip{display:flex;gap:var(--space-4);padding:4px var(--space-4);font-family:var(--font-body);font-size:11px;color:color-mix(in srgb,var(--color-text) 55%,transparent);background:var(--color-neutral-200);border-top:1px solid var(--color-divider)}.status-alert{margin:0;padding:var(--space-2) var(--space-4);font-family:var(--font-body);font-size:12px;color:var(--color-neutral-100);background:var(--color-text)}.editor-hint{margin:0;font-size:12px;color:color-mix(in srgb,var(--color-text) 62%,transparent)}.draft-line{margin:0;font-family:var(--font-body);font-size:12px;color:color-mix(in srgb,var(--color-text) 60%,transparent);white-space:nowrap}.draft-line[data-state=unavailable],.draft-line[data-state=unreadable]{color:var(--color-neutral-100);background:var(--color-text);padding:2px var(--space-2)}.link-button{font:inherit;color:inherit;background:none;border:0;padding:0;text-decoration:underline;cursor:pointer}.candidate-list{margin:0;padding:0;list-style:none;max-height:40vh;overflow-y:auto}.candidate{display:flex;align-items:baseline;gap:var(--space-2);width:100%;font:inherit;font-family:var(--font-heading);font-size:15px;letter-spacing:.06em;text-align:left;padding:3px 6px;border:0;border-radius:var(--radius-sm);background:none;color:var(--color-text);cursor:pointer}.candidate:hover{background:var(--color-accent-100)}.candidate em{margin-left:auto;font-family:var(--font-body);font-size:10px;font-style:normal;letter-spacing:.04em;color:color-mix(in srgb,var(--color-text) 45%,transparent)}.candidate em+em{margin-left:.5ch}.candidate em[data-length]{min-width:1.5em;padding:0 .35ch;border:1px solid color-mix(in srgb,var(--color-text) 18%,transparent);border-radius:var(--radius-sm);font-variant-numeric:tabular-nums;text-align:center}.candidate em[data-level=easy]{color:color-mix(in srgb,var(--color-accent) 70%,var(--color-text))}.candidate em[data-level=hard]{color:color-mix(in srgb,var(--color-text) 60%,transparent)}.fill-controls{margin-top:var(--space-2);border-top:1px solid color-mix(in srgb,var(--color-text) 12%,transparent);padding-top:var(--space-2)}.fill-controls>summary{cursor:pointer;font-size:12px;color:color-mix(in srgb,var(--color-text) 65%,transparent)}.fill-controls>summary:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.fill-option{display:flex;flex-direction:column;gap:var(--space-1);margin:var(--space-2) 0 0;padding:0;border:0;font-size:13px}.fill-option>legend{padding:0;font-size:12px;color:color-mix(in srgb,var(--color-text) 65%,transparent)}.fill-option label{display:flex;align-items:center;gap:var(--space-1)}.fill-option>.panel-sub{margin:var(--space-1) 0 0}.fill-controls-active{font-style:italic}.account-form{display:flex;flex-direction:column;gap:var(--space-2);font-size:13px}.account-form label{display:flex;flex-direction:column;gap:var(--space-1)}.account-form input{font:inherit;padding:var(--space-1) var(--space-2);border:1px solid color-mix(in srgb,var(--color-text) 25%,transparent);border-radius:2px;background:var(--color-bg);color:inherit}.shelf-date{color:color-mix(in srgb,var(--color-text) 55%,transparent)}.shelf-thumb .thumb-letter{fill:var(--color-bg);stroke:color-mix(in srgb,var(--color-text) 30%,transparent);stroke-width:.5}.shelf-thumb .thumb-clue{fill:color-mix(in srgb,var(--color-text) 35%,transparent)}.shelf-thumb .thumb-image{fill:color-mix(in srgb,var(--color-text) 15%,transparent)}.shelf-thumb .thumb-arrow{fill:color-mix(in srgb,var(--color-text) 22%,transparent)}.stored-clue-list{list-style:none;margin:.25rem 0 0;padding:0;display:flex;flex-direction:column;gap:2px}.stored-clue{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:.35rem .5rem;border:1px solid var(--line, #d8d3c8);border-radius:2px;background:var(--paper, #fdfcf8);font:inherit;text-align:left;cursor:pointer}.stored-clue:hover{background:var(--paper-strong, #f4f1e8)}.stored-clue[data-fits=false] .stored-clue-text{color:var(--ink-soft, #7a756a)}.stored-clue-meta{font-size:.75rem;color:var(--ink-soft, #7a756a)}.clue-rows{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.clue-row{display:flex;gap:.6rem;align-items:baseline;border-bottom:1px solid var(--line, #e6e1d6);padding-bottom:4px}.clue-row-answer{font-weight:600;min-width:6ch}.clue-row-text{flex:1}.clue-row-edit{display:flex;flex:1;gap:.4rem}.clue-pager{display:flex;gap:.5rem;align-items:baseline}.shelf-delete,.shelf-delete-confirm{white-space:nowrap}.puzzle-clues{flex:1;min-height:0;overflow-y:auto;width:100%;min-width:0;padding:var(--space-3) var(--space-4) var(--space-8)}.puzzle-clues-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}.field-inline{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--ink-soft, #7a756a)}.field-inline input{font:inherit}.puzzle-clue-list{list-style:none;margin:.5rem 0 0;padding:0}.puzzle-clue-row{padding:8px 10px 8px 12px;margin:0 -10px 0 -12px;border-bottom:1px solid var(--color-divider);border-left:2px solid transparent}.puzzle-clue-row[data-active=true]{border-left-color:var(--color-accent-600);background:color-mix(in srgb,var(--color-accent) 6%,transparent)}.puzzle-clue-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-1) var(--space-2);margin-top:6px}.puzzle-clue-actions>.puzzle-clue-stored,.puzzle-clue-actions>.ai-suggest{margin:0}.puzzle-clue-actions>.puzzle-clue-stored:has(.stored-clue-list),.puzzle-clue-actions>.ai-suggest:has(.stored-clue-list),.puzzle-clue-actions>.ai-suggest:has(.ai-suggest-waiting){flex-basis:100%}.puzzle-clue-count{font-size:11px;color:var(--color-neutral-600);white-space:nowrap}.ai-suggest-head{display:flex;justify-content:space-between;gap:var(--space-2);margin:var(--space-1) 0}.cm-num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.puzzle-clue-budget{margin-left:auto;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:17px;line-height:1;color:var(--color-text);white-space:nowrap}.puzzle-clue-budget[data-fits=false]{padding:2px 6px;color:var(--color-neutral-100);background:var(--color-text);border-radius:var(--radius-sm)}.puzzle-clue-pill{padding:1px 7px;border:1px solid var(--color-neutral-400);border-radius:var(--radius-lg);font-size:11px;color:var(--color-neutral-700);white-space:nowrap}.puzzle-clue-ruler{height:4px;margin-top:5px;border-radius:3px;background:var(--color-neutral-300);overflow:hidden}.puzzle-clue-ruler span{display:block;height:100%;background:var(--color-accent-500)}.puzzle-clue-ruler[data-fits=false] span{background:var(--color-text)}.puzzle-clue-verdict{margin:5px 0 0;font-size:12px;color:color-mix(in srgb,var(--color-text) 62%,transparent)}.puzzle-clue-verdict[data-fits=false]{color:var(--color-text);font-weight:600}.puzzle-clue-word{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem}.dont-use{display:contents}.dont-use-toggle{padding:1px 9px;font-size:11px;white-space:nowrap}.dont-use>.panel-sub{order:1;flex-basis:100%;margin:0}.puzzle-clue-place{font-size:.8rem;white-space:nowrap;min-width:7.5rem;text-align:left}.puzzle-clue-answer{font-weight:600;letter-spacing:.08em}.puzzle-clue-edit{display:flex;align-items:center;gap:.75rem;margin-top:4px}.puzzle-clue-edit .input{flex:1}.puzzle-clue-stored{margin-top:4px}.puzzle-clue-picture,.puzzle-clue-incomplete{margin:.3rem 0 0}.stored-clue[data-in-use=true]{border-color:var(--accent, #8a6d3b);background:var(--paper-strong, #f4f1e8)}.editor-toolbar{display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-4);background:var(--color-neutral-100);border-bottom:1px solid var(--color-divider)}.editor-modes{display:flex;align-items:stretch;padding:2px;border:1px solid var(--color-divider);border-radius:var(--radius-md)}.editor-mode{padding:5px var(--space-4);border:0;border-radius:calc(var(--radius-md) - 1px);background:transparent;font-family:var(--font-body);font-size:13.5px;color:color-mix(in srgb,var(--color-text) 62%,transparent);cursor:pointer}.editor-mode+.editor-mode{border-left:1px solid var(--color-divider)}.editor-mode:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-text) 5%,transparent)}.editor-mode[aria-pressed=true]{color:var(--color-text);font-weight:600;background:var(--color-neutral-200);border-left-color:transparent}.editor-markers{display:flex;align-items:center;gap:var(--space-2);margin-inline:var(--space-2);padding:3px var(--space-2) 3px var(--space-3);border:1px dashed var(--color-neutral-400);border-radius:var(--radius-lg)}.editor-marker-buttons{display:flex;gap:var(--space-1)}.editor-group-kicker{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-neutral-600);white-space:nowrap}.editor-side-fill{overflow-y:auto}.editor-side-fill>*{flex:none}.editor-side-fill [data-testid=candidates]{flex:1 1 auto;min-height:220px;display:flex;flex-direction:column}.editor-side-fill .candidate-list{flex:1;min-height:0;max-height:none}.editor-side-fill .fill-dock{border-top:1px solid var(--color-text)}.editor-side-clues{width:520px;max-width:46vw;min-width:0;padding:0;overflow:hidden}.clue-metadata{display:flex;flex-direction:column;gap:.35rem;margin:.35rem 0}.clue-difficulty,.clue-tags{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.chip{font-size:.75rem;padding:.1rem .5rem;border:1px solid var(--line, #d8d3c8);border-radius:2px;background:var(--paper, #fdfcf8);color:var(--ink-soft, #7a756a);font-family:inherit}button.chip{cursor:pointer}.chip[data-active=true]{border-color:var(--accent, #8a6d3b);color:var(--ink, #2b2820);background:var(--paper-strong, #f4f1e8)}.chip-tag{display:inline-flex;align-items:center;gap:.25rem}.chip-remove{border:none;background:none;cursor:pointer;padding:0;font:inherit;font-size:.8rem;line-height:1;color:var(--ink-soft, #7a756a)}.input-tag{max-width:10rem;font-size:.8rem}.clue-metadata-chips{display:inline-flex;gap:.25rem;margin-left:.5rem}.clue-database{flex:1;min-height:0;display:flex;flex-direction:column}.database-body{display:flex;align-items:stretch;flex:1;min-height:0}.database-nav{width:232px;flex-shrink:0;padding:var(--space-4) 0 var(--space-4) var(--space-4);background:var(--color-neutral-100);border-right:1px solid var(--color-divider);overflow-y:auto}.database-sections{list-style:none;margin:0;padding:0}.database-section{display:flex;align-items:baseline;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:0;border-left:2px solid transparent;background:none;font:inherit;font-size:14px;color:inherit;text-align:left;cursor:pointer}.database-section:hover{background:color-mix(in srgb,var(--color-text) 5%,transparent)}.database-section:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.database-section[aria-selected=true]{border-left-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.database-section[aria-selected=true] .database-section-name{font-size:15px;font-weight:600}.database-section-name{font-family:var(--font-heading)}.database-section-count{margin-left:auto;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-size:12.5px;color:var(--color-neutral-700)}.database-nav .hr{margin:var(--space-3) var(--space-3) var(--space-3) 0}.database-export{display:block;margin:0 var(--space-3) var(--space-2) var(--space-3);text-align:center;text-decoration:none}.database-note{margin:0 var(--space-3) 0 var(--space-3);font-size:12px;line-height:1.5;color:var(--color-neutral-700)}.database-content{flex:1;min-width:0;overflow-y:auto;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.database-head{display:flex;align-items:flex-start;gap:var(--space-4)}.database-head>:first-child{flex:1;min-width:0}.database-title{margin:0;font-family:var(--font-heading);font-weight:400;font-size:28px;line-height:1.15}.database-meta{margin:var(--space-1) 0 0;font-size:13px;max-width:62ch;color:var(--color-neutral-700);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}@media(max-width:900px){.database-body{flex-direction:column}.database-nav{width:auto;padding-right:var(--space-4);border-right:0;border-bottom:1px solid var(--color-divider)}}.clue-add-form{display:flex;flex-direction:column;gap:.5rem}.theme-ask{display:flex;flex-direction:column;gap:.5rem;max-width:560px}.theme-ask-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.library-section{display:flex;flex-direction:column;gap:var(--space-2)}.library-section+.library-section{padding-top:var(--space-4);border-top:1px solid var(--color-divider)}.library-section-title{margin:0;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:17px}.library-section>.panel-sub{margin:0;max-width:72ch}.database-content>[role=tabpanel]{display:flex;flex-direction:column;gap:var(--space-4)}.library-empty{max-width:62ch;line-height:1.55}.theme-sample{letter-spacing:.04em;overflow-wrap:anywhere}.editor-name{display:flex;align-items:center;gap:.6rem}.editor-title-input{font-family:inherit;font-size:1.15rem;font-weight:600;color:var(--color-text, #2b2820);background:transparent;border:none;border-bottom:1px dashed transparent;padding:0 0 .1rem;min-width:8rem;max-width:20rem}.editor-title-input:hover,.editor-title-input:focus{border-bottom-color:var(--line, #d8d3c8);outline:none}.editor-title-input::placeholder{color:var(--ink-soft, #7a756a);font-style:italic}.candidate[data-themed=true]{border-left:3px solid var(--accent, #8a6d3b);padding-left:calc(var(--space-2, .5rem) - 3px)}.theme-rows{list-style:none;margin:.5rem 0 0;padding:0}.theme-row{padding:.4rem 0;border-bottom:1px solid var(--line, #e6e1d6)}.theme-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.theme-row-body{margin-top:.4rem}.theme-word-list{list-style:none;display:flex;flex-wrap:wrap;gap:.3rem;margin:0 0 .5rem;padding:0;max-height:14rem;overflow-y:auto}.theme-add{display:flex;align-items:center;gap:.4rem}.fill-themes{display:block;margin-bottom:var(--space-2);padding:0;border:0;font-size:12px}.fill-themes>legend{padding:0;margin-bottom:3px;color:color-mix(in srgb,var(--color-text) 62%,transparent)}.fill-theme-option{display:flex;gap:6px;align-items:baseline;margin-bottom:2px;cursor:pointer}.fill-theme-option>input{flex:none;margin:0;font:inherit}.fill-themes-clear{margin-top:2px}.picture-list{list-style:none;margin:var(--space-2) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.picture-list li{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:var(--space-2);font-size:.8125rem}.picture-facts{color:var(--color-neutral-600);font-variant-numeric:tabular-nums}.picture-usage{grid-column:1 / -1;color:var(--color-neutral-600)}.picture-framing{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.attribution{margin-left:auto;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attribution a{color:inherit}.theme-sense-list{list-style:none;margin:var(--space-2) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.theme-sense-list li{display:flex;align-items:baseline;gap:var(--space-2)}.editor-export{position:relative;display:flex}.editor-export-popover{position:absolute;top:calc(100% + var(--space-2));right:0;z-index:20;width:380px;max-width:calc(100vw - var(--space-4) * 2);max-height:calc(100dvh - 150px);overflow-y:auto;padding:var(--space-4);background:var(--color-bg);border:1px solid var(--color-divider);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.editor-export-popover:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.problems-button{display:inline-flex;align-items:center;gap:var(--space-1)}.problems-count{font-feature-settings:"tnum"}.problems-count-dim{color:var(--color-neutral-700)}.problem-mark{display:inline-block;width:10px;height:10px;flex-shrink:0}.problem-mark-error{background:var(--color-text)}.problem-mark-warning{border:1.5px solid var(--color-accent-600)}.problem-mark-ok{border:1.5px solid var(--color-neutral-600)}.problems-drawer{position:absolute;left:0;right:0;bottom:0;z-index:10;max-height:340px;overflow-y:auto;padding:var(--space-3) var(--space-4);background:var(--color-neutral-100);border-top:1px solid var(--color-text);box-shadow:var(--shadow-md)}.problems-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-2)}.problems-title{margin:0;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:17px}.problems-legend{display:flex;align-items:center;gap:var(--space-1);margin:0;font-size:12px;color:var(--color-neutral-700)}.problems-close{margin-left:auto}.problems-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.problems-list li{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--color-divider)}.problem-where{min-width:62px;flex-shrink:0;font-feature-settings:"tnum";text-align:left}.problem-where-none{color:var(--color-neutral-500)}.problem-message{flex:1;font-size:13.5px}.zoom-cluster{margin-left:auto;display:flex;align-items:stretch;background:var(--color-bg);border:1px solid var(--color-divider);border-radius:var(--radius-md);font-size:12.5px}.zoom-cluster>*+*{border-left:1px solid var(--color-divider)}.zoom-button{width:30px;height:30px;display:grid;place-items:center;border:0;background:none;font:inherit;font-size:15px;color:inherit;cursor:pointer}.zoom-button:hover:not([aria-disabled=true]),.zoom-fit:hover{background:var(--color-neutral-100)}.zoom-button[aria-disabled=true]{color:var(--color-neutral-600);cursor:default}.zoom-reading{display:grid;place-items:center;min-width:52px;padding:0 var(--space-1);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";color:var(--color-neutral-700)}.zoom-fit{padding:0 var(--space-3);border:0;background:none;font:inherit;color:inherit;cursor:pointer}.picture-library{flex:1;min-height:0;display:flex;flex-direction:column}.library-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.library-head{display:flex;align-items:flex-start;gap:var(--space-6);flex-wrap:wrap}.library-head>:first-child{flex:1;min-width:0}.library-quota{max-width:420px;height:8px;margin-top:var(--space-2);border-radius:var(--radius-md);background:var(--color-neutral-300);overflow:hidden}.library-quota-fill{height:100%;background:var(--color-accent-500)}.library-search{width:260px;flex-shrink:0}.library-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-4)}@media(max-width:1100px){.library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.library-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-neutral-100)}.library-plate{aspect-ratio:4 / 3;display:grid;place-items:center;border:6px solid var(--color-surface);outline:1px solid var(--color-divider);outline-offset:-6px;background:var(--color-neutral-300)}.library-plate-photo{position:relative;overflow:hidden;text-decoration:none}.library-photo{width:100%;height:100%;object-fit:contain}.library-plate-photo .library-dimensions{position:absolute;right:6px;bottom:6px;padding:1px 6px;border-radius:var(--radius-sm);background:var(--color-surface)}.library-dimensions{font-size:11.5px;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";color:var(--color-neutral-800)}.library-size{margin:var(--space-2) 0 0;font-size:12.5px;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.library-usage{margin:0;font-size:12px;color:var(--color-neutral-700)}.problem-action{margin-left:auto;flex-shrink:0;white-space:nowrap}.picture-panel{display:flex;flex-direction:column;gap:var(--space-2)}.picture-panel>.panel-sub{margin:0}.appbar{display:flex;align-items:center;gap:var(--space-3);min-height:48px;padding:0 var(--space-4);background:var(--color-neutral-900);color:var(--color-bg);flex-shrink:0}.appbar-mark{all:unset;cursor:pointer;display:flex;align-items:center}.appbar-mark:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.appbar-mark-text{margin:0;display:flex;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:17px;color:var(--color-bg)}.appbar-nav{display:flex;gap:var(--space-1)}.appbar-nav-item{all:unset;cursor:pointer;padding:6px 12px;border-radius:var(--radius-md);font-size:13.5px;color:var(--color-neutral-300)}.appbar-nav-item:hover{color:var(--color-bg);background:color-mix(in srgb,var(--color-bg) 8%,transparent)}.appbar-nav-item[aria-current=page]{color:var(--color-bg);font-weight:600;box-shadow:inset 0 -2px 0 var(--color-accent-500)}.appbar-nav-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.appbar-middle{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;row-gap:6px;padding:6px 0}.account-menu{position:relative;flex-shrink:0}.account-menu-button{all:unset;cursor:pointer;display:flex;align-items:center;gap:var(--space-2);padding:4px 4px 4px 10px;border-radius:999px;color:var(--color-neutral-300);font-size:12.5px}.account-menu-button:hover,.account-menu-button[aria-expanded=true]{background:color-mix(in srgb,var(--color-bg) 10%,transparent);color:var(--color-bg)}.account-menu-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.account-menu-chip{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--color-neutral-700);font-size:11px;letter-spacing:.04em;color:var(--color-bg)}@media(max-width:1279px){.account-menu-email{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}.account-menu-popover{position:absolute;right:0;top:calc(100% + 6px);z-index:40;width:260px;padding:var(--space-3);background:var(--color-neutral-100);color:var(--color-text);border:1px solid var(--color-divider);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:var(--space-2)}.account-menu-who{margin:0;font-weight:600;font-size:13.5px;overflow-wrap:anywhere}.account-menu-plan{margin:0;font-size:12.5px;color:var(--color-neutral-700)}.account-menu-links{display:flex;flex-direction:column;border-top:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider);padding:var(--space-1) 0}.account-menu-link{all:unset;cursor:pointer;padding:6px 4px;font-size:13.5px;border-radius:var(--radius-sm)}.account-menu-link:hover{background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.account-menu-link:focus-visible{outline:2px solid var(--color-accent)}.account-menu-signout{align-self:flex-start}.editor~.status-strip{display:none}.status-details>summary{cursor:pointer;list-style:none}.status-details>summary::-webkit-details-marker{display:none}.status-details[open]>summary{margin-bottom:2px}.status-details-body{display:inline-flex;gap:var(--space-3);margin-left:var(--space-2)}.appbar-back{all:unset;cursor:pointer;flex-shrink:0;padding:5px 10px;border-radius:var(--radius-md);font-size:13px;color:var(--color-neutral-300);white-space:nowrap}.appbar-back:hover{color:var(--color-bg);background:color-mix(in srgb,var(--color-bg) 8%,transparent)}.appbar-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.doc-identity{display:flex;align-items:baseline;gap:var(--space-2);min-width:0}.appbar .editor-name{display:inline-flex;align-items:baseline;gap:4px;cursor:text;min-width:0}.appbar .editor-title-input{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:15.5px;color:var(--color-bg);background:transparent;border:0;border-bottom:1px dashed transparent;border-radius:0;padding:2px 0;min-width:4em;max-width:18rem;field-sizing:content}.appbar .editor-title-input::placeholder{color:var(--color-neutral-500);font-style:italic}.appbar .editor-name:hover .editor-title-input,.appbar .editor-title-input:focus{border-bottom-color:var(--color-neutral-600);outline:none}.editor-name-pencil{font-size:12px;color:var(--color-neutral-500)}.appbar .editor-name:hover .editor-name-pencil{color:var(--color-accent-400)}.doc-meta{font-size:12px;color:var(--color-neutral-400);font-feature-settings:"tnum";white-space:nowrap}.save-state{display:inline-flex;align-items:baseline;gap:6px;width:15em;font-size:12px;color:var(--color-neutral-400);white-space:nowrap}.save-state-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.save-state-action{flex-shrink:0}.save-state-short{display:none}@media(max-width:1199px){.save-state{width:auto}.save-state[data-testid=cloud-status] .save-state-long{display:none}.save-state[data-testid=cloud-status] .save-state-short{display:inline}.appbar .problems-count-dim{display:none}.appbar .editor-mode{padding:4px 12px}}.save-state[data-state=conflict],.save-state[data-state=locked],.save-state[data-state=error],.save-state[data-state=unavailable]{color:var(--color-accent-300)}.save-state-action{all:unset;cursor:pointer;color:var(--color-accent-400);text-decoration:underline;text-underline-offset:2px}.save-state-action:focus-visible{outline:2px solid var(--color-accent)}.appbar .editor-modes{margin-left:auto;border-color:var(--color-neutral-700);padding:2px}.appbar .editor-mode{color:var(--color-neutral-300);font-size:13px;padding:4px 16px}.appbar .editor-mode+.editor-mode{border-left-color:var(--color-neutral-700)}.appbar .editor-mode:hover{color:var(--color-bg);background:color-mix(in srgb,var(--color-bg) 8%,transparent)}.appbar .editor-mode[aria-pressed=true]{color:var(--color-neutral-900);background:var(--color-bg);font-weight:600}.appbar .editor-mode:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.editor-actions{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.appbar .editor-history{margin-left:0}.appbar-control{font:inherit;font-size:12.5px;padding:4px 10px;border-radius:var(--radius-md);border:1px solid var(--color-neutral-700);background:transparent;color:var(--color-neutral-200);cursor:pointer;white-space:nowrap}.appbar-icon{width:30px;padding:3px 0;font-size:15px;line-height:1;text-align:center}.appbar-control:hover:not(:disabled){border-color:var(--color-accent-500);color:var(--color-bg)}.appbar-control:disabled{opacity:.4;cursor:default}.appbar-control:focus-visible,.appbar-primary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.appbar .problems-count-dim{color:var(--color-neutral-400)}.appbar .problem-mark-error{background:var(--color-bg)}.appbar .problem-mark-ok{border-color:var(--color-neutral-400)}.appbar-primary{font:inherit;font-size:12.5px;padding:4px 14px;border-radius:var(--radius-md);border:1px solid var(--color-accent-500);background:transparent;color:var(--color-accent-300);cursor:pointer}.appbar-primary:hover{background:color-mix(in srgb,var(--color-accent-500) 16%,transparent);color:var(--color-accent-200)}.appbar .editor-export-popover{color:var(--color-text);display:flex;flex-direction:column;gap:var(--space-3)}.appbar .editor-export-popover>[data-testid=close-export]{align-self:flex-end}.editor-toolbar{box-sizing:border-box;height:48px;flex-shrink:0;align-items:center;flex-wrap:nowrap;padding:5px var(--space-4);gap:var(--space-3)}.editor-toolbar .editor-tools{flex-wrap:nowrap}.editor-toolbar .btn,.editor-toolbar .editor-group-kicker{white-space:nowrap}@media(max-width:1099px){.editor-toolbar{overflow-x:auto}.editor-toolbar .editor-hint:not([data-speaking=true]){display:none}}.editor-toolbar .editor-hint{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-toolbar .zoom-cluster{margin-left:auto;flex-shrink:0}.btn-compact{padding:3px 10px;font-size:12.5px;white-space:nowrap}.canvas-banner{flex-shrink:0;padding:var(--space-2) var(--space-4);background:var(--color-neutral-100);border-bottom:1px solid var(--color-text);border-left:3px solid var(--color-accent-600)}.canvas-banner-text{margin:0;font-size:13.5px;line-height:1.5}.canvas-banner-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.export-readiness{list-style:none;margin:0 0 var(--space-3);padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}.export-readiness li{display:flex;gap:var(--space-2);align-items:baseline}.export-ready{margin:0 0 var(--space-3);font-size:13px;color:var(--color-accent-700)}.export-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);margin:var(--space-2) 0 var(--space-3)}.export-pair .btn{text-align:center;text-decoration:none;padding:8px 12px}.inspector-kicker{margin:0 0 2px;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-neutral-600)}.inspector-meta{font-family:var(--font-body);font-weight:400;font-size:13px;color:var(--color-neutral-700)}.inspector .btn{margin-top:var(--space-1)}.inspector-clues{list-style:none;margin:var(--space-2) 0;padding:0;display:flex;flex-direction:column;gap:6px}.inspector-clues li{display:grid;grid-template-columns:22px 1fr;column-gap:var(--space-2);align-items:center;font-size:12.5px}.inspector-clue-answer{font-family:var(--font-heading);font-weight:600;letter-spacing:.05em}.inspector-clue-text{grid-column:2;color:var(--color-neutral-700);overflow-wrap:anywhere}.arrow-picker{margin:var(--space-3) 0 var(--space-2)}.arrow-picker-grid{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;grid-template-rows:auto auto auto;grid-template-areas:"nw n ne" "w c e" "sw s se";gap:4px;align-items:center;justify-items:center;margin:var(--space-1) 0}.arrow-picker-slot{display:flex;gap:4px;min-height:42px;min-width:42px;align-items:center;justify-content:center}.arrow-picker-square{width:46px;height:46px;background:var(--color-neutral-200);border:1px solid var(--color-neutral-400)}.arrow-choice{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);cursor:pointer}.arrow-choice:hover:not(:disabled){border-color:var(--color-accent)}.arrow-choice[aria-pressed=true]{border-color:var(--color-accent-600);background:color-mix(in srgb,var(--color-accent) 16%,transparent);color:var(--color-accent-800)}.arrow-choice:disabled{opacity:.35;cursor:default}.arrow-choice:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.arrow-glyph-square{fill:var(--color-neutral-300);stroke:var(--color-neutral-500);stroke-width:1}.arrow-picker-note{margin:var(--space-1) 0 0}.frame-health{margin-bottom:var(--space-3)}.frame-health-figures{display:grid;grid-template-columns:repeat(3,1fr);margin:var(--space-2) 0}.frame-health-figures dt{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--color-neutral-700)}.frame-health-figures dd{margin:2px 0 0;font-family:var(--font-heading);font-size:24px;font-weight:600;font-feature-settings:"tnum"}.compose{border-top:1px solid var(--color-divider);padding-top:var(--space-3)}.answer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);margin:var(--space-2) 0 var(--space-1)}.answer-square-lock{font-size:12px}.answer-pattern{letter-spacing:.04em}.fill-dock-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.fill-alternatives{display:inline-flex;align-items:center;gap:4px;margin:0;font-size:12px;color:var(--color-neutral-700);font-feature-settings:"tnum"}.fill-step{width:24px;height:24px;padding:0;border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-bg);font:inherit;font-size:15px;line-height:1;cursor:pointer}.fill-step:disabled{opacity:.4;cursor:default}.fill-dock-actions{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-2);margin:var(--space-2) 0}.fill-reframe{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--space-2)}.fill-reframe>.panel-sub{margin:0 0 0 22px}.fill-reframe .link-button{text-align:left}.fill-unfinished{padding:6px 8px;border-left:2px solid var(--color-accent-500);background:color-mix(in srgb,var(--color-accent) 8%,transparent);color:var(--color-text)}.fill-clue .field{display:flex;flex-direction:column;gap:4px}.fill-clue-label{font-size:12.5px;color:var(--color-neutral-700)}.fill-clue-split{color:var(--color-neutral-600)}.rate-word{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--space-2);margin:var(--space-1) 0;font-size:12px;color:var(--color-neutral-700)}.rate-word-label{font-size:12px}.segmented{display:inline-flex;border:1px solid var(--color-divider);border-radius:var(--radius-md);overflow:hidden}.segment{font:inherit;font-size:12px;padding:3px 10px;border:0;background:var(--color-bg);color:var(--color-text);cursor:pointer}.segment+.segment{border-left:1px solid var(--color-divider)}.segment:hover:not(:disabled){background:color-mix(in srgb,var(--color-accent) 10%,var(--color-bg))}.segment-default{box-shadow:inset 0 -2px 0 var(--color-neutral-400)}.segment[aria-pressed=true]{background:color-mix(in srgb,var(--color-accent) 18%,var(--color-bg));color:var(--color-accent-800);font-weight:600;cursor:default}.segment:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.rate-word-current{color:var(--color-neutral-600)}.inspector-credit{margin:auto 0 0;padding-top:var(--space-2);font-size:10.5px;line-height:1.4;color:var(--color-neutral-600)}.inspector-credit .attribution{white-space:normal;margin:0;text-align:left}.inspector-credit a{color:inherit}.icon{display:inline-block;vertical-align:-.15em}.appbar-icon .icon{width:16px;height:16px}
