*,:after,:before{box-sizing:border-box}*{margin:0;padding:0}html{text-size-adjust:none}ol,ul{list-style:none}body{min-height:100vh;min-height:100dvh;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,h1,h2,h3,h4,h5,h6,input,label{line-height:1.1}h1,h2,h3,h4,h5,h6{text-wrap:balance}button{background:none;border:none;cursor:pointer;font:inherit}a,button{color:inherit}a{text-decoration:none}canvas,img,picture,svg,video{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit;color:inherit}input,textarea{border:none;outline:none;background:none}textarea{resize:vertical}fieldset{border:none}table{border-collapse:collapse;border-spacing:0}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}hr{border:none;border-top:1px solid;opacity:.25}summary{display:block;cursor:pointer}summary::-webkit-details-marker{display:none}[role=button],button{-webkit-user-select:none;-moz-user-select:none;user-select:none}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer}.dark input[type=date]::-webkit-calendar-picker-indicator,.dark input[type=datetime-local]::-webkit-calendar-picker-indicator,.dark input[type=time]::-webkit-calendar-picker-indicator{filter:invert(1)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:focus-visible{outline:2px solid currentColor;outline-offset:2px}:focus:not(:focus-visible){outline:none}dialog{padding:0;border:none;background:transparent}dialog::-webkit-backdrop{background:rgba(0,0,0,.5)}dialog::backdrop{background:rgba(0,0,0,.5)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root{--grey-0:#ffffff;--grey-50:#f8f9fb;--grey-100:#f1f3f5;--grey-150:#ebedf0;--grey-200:#e2e4e9;--grey-250:#d0d3da;--grey-300:#bbbdc2;--grey-400:#9da0a8;--grey-450:#8b8d93;--grey-500:#6b6e76;--grey-550:#5c5e63;--grey-600:#4a4d55;--grey-700:#3a3f4d;--grey-750:#2d3344;--grey-800:#252a3a;--grey-850:#1e2332;--grey-900:#1a1e28;--indigo-50:#eef2ff;--indigo-300:#8ba8ff;--indigo-400:#7697f5;--indigo-500:#5b7fe8;--indigo-550:#5b83f3;--indigo-600:#4a6cd4;--indigo-700:#3264f0;--indigo-800:#1a40a8;--green-100:#dcfce7;--green-300:#6ee7b7;--green-400:#4ade80;--green-500:#22c55e;--green-600:#16a34a;--green-800:#065f46;--green-900:#1e4636;--amber-100:#fef3c7;--amber-300:#fcd34d;--amber-400:#fbbf24;--amber-500:#f59e0b;--amber-600:#d97706;--amber-800:#92400e;--amber-900:#4a3b1e;--red-100:#fee2e2;--red-300:#fca5a5;--red-400:#f87171;--red-500:#ef4444;--red-600:#dc2626;--red-800:#991b1b;--red-900:#3a1e1e;--blue-100:#dbeafe;--blue-300:#93c5fd;--blue-400:#60a5fa;--blue-500:#3b82f6;--blue-600:#2563eb;--blue-800:#1e40af;--blue-900:#1e3a5f;--violet-400:#a78bfa;--violet-600:#7c3aed;color-scheme:light;--bg-primary:var(--grey-50);--bg-secondary:var(--grey-0);--bg-tertiary:var(--grey-100);--bg-elevated:var(--grey-0);--bg-hover:rgba(0,0,0,0.04);--bg-subtle:rgba(0,0,0,0.03);--text-primary:var(--grey-900);--text-secondary:var(--grey-600);--text-tertiary:var(--grey-500);--text-disabled:var(--grey-400);--accent-primary:var(--indigo-500);--accent-solid:var(--btn-primary);--accent-solid-hover:var(--btn-hover);--accent-secondary:var(--indigo-600);--accent-hover:var(--indigo-400);--accent-bg:var(--indigo-50);--accent-text:var(--indigo-800);--btn-primary:var(--indigo-550);--btn-hover:var(--indigo-700);--btn-neutral:var(--grey-600);--btn-neutral-hover:var(--grey-700);--semantic-success:var(--green-500);--semantic-success-hover:var(--green-600);--semantic-warning:var(--amber-500);--semantic-warning-hover:var(--amber-600);--semantic-error:var(--red-500);--semantic-error-hover:var(--red-600);--semantic-error-solid:var(--red-600);--semantic-error-solid-hover:var(--red-800);--semantic-info:var(--blue-500);--semantic-info-hover:var(--blue-600);--semantic-info-solid:var(--blue-600);--semantic-info-solid-hover:var(--blue-800);--semantic-neutral:var(--grey-500);--semantic-success-bg:var(--green-100);--semantic-success-text:var(--green-800);--semantic-warning-bg:var(--amber-100);--semantic-warning-text:var(--amber-800);--semantic-error-bg:var(--red-100);--semantic-error-text:var(--red-800);--semantic-info-bg:var(--blue-100);--semantic-info-text:var(--blue-800);--semantic-neutral-bg:var(--grey-100);--semantic-neutral-text:var(--grey-600);--semantic-success-tint:color-mix(in srgb,var(--semantic-success) 10%,transparent);--semantic-success-tint-strong:color-mix(in srgb,var(--semantic-success) 16%,transparent);--semantic-success-line:color-mix(in srgb,var(--semantic-success) 30%,transparent);--semantic-warning-tint:color-mix(in srgb,var(--semantic-warning) 10%,transparent);--semantic-warning-tint-strong:color-mix(in srgb,var(--semantic-warning) 16%,transparent);--semantic-warning-line:color-mix(in srgb,var(--semantic-warning) 30%,transparent);--semantic-error-tint:color-mix(in srgb,var(--semantic-error) 10%,transparent);--semantic-error-tint-strong:color-mix(in srgb,var(--semantic-error) 16%,transparent);--semantic-error-line:color-mix(in srgb,var(--semantic-error) 30%,transparent);--semantic-info-tint:color-mix(in srgb,var(--semantic-info) 10%,transparent);--semantic-info-tint-strong:color-mix(in srgb,var(--semantic-info) 16%,transparent);--semantic-info-line:color-mix(in srgb,var(--semantic-info) 30%,transparent);--semantic-neutral-tint:color-mix(in srgb,var(--semantic-neutral) 10%,transparent);--semantic-neutral-tint-strong:color-mix(in srgb,var(--semantic-neutral) 16%,transparent);--accent-tint:color-mix(in srgb,var(--accent-primary) 10%,transparent);--accent-tint-strong:color-mix(in srgb,var(--accent-primary) 16%,transparent);--accent-line:color-mix(in srgb,var(--accent-primary) 30%,transparent);--semantic-success-bg-strong:color-mix(in srgb,var(--semantic-success) 10%,var(--semantic-success-bg));--semantic-warning-bg-strong:color-mix(in srgb,var(--semantic-warning) 10%,var(--semantic-warning-bg));--semantic-error-bg-strong:color-mix(in srgb,var(--semantic-error) 10%,var(--semantic-error-bg));--semantic-info-bg-strong:color-mix(in srgb,var(--semantic-info) 10%,var(--semantic-info-bg));--semantic-neutral-bg-strong:color-mix(in srgb,var(--semantic-neutral) 10%,var(--semantic-neutral-bg));--accent-bg-strong:color-mix(in srgb,var(--accent-primary) 10%,var(--accent-bg));--accent-purple:var(--violet-600);--overlay-bg:rgba(0,0,0,0.5);--text-on-color:var(--grey-0);--medal-gold:#f59e0b;--medal-silver:#9ca3af;--medal-bronze:#c2773f;--field-label-warn:#8a6508;--border-primary:var(--grey-200);--border-secondary:var(--grey-150);--border-strong:var(--grey-250);--surface-primary:var(--bg-secondary);--surface-secondary:var(--bg-primary);--surface-tertiary:var(--bg-tertiary);--brand-primary:var(--accent-primary);--shadow-100:0 1px 3px rgba(0,0,0,0.08);--shadow-200:0 4px 6px rgba(0,0,0,0.08);--shadow-400:0 10px 20px rgba(0,0,0,0.1);--font-family:var(--font-pretendard,"Pretendard"),-apple-system,blinkmacsystemfont,system-ui,sans-serif;--font-size-3xs:10px;--font-size-xs:12px;--font-size-md:14px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--line-height-none:1;--line-height-tight:1.3;--line-height-snug:1.4;--line-height-normal:1.5;--line-height-relaxed:1.7;--letter-spacing-tight:-0.02em;--letter-spacing-normal:-0.01em;--letter-spacing-none:0;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--spacing-2:2px;--spacing-4:4px;--spacing-6:6px;--spacing-8:8px;--spacing-10:10px;--spacing-12:12px;--spacing-14:14px;--spacing-16:16px;--spacing-20:20px;--spacing-24:24px;--spacing-28:28px;--spacing-32:32px;--spacing-40:40px;--spacing-48:48px;--spacing-64:64px;--spacing-xs:var(--spacing-4);--spacing-sm:var(--spacing-8);--spacing-md:var(--spacing-16);--spacing-lg:var(--spacing-24);--spacing-xl:var(--spacing-32);--spacing-2xl:var(--spacing-48);--radius-2:2px;--radius-4:4px;--radius-6:6px;--radius-8:8px;--radius-10:10px;--radius-12:12px;--radius-14:14px;--radius-16:16px;--radius-full:9999px;--radius-sm:var(--radius-4);--radius-md:var(--radius-8);--radius-lg:var(--radius-12);--radius-xl:var(--radius-16);--control-h-xs:24px;--control-h-sm:32px;--control-h-md:40px;--control-h-lg:48px;--control-h-xl:56px;--control-px-xs:var(--spacing-8);--control-px-sm:var(--spacing-10);--control-px-md:var(--spacing-16);--control-px-lg:var(--spacing-16);--control-px-xl:var(--spacing-28);--control-fs-xs:var(--font-size-xs);--control-fs-sm:var(--font-size-md);--control-fs-md:var(--font-size-md);--control-fs-lg:var(--font-size-lg);--control-fs-xl:var(--font-size-lg);--control-radius-xs:var(--radius-6);--control-radius-sm:var(--radius-8);--control-radius-md:var(--radius-10);--control-radius-lg:var(--radius-14);--control-radius-xl:var(--radius-16);--control-radius:var(--radius-6);--control-sq-xs:var(--control-h-xs);--control-sq-sm:var(--control-h-sm);--control-sq-md:var(--control-h-md);--control-sq-lg:var(--control-h-lg);--control-sq-xl:var(--control-h-xl);--sidebar-width:100px;--topnav-h:64px;--sidebar-head-h:70px;--sidebar-peek:64px;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--keyboard-inset:0px;--tap-target:44px;--ios-zoom-floor:16px;--appbar-height:56px;--modal-fill-max:860px;--actionbar-safe-pad:calc(var(--spacing-12) + var(--safe-bottom) + var(--keyboard-inset));--actionbar-btn-h:var(--control-h-md);--z-dropdown:100;--z-sticky:200;--z-modal:1000;--z-dropdown-portal:2100;--z-dialog:10500;--z-floating-alert:10200;--z-toast:11000;--transition-fast:0.15s ease;--transition-normal:0.2s ease;--transition-slow:0.3s ease}.dark{color-scheme:dark;--bg-primary:var(--grey-900);--bg-secondary:var(--grey-850);--bg-tertiary:var(--grey-800);--bg-elevated:var(--grey-750);--bg-hover:rgba(255,255,255,0.06);--bg-subtle:rgba(255,255,255,0.04);--text-primary:var(--grey-0);--text-secondary:var(--grey-300);--text-tertiary:var(--grey-450);--text-disabled:var(--grey-550);--accent-primary:var(--indigo-400);--accent-secondary:var(--indigo-500);--accent-hover:var(--indigo-300);--accent-bg:rgba(118,151,245,0.18);--accent-text:var(--indigo-300);--btn-primary:var(--indigo-700);--btn-hover:var(--indigo-550);--btn-neutral:var(--grey-600);--btn-neutral-hover:var(--grey-500);--semantic-success:var(--green-400);--semantic-success-hover:var(--green-500);--semantic-warning:var(--amber-400);--semantic-warning-hover:var(--amber-500);--semantic-error:var(--red-400);--semantic-error-hover:var(--red-500);--semantic-error-solid:var(--red-600);--semantic-error-solid-hover:var(--red-800);--semantic-info:var(--blue-400);--semantic-info-hover:var(--blue-500);--semantic-info-solid:var(--blue-600);--semantic-info-solid-hover:var(--blue-800);--semantic-neutral:var(--grey-450);--semantic-success-bg:var(--green-900);--semantic-success-text:var(--green-300);--semantic-warning-bg:var(--amber-900);--semantic-warning-text:var(--amber-300);--semantic-error-bg:var(--red-900);--semantic-error-text:var(--red-300);--semantic-info-bg:var(--blue-900);--semantic-info-text:var(--blue-300);--semantic-neutral-bg:var(--grey-800);--semantic-neutral-text:var(--grey-300);--accent-purple:var(--violet-400);--overlay-bg:rgba(0,0,0,0.6);--medal-gold:#fbbf24;--medal-silver:#cbd5e1;--medal-bronze:#d99b6a;--field-label-warn:#ffd700;--border-primary:var(--grey-700);--border-secondary:var(--grey-750);--border-strong:var(--grey-600);--shadow-100:0 1px 3px rgba(0,0,0,0.3);--shadow-200:0 4px 6px rgba(0,0,0,0.3);--shadow-400:0 10px 20px rgba(0,0,0,0.4)}[data-tone=neutral]{--ctl-main:var(--btn-neutral);--ctl-main-hover:var(--btn-neutral-hover);--ctl-tint:var(--semantic-neutral-bg);--ctl-tint-hover:var(--bg-hover);--ctl-text:var(--text-primary);--ctl-line:var(--border-strong)}[data-tone=brand]{--ctl-main:var(--btn-primary);--ctl-main-hover:var(--btn-hover);--ctl-tint:var(--accent-bg);--ctl-tint-hover:var(--accent-bg-strong);--ctl-text:var(--accent-text);--ctl-line:var(--accent-primary)}[data-tone=danger]{--ctl-solid-bg:var(--semantic-error-solid);--ctl-solid-bg-hover:var(--semantic-error-solid-hover);--ctl-main:var(--semantic-error);--ctl-main-hover:var(--semantic-error-hover);--ctl-tint:var(--semantic-error-bg);--ctl-tint-hover:var(--semantic-error-bg-strong);--ctl-text:var(--semantic-error-text);--ctl-line:var(--semantic-error)}[data-tone=warning]{--ctl-solid-fg:var(--grey-900);--ctl-main:var(--semantic-warning);--ctl-main-hover:var(--semantic-warning-hover);--ctl-tint:var(--semantic-warning-bg);--ctl-tint-hover:var(--semantic-warning-bg-strong);--ctl-text:var(--semantic-warning-text);--ctl-line:var(--semantic-warning)}[data-tone=success]{--ctl-solid-fg:var(--grey-900);--ctl-main:var(--semantic-success);--ctl-main-hover:var(--semantic-success-hover);--ctl-tint:var(--semantic-success-bg);--ctl-tint-hover:var(--semantic-success-bg-strong);--ctl-text:var(--semantic-success-text);--ctl-line:var(--semantic-success)}[data-tone=info]{--ctl-solid-bg:var(--semantic-info-solid);--ctl-solid-bg-hover:var(--semantic-info-solid-hover);--ctl-main:var(--semantic-info);--ctl-main-hover:var(--semantic-info-hover);--ctl-tint:var(--semantic-info-bg);--ctl-tint-hover:var(--semantic-info-bg-strong);--ctl-text:var(--semantic-info-text);--ctl-line:var(--semantic-info)}:root{--v2-radius:var(--radius-8);--v2-radius-lg:var(--radius-12);--v2-border:var(--border-strong);--v2-border-subtle:var(--border-primary);--v2-shadow-control:none;--v2-shadow-raised:var(--shadow-100);--v2-shadow-surface:var(--shadow-200);--v2-focus-w:2px;--v2-focus-offset:2px;--v2-focus-color:var(--accent-primary);--v2-focus-glow:0 0 0 3px var(--accent-tint);--v2-press-shift:0px;--v2-field-bg:var(--bg-secondary)}input::placeholder,textarea::placeholder{font-size:min(1em,var(--font-size-md))}:root{--v2-radius:var(--radius-12);--v2-radius-lg:var(--radius-16);--v2-border:transparent;--v2-shadow-raised:0 2px 8px rgba(0,0,0,0.08);--v2-shadow-surface:0 4px 20px rgba(0,0,0,0.1);--v2-focus-w:3px;--v2-focus-glow:0 0 0 4px var(--accent-tint);--v2-field-bg:var(--bg-tertiary);--accent-primary:#3182f6;--accent-hover:#1b64da;--accent-text:#1b64da;--accent-line:#90b8f8;--accent-bg:#e8f3ff;--accent-tint:rgba(49,130,246,0.12);--btn-primary:#1b64da;--btn-hover:#1857c4;--semantic-success:#15c47e;--semantic-success-hover:#12a86c;--semantic-warning:#ffb800;--semantic-warning-hover:#e5a600;--semantic-error:#f04452;--semantic-error-hover:#d63a47;--semantic-info:#3182f6;--semantic-info-hover:#1b64da;--semantic-error-solid:#d63a47;--semantic-error-solid-hover:#c62c39;--semantic-info-solid:#1b64da;--semantic-info-solid-hover:#1857c4;--border-primary:#e5e8eb;--border-strong:#d1d6db;--text-secondary:#4e5968;--text-tertiary:#66707d}.dark{--accent-primary:#4593fc;--accent-hover:#6aa8fd;--accent-text:#8fc0fe;--accent-line:#1b4a8a;--accent-bg:#10243f;--btn-primary:#1b64da;--btn-hover:#3182f6;--semantic-success:#2ad392;--semantic-warning:#ffc83c;--semantic-error:#ff5c68;--semantic-info:#4593fc;--semantic-error-solid:#d63a47;--semantic-error-solid-hover:#c62c39;--semantic-info-solid:#1b64da;--semantic-info-solid-hover:#1857c4;--border-primary:#333d4b;--border-strong:#4e5968;--text-secondary:#b0b8c1;--text-tertiary:#949daa}@media (pointer:coarse){label{line-height:var(--line-height-snug)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),textarea{font-size:var(--ios-zoom-floor)}}html{-webkit-text-size-adjust:100%}@media (pointer:coarse){[role=button],[role=option],[role=tab],a,button,label,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}[role=button]:active,button:active{opacity:.7}body{overscroll-behavior-y:contain}}@media (max-width:767.98px){body{overflow-x:clip}}:root{--cdm-color-primary:#1a73e8;--cdm-color-primary-hover:#1557b0;--cdm-color-secondary:#34a853;--cdm-color-secondary-hover:#2d8f47;--cdm-color-danger:#ea4335;--cdm-color-danger-hover:#d23125;--cdm-color-warning:#fbbc04;--cdm-color-warning-hover:#f9ab00;--cdm-color-surface:#ffffff;--cdm-color-background:#f8fafc;--cdm-color-background-secondary:#f1f5f9;--cdm-color-border:#e2e8f0;--cdm-color-border-light:#f1f5f9;--cdm-color-text:#1e293b;--cdm-color-text-secondary:#64748b;--cdm-color-text-muted:#94a3b8;--cdm-spacing-xs:4px;--cdm-spacing-sm:8px;--cdm-spacing-md:16px;--cdm-spacing-lg:24px;--cdm-spacing-xl:32px;--cdm-spacing-xxl:48px;--cdm-radius-sm:6px;--cdm-radius-md:8px;--cdm-radius-lg:12px;--cdm-radius-xl:16px;--cdm-shadow-sm:0 1px 2px 0 rgb(0 0 0/0.05);--cdm-shadow-md:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--cdm-shadow-lg:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--cdm-font-size-h1:20px;--cdm-font-size-h2:18px;--cdm-font-size-h3:16px;--cdm-font-size-h4:14px;--cdm-font-size-body:14px;--cdm-font-size-body-small:12px;--cdm-font-size-button:13px;--cdm-font-size-button-large:14px;--cdm-font-size-label:12px;--cdm-font-size-caption:11px;--bg-quaternary:var(--bg-tertiary);--border-medium:var(--border-primary);--border-light:var(--border-secondary);--cdm-label-weight:500;--cdm-opt-selected-bg:var(--accent-bg);--cdm-label-emerald:#1f7a4d}.dark{--cdm-label-emerald:#4ade80}body{font-family:var(--font-family);color:var(--text-primary);background-color:var(--bg-primary)}*,:after,:before{transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease}.theme-switching *,.theme-switching :after,.theme-switching :before{transition:none!important}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:4px}@media (hover:hover){::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}}a{color:var(--accent-primary)}@media (hover:hover){a:hover{color:var(--accent-hover)}}input[type=checkbox],input[type=radio]{accent-color:var(--accent-primary)}select option{background-color:var(--bg-secondary);color:var(--text-primary)}