.confirm-modal__backdrop{z-index:1000;background:#0000008c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.confirm-modal{background:var(--color-bg-secondary,#1a1a1a);border:1px solid var(--color-border,#333);border-radius:var(--radius-md,10px);width:100%;max-width:400px;padding:18px 18px 14px;box-shadow:0 12px 40px #00000080}.confirm-modal__title{font-size:var(--font-size-md,15px);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary,#eee);margin:0 0 8px}.confirm-modal__msg{font-size:var(--font-size-sm,13px);color:var(--color-text-primary,#ddd);white-space:pre-wrap;margin:0 0 16px;line-height:1.5}.confirm-modal__actions{justify-content:flex-end;gap:8px;display:flex}.confirm-modal__btn{font-size:var(--font-size-sm,13px);font:inherit;border-radius:var(--radius-sm,6px);cursor:pointer;border:1px solid var(--color-border,#333);color:var(--color-text-secondary,#bbb);background:0 0;padding:7px 16px}.confirm-modal__btn:hover{color:var(--color-text-primary,#fff);border-color:var(--color-text-secondary,#888)}.confirm-modal__btn--confirm{background:var(--color-accent,#3b82f6);border-color:var(--color-accent,#3b82f6);color:#fff}.confirm-modal__btn--confirm:hover{filter:brightness(1.08);color:#fff}.confirm-modal__btn--danger{background:var(--color-danger,#e5484d);border-color:var(--color-danger,#e5484d)}.confirm-modal--wide{max-width:680px}.confirm-modal__doc{border:1px solid var(--color-border,#333);border-radius:var(--radius-sm,6px);max-height:58vh;font-size:var(--font-size-sm,13px);color:var(--color-text-primary,#ddd);margin:0 0 14px;padding:10px 14px;line-height:1.55;overflow:auto}.confirm-modal__doc h1,.confirm-modal__doc h2{font-size:var(--font-size-md,15px);margin:12px 0 6px}.confirm-modal__err{color:var(--color-danger,#e5484d)}.confirm-modal--form{max-width:480px}.confirm-modal__hint{color:var(--color-text-secondary,#999);margin:0 0 12px;font-size:12px}.confirm-modal__field{font-size:var(--font-size-sm,13px);color:var(--color-text-secondary,#bbb);flex-direction:column;gap:4px;margin:0 0 10px;display:flex}.confirm-modal__field input,.confirm-modal__field select,.confirm-modal__field textarea{font:inherit;font-size:var(--font-size-sm,13px);border:1px solid var(--color-border,#333);border-radius:var(--radius-sm,6px);background:var(--color-bg-primary,#111);color:var(--color-text-primary,#eee);padding:7px 9px}.confirm-modal__field textarea{resize:vertical;min-height:110px}.confirm-modal--form .confirm-modal__btn:disabled{opacity:.55;cursor:default}.btn{justify-content:center;align-items:center;gap:var(--space-1);border-radius:var(--radius-md);font-family:var(--font-ui);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);white-space:nowrap;border:1px solid #0000;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.4;cursor:not-allowed}.btn--md{height:36px;padding:0 var(--space-2);font-size:var(--font-size-sm)}.btn--lg{height:48px;padding:0 var(--space-4);font-size:var(--font-size-base)}.btn--primary{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.btn--primary:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn--ghost{border-color:var(--color-border);color:var(--color-text-primary);background-color:#0000}.btn--ghost:hover:not(:disabled){border-color:var(--color-text-secondary);background-color:#ffffff0a}:root{--color-bg-primary:#f3f3f1;--color-bg-secondary:#fff;--color-surface:#fff;--color-accent:#2563eb;--color-accent-hover:#1d4ed8;--color-on-accent:#fff;--color-text-primary:#12212c;--color-text-secondary:#43515b;--color-text-muted:#6a7884;--color-link:#2563eb;--color-attention:#b7810f;--color-border:#1c2a3624;--color-border-strong:#1c2a3638;--color-destructive:#d84a4a;--color-destructive-hover:#c23e3e;--color-success:#189f78;--color-warning:#b7810f;--glass-surface:#ffffff1a;--glass-surface-2:#fff3;--glass-rim:#fff9;--glass-border:#1c2a3633;--glass-blur:8px;--font-display:"Chakra Petch", system-ui, sans-serif;--font-ui:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--font-size-xs:.875rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-bold:700;--line-height-body:1.5;--line-height-heading:1.2;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;--space-6:48px;--space-7:56px;--space-8:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--shadow-sm:0 1px 3px #141e2d14;--shadow-md:0 6px 18px #141e2d1a;--shadow-lg:0 20px 50px #141e2d29;--transition-fast:.12s ease;--transition-base:.2s ease;--transition-slow:.3s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-ui);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{line-height:var(--line-height-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}a{color:var(--color-link);text-decoration:none}html a:hover{color:var(--color-accent-hover)}select{background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid #ffffff4d;border-radius:6px}code,pre,kbd,samp{font-family:var(--font-mono);font-size:var(--font-size-sm)}#root{flex-direction:column;min-height:100vh;display:flex}.app-canvas-root{width:100vw;height:100vh}.table-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.table-scroll>table{min-width:max-content}.owner{color:var(--color-accent,#2563eb);white-space:nowrap;align-items:center;gap:4px;font-weight:600;display:inline-flex}.owner .paw{flex:none}.owner--outside{color:#6b7683}
