.modal-backdrop{-webkit-backdrop-filter:blur(2px);background:#00000080}.modal-panel{background:var(--color-surface);border:1px solid var(--color-border);animation:.18s ease-out modal-enter;box-shadow:0 24px 48px #0000002e,0 4px 12px #0000000f}.modal-panel--fullscreen{border:none;border-radius:0;max-width:none;max-height:none;margin:0;position:fixed;inset:0}@keyframes modal-enter{0%{opacity:0;transform:scale(.97)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-title{color:var(--color-text-primary);letter-spacing:-.005em;font-weight:600}.modal-subtitle{color:var(--color-text-muted);font-weight:400}.modal-close{color:var(--color-text-muted);transition:color .12s,background .12s}.modal-close:hover{color:var(--color-text-primary);background:var(--color-hover)}.modal-body{color:var(--color-text-primary)}.modal-footer{border-top:1px solid var(--color-divider);background:var(--color-surface)}.btn-group{align-items:stretch;display:inline-flex}.btn-group--vertical{flex-direction:column}.btn-group--full{width:100%}.btn-group--full .btn{flex:1}.btn-group:not(.btn-group--vertical) .btn{border-radius:0}.btn-group--small:not(.btn-group--vertical) .btn:first-child{border-radius:5px 0 0 5px}.btn-group--small:not(.btn-group--vertical) .btn:last-child{border-radius:0 5px 5px 0}.btn-group--medium:not(.btn-group--vertical) .btn:first-child{border-radius:6px 0 0 6px}.btn-group--medium:not(.btn-group--vertical) .btn:last-child{border-radius:0 6px 6px 0}.btn-group--large:not(.btn-group--vertical) .btn:first-child{border-radius:8px 0 0 8px}.btn-group--large:not(.btn-group--vertical) .btn:last-child{border-radius:0 8px 8px 0}.btn-group--vertical .btn{border-radius:0;width:100%}.btn-group--small.btn-group--vertical .btn:first-child{border-radius:5px 5px 0 0}.btn-group--small.btn-group--vertical .btn:last-child{border-radius:0 0 5px 5px}.btn-group--medium.btn-group--vertical .btn:first-child{border-radius:6px 6px 0 0}.btn-group--medium.btn-group--vertical .btn:last-child{border-radius:0 0 6px 6px}.btn-group--large.btn-group--vertical .btn:first-child{border-radius:8px 8px 0 0}.btn-group--large.btn-group--vertical .btn:last-child{border-radius:0 0 8px 8px}.btn-group:not(.btn-group--vertical) .btn--outlined:not(:first-child){margin-left:-1px}.btn-group--vertical .btn--outlined:not(:first-child){margin-top:-1px}.btn-group .btn--outlined:hover,.btn-group .btn--outlined:focus{z-index:1;position:relative}.btn-group:not(.btn-group--vertical) .btn--contained+.btn--contained{border-left-color:var(--btn-active)}.btn-group--vertical .btn--contained+.btn--contained{border-top-color:var(--btn-active)}.tbg{background:var(--color-surface-raised,var(--color-muted));border:1px solid var(--color-border);border-radius:8px;align-items:stretch;gap:2px;padding:3px;display:inline-flex}.tbg--vertical{flex-direction:column}.tbg--small{border-radius:7px;padding:2px}.tbg--large{border-radius:10px;padding:4px}.tbg--full{width:100%}.tbg--full .tbtn{flex:1}.tbg--primary,.tbg--secondary,.tbg--error,.tbg--warning,.tbg--info,.tbg--success,.tbg--neutral{border-color:var(--color-border)}.tbg .tbtn{--tbtn-text:var(--color-text-secondary);--tbtn-text-strong:var(--color-text-primary);--tbtn-sel-bg-default:var(--color-surface);--tbtn-accent:var(--color-accent)}.tbg--primary .tbtn{--tbtn-accent:var(--color-accent)}.tbg--secondary .tbtn{--tbtn-accent:#8b5cf6}.tbg--error .tbtn{--tbtn-accent:var(--color-error)}.tbg--warning .tbtn{--tbtn-accent:var(--color-warning)}.tbg--info .tbtn{--tbtn-accent:#06b6d4}.tbg--success .tbtn{--tbtn-accent:var(--color-success)}.tbtn{color:var(--tbtn-text);letter-spacing:.01em;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:5px;outline:none;justify-content:center;align-items:center;gap:6px;font-family:inherit;font-weight:500;line-height:1;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex;position:relative;overflow:hidden}.tbg--small .tbtn{border-radius:4px}.tbg--large .tbtn{border-radius:7px}.tbtn:focus-visible{outline:2px solid var(--tbtn-accent);outline-offset:1px}.tbtn--small{padding:6px 10px;font-size:12px}.tbtn--medium{padding:8px 14px;font-size:13px}.tbtn--large{padding:14px 22px;font-size:15px}.tbtn:hover:not(.tbtn--disabled):not(.tbtn--selected){color:var(--tbtn-text-strong)}.tbtn--selected{background:var(--tbtn-sel-bg,var(--tbtn-sel-bg-default));color:var(--tbtn-sel-color,var(--tbtn-text-strong));box-shadow:0 1px 2px #0f172a14,0 1px #0f172a0a}.dark .tbtn--selected{box-shadow:inset 0 1px #ffffff0f,0 1px 2px #0006}.tbtn--selected:hover:not(.tbtn--disabled){filter:brightness(.97)}.tbtn--selected:active:not(.tbtn--disabled){filter:brightness(.94)}.tbtn--disabled{opacity:.42;cursor:not-allowed;pointer-events:none}.tbtn-icon{flex-shrink:0;align-items:center;display:inline-flex}.tbtn--small .tbtn-icon>*{width:14px;height:14px}.tbtn--medium .tbtn-icon>*{width:16px;height:16px}.tbtn--large .tbtn-icon>*{width:18px;height:18px}.tbtn-ripple{pointer-events:none;background:#ffffff40;border-radius:50%;animation:.55s ease-out forwards tbtn-ripple;transform:scale(0)}.tbtn:not(.tbtn--selected) .tbtn-ripple{background:var(--color-hover)}@keyframes tbtn-ripple{to{opacity:0;transform:scale(1)}}.tbtn--status-active{--tbtn-text:var(--color-success);--tbtn-text-strong:var(--color-success);--tbtn-sel-bg:var(--color-success-subtle,#22c55e29);--tbtn-sel-color:var(--color-success)}.tbtn--status-pending{--tbtn-text:var(--color-warning);--tbtn-text-strong:var(--color-warning);--tbtn-sel-bg:#eab3082e;--tbtn-sel-color:var(--color-warning)}.tbtn--status-inactive{--tbtn-text:var(--color-text-muted);--tbtn-text-strong:var(--color-text-secondary);--tbtn-sel-bg:var(--color-active);--tbtn-sel-color:var(--color-text-primary)}
