:root{color-scheme:dark;--bg: #07111f;--bg-2: #0d1829;--panel: rgba(10, 19, 34, .86);--panel-strong: rgba(15, 26, 44, .95);--panel-border: rgba(157, 178, 210, .18);--line: rgba(157, 178, 210, .2);--text: #eef3ff;--muted: #9fb2d6;--accent: #7cf5d5;--accent-2: #ffb25c;--danger: #ff7f8f;--shadow: 0 30px 90px rgba(0, 0, 0, .38);font-family:Malgun Gothic,Segoe UI Variable Text,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(circle at top left,rgba(124,245,213,.16),transparent 30%),radial-gradient(circle at top right,rgba(255,178,92,.16),transparent 28%),linear-gradient(160deg,#07111f,#0a1424 45%,#091321);color:var(--text)}button,input,select,textarea{font:inherit}.app-shell{display:grid;gap:18px;grid-template-columns:minmax(280px,320px) minmax(0,1fr) minmax(320px,360px);min-height:100vh;padding:20px}.sidebar,.workspace{display:flex;flex-direction:column;gap:18px;min-height:0}.panel-card,.canvas-frame{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:var(--panel);border:1px solid var(--panel-border);border-radius:22px;box-shadow:var(--shadow)}.panel-card{display:flex;flex-direction:column;gap:14px;padding:18px}.panel-card--hero{background:linear-gradient(135deg,#7cf5d51f,#ffb25c14),var(--panel-strong)}.panel-card h1,.panel-card h2,.workspace h2{margin:0}.panel-card p,.workspace__meta,.type-footnote p{color:var(--muted);margin:0}.eyebrow{color:var(--accent);font-size:.76rem;letter-spacing:.14em;margin:0;text-transform:uppercase}.panel-card__header,.workspace__header{align-items:center;display:flex;gap:12px;justify-content:space-between}.panel-card__header span,.panel-card__header p{color:var(--muted)}.panel-card__header--stacked{align-items:flex-start;flex-direction:column}.field{display:grid;gap:8px}.field span{color:var(--muted);font-size:.84rem}.field input,.field select,.field textarea{background:#08101ce0;border:1px solid rgba(163,183,215,.14);border-radius:12px;color:var(--text);min-width:0;padding:10px 12px}.field textarea{line-height:1.45;resize:vertical}.field--checkbox{align-items:center;grid-template-columns:auto 1fr}.field--checkbox span{color:var(--text)}.field__color-row{display:grid;gap:10px;grid-template-columns:52px minmax(0,1fr)}.field__color-row input[type=color]{padding:4px}.field--compact{align-items:center;display:flex;gap:10px}.field--compact span{white-space:nowrap}.field--grow textarea{min-height:420px}.field-pair{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.layout-list,.tree-node__children{display:flex;flex-direction:column;gap:8px}.layout-list__item,.tree-node__button,.tabs button,.button{border:0;cursor:pointer}.layout-list__item,.tree-node__button{align-items:flex-start;background:#0c1525f0;border-radius:16px;color:var(--text);display:flex;flex-direction:column;gap:4px;padding:12px 14px;text-align:left}.layout-list__item small,.tree-node__button small{color:var(--muted)}.layout-list__item.is-selected,.tree-node__button.is-selected{background:linear-gradient(135deg,#7cf5d538,#4c6dff1f);outline:1px solid rgba(124,245,213,.42)}.tree-node__children{border-left:1px solid var(--line);margin-left:14px;padding-left:12px}.workspace__header{background:#080f1bd1;border:1px solid var(--panel-border);border-radius:22px;padding:18px 20px}.toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.button{background:linear-gradient(135deg,var(--accent),#4fa0ff);border-radius:999px;color:#061019;font-weight:700;padding:11px 16px}.button--secondary{background:linear-gradient(135deg,var(--accent-2),#ffd66f)}.button--ghost{background:#ffffff14;color:var(--text)}.canvas-frame{min-height:0;overflow:hidden;position:relative}.canvas-frame__chrome{background:linear-gradient(90deg,rgba(124,245,213,.16),transparent 24%),linear-gradient(135deg,rgba(255,178,92,.18),transparent 30%);top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.canvas-scroll{height:100%;overflow:auto;padding:30px;position:relative}.canvas-stage{align-items:flex-start;display:flex;justify-content:flex-start;min-width:100%}.canvas-root{background:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(180deg,#070c16f7,#0d1521f5);background-size:20px 20px,20px 20px,auto;border:1px solid rgba(184,203,233,.22);border-radius:0;box-shadow:inset 0 1px #ffffff0f,0 28px 90px #00000073;overflow:hidden;position:relative}.control{border:1px solid rgba(255,255,255,.06);position:absolute;transition:box-shadow .12s ease,outline-color .12s ease}.control.has-texture{border:0}.control.is-selected{box-shadow:0 0 0 2px #7cf5d5db,0 0 0 8px #7cf5d529;z-index:10}.control__window,.control__titlebar,.control__button,.control__edit,.control__viewer,.control__image,.control__text,.control__scrollbar{background-position:center;background-repeat:no-repeat;background-size:100% 100%;height:100%;width:100%}.control__window{border:1px solid rgba(255,255,255,.12);border-radius:0;position:relative}.control__window-label{color:#ffffff7a;font-size:.74rem;left:14px;position:absolute;top:12px;text-transform:uppercase}.control__titlebar{align-items:center;background:linear-gradient(90deg,#4c73ffe6,#7cf5d5bf);color:#07111f;display:flex;font-weight:700;padding:0 14px}.control__button,.control__edit{align-items:center;border-radius:0;display:flex;justify-content:center;padding:8px 10px}.control__button{background:linear-gradient(135deg,#ffb25c38,#4c73ff2e)}.control__edit{border:1px solid rgba(255,255,255,.18);color:#0a1420}.control__viewer{align-items:flex-start;border:1px solid rgba(255,255,255,.16);display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden}.control__viewer-content{max-width:100%;width:100%;word-break:break-word}.control__image{align-items:flex-end;background:linear-gradient(135deg,#7cf5d52e,#ffb25c38),repeating-linear-gradient(135deg,#ffffff0d,#ffffff0d 8px,#ffffff03 8px,#ffffff03 16px);color:var(--text);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;padding:12px}.control__image small{color:#ffffff9e;line-height:1.25}.control__image em{color:#ffd494e0;font-size:.72rem;font-style:normal}.control__tab-button{align-items:center;background:var(--tab-color-a, #ffffff);border:1px solid var(--tab-color-c, #c3c3c3);border-top-width:2px;color:#000;display:flex;height:100%;justify-content:center;overflow:hidden;padding:2px 4px 1px;width:100%}.control__tab-button.is-active,.control__tab-button:hover{background:var(--tab-color-b, #ffffff);border-top-width:1px;padding-top:1px}.control__tab-button.is-vertical{border-left-width:2px;border-top-width:1px;padding:2px 2px 2px 3px}.control__tab-button.is-vertical.is-active,.control__tab-button.is-vertical:hover{border-left-width:1px;padding-left:2px}.control__tab-button span{display:block;width:100%}.control__text{align-items:center;background:transparent;display:flex;overflow:hidden;padding:2px 8px}.control__scrollbar{align-items:center;background:#ffffff12;display:flex;justify-content:center}.control__scroll-thumb{background:linear-gradient(180deg,var(--accent),rgba(76,115,255,.92));border-radius:999px;height:36%;width:68%}.tabs{background:#ffffff0a;border-radius:999px;display:grid;gap:6px;grid-template-columns:repeat(2,1fr);padding:5px}.tabs button{background:transparent;border-radius:999px;color:var(--muted);padding:10px 14px}.tabs button.is-active{background:#7cf5d524;color:var(--text)}.type-footnote{border-top:1px solid var(--line);margin-top:8px;padding-top:14px}.json-error{color:var(--danger);margin:0}.empty-state{align-items:center;color:var(--text);display:flex;justify-content:center;min-height:100vh}.drop-zone{align-items:center;border:2px dashed rgba(124,245,213,.28);border-radius:22px;display:flex;flex:1;flex-direction:column;gap:12px;justify-content:center;min-height:360px;padding:48px;text-align:center;transition:border-color .18s ease,background .18s ease}.drop-zone strong{color:var(--text);font-size:1.1rem}.drop-zone p{color:var(--muted);margin:0}.app-shell--drag-over .drop-zone,.app-shell--drag-over .canvas-frame{border-color:var(--accent);background:#7cf5d50d}@media (max-width: 1320px){.app-shell{grid-template-columns:290px minmax(0,1fr)}.sidebar--right{grid-column:1 / -1}}@media (max-width: 920px){.app-shell{grid-template-columns:1fr;padding:14px}.toolbar{justify-content:flex-start}.workspace__header{align-items:flex-start;flex-direction:column}.canvas-scroll{padding:16px}}
