:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}#root{min-height:100vh}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}.app-shell{color:#111;background:#f4f4f1;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #d8d8d3;width:min(100%,420px);padding:36px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:700}h1{letter-spacing:-.05em;margin:0;font-size:clamp(42px,8vw,72px);line-height:.95}h2{letter-spacing:-.03em;margin:0;font-size:28px}.description{color:#666;margin:20px 0 32px;line-height:1.5}form{gap:20px;display:grid}label{gap:8px;font-size:13px;font-weight:600;display:grid}input,select{color:#111;background:#fff;border:1px solid #aaa;border-radius:0;outline:none;width:100%;min-height:48px;padding:0 14px}input:focus,select:focus{border-color:#111;box-shadow:0 0 0 1px #111}button{color:#fff;cursor:pointer;background:#111;border:1px solid #111;border-radius:0;min-height:48px;padding:0 20px;font-weight:700}button:hover:not(:disabled){background:#333}button:disabled{opacity:.55;cursor:default}.secondary-button{color:#111;background:0 0}.secondary-button:hover:not(:disabled){color:#fff;background:#111}.error-message{color:#b00020;margin:0;font-size:14px}.studio-shell{color:#111;background:#f4f4f1;min-height:100vh;padding:40px}.studio-header{justify-content:space-between;align-items:flex-start;gap:32px;width:min(100%,1180px);margin:0 auto 40px;display:flex}.signed-in-user{color:#666;margin:18px 0 0}.studio-grid{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:24px;width:min(100%,1180px);margin:0 auto;display:grid}.panel{background:#fff;border:1px solid #d8d8d3;padding:28px}.puzzle-form{margin-top:28px}.issues-panel{min-height:380px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.issue-count{border:1px solid #111;place-items:center;min-width:40px;height:40px;font-weight:700;display:grid}.empty-state{color:#777;margin:0}.issues-list{display:grid}.issue-row{border-top:1px solid #ddd;justify-content:space-between;align-items:center;gap:24px;padding:18px 0;display:flex}.issue-row:last-child{border-bottom:1px solid #ddd}.issue-row strong{font-size:20px;display:block}.issue-date{color:#777;margin-top:6px;font-size:13px;display:block}.issue-meta{align-items:center;gap:14px;display:flex}.status-badge{letter-spacing:.08em;text-transform:uppercase;border:1px solid #aaa;padding:6px 9px;font-size:11px;font-weight:700}@media (width<=760px){.studio-shell{padding:24px}.studio-header{flex-direction:column}.studio-header button{width:100%}.studio-grid{grid-template-columns:1fr}.login-card,.panel{padding:24px}.issue-row{flex-direction:column;align-items:flex-start}.issue-meta{justify-content:space-between;width:100%}}.editor-workspace{grid-template-columns:390px minmax(0,1fr);align-items:start;gap:32px;display:grid}.editor-grid-panel{position:sticky;top:24px}.editor-grid-preview{background:#111;grid-template-columns:repeat(8,44px);gap:2px;width:fit-content;margin-top:20px;padding:8px;display:grid}.editor-cell{aspect-ratio:1;background:#fff;border:1px solid #d8d8d8;width:44px;padding:0}.editor-cell-blocked{background:#111;border-color:#111}.editor-entries-panel{min-width:0}.editor-entries-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.editor-entries-header p{margin:0}.editor-entries-header span{font-size:13px;font-weight:700}.editor-entry-list{gap:10px;max-height:650px;padding-right:6px;display:grid;overflow-y:auto}.editor-entry-card{background:#fff;border:1px solid #dedede;border-radius:8px;gap:8px;padding:12px;display:grid}.editor-entry-heading{justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.editor-entry-heading span{color:#777;white-space:nowrap}.editor-entry-card select,.editor-entry-card input[type=text]{width:100%;min-height:36px;font:inherit;background:#fff;border:1px solid #cfcfcf;border-radius:5px;padding:7px 9px;font-size:13px}.editor-entry-fields{grid-template-columns:minmax(100px,.35fr) minmax(180px,1fr);gap:8px;display:grid}.editor-derived-fields{background:#f5f5f5;border-radius:6px;gap:8px;padding:10px;display:grid}.editor-dependencies>span{margin-bottom:6px;font-size:12px;font-weight:700;display:block}.editor-dependency-list{flex-wrap:wrap;gap:6px 12px;display:flex}.editor-dependency-list label{align-items:center;gap:4px;font-size:12px;display:inline-flex}.editor-validation-message{color:#b42318;margin:0;font-size:12px}.editor-actions{margin-top:24px}@media (width<=900px){.editor-workspace{grid-template-columns:1fr}.editor-grid-panel{position:static}.editor-entry-list{max-height:none}}@media (width<=600px){.editor-grid-preview{grid-template-columns:repeat(8,36px)}.editor-cell{width:36px}.editor-entry-fields{grid-template-columns:1fr}}.puzzle-preview{border-top:1px solid #dedede;grid-template-columns:auto minmax(280px,1fr);align-items:start;gap:32px;margin-top:32px;padding-top:32px;display:grid}.preview-grid{background:#111;grid-template-columns:repeat(8,42px);gap:2px;width:fit-content;margin-top:16px;padding:8px;display:grid}.preview-cell{aspect-ratio:1;background:#fff;border:1px solid #d8d8d8;justify-content:center;align-items:center;width:42px;display:flex;position:relative}.preview-cell-blocked{background:#111;border-color:#111}.preview-cell-number{font-size:9px;font-weight:700;line-height:1;position:absolute;top:3px;left:4px}.preview-cell-value{font-size:18px;font-weight:700;line-height:1}.preview-clues{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.preview-clue-group h3{margin:0 0 12px;font-size:18px}.preview-clue{grid-template-columns:28px minmax(0,1fr);gap:8px;margin-bottom:10px;font-size:13px;line-height:1.4;display:grid}.preview-clue strong{text-align:right}@media (width<=900px){.puzzle-preview{grid-template-columns:1fr}}@media (width<=600px){.preview-grid{grid-template-columns:repeat(8,34px)}.preview-cell{width:34px}.preview-clues{grid-template-columns:1fr}}.danger-button{color:#b00020;background:0 0;border-color:#b00020}.danger-button:hover:not(:disabled){color:#fff;background:#b00020}
