:root{--bg:#f4efe6;--panel:#fffaf2;--panel-strong:#fff;--ink:#2f2a22;--ink-soft:#6b655c;--line:#d8cfbf;--accent:#bf5b2c;--accent-soft:#f3c3a9;--accent-dark:#8b3e18;--success:#2f7d4f;--warning:#9c6b12;--danger:#a63a2f;--shadow:0 12px 40px rgba(84,62,28,0.12);--radius:18px}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:radial-gradient(circle at top left,rgba(245,186,139,.35),transparent 28%),linear-gradient(180deg,#f7f2ea,#f1ebdf);color:var(--ink);font-family:Segoe UI,Helvetica Neue,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{display:grid;grid-template-rows:auto 1fr;min-height:100vh}.topbar{justify-content:space-between;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid rgba(47,42,34,.08);background:rgba(255,250,242,.84);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:-webkit-sticky;position:sticky;top:0;z-index:20}.brand,.topbar{display:flex;align-items:center}.brand{gap:.85rem;font-weight:700}.brand-badge{width:2.4rem;height:2.4rem;display:grid;place-items:center;border-radius:999px;background:linear-gradient(135deg,var(--accent),#ed9c73);color:white;box-shadow:var(--shadow)}.topbar-nav{display:flex;align-items:center;gap:.85rem;color:var(--ink-soft)}.topbar-nav a,.topbar-nav button{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:999px;padding:.65rem .95rem;cursor:pointer}.page{width:min(1280px,calc(100vw - 2rem));margin:1.5rem auto 2rem}.editor-shell,.hero,.panel{background:rgba(255,250,242,.88);border:1px solid rgba(95,78,45,.12);border-radius:var(--radius);box-shadow:var(--shadow)}.hero{padding:1.8rem}.hero h1,.panel h1,.panel h2,.panel h3{margin-top:0;font-family:Georgia,Times New Roman,serif}.muted{color:var(--ink-soft)}.grid{display:grid;grid-gap:1rem;gap:1rem}.grid.two{grid-template-columns:1.2fr .8fr}.grid.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.panel{padding:1.2rem}.list{display:grid;grid-gap:.8rem;gap:.8rem}.list-card{padding:1rem;border:1px solid var(--line);border-radius:16px;background:var(--panel-strong)}.list-card strong{display:block;margin-bottom:.25rem}.pill{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;border:1px solid var(--line);padding:.3rem .75rem;background:#fff;font-size:.9rem}.form-row{display:grid;grid-gap:.75rem;gap:.75rem}.form-row.inline{grid-template-columns:1fr auto auto;align-items:center}.input,.select,.textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:.8rem .9rem;background:#fff}.textarea{min-height:8rem;resize:vertical}.button{border:1px solid transparent;border-radius:999px;padding:.8rem 1rem;cursor:pointer;background:var(--accent);color:#fff;font-weight:600}.button.secondary{background:#fff;color:var(--ink);border-color:var(--line)}.button.warn{background:#fff4d7;color:var(--warning);border-color:#efd697}.button.danger{background:#fce5df;color:var(--danger);border-color:#efb9ae}.editor-shell{display:grid;grid-template-columns:minmax(0,1fr) 340px;min-height:calc(100vh - 180px);overflow:hidden}.editor-main{min-height:70vh;background:#fff;position:relative}.editor-sidebar{border-left:1px solid rgba(95,78,45,.12);background:rgba(255,248,236,.95);padding:1rem;overflow:auto}.stack{display:grid;grid-gap:1rem;gap:1rem}.canvas-toolbar{position:absolute;top:1rem;right:1rem;z-index:12;display:flex;gap:.75rem}.editor-shell:-webkit-full-screen{width:100vw;height:100vh;max-width:none;margin:0;border-radius:0;border:none;box-shadow:none;grid-template-columns:minmax(0,1fr)}.editor-shell.is-fullscreen,.editor-shell:fullscreen{width:100vw;height:100vh;max-width:none;margin:0;border-radius:0;border:none;box-shadow:none;grid-template-columns:minmax(0,1fr)}.editor-shell:-webkit-full-screen .editor-main{min-height:100vh}.editor-shell.is-fullscreen .editor-main,.editor-shell:fullscreen .editor-main{min-height:100vh}.editor-shell:-webkit-full-screen .editor-sidebar{display:none}.editor-shell.is-fullscreen .editor-sidebar,.editor-shell:fullscreen .editor-sidebar{display:none}.notice{border-radius:14px;padding:.9rem 1rem;border:1px solid #eac5b1;background:#fff3ec;color:var(--accent-dark)}.notice.success{border-color:#b8dfc8;background:#eef9f1;color:var(--success)}.code{font-family:SFMono-Regular,Consolas,monospace;font-size:.9rem;word-break:break-all}@media (max-width:980px){.editor-shell,.grid.two{grid-template-columns:1fr}.editor-shell{min-height:auto}.editor-main{min-height:55vh}}