:root{--bg:#07080d;--panel:#0d1019e0;--panel-solid:#0d1019;--border:#94a3b838;--text:#e6ebf3;--text-dim:#93a1b5;--accent:#22d3ee;--accent-ink:#04121a;--danger:#f87171;--radius:10px;--panel-width:358px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--bg:#eef1f6;--panel:#ffffffe6;--panel-solid:#fff;--border:#0f172a24;--text:#0f172a;--text-dim:#5c6a80;--accent:#2563eb;--accent-ink:#fff;--danger:#dc2626;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;margin:0;overflow:hidden}@supports (height:100dvh){html,body{height:100dvh}}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,Segoe UI,sans-serif;font-size:14px}.app{height:100%;display:flex}.panel{width:var(--panel-width);flex:0 0 var(--panel-width);background:var(--panel-solid);border-right:1px solid var(--border);flex-direction:column;height:100%;display:flex;overflow:hidden}.panel__header{padding:calc(14px + env(safe-area-inset-top)) 16px 14px;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;display:flex}.panel__title{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:800}.panel__body{padding:14px 16px calc(28px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;flex:1;gap:18px;display:flex;overflow-y:auto}.panel-open{top:calc(12px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));z-index:20;border-radius:var(--radius);border:1px solid var(--border);background:var(--panel);width:44px;height:44px;color:var(--text);cursor:pointer;font-size:15px;display:none;position:absolute}.panel-open.is-visible{display:block}.stage{flex:1;min-width:0;height:100%;position:relative}canvas{touch-action:none;width:100%;height:100%;display:block}.block{flex-direction:column;gap:10px;display:flex}.block__title{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:13px;font-weight:800}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field--compact{gap:3px}.field--grow{flex:1}.field__label{color:var(--text-dim);letter-spacing:.02em;justify-content:space-between;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.field__meta{color:var(--accent);font-style:normal;font-weight:600}.field__hint{color:var(--text-dim);margin:0;font-size:11px;line-height:1.5}.field__hint code{background:color-mix(in srgb, var(--text) 10%, transparent);border-radius:4px;padding:1px 4px;font-size:10.5px}input,select,textarea{border:1px solid var(--border);background:color-mix(in srgb, var(--text) 5%, transparent);width:100%;min-width:0;color:var(--text);font:inherit;border-radius:8px;padding:7px 9px;font-size:13px}input[type=color]{cursor:pointer;width:40px;height:30px;padding:2px}textarea{resize:vertical;line-height:1.55}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.grid{gap:8px;display:grid}.grid--2{grid-template-columns:1fr 1fr}.grid--3{grid-template-columns:repeat(3,1fr)}.row{align-items:center;gap:8px;display:flex}.row--wrap{flex-wrap:wrap}.row--tight{gap:6px}.row--between{justify-content:space-between}.row--actions{margin-top:2px}.row--actions .btn{flex:1}.check{color:var(--text-dim);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.check input{width:auto;accent-color:var(--accent);margin:0}.btn{border:1px solid var(--border);background:color-mix(in srgb, var(--text) 7%, transparent);color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:700;transition:background .12s,border-color .12s}.btn:hover{background:color-mix(in srgb, var(--text) 13%, transparent)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn--primary:hover{background:color-mix(in srgb, var(--accent) 85%, white)}.btn--ghost{background:0 0}.btn--small{padding:6px 9px;font-size:12px}.icon-btn{width:28px;height:28px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:7px;font-size:13px}.icon-btn:hover{background:color-mix(in srgb, var(--text) 10%, transparent);color:var(--text)}.segmented{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.segmented--wrap{border-radius:8px;flex-wrap:wrap}.segmented button{border:none;border-right:1px solid var(--border);color:var(--text-dim);font:inherit;cursor:pointer;background:0 0;padding:7px 11px;font-size:12px;font-weight:700}.segmented button:last-child{border-right:none}.segmented button.is-active{background:var(--accent);color:var(--accent-ink)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips:empty:after{content:"아직 즐겨찾는 이름이 없습니다.";color:var(--text-dim);font-size:11px}.chip{border:1px solid var(--border);background:color-mix(in srgb, var(--text) 6%, transparent);border-radius:999px;align-items:center;gap:4px;padding:3px 4px 3px 9px;font-size:12px;display:inline-flex}.chip__label{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.chip__remove{width:18px;height:18px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:50%;font-size:11px;line-height:1}.chip__remove:hover{background:var(--danger);color:#fff}.inspector{border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--text) 4%, transparent);flex-direction:column;gap:8px;padding:10px;display:flex}.inspector__title{color:var(--accent);margin:0;font-size:12px;font-weight:800}.inspector__grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.result-list{border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--text) 4%, transparent);counter-reset:rank;max-height:260px;margin:0;padding:8px 10px;list-style:none;overflow-y:auto}.result-list li{counter-increment:rank;align-items:center;gap:8px;padding:3px 0;font-size:13px;display:flex}.result-list li:before{content:counter(rank);text-align:right;font-variant-numeric:tabular-nums;color:var(--text-dim);flex:0 0 22px;font-weight:700}.result-list__dot{border-radius:50%;flex:none;width:9px;height:9px}.result-list li:first-child{font-weight:800}.status{min-height:16px;color:var(--text-dim);margin:0;font-size:11.5px;line-height:1.5}.status.is-warn{color:#fbbf24}.status.is-error{color:var(--danger)}.dialog{border:1px solid var(--border);background:var(--panel-solid);width:min(560px,100vw - 32px);color:var(--text);border-radius:14px;padding:0}.dialog::backdrop{background:#02040a99}.dialog__form{flex-direction:column;gap:10px;padding:18px;display:flex}.dialog__title{margin:0;font-size:15px;font-weight:800}.dialog textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}@media (max-width:860px){.panel{z-index:15;width:min(var(--panel-width), 92vw);flex-basis:auto;position:absolute;inset:0 auto 0 0;box-shadow:0 0 40px #00000080}.panel .btn,.panel select,.panel input[type=text],.panel input[type=number]{min-height:44px}.panel .btn--small{min-height:38px}.panel input[type=checkbox]{width:20px;height:20px}.panel .icon-btn{width:44px;height:44px;font-size:16px}.panel .segmented button{min-height:44px;padding:7px 14px;font-size:13px}.panel textarea,.panel input[type=text],.panel input[type=number],.panel select{font-size:16px}}
