/* Generated by design-system/build-css.py from reviewed Figma JSON. */
:root{--sg-palette-white:rgba(255,255,255,1);--sg-palette-dark-text:rgba(245,247,250,1);--sg-palette-red-strong:rgba(220,24,24,1);--sg-palette-red-soft:rgba(255,241,241,1);--sg-palette-red-dark:rgba(74,17,17,1);--sg-palette-red-light:rgba(255,98,98,1);--sg-palette-green-strong:rgba(24,114,74,1);--sg-palette-green-soft:rgba(234,248,239,1);--sg-palette-green-dark:rgba(23,59,45,1);--sg-palette-green-light:rgba(145,223,176,1);--sg-palette-amber-strong:rgba(133,85,0,1);--sg-palette-amber-soft:rgba(255,246,219,1);--sg-palette-amber-dark:rgba(60,48,26,1);--sg-palette-amber-light:rgba(240,205,122,1);--sg-palette-element-water-default:rgba(37,99,235,1);--sg-palette-element-light-default:rgba(200,187,159,1);--sg-palette-element-wind-default:rgba(229,185,63,1);--sg-color-canvas-contrast:var(--sg-palette-neutral-50);--sg-color-surface-default:var(--sg-palette-white);--sg-color-surface-subtle:var(--sg-palette-neutral-100);--sg-color-surface-selected:var(--sg-palette-blue-tint);--sg-color-text-primary:var(--sg-palette-neutral-950);--sg-color-text-secondary:var(--sg-palette-neutral-600);--sg-color-text-disabled:var(--sg-palette-neutral-300);--sg-color-text-on-action:var(--sg-palette-white);--sg-color-border-subtle:var(--sg-palette-neutral-200);--sg-color-border-default:var(--sg-palette-neutral-200);--sg-color-border-focus:var(--sg-palette-blue-product);--sg-color-action-primary:var(--sg-palette-blue-product);--sg-color-component-button-primary-hover:var(--sg-palette-blue-hover);--sg-color-component-button-primary-pressed:var(--sg-palette-blue-pressed);--sg-color-component-control-disabled:var(--sg-palette-neutral-100);--sg-color-status-danger-foreground:var(--sg-palette-red-strong);--sg-color-status-danger-background:var(--sg-palette-red-soft);--sg-color-status-success-foreground:var(--sg-palette-green-strong);--sg-color-status-success-background:var(--sg-palette-green-soft);--sg-color-status-warning-foreground:var(--sg-palette-amber-strong);--sg-color-status-warning-background:var(--sg-palette-amber-soft);--sg-color-element-fire-background:var(--sg-palette-element-fire-default);--sg-color-element-water-background:var(--sg-palette-element-water-default);--sg-color-element-wind-background:var(--sg-palette-element-wind-default);--sg-color-element-light-background:var(--sg-palette-element-light-default);--sg-color-element-dark-background:var(--sg-palette-element-dark-default);--sg-space-1:0px;--sg-space-2:2px;--sg-space-3:4px;--sg-space-4:8px;--sg-space-5:12px;--sg-space-6:16px;--sg-space-7:20px;--sg-space-8:24px;--sg-space-9:32px;--sg-space-10:40px;--sg-space-11:48px;--sg-space-12:64px;--sg-radius-1:0px;--sg-radius-2:4px;--sg-radius-3:8px;--sg-radius-4:12px;--sg-radius-5:16px;--sg-radius-7:999px;--sg-size-1:16px;--sg-size-2:20px;--sg-size-3:24px;--sg-size-5:40px;--sg-size-6:44px;--sg-size-7:48px;--sg-size-8:56px;--sg-size-9:64px;--sg-stroke-1:1px;--sg-stroke-2:2px;--sg-palette-element-fire-default:rgba(222,48,40,1);--sg-palette-element-dark-default:rgba(123,52,156,1);--sg-color-element-fire-foreground:var(--sg-palette-white);--sg-color-element-water-foreground:var(--sg-palette-white);--sg-color-element-wind-foreground:var(--sg-palette-white);--sg-color-element-light-foreground:var(--sg-palette-white);--sg-color-element-dark-foreground:var(--sg-palette-white);--sg-radius-6:24px;--sg-palette-neutral-50:rgba(243,245,248,1);--sg-palette-neutral-100:rgba(232,236,241,1);--sg-palette-neutral-200:rgba(213,219,227,1);--sg-palette-neutral-500:rgba(108,120,136,1);--sg-palette-neutral-600:rgba(86,98,115,1);--sg-palette-neutral-800:rgba(48,60,77,1);--sg-palette-neutral-900:rgba(32,43,59,1);--sg-palette-neutral-950:rgba(17,27,43,1);--sg-palette-neutral-1000:rgba(11,18,32,1);--sg-palette-neutral-350:rgba(172,184,200,1);--sg-palette-blue-product:rgba(0,98,227,1);--sg-palette-blue-hover:rgba(0,83,191,1);--sg-palette-blue-pressed:rgba(0,68,157,1);--sg-palette-blue-tint:rgba(234,242,255,1);--sg-palette-blue-night:rgba(139,188,255,1);--sg-palette-blue-night-tint:rgba(20,45,77,1);--sg-color-canvas-default:var(--sg-palette-white);--sg-color-surface-contrast:var(--sg-palette-neutral-900);--sg-color-surface-elevated:var(--sg-palette-white);--sg-color-text-on-dark:var(--sg-palette-white);--sg-color-text-on-light:var(--sg-palette-neutral-950);--sg-color-text-on-contrast:var(--sg-palette-white);--sg-color-text-link:var(--sg-palette-blue-product);--sg-color-status-info-foreground:var(--sg-palette-blue-product);--sg-color-status-info-background:var(--sg-palette-blue-tint);--sg-color-border-divider:var(--sg-palette-neutral-200);--sg-palette-scrim:rgba(11,18,32,0.6000000238418579);--sg-color-overlay-scrim:var(--sg-palette-scrim);--sg-color-component-button-danger-hover:var(--sg-palette-red-strong);--sg-color-icon-primary:var(--sg-palette-neutral-950);--sg-color-icon-secondary:var(--sg-palette-neutral-600);--sg-color-icon-disabled:var(--sg-palette-neutral-300);--sg-color-icon-on-action:var(--sg-palette-white);--sg-color-icon-on-contrast:var(--sg-palette-white);--sg-color-icon-interactive:var(--sg-palette-blue-product);--sg-color-icon-info:var(--sg-palette-blue-product);--sg-color-icon-success:var(--sg-palette-green-strong);--sg-color-icon-warning:var(--sg-palette-amber-strong);--sg-color-icon-danger:var(--sg-palette-red-strong);--sg-size-4:32px;--sg-color-border-strong:var(--sg-palette-neutral-600);--sg-palette-neutral-300:rgba(191,200,212,1);--sg-palette-neutral-450:rgba(124,136,153,1);--sg-palette-neutral-400:rgba(146,158,175,1);--sg-color-text-placeholder:var(--sg-palette-neutral-450);--sg-color-icon-tertiary:var(--sg-palette-neutral-400);--sg-palette-blue-action-dark:rgba(22,114,235,1);--sg-palette-blue-action-dark-hover:rgba(18,102,217,1);--sg-palette-blue-action-dark-pressed:rgba(15,91,194,1);--sg-color-surface-black:var(--sg-palette-neutral-900);--sg-color-icon-on-dark:var(--sg-palette-white);--sg-color-border-light:var(--sg-palette-neutral-100);--sg-color-text-highlight:var(--sg-palette-blue-product);}
[data-theme="dark"]{--sg-color-canvas-contrast:var(--sg-palette-neutral-900);--sg-color-surface-default:var(--sg-palette-neutral-950);--sg-color-surface-subtle:var(--sg-palette-neutral-900);--sg-color-surface-selected:var(--sg-palette-blue-night-tint);--sg-color-text-primary:var(--sg-palette-dark-text);--sg-color-text-secondary:var(--sg-palette-neutral-350);--sg-color-text-disabled:var(--sg-palette-neutral-450);--sg-color-text-on-action:var(--sg-palette-white);--sg-color-border-subtle:var(--sg-palette-neutral-800);--sg-color-border-default:var(--sg-palette-neutral-500);--sg-color-border-focus:var(--sg-palette-blue-night);--sg-color-action-primary:var(--sg-palette-blue-action-dark);--sg-color-component-button-primary-hover:var(--sg-palette-blue-action-dark-hover);--sg-color-component-button-primary-pressed:var(--sg-palette-blue-action-dark-pressed);--sg-color-component-control-disabled:var(--sg-palette-neutral-900);--sg-color-status-danger-foreground:var(--sg-palette-red-light);--sg-color-status-danger-background:var(--sg-palette-red-dark);--sg-color-status-success-foreground:var(--sg-palette-green-light);--sg-color-status-success-background:var(--sg-palette-green-dark);--sg-color-status-warning-foreground:var(--sg-palette-amber-light);--sg-color-status-warning-background:var(--sg-palette-amber-dark);--sg-color-element-fire-background:var(--sg-palette-element-fire-default);--sg-color-element-water-background:var(--sg-palette-element-water-default);--sg-color-element-wind-background:var(--sg-palette-element-wind-default);--sg-color-element-light-background:var(--sg-palette-element-light-default);--sg-color-element-dark-background:var(--sg-palette-element-dark-default);--sg-color-element-fire-foreground:var(--sg-palette-white);--sg-color-element-water-foreground:var(--sg-palette-white);--sg-color-element-wind-foreground:var(--sg-palette-white);--sg-color-element-light-foreground:var(--sg-palette-white);--sg-color-element-dark-foreground:var(--sg-palette-white);--sg-color-canvas-default:var(--sg-palette-neutral-1000);--sg-color-surface-contrast:var(--sg-palette-neutral-200);--sg-color-surface-elevated:var(--sg-palette-neutral-800);--sg-color-text-on-dark:var(--sg-palette-white);--sg-color-text-on-light:var(--sg-palette-neutral-950);--sg-color-text-on-contrast:var(--sg-palette-neutral-950);--sg-color-text-link:var(--sg-palette-blue-night);--sg-color-status-info-foreground:var(--sg-palette-blue-night);--sg-color-status-info-background:var(--sg-palette-blue-night-tint);--sg-color-border-divider:var(--sg-palette-neutral-800);--sg-color-overlay-scrim:var(--sg-palette-scrim);--sg-color-component-button-danger-hover:var(--sg-palette-red-light);--sg-color-icon-primary:var(--sg-palette-dark-text);--sg-color-icon-secondary:var(--sg-palette-neutral-350);--sg-color-icon-disabled:var(--sg-palette-neutral-450);--sg-color-icon-on-action:var(--sg-palette-white);--sg-color-icon-on-contrast:var(--sg-palette-neutral-950);--sg-color-icon-interactive:var(--sg-palette-blue-night);--sg-color-icon-info:var(--sg-palette-blue-night);--sg-color-icon-success:var(--sg-palette-green-light);--sg-color-icon-warning:var(--sg-palette-amber-light);--sg-color-icon-danger:var(--sg-palette-red-light);--sg-color-border-strong:var(--sg-palette-neutral-350);--sg-color-text-placeholder:var(--sg-palette-neutral-400);--sg-color-icon-tertiary:var(--sg-palette-neutral-450);--sg-color-surface-black:var(--sg-palette-neutral-900);--sg-color-icon-on-dark:var(--sg-palette-white);--sg-color-border-light:var(--sg-palette-neutral-800);--sg-color-text-highlight:var(--sg-palette-blue-night);}
.sg-text-label-1,.field,.leader{font-family:Pretendard,sans-serif;font-size:14px;font-weight:600;line-height:20px;letter-spacing:0.0em;}
.sg-text-label-2,.badge{font-family:Pretendard,sans-serif;font-size:12px;font-weight:600;line-height:18px;letter-spacing:0.0em;}
.sg-text-caption-1,.login .notice{font-family:Pretendard,sans-serif;font-size:12px;font-weight:500;line-height:18px;letter-spacing:0.0em;}
.sg-text-caption-2{font-family:Pretendard,sans-serif;font-size:11px;font-weight:500;line-height:16px;letter-spacing:0.0em;}
.sg-text-numeric-1{font-family:Pretendard,sans-serif;font-size:16px;font-weight:600;line-height:24px;letter-spacing:0.0em;}
.sg-text-display-1{font-family:Pretendard,sans-serif;font-size:40px;font-weight:700;line-height:48px;letter-spacing:-0.01em;}
.sg-text-display-2{font-family:Pretendard,sans-serif;font-size:32px;font-weight:700;line-height:40px;letter-spacing:-0.005em;}
.sg-text-heading-1{font-family:Pretendard,sans-serif;font-size:28px;font-weight:700;line-height:36px;letter-spacing:-0.004000000059604645em;}
.sg-text-heading-2{font-family:Pretendard,sans-serif;font-size:24px;font-weight:700;line-height:32px;letter-spacing:-0.0030000001192092896em;}
.sg-text-heading-3,h1,h2{font-family:Pretendard,sans-serif;font-size:20px;font-weight:600;line-height:28px;letter-spacing:-0.0020000000298023225em;}
.sg-text-title-1,h3,.header h1,dialog h2{font-family:Pretendard,sans-serif;font-size:18px;font-weight:600;line-height:26px;letter-spacing:-0.0010000000149011613em;}
.sg-text-title-2{font-family:Pretendard,sans-serif;font-size:16px;font-weight:600;line-height:24px;letter-spacing:0.0em;}
.sg-text-body-1-regular,body,.field input,.field select,.field textarea{font-family:Pretendard,sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0.0em;}
.sg-text-body-2-regular,small,.muted,.comment,dialog p{font-family:Pretendard,sans-serif;font-size:14px;font-weight:400;line-height:22px;letter-spacing:0.0em;}
.sg-text-body-1-medium{font-family:Pretendard,sans-serif;font-size:16px;font-weight:500;line-height:24px;letter-spacing:0.0em;}
.sg-text-body-1-semibold{font-family:Pretendard,sans-serif;font-size:16px;font-weight:600;line-height:24px;letter-spacing:0.0em;}
.sg-text-body-2-medium{font-family:Pretendard,sans-serif;font-size:14px;font-weight:500;line-height:22px;letter-spacing:0.0em;}
.sg-text-body-2-semibold,.monster-name{font-family:Pretendard,sans-serif;font-size:14px;font-weight:600;line-height:22px;letter-spacing:0.0em;}
.button{box-sizing:border-box;border:0;display:flex;align-items:center;justify-content:center;text-align:center;}
.button.primary:not(.medium):not(.small){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-action-primary);color:var(--sg-color-text-on-action);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost):not(.medium):not(.small){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-default);color:var(--sg-color-text-primary);font-size:16px;line-height:24px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger:not(.medium):not(.small){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-status-danger-background);color:var(--sg-color-status-danger-foreground);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button.ghost:not(.medium):not(.small){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-link);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button.primary.medium{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-action-primary);color:var(--sg-color-text-on-action);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost).medium{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-default);color:var(--sg-color-text-primary);font-size:14px;line-height:20px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger.medium{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-status-danger-background);color:var(--sg-color-status-danger-foreground);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button.ghost.medium{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-link);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button.primary.small{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-action-primary);color:var(--sg-color-text-on-action);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost).small{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-default);color:var(--sg-color-text-primary);font-size:12px;line-height:18px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger.small{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-status-danger-background);color:var(--sg-color-status-danger-foreground);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.button.ghost.small{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-link);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
@media(hover:hover){.button.primary:not(.medium):not(.small):hover:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-primary-hover);color:var(--sg-color-text-on-action);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}}
@media(hover:hover){.button:not(.primary):not(.danger):not(.ghost):not(.medium):not(.small):hover:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-subtle);color:var(--sg-color-text-primary);font-size:16px;line-height:24px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}}
@media(hover:hover){.button.danger:not(.medium):not(.small):hover:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-danger-hover);color:var(--sg-color-text-on-action);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}}
@media(hover:hover){.button.ghost:not(.medium):not(.small):hover:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-subtle);color:var(--sg-color-text-link);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}}
@media(hover:hover){.button.primary.medium:hover:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-primary-hover);color:var(--sg-color-text-on-action);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}}
@media(hover:hover){.button:not(.primary):not(.danger):not(.ghost).medium:hover:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-subtle);color:var(--sg-color-text-primary);font-size:14px;line-height:20px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}}
@media(hover:hover){.button.danger.medium:hover:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-danger-hover);color:var(--sg-color-text-on-action);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}}
@media(hover:hover){.button.ghost.medium:hover:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-subtle);color:var(--sg-color-text-link);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}}
@media(hover:hover){.button.primary.small:hover:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-primary-hover);color:var(--sg-color-text-on-action);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}}
@media(hover:hover){.button:not(.primary):not(.danger):not(.ghost).small:hover:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-subtle);color:var(--sg-color-text-primary);font-size:12px;line-height:18px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}}
@media(hover:hover){.button.danger.small:hover:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-danger-hover);color:var(--sg-color-text-on-action);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}}
@media(hover:hover){.button.ghost.small:hover:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-subtle);color:var(--sg-color-text-link);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}}
.button.primary:not(.medium):not(.small):active:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-primary-pressed);color:var(--sg-color-text-on-action);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost):not(.medium):not(.small):active:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-subtle);color:var(--sg-color-text-primary);font-size:16px;line-height:24px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger:not(.medium):not(.small):active:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-danger-hover);color:var(--sg-color-text-on-action);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button.ghost:not(.medium):not(.small):active:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-selected);color:var(--sg-color-text-link);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button.primary.medium:active:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-primary-pressed);color:var(--sg-color-text-on-action);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost).medium:active:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-subtle);color:var(--sg-color-text-primary);font-size:14px;line-height:20px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger.medium:active:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-danger-hover);color:var(--sg-color-text-on-action);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button.ghost.medium:active:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-selected);color:var(--sg-color-text-link);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button.primary.small:active:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-primary-pressed);color:var(--sg-color-text-on-action);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost).small:active:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-subtle);color:var(--sg-color-text-primary);font-size:12px;line-height:18px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger.small:active:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-button-danger-hover);color:var(--sg-color-text-on-action);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.button.ghost.small:active:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-selected);color:var(--sg-color-text-link);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.button.primary:not(.medium):not(.small):focus-visible:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-action-primary);color:var(--sg-color-text-on-action);font-size:16px;line-height:24px;font-weight:600;box-shadow:inset 0 0 0 2px var(--sg-color-border-focus);}
.button:not(.primary):not(.danger):not(.ghost):not(.medium):not(.small):focus-visible:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-default);color:var(--sg-color-text-primary);font-size:16px;line-height:24px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-focus);}
.button.danger:not(.medium):not(.small):focus-visible:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-status-danger-background);color:var(--sg-color-status-danger-foreground);font-size:16px;line-height:24px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-focus);}
.button.ghost:not(.medium):not(.small):focus-visible:not(:disabled){min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-link);font-size:16px;line-height:24px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-focus);}
.button.primary.medium:focus-visible:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-action-primary);color:var(--sg-color-text-on-action);font-size:14px;line-height:20px;font-weight:600;box-shadow:inset 0 0 0 2px var(--sg-color-border-focus);}
.button:not(.primary):not(.danger):not(.ghost).medium:focus-visible:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-default);color:var(--sg-color-text-primary);font-size:14px;line-height:20px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-focus);}
.button.danger.medium:focus-visible:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-status-danger-background);color:var(--sg-color-status-danger-foreground);font-size:14px;line-height:20px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-focus);}
.button.ghost.medium:focus-visible:not(:disabled){min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-link);font-size:14px;line-height:20px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-focus);}
.button.primary.small:focus-visible:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-action-primary);color:var(--sg-color-text-on-action);font-size:12px;line-height:18px;font-weight:600;box-shadow:inset 0 0 0 2px var(--sg-color-border-focus);}
.button:not(.primary):not(.danger):not(.ghost).small:focus-visible:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-default);color:var(--sg-color-text-primary);font-size:12px;line-height:18px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-focus);}
.button.danger.small:focus-visible:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-status-danger-background);color:var(--sg-color-status-danger-foreground);font-size:12px;line-height:18px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-focus);}
.button.ghost.small:focus-visible:not(:disabled){min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-link);font-size:12px;line-height:18px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-focus);}
.button.primary:not(.medium):not(.small):disabled{min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-control-disabled);color:var(--sg-color-text-disabled);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost):not(.medium):not(.small):disabled{min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-default);color:var(--sg-color-text-disabled);font-size:16px;line-height:24px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger:not(.medium):not(.small):disabled{min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-control-disabled);color:var(--sg-color-text-disabled);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button.ghost:not(.medium):not(.small):disabled{min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-disabled);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button.primary.medium:disabled{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-control-disabled);color:var(--sg-color-text-disabled);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost).medium:disabled{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-control-disabled);color:var(--sg-color-text-disabled);font-size:14px;line-height:20px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger.medium:disabled{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-control-disabled);color:var(--sg-color-text-disabled);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button.ghost.medium:disabled{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-disabled);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button.primary.small:disabled{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-control-disabled);color:var(--sg-color-text-disabled);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost).small:disabled{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-control-disabled);color:var(--sg-color-text-disabled);font-size:12px;line-height:18px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger.small:disabled{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-component-control-disabled);color:var(--sg-color-text-disabled);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.button.ghost.small:disabled{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-disabled);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.button.primary:not(.medium):not(.small)[aria-busy="true"]{min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-action-primary);color:var(--sg-color-text-on-action);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost):not(.medium):not(.small)[aria-busy="true"]{min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-default);color:var(--sg-color-text-primary);font-size:16px;line-height:24px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger:not(.medium):not(.small)[aria-busy="true"]{min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:var(--sg-color-status-danger-background);color:var(--sg-color-status-danger-foreground);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button.ghost:not(.medium):not(.small)[aria-busy="true"]{min-height:48px;padding:12px 12px 12px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-link);font-size:16px;line-height:24px;font-weight:600;box-shadow:none;}
.button.primary.medium[aria-busy="true"]{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-action-primary);color:var(--sg-color-text-on-action);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost).medium[aria-busy="true"]{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-default);color:var(--sg-color-text-primary);font-size:14px;line-height:20px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger.medium[aria-busy="true"]{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:var(--sg-color-status-danger-background);color:var(--sg-color-status-danger-foreground);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button.ghost.medium[aria-busy="true"]{min-height:40px;padding:8px 12px 8px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-link);font-size:14px;line-height:20px;font-weight:600;box-shadow:none;}
.button.primary.small[aria-busy="true"]{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-action-primary);color:var(--sg-color-text-on-action);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.button:not(.primary):not(.danger):not(.ghost).small[aria-busy="true"]{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-surface-default);color:var(--sg-color-text-primary);font-size:12px;line-height:18px;font-weight:600;box-shadow:inset 0 0 0 1px var(--sg-color-border-default);}
.button.danger.small[aria-busy="true"]{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:var(--sg-color-status-danger-background);color:var(--sg-color-status-danger-foreground);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.button.ghost.small[aria-busy="true"]{min-height:32px;padding:4px 12px 4px 12px;gap:2px;border-radius:8px;background:transparent;color:var(--sg-color-text-link);font-size:12px;line-height:18px;font-weight:600;box-shadow:none;}
.field input::placeholder,.field textarea::placeholder{color:var(--sg-color-text-placeholder)}
dialog::backdrop{background:var(--sg-color-overlay-scrim)}
.field input{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-border-default);border-radius:8px;min-height:50px;padding:12px 12px;outline:none;}
.field input{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-border-default);border-radius:8px;min-height:50px;padding:12px 12px;outline:none;color:var(--sg-color-text-primary);}
.field input:focus{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-border-focus);border-radius:8px;min-height:50px;padding:12px 12px;outline:none;color:var(--sg-color-text-primary);}
.field input[aria-invalid="true"]{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-status-danger-foreground);border-radius:8px;min-height:50px;padding:12px 12px;outline:none;color:var(--sg-color-text-primary);}
.field input:disabled{background:var(--sg-color-surface-subtle);border:1px solid var(--sg-color-border-default);border-radius:8px;min-height:50px;padding:12px 12px;outline:none;color:var(--sg-color-text-secondary);}
.field input[readonly]{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-border-default);border-radius:8px;min-height:50px;padding:12px 12px;outline:none;color:var(--sg-color-text-primary);}
.field textarea{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-border-default);border-radius:8px;min-height:144px;padding:12px 12px;outline:none;}
.field textarea{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-border-default);border-radius:8px;min-height:144px;padding:12px 12px;outline:none;color:var(--sg-color-text-primary);}
.field textarea:focus{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-border-focus);border-radius:8px;min-height:144px;padding:12px 12px;outline:none;color:var(--sg-color-text-primary);}
.field textarea[aria-invalid="true"]{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-status-danger-foreground);border-radius:8px;min-height:144px;padding:12px 12px;outline:none;color:var(--sg-color-text-primary);}
.sg-select{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-border-default);border-radius:8px;min-height:48px;padding:12px 12px;outline:none;}
.sg-select{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-border-default);border-radius:8px;min-height:48px;padding:12px 12px;outline:none;color:var(--sg-color-text-primary);}
.sg-select:focus{background:var(--sg-color-surface-default);border:2px solid var(--sg-color-border-focus);border-radius:8px;min-height:48px;padding:12px 12px;outline:none;color:var(--sg-color-text-placeholder);}
.sg-select:disabled{background:var(--sg-color-surface-subtle);border:1px solid var(--sg-color-border-default);border-radius:8px;min-height:48px;padding:12px 12px;outline:none;color:var(--sg-color-text-secondary);}
.sg-select[aria-invalid="true"]{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-status-danger-foreground);border-radius:8px;min-height:48px;padding:12px 12px;outline:none;color:var(--sg-color-text-placeholder);}
.sg-option{background:var(--sg-color-surface-default);border:1px solid transparent;border-radius:0px;min-height:48px;padding:0 12px;color:var(--sg-color-text-primary);font-size:16px;font-weight:400;line-height:24px;}
.sg-option[aria-selected="true"]{background:var(--sg-color-surface-selected);border:1px solid transparent;border-radius:0px;min-height:48px;padding:0 12px;color:var(--sg-color-text-primary);font-size:16px;font-weight:400;line-height:24px;}
.sg-option[aria-disabled="true"]{background:var(--sg-color-surface-default);border:1px solid transparent;border-radius:0px;min-height:48px;padding:0 12px;color:var(--sg-color-text-disabled);font-size:16px;font-weight:400;line-height:24px;}
.sg-select-menu{background:var(--sg-color-surface-default);border:1px solid var(--sg-color-border-light);border-radius:8px;max-height:288px;}
#modal{background:var(--sg-color-surface-default);border:1px solid transparent;border-radius:16px;width:calc(min(100vw, 500px) - 32px);max-width:none;padding:24px;max-height:calc(100dvh - 32px);}
#modal p{margin:4px 0 16px}#modal .modal-later{width:100%;margin-top:16px}
