:root{--bg:#fbfaf8;--surface:#fff;--surface-2:#f4f1ec;--surface-3:#ece7df;--ink:#1a1714;--ink-2:#5c544a;--ink-3:#8a8073;--line:#e7e1d6;--line-strong:#d8d0c2;--brand:#f97316;--brand-strong:#ea580c;--brand-btn:#c2410c;--brand-weak:#f973161f;--brand-ring:#f9731673;--on-brand:#fff;--ok:#0d9488;--warn:#d97706;--danger:#dc2626;--info:#2563eb;--nav-bg:var(--surface-2);--nav-ink:var(--ink);--nav-ink-2:var(--ink-2);--nav-ink-3:var(--ink-3);--nav-line:var(--line);--nav-active:var(--brand-weak);--chat-bg:#f0ece6;--memo-pane:#eae5de;--bubble-recv:#fff;--bubble-recv-ink:var(--ink);--bubble-sent:#ffe2cc;--bubble-sent-ink:#5b2408;--av-1:#d9480f;--av-2:#2f9e44;--av-3:#1971c2;--av-4:#9c36b5;--av-5:#c2255c;--av-6:#0c8599;--av-7:#b35c00;--av-8:#5f3dc4;--shadow-sm:0 1px 2px #3c280f0f;--shadow-md:0 2px 6px #3c280f12, 0 12px 32px #3c280f12;--shadow-lg:0 8px 20px #3c280f1a, 0 24px 60px #3c280f1f;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--font-sans:"Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--font-mono:"IBM Plex Mono", "SFMono-Regular", ui-monospace, "D2Coding", Menlo, Consolas, monospace;--fs-11:11px;--fs-12:12px;--fs-13:13px;--fs-14:14px;--fs-16:16px;--fs-19:19px;--fs-24:24px;--fs-30:30px;--z-dropdown:50;--z-modal:100;--z-toast:200}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#131210;--surface:#1e1c18;--surface-2:#262320;--surface-3:#302c27;--ink:#f4efe6;--ink-2:#b7ad9e;--ink-3:#8b8173;--line:#332f29;--line-strong:#423d35;--brand:#fb923c;--brand-strong:#f97316;--brand-weak:#fb923c29;--brand-ring:#fb923c80;--on-brand:#241a0f;--ok:#2dd4bf;--warn:#f59e0b;--danger:#f87171;--info:#60a5fa;--chat-bg:#0f0e0c;--memo-pane:#0e0d0b;--bubble-recv:#26231e;--bubble-sent:#fb923c;--bubble-sent-ink:#241a0f;--av-1:#ff8a5b;--av-2:#69db7c;--av-3:#74c0fc;--av-4:#da77f2;--av-5:#f783ac;--av-6:#3bc9db;--av-7:#ffc078;--av-8:#9775fa;--shadow-sm:0 1px 2px #0006;--shadow-md:0 2px 6px #00000073, 0 14px 36px #0006;--shadow-lg:0 10px 28px #00000080, 0 28px 64px #00000073}}:root[data-theme=dark]{--bg:#131210;--surface:#1e1c18;--surface-2:#262320;--surface-3:#302c27;--ink:#f4efe6;--ink-2:#b7ad9e;--ink-3:#8b8173;--line:#332f29;--line-strong:#423d35;--brand:#fb923c;--brand-strong:#f97316;--brand-weak:#fb923c29;--brand-ring:#fb923c80;--on-brand:#241a0f;--ok:#2dd4bf;--warn:#f59e0b;--danger:#f87171;--info:#60a5fa;--chat-bg:#0f0e0c;--memo-pane:#0e0d0b;--bubble-recv:#26231e;--bubble-sent:#fb923c;--bubble-sent-ink:#241a0f;--av-1:#ff8a5b;--av-2:#69db7c;--av-3:#74c0fc;--av-4:#da77f2;--av-5:#f783ac;--av-6:#3bc9db;--av-7:#ffc078;--av-8:#9775fa;--shadow-sm:0 1px 2px #0006;--shadow-md:0 2px 6px #00000073, 0 14px 36px #0006;--shadow-lg:0 10px 28px #00000080, 0 28px 64px #00000073}:root[data-accent=violet]{--brand:#7c3aed;--brand-strong:#6d28d9;--brand-weak:#7c3aed1f;--brand-ring:#7c3aed73;--on-brand:#fff;--bubble-sent:#ece3fd;--bubble-sent-ink:#3b1d78}:root[data-accent=lime]{--brand:#65a30d;--brand-strong:#4d7c0f;--brand-weak:#84cc1629;--brand-ring:#84cc1680;--on-brand:#1c2a08;--bubble-sent:#e4f4c6;--bubble-sent-ink:#2b4108}@media (prefers-color-scheme:dark){:root:not([data-theme=light])[data-accent=violet]{--brand:#a78bfa;--brand-strong:#8b5cf6;--brand-weak:#a78bfa29;--brand-ring:#a78bfa80;--on-brand:#1e1533;--bubble-sent:#a78bfa;--bubble-sent-ink:#1e1533}:root:not([data-theme=light])[data-accent=lime]{--brand:#a3e635;--brand-strong:#84cc16;--brand-weak:#a3e6352e;--brand-ring:#a3e63580;--on-brand:#18240a;--bubble-sent:#a3e635;--bubble-sent-ink:#18240a}}:root[data-theme=dark][data-accent=violet]{--brand:#a78bfa;--brand-strong:#8b5cf6;--brand-weak:#a78bfa29;--brand-ring:#a78bfa80;--on-brand:#1e1533;--bubble-sent:#a78bfa;--bubble-sent-ink:#1e1533}:root[data-theme=dark][data-accent=lime]{--brand:#a3e635;--brand-strong:#84cc16;--brand-weak:#a3e6352e;--brand-ring:#a3e63580;--on-brand:#18240a;--bubble-sent:#a3e635;--bubble-sent-ink:#18240a}:root[data-density=compact]{--space-1:3px;--space-2:6px;--space-3:9px;--space-4:12px;--space-5:18px;--space-6:24px;--space-7:36px;--fs-13:12.5px;--fs-14:13px}*,:before,:after{box-sizing:border-box}:root{--titlebar-h:0px;--app-h:100vh}:root[data-desktop]{--titlebar-h:calc(32px / var(--zoom,1));--app-h:calc(100vh - var(--titlebar-h))}@supports (height:100dvh){:root{--app-h:100dvh}:root[data-desktop]{--app-h:calc(100dvh - var(--titlebar-h))}}html,body,#root{height:100%}#root{padding-top:var(--titlebar-h)}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-14);word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.62}::selection{background:var(--brand-weak)}a{color:var(--brand-strong);text-underline-offset:2px}:focus-visible{outline:2px solid var(--brand-ring);outline-offset:2px;border-radius:4px}:root[data-pointer] button:focus-visible{outline:none}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--radius-pill);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--ink-3);background-clip:content-box}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}.ui-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.ui-label{font-size:var(--fs-13);color:var(--ink-2);margin-bottom:var(--space-2);font-weight:600;display:block}.ui-input{background:var(--surface);width:100%;color:var(--ink);border:1.5px solid var(--line-strong);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-14);outline:none;padding:11px 14px;transition:border-color .15s,box-shadow .15s}.ui-input::placeholder{color:var(--ink-3)}.ui-input:hover{border-color:var(--ink-3)}.ui-input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}textarea.ui-input{resize:vertical;min-height:72px;line-height:1.6}select.ui-input{appearance:none;cursor:pointer}input[type=checkbox],input[type=radio]{accent-color:var(--brand)}.ui-hint{font-size:var(--fs-11);color:var(--ink-3);margin:var(--space-1) 0 0}.ui-error{font-size:var(--fs-13);color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent);border:1px solid color-mix(in srgb, var(--danger) 32%, transparent);border-radius:var(--radius-md);margin:0 0 var(--space-3);padding:10px 14px}.ui-btn{justify-content:center;align-items:center;gap:var(--space-2);background:var(--brand-btn);color:#fff;border-radius:var(--radius-md);width:100%;font-family:inherit;font-size:var(--fs-14);letter-spacing:-.2px;cursor:pointer;border:none;padding:13px 18px;font-weight:700;transition:background .15s,opacity .15s,transform 50ms;display:inline-flex}.ui-btn:hover{background:color-mix(in srgb, var(--brand-btn) 88%, #000)}.ui-btn:active{transform:translateY(1px)}.ui-btn:disabled{opacity:.55;cursor:default}.ui-btn.secondary{background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line)}.ui-btn.secondary:hover{background:var(--surface-3)}.ui-btn.ghost{color:var(--brand-strong);background:0 0}.ui-btn.ghost:hover{background:var(--brand-weak)}.ui-btn.auto{flex:1;width:auto}.ui-overlay{padding:var(--space-4);z-index:var(--z-modal);background:#140e0473;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-modal{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:420px;max-width:100%;max-height:90vh;padding:32px;overflow-y:auto}.m-sheet{flex:1;min-width:0;display:flex}.m-sheet>*{border-left:none!important;flex:auto!important;width:100%!important;max-width:100%!important}@media (width<=767px){:root:not([data-desktop]) input:not([type=checkbox]):not([type=radio]):not([type=range]),:root:not([data-desktop]) textarea,:root:not([data-desktop]) select{font-size:16px!important}.ui-modal{padding:20px}}@keyframes chaeng-spin{to{transform:rotate(360deg)}}.spin{animation:.9s linear infinite chaeng-spin}@media (prefers-reduced-motion:reduce){.spin{animation:none}}
