@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,600;1,700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700;800&display=swap";.tac-toast-container{z-index:10000;pointer-events:none;flex-direction:column;gap:.75rem;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}.tac-toast{pointer-events:auto;color:#0f172a;box-sizing:border-box;background:#fff;border:1px solid #cbd5e1;border-radius:10px;align-items:center;gap:.85rem;min-width:300px;max-width:440px;padding:.85rem 1.15rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,system-ui,sans-serif;transition:all .18s;animation:.25s cubic-bezier(.16,1,.3,1) tac-toast-spring;display:flex;box-shadow:0 4px 16px #00000014,0 1px 3px #0000000d}@keyframes tac-toast-spring{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.tac-toast__icon{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.tac-toast__content{flex-direction:column;flex:1;gap:.2rem;display:flex}.tac-toast__title{color:#0f172a;letter-spacing:-.01em;font-size:.85rem;font-weight:700}.tac-toast__message{color:#64748b;font-size:.78rem;line-height:1.4}.tac-toast__action-btn{color:#334155;cursor:pointer;white-space:nowrap;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:5px;padding:.3rem .6rem;font-size:.72rem;font-weight:700;transition:all .15s}.tac-toast__action-btn:hover{color:#0f172a;background:#e2e8f0}.tac-toast__close-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.25rem;transition:all .15s;display:flex}.tac-toast__close-btn:hover{color:#0f172a;background:#f1f5f9}.tac-toast--hydro{border-color:#7dd3fc;box-shadow:0 4px 16px #0ea5e91f}.tac-toast--hydro .tac-toast__icon{background:#0ea5e914;border-color:#0ea5e94d}.tac-toast--pyro{border-color:#fda4af;box-shadow:0 4px 16px #e11d481f}.tac-toast--pyro .tac-toast__icon{background:#e11d4814;border-color:#e11d484d}.tac-toast--dendro{border-color:#bef264;box-shadow:0 4px 16px #84cc161f}.tac-toast--dendro .tac-toast__icon{background:#84cc1614;border-color:#84cc164d}.tac-toast--electro{border-color:#d8b4fe;box-shadow:0 4px 16px #a855f71f}.tac-toast--electro .tac-toast__icon{background:#a855f714;border-color:#a855f74d}.tac-toast--anemo{border-color:#5eead4;box-shadow:0 4px 16px #14b8a61f}.tac-toast--anemo .tac-toast__icon{background:#14b8a614;border-color:#14b8a64d}.tac-toast--geo{border-color:#fde68a;box-shadow:0 4px 16px #f59e0b1f}.tac-toast--geo .tac-toast__icon{background:#f59e0b14;border-color:#f59e0b4d}.tac-toast--cryo{border-color:#a5f3fc;box-shadow:0 4px 16px #06b6d41f}.tac-toast--cryo .tac-toast__icon{background:#06b6d414;border-color:#06b6d44d}.tac-toast--light{border-color:#fef08a;box-shadow:0 4px 18px #facc1533}.tac-toast--light .tac-toast__icon{background:#facc151f;border-color:#facc1566}.tac-toast--dark{border-color:#ddd6fe;box-shadow:0 4px 18px #8b5cf633}.tac-toast--dark .tac-toast__icon{background:#8b5cf61f;border-color:#8b5cf666}.tac-toast--diamond-5star{border-color:#f59e0b;box-shadow:0 4px 20px #f59e0b33}.tac-toast--diamond-5star .tac-toast__icon{background:#f59e0b1a;border-color:#f59e0b66}.tac-button{font-family:var(--tac-font-sans);cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform 80ms var(--tac-ease-snap), box-shadow 80ms var(--tac-ease-snap), background .18s ease, color .18s ease;-webkit-tap-highlight-color:transparent;border:none;outline:none;justify-content:center;align-items:center;gap:.5rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative;transform:translateY(0)}.tac-button:focus-visible{box-shadow:0 0 0 2px var(--tac-accent-primary-glow), 0 0 0 4px var(--tac-accent-primary)!important}.tac-button--raised{background:var(--tac-metal-finish);color:var(--tac-text-primary);border:var(--tac-border-bevel);box-shadow:var(--tac-shadow-raised-md)}.tac-button--raised:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg);background:linear-gradient(145deg,#2b3344,#1d232f);transform:translateY(-1px)}.tac-button--raised:active:not(:disabled),.tac-button--active{box-shadow:var(--tac-shadow-pressed)!important;background:var(--tac-bg-plate)!important;transform:translateY(2px)!important}.tac-button--soft{background:var(--tac-accent-primary-soft-bg,#8b5cf61a);color:var(--tac-accent-primary,#8b5cf6);border:1px solid var(--tac-accent-primary-soft-border,#8b5cf62e);box-shadow:none}.tac-button--soft:hover:not(:disabled){background:var(--tac-accent-primary-soft-border,#8b5cf62e);transform:translateY(-1px)}.tac-button--soft:active:not(:disabled){transform:translateY(0)}.tac-button--soft.tac-button--color-danger{background:#ef44441a;border-color:#ef44442e}.tac-button--soft.tac-button--color-danger:hover:not(:disabled){background:#ef44442e!important}.tac-button--recessed{background:var(--tac-bg-recess);color:var(--tac-text-secondary);border:var(--tac-border-recess);box-shadow:var(--tac-shadow-inset-md)}.tac-button--recessed:hover:not(:disabled){color:var(--tac-text-primary);box-shadow:var(--tac-shadow-inset-deep)}.tac-button--recessed:active:not(:disabled){box-shadow:var(--tac-shadow-inset-deep);transform:translateY(1px)}.tac-button--brushed{background:var(--tac-metal-brushed);color:var(--tac-text-primary);border:var(--tac-border-bevel);box-shadow:var(--tac-shadow-raised-md);text-shadow:0 1px 2px #0009}.tac-button--brushed:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff1a 0%,#0000 60%);position:absolute;inset:1px}.tac-button--brushed:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg);transform:translateY(-1px)}.tac-button--brushed:active:not(:disabled){box-shadow:var(--tac-shadow-pressed);transform:translateY(2px)}.tac-button--accent-violet{color:#c4b5fd;box-shadow:var(--tac-shadow-raised-md), 0 0 12px var(--tac-accent-primary-glow,#8b5cf640);background:linear-gradient(145deg,#2e1065,#1e0942);border:1px solid #8b5cf666}.tac-button--accent-violet:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 20px var(--tac-accent-primary-glow,#8b5cf666)}.tac-button--color-primary{color:var(--tac-accent-primary,#10b981)}.tac-button--color-primary:hover:not(:disabled){color:#059669;background:#10b98114;border-color:#10b98166;box-shadow:0 2px 8px #10b98133}.tac-button--color-danger{color:#ef4444}.tac-button--color-danger:hover:not(:disabled){color:#dc2626;background:#ef444414;border-color:#ef444466;box-shadow:0 2px 8px #ef444433}.tac-button--color-success{color:#10b981}.tac-button--color-success:hover:not(:disabled){color:#059669;background:#10b98114;border-color:#10b98166;box-shadow:0 2px 8px #10b98133}.tac-button--color-warning{color:#f59e0b}.tac-button--color-warning:hover:not(:disabled){color:#d97706;background:#f59e0b14;border-color:#f59e0b66;box-shadow:0 2px 8px #f59e0b33}.tac-button--color-violet{color:#8b5cf6}.tac-button--color-violet:hover:not(:disabled){color:#7c3aed;background:#8b5cf614;border-color:#8b5cf666}.tac-button--color-cyan{color:#0284c7}.tac-button--color-cyan:hover:not(:disabled){color:#0369a1;background:#0284c714;border-color:#0284c766}.tac-button--accent-amber{color:#ffb74d;box-shadow:var(--tac-shadow-raised-md), 0 0 12px var(--tac-accent-amber-glow);background:linear-gradient(145deg,#382512,#211508);border:1px solid #f906}.tac-button--accent-amber:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 20px var(--tac-accent-amber-glow)}.tac-button--accent-cyan{color:#80deea;box-shadow:var(--tac-shadow-raised-md), 0 0 12px var(--tac-accent-cyan-glow);background:linear-gradient(145deg,#0e2b38,#071922);border:1px solid #00e5ff66}.tac-button--accent-cyan:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 20px var(--tac-accent-cyan-glow)}.tac-button--accent-emerald{color:#a7f3d0;box-shadow:var(--tac-shadow-raised-md), 0 0 12px var(--tac-accent-emerald-glow);background:linear-gradient(145deg,#0f301d,#071c10);border:1px solid #00e67666}.tac-button--accent-emerald:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 20px var(--tac-accent-emerald-glow)}.tac-button--accent-crimson{color:#fecdd3;box-shadow:var(--tac-shadow-raised-md), 0 0 12px var(--tac-accent-crimson-glow);background:linear-gradient(145deg,#3d141e,#240a10);border:1px solid #f366}.tac-button--accent-crimson:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 20px var(--tac-accent-crimson-glow)}.tac-button--sm{letter-spacing:.02em;border-radius:6px;padding:.35rem .75rem;font-size:.75rem}.tac-button--md{letter-spacing:.01em;border-radius:8px;padding:.6rem 1.15rem;font-size:.875rem}.tac-button--lg{border-radius:10px;padding:.8rem 1.6rem;font-size:1rem;font-weight:700}.tac-button--xl{border-radius:12px;padding:1rem 2rem;font-size:1.125rem;font-weight:700}.tac-button--icon-sm{border-radius:8px;width:32px;height:32px;padding:0}.tac-button--icon-md{border-radius:10px;width:42px;height:42px;padding:0}.tac-button--icon-lg{border-radius:12px;width:52px;height:52px;padding:0}.tac-button--pill{border-radius:9999px!important}.tac-button--square{border-radius:4px!important}.tac-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:var(--tac-shadow-inset-sm)!important;transform:none!important}.tac-button__led{background:#3a4454;border-radius:50%;flex-shrink:0;width:6px;height:6px;transition:all .15s;box-shadow:inset 0 1px 2px #000c}.tac-button__led--amber{background:#f90;box-shadow:0 0 8px #f90,0 0 2px #fff}.tac-button__led--emerald{background:#00e676;box-shadow:0 0 8px #00e676,0 0 2px #fff}.tac-button__led--cyan{background:#00e5ff;box-shadow:0 0 8px #00e5ff,0 0 2px #fff}.tac-button__led--crimson{background:#f36;box-shadow:0 0 8px #f36,0 0 2px #fff}.tac-button--knurled{background-image:radial-gradient(circle at 50% 50%, #ffffff14 1px, transparent 1px), var(--tac-metal-finish);background-size:6px 6px,100% 100%}.tac-button--element-hydro{color:#fff;box-shadow:var(--tac-shadow-raised-md), 0 0 14px #2dc4ff66;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);border:1px solid #2dc4ff99}.tac-button--element-hydro:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 22px #2dc4ff99;transform:translateY(-1px)}.tac-button--element-pyro{color:#fff;box-shadow:var(--tac-shadow-raised-md), 0 0 14px #ff623866;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%);border:1px solid #ff623899}.tac-button--element-pyro:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 22px #ff623899;transform:translateY(-1px)}.tac-button--element-dendro{color:#fff;box-shadow:var(--tac-shadow-raised-md), 0 0 14px #9ee02466;background:linear-gradient(135deg,#84cc16 0%,#65a30d 100%);border:1px solid #9ee02499}.tac-button--element-dendro:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 22px #9ee02499;transform:translateY(-1px)}.tac-button--element-electro{color:#fff;box-shadow:var(--tac-shadow-raised-md), 0 0 14px #c06eff66;background:linear-gradient(135deg,#a855f7 0%,#7e22ce 100%);border:1px solid #c06eff99}.tac-button--element-electro:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 22px #c06eff99;transform:translateY(-1px)}.tac-button--element-anemo{color:#fff;box-shadow:var(--tac-shadow-raised-md), 0 0 14px #33e7b866;background:linear-gradient(135deg,#14b8a6 0%,#0d9488 100%);border:1px solid #33e7b899}.tac-button--element-anemo:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 22px #33e7b899;transform:translateY(-1px)}.tac-button--element-geo{color:#fff;box-shadow:var(--tac-shadow-raised-md), 0 0 14px #f5c54266;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border:1px solid #f5c54299}.tac-button--element-geo:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 22px #f5c54299;transform:translateY(-1px)}.tac-button--element-cryo{color:#fff;box-shadow:var(--tac-shadow-raised-md), 0 0 14px #8febff66;background:linear-gradient(135deg,#38bdf8 0%,#0284c7 100%);border:1px solid #8febff99}.tac-button--element-cryo:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 22px #8febff99;transform:translateY(-1px)}.tac-button--element-light{color:#422006;box-shadow:var(--tac-shadow-raised-md), 0 0 16px #facc1580;text-shadow:0 1px #fff6;background:linear-gradient(135deg,#facc15 0%,#eab308 100%);border:1px solid #fde047cc;font-weight:700}.tac-button--element-light:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 24px #facc15bf;transform:translateY(-1px)}.tac-button--element-dark{color:#fff;box-shadow:var(--tac-shadow-raised-md), 0 0 16px #10b98180;background:linear-gradient(135deg,#059669 0%,#064e3b 100%);border:1px solid #34d39999}.tac-button--element-dark:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 24px #10b981bf;transform:translateY(-1px)}.tac-button--diamond-5star{color:#78350f;box-shadow:var(--tac-shadow-raised-md), 0 0 18px #ffd70080;text-shadow:0 1px #fffc;background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 30%,#fde68a 70%,#f59e0b 100%);border:2px solid gold;font-weight:800}.tac-button--diamond-5star:hover:not(:disabled){box-shadow:var(--tac-shadow-raised-lg), 0 0 28px #ffd700bf;transform:translateY(-2px)scale(1.02)}.tac-button--emergency-stop{color:#fff;font-weight:900;font-family:var(--tac-font-display);letter-spacing:.05em;background:radial-gradient(circle at 40% 40%,#ef4444 0%,#dc2626 50%,#991b1b 100%);border:3px solid #7f1d1d;border-radius:9999px;padding:1.25rem 2.25rem;box-shadow:0 8px #7f1d1d,0 12px 20px #0006}.tac-button--emergency-stop:active:not(:disabled){transform:translateY(6px)!important;box-shadow:0 2px #7f1d1d,0 4px 10px #0006!important}.tac-button__led--violet{background:#a855f7;box-shadow:0 0 8px #a855f7,0 0 2px #fff}.tac-button__led--gold,.tac-button__led--geo{background:#f5c542;box-shadow:0 0 8px #f5c542,0 0 2px #fff}.tac-button__led--hydro{background:#2dc4ff;box-shadow:0 0 8px #2dc4ff,0 0 2px #fff}.tac-button__led--pyro{background:#ff6238;box-shadow:0 0 8px #ff6238,0 0 2px #fff}.tac-button__led--dendro{background:#9ee024;box-shadow:0 0 8px #9ee024,0 0 2px #fff}.tac-button__led--anemo{background:#33e7b8;box-shadow:0 0 8px #33e7b8,0 0 2px #fff}.tac-button__led--cryo{background:#8febff;box-shadow:0 0 8px #8febff,0 0 2px #fff}.tac-button__led--light{background:#facc15;box-shadow:0 0 10px #facc15,0 0 3px #fff}.tac-button__led--dark{background:#8b5cf6;box-shadow:0 0 10px #8b5cf6,0 0 3px #fff}.tac-button__spinner{border:2px solid #ffffff4d;border-top-color:currentColor;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.6s linear infinite tac-btn-spin;display:inline-block}@keyframes tac-btn-spin{to{transform:rotate(360deg)}}.tac-switch{cursor:pointer;-webkit-user-select:none;user-select:none;font-family:var(--tac-font-sans);color:var(--tac-text-primary);align-items:center;gap:.75rem;font-weight:500;display:inline-flex}.tac-switch--disabled{opacity:.5;cursor:not-allowed}.tac-switch__track{background:var(--tac-bg-recess);width:52px;height:28px;box-shadow:var(--tac-shadow-inset-deep);border:var(--tac-border-recess);box-sizing:border-box;border-radius:999px;padding:3px;transition:background .2s,box-shadow .2s;position:relative}.tac-switch--checked .tac-switch__track{background:var(--tac-bg-recess)}.tac-switch__thumb{background:var(--tac-metal-finish);width:20px;height:20px;box-shadow:var(--tac-shadow-raised-md);border:var(--tac-border-bevel);transition:transform .18s var(--tac-ease-spring), background .2s ease, box-shadow .18s ease;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:3px;left:3px}.tac-switch--checked .tac-switch__thumb{background:linear-gradient(145deg,#2f384a,#1f2533);transform:translate(24px)}.tac-switch:active:not(.tac-switch--disabled) .tac-switch__thumb{width:23px}.tac-switch__indicator{background:#3e4756;border-radius:50%;width:5px;height:5px;transition:all .18s;box-shadow:inset 0 1px 1px #000c}.tac-switch--checked .tac-switch__indicator--amber{background:var(--tac-accent-amber);box-shadow:0 0 6px var(--tac-accent-amber), 0 0 2px #fff}.tac-switch--checked .tac-switch__indicator--emerald{background:var(--tac-accent-emerald);box-shadow:0 0 6px var(--tac-accent-emerald), 0 0 2px #fff}.tac-switch--checked .tac-switch__indicator--cyan{background:var(--tac-accent-cyan);box-shadow:0 0 6px var(--tac-accent-cyan), 0 0 2px #fff}.tac-switch--checked .tac-switch__indicator--crimson{background:var(--tac-accent-crimson);box-shadow:0 0 6px var(--tac-accent-crimson), 0 0 2px #fff}.tac-switch--sm .tac-switch__track{width:40px;height:22px}.tac-switch--sm .tac-switch__thumb{width:14px;height:14px}.tac-switch--sm.tac-switch--checked .tac-switch__thumb{transform:translate(18px)}.tac-switch--lg .tac-switch__track{width:68px;height:36px;padding:4px}.tac-switch--lg .tac-switch__thumb{width:26px;height:26px}.tac-switch--lg.tac-switch--checked .tac-switch__thumb{transform:translate(32px)}.tac-rocker{-webkit-user-select:none;user-select:none;cursor:pointer;font-family:var(--tac-font-mono);flex-direction:column;align-items:center;gap:.4rem;display:inline-flex}.tac-rocker__housing{background:var(--tac-bg-recess);width:48px;height:72px;box-shadow:var(--tac-shadow-inset-deep);border:var(--tac-border-recess);box-sizing:border-box;border-radius:6px;padding:4px;position:relative}.tac-rocker__paddle{background:var(--tac-metal-finish);border:var(--tac-border-bevel);width:100%;height:100%;transition:transform .16s var(--tac-ease-spring), box-shadow .16s ease, background .16s ease;box-sizing:border-box;transform-origin:50%;border-radius:4px;flex-direction:column;justify-content:space-between;padding:6px;display:flex;position:relative}.tac-rocker--off .tac-rocker__paddle{transform:perspective(300px)rotateX(12deg);box-shadow:0 4px 6px #00000080,inset 0 2px 3px #ffffff1f}.tac-rocker--on .tac-rocker__paddle{background:linear-gradient(145deg,#2b3444,#1b212c);transform:perspective(300px)rotateX(-12deg);box-shadow:0 -4px 6px #00000080,inset 0 -2px 3px #ffffff1f}.tac-rocker__mark-on,.tac-rocker__mark-off{text-align:center;font-size:.65rem;font-weight:700;transition:color .15s,text-shadow .15s}.tac-rocker__mark-on{color:var(--tac-text-dim)}.tac-rocker--on .tac-rocker__mark-on{color:var(--tac-accent-emerald);text-shadow:0 0 6px var(--tac-accent-emerald-glow)}.tac-rocker__mark-off{color:var(--tac-text-muted)}.tac-rocker--off .tac-rocker__mark-off{color:var(--tac-accent-crimson);text-shadow:0 0 4px var(--tac-accent-crimson-glow)}.tac-rocker__label{color:var(--tac-text-secondary);letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:600}.tac-input-group{font-family:var(--tac-font-sans);flex-direction:column;gap:.35rem;display:flex}.tac-input__label-row{justify-content:space-between;align-items:center;display:flex}.tac-input__label{letter-spacing:.04em;color:var(--tac-text-secondary);text-transform:uppercase;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;display:flex}.tac-input__footer{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.tac-input__counter{font-size:.7rem;font-family:var(--tac-font-mono);color:var(--tac-text-muted);flex-shrink:0}.tac-input__counter--full{color:#dc2626;font-weight:700}.tac-input__hint{color:var(--tac-text-muted);font-size:.7rem;font-family:var(--tac-font-mono)}@property --tac-border-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes tac-border-beam-spin{0%{--tac-border-angle:0deg}to{--tac-border-angle:360deg}}.tac-input-chamber-wrap{width:100%;position:relative;overflow:visible}.tac-input__chamber{background:var(--tac-bg-chassis);--input-beam-color:var(--tac-accent-primary,#10b981);--input-beam-glow:var(--tac-accent-primary-glow,#10b98159);border:1px solid #cbd5e1;border-radius:8px;align-items:center;transition:all .18s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #0000000a}.tac-input__chamber:after{content:"";background:conic-gradient(from var(--tac-border-angle,0deg), transparent 0deg, transparent 220deg, var(--input-beam-color,#10b981) 300deg, #fff 345deg, var(--input-beam-color,#10b981) 360deg);-webkit-mask-composite:xor;pointer-events:none;opacity:0;z-index:5;border-radius:8px;padding:1.5px;transition:opacity .25s cubic-bezier(.16,1,.3,1),filter .25s;animation:3s linear infinite tac-border-beam-spin;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.tac-input__chamber:hover:not(.tac-input__chamber--disabled):not(:focus-within):not(.tac-input__chamber--focused):after{opacity:.55;filter:drop-shadow(0 0 2px var(--input-beam-glow))}.tac-input__chamber:focus-within:after,.tac-input__chamber--focused:after,.tac-input__chamber--running-border:after{opacity:1;filter:drop-shadow(0 0 4px var(--input-beam-color))}.tac-input__chamber--disabled:after{opacity:0!important;animation:none!important;display:none!important}.tac-input__chamber--cyan{--input-beam-color:#0ea5e9;--input-beam-glow:#0ea5e966;border-color:#0ea5e973}.tac-input__chamber--amber{--input-beam-color:#f59e0b;--input-beam-glow:#f59e0b66;border-color:#f59e0b73}.tac-input__chamber--emerald,.tac-input__chamber--success{--input-beam-color:#10b981;--input-beam-glow:#10b98166;border-color:#10b98173}.tac-input__chamber--warning{--input-beam-color:#f59e0b;--input-beam-glow:#f59e0b66;border-color:#f59e0b73}.tac-input__chamber--error,.tac-input__chamber--crimson{--input-beam-color:#ef4444;--input-beam-glow:#ef444466;border-color:#ef444473}.tac-input__chamber--pyro{--input-beam-color:#ea580c;--input-beam-glow:#ff623866;border-color:#ff623873}@keyframes tac-pyro-blaze-pulse{0%,to{--tac-border-angle:0deg;filter:drop-shadow(0 0 4px #ea580c)}40%{filter:drop-shadow(0 -3px 8px #f97316)drop-shadow(0 0 12px #ef4444b3)}to{--tac-border-angle:360deg;filter:drop-shadow(0 0 4px #ea580c)}}.tac-input__chamber--pyro:after{background:conic-gradient(from var(--tac-border-angle,0deg), transparent 0deg, transparent 180deg, #b91c1c 240deg, #ea580c 290deg, #f97316 330deg, #fef08a 355deg, #ea580c 360deg);animation:2.2s cubic-bezier(.4,0,.2,1) infinite tac-pyro-blaze-pulse}.tac-input__chamber--dendro{--input-beam-color:#65a30d;--input-beam-glow:#9ee02466;border-color:#9ee02473}@keyframes tac-dendro-vines-grow{0%{--tac-border-angle:0deg;filter:drop-shadow(0 0 3px #65a30d)}50%{filter:drop-shadow(0 0 8px #84cc16)drop-shadow(0 0 14px #a3e63580)}to{--tac-border-angle:360deg;filter:drop-shadow(0 0 3px #65a30d)}}.tac-input__chamber--dendro:after{background:conic-gradient(from var(--tac-border-angle,0deg), transparent 0deg, #4d7c0f 45deg, #84cc16 80deg, #bef264 90deg, transparent 135deg, transparent 180deg, #4d7c0f 225deg, #84cc16 260deg, #bef264 270deg, transparent 315deg);animation:3.4s ease-in-out infinite tac-dendro-vines-grow}.tac-input__chamber--hydro{--input-beam-color:#0284c7;--input-beam-glow:#2dc4ff66;border-color:#2dc4ff73}@keyframes tac-hydro-flow-wave{0%{--tac-border-angle:0deg;filter:drop-shadow(0 0 3px #0284c7)}50%{filter:drop-shadow(0 0 8px #38bdf8)drop-shadow(0 0 16px #38bdf880)}to{--tac-border-angle:360deg;filter:drop-shadow(0 0 3px #0284c7)}}.tac-input__chamber--hydro:after{background:conic-gradient(from var(--tac-border-angle,0deg), transparent 0deg, transparent 160deg, #0369a1 220deg, #0284c7 270deg, #38bdf8 320deg, #e0f2fe 350deg, #0284c7 360deg);animation:2.8s linear infinite tac-hydro-flow-wave}.tac-input__chamber--electro{--input-beam-color:#9333ea;--input-beam-glow:#c06eff66;border-color:#c06eff73}@keyframes tac-electro-spark-arc{0%,to{--tac-border-angle:0deg;filter:drop-shadow(0 0 4px #9333ea)}15%{--tac-border-angle:75deg;filter:drop-shadow(0 0 12px #c084fc)drop-shadow(0 0 20px #a855f7cc)}18%{filter:drop-shadow(0 0 2px #7e22ce)}38%{--tac-border-angle:180deg;filter:drop-shadow(0 0 14px #e9d5ff)}70%{--tac-border-angle:270deg;filter:drop-shadow(0 0 16px #a855f7)}85%{--tac-border-angle:320deg;filter:drop-shadow(0 0 4px #9333ea)}}.tac-input__chamber--electro:after{background:conic-gradient(from var(--tac-border-angle,0deg), transparent 0deg, transparent 230deg, #6b21a8 270deg, #9333ea 310deg, #c084fc 340deg, #fff 355deg, #9333ea 360deg);animation:1.9s steps(12,end) infinite tac-electro-spark-arc}.tac-input__chamber--anemo{--input-beam-color:#0d9488;--input-beam-glow:#33e7b866;border-color:#33e7b873}@keyframes tac-anemo-vortex-sweep{0%{--tac-border-angle:0deg;filter:drop-shadow(0 0 4px #0d9488)}50%{filter:drop-shadow(0 0 9px #2dd4bf)drop-shadow(0 0 18px #2dd4bf8c)}to{--tac-border-angle:360deg;filter:drop-shadow(0 0 4px #0d9488)}}.tac-input__chamber--anemo:after{background:conic-gradient(from var(--tac-border-angle,0deg), transparent 0deg, transparent 120deg, #0f766e 200deg, #0d9488 260deg, #2dd4bf 320deg, #ccfbf1 355deg, #0d9488 360deg);animation:1.6s cubic-bezier(.25,1,.5,1) infinite tac-anemo-vortex-sweep}.tac-input__chamber--geo,.tac-input__chamber--gold{--input-beam-color:#d97706;--input-beam-glow:#f5c54266;border-color:#f5c54273}@keyframes tac-geo-shield-pulse{0%,to{--tac-border-angle:0deg;filter:drop-shadow(0 0 3px #d97706)}50%{filter:drop-shadow(0 0 8px #f59e0b)drop-shadow(0 0 15px #f59e0b73)}to{--tac-border-angle:360deg}}.tac-input__chamber--geo:after,.tac-input__chamber--gold:after{background:conic-gradient(from var(--tac-border-angle,0deg), #92400e 0deg, #f59e0b 45deg, #fef3c7 90deg, #92400e 135deg, #f59e0b 180deg, #fef3c7 225deg, #92400e 270deg, #f59e0b 315deg, #92400e 360deg);animation:3.8s ease-in-out infinite tac-geo-shield-pulse}.tac-input__chamber--cryo{--input-beam-color:#0284c7;--input-beam-glow:#8febff66;border-color:#8febff73}@keyframes tac-cryo-frost-shimmer{0%,to{--tac-border-angle:0deg;filter:drop-shadow(0 0 4px #0284c7)}40%{filter:drop-shadow(0 0 10px #38bdf8)drop-shadow(0 0 18px #7dd3fc99)}75%{filter:drop-shadow(0 0 6px #7dd3fc)}to{--tac-border-angle:360deg}}.tac-input__chamber--cryo:after{background:conic-gradient(from var(--tac-border-angle,0deg), transparent 0deg, transparent 200deg, #0284c7 260deg, #38bdf8 300deg, #bae6fd 340deg, #fff 355deg, #38bdf8 360deg);animation:2.6s linear infinite tac-cryo-frost-shimmer}.tac-input__chamber--light{--input-beam-color:#eab308;--input-beam-glow:#facc1573;border-color:#facc1580}@keyframes tac-light-halo-flare{0%,to{--tac-border-angle:0deg;filter:drop-shadow(0 0 5px #eab308)}50%{filter:drop-shadow(0 0 12px #facc15)drop-shadow(0 0 22px #fde047b3)}to{--tac-border-angle:360deg}}.tac-input__chamber--light:after{background:conic-gradient(from var(--tac-border-angle,0deg), transparent 0deg, transparent 150deg, #a16207 220deg, #eab308 270deg, #fde047 325deg, #fff 350deg, #eab308 360deg);animation:2.2s linear infinite tac-light-halo-flare}.tac-input__chamber--dark,.tac-input__chamber--violet{--input-beam-color:#8b5cf6;--input-beam-glow:#8b5cf673;border-color:#8b5cf680}@keyframes tac-dark-void-spiral{0%{--tac-border-angle:360deg;filter:drop-shadow(0 0 4px #8b5cf6)}50%{filter:drop-shadow(0 0 10px #7c3aed)drop-shadow(0 0 18px #6d28d999)}to{--tac-border-angle:0deg;filter:drop-shadow(0 0 4px #8b5cf6)}}.tac-input__chamber--dark:after,.tac-input__chamber--violet:after{background:conic-gradient(from var(--tac-border-angle,0deg), transparent 0deg, transparent 180deg, #4c1d95 240deg, #7c3aed 290deg, #c084fc 335deg, #1e1b4b 355deg, #7c3aed 360deg);animation:3.4s linear infinite tac-dark-void-spiral}.tac-input__chamber:focus-within,.tac-input__chamber--focused{border-color:var(--input-beam-color)!important;box-shadow:0 1px 2px #0000000d!important}.tac-input__chamber--pyro:focus-within,.tac-input__chamber--pyro.tac-input__chamber--focused,.tac-input__chamber--pyro.tac-input__chamber--running-border{border-color:#ff5722!important;box-shadow:0 0 12px #ff45008c,0 -2px 6px #ff8c0066,inset 0 0 8px #ff450040,inset 0 1px 2px #ffeb3b80!important}.tac-input__chamber--dendro:focus-within,.tac-input__chamber--dendro.tac-input__chamber--focused,.tac-input__chamber--dendro.tac-input__chamber--running-border{border-color:#84cc16!important;box-shadow:0 0 20px #84cc1680,inset 0 0 10px #84cc1633!important}.tac-input__chamber--hydro:focus-within,.tac-input__chamber--hydro.tac-input__chamber--focused,.tac-input__chamber--hydro.tac-input__chamber--running-border{border-color:#0284c7!important;box-shadow:0 0 20px #0284c780,inset 0 0 10px #38bdf833!important}.tac-input__chamber--electro:focus-within,.tac-input__chamber--electro.tac-input__chamber--focused,.tac-input__chamber--electro.tac-input__chamber--running-border{border-color:#a855f7!important;box-shadow:0 0 16px #a855f7a6,0 0 6px #c084fc,inset 0 0 8px #9333ea4d!important}.tac-input__chamber--anemo:focus-within,.tac-input__chamber--anemo.tac-input__chamber--focused,.tac-input__chamber--anemo.tac-input__chamber--running-border{border-color:#14b8a6!important;box-shadow:0 0 20px #0d948880,inset 0 0 10px #2dd4bf33!important}.tac-input__chamber--geo:focus-within,.tac-input__chamber--geo.tac-input__chamber--focused,.tac-input__chamber--geo.tac-input__chamber--running-border{border-color:#f59e0b!important;box-shadow:0 0 20px #d977068c,inset 0 0 10px #f59e0b33!important}.tac-input__chamber--cryo:focus-within,.tac-input__chamber--cryo.tac-input__chamber--focused,.tac-input__chamber--cryo.tac-input__chamber--running-border{border-color:#38bdf8!important;box-shadow:0 0 20px #38bdf880,inset 0 0 10px #bae6fd40!important}.tac-input__chamber--light:focus-within,.tac-input__chamber--light.tac-input__chamber--focused,.tac-input__chamber--light.tac-input__chamber--running-border{border-color:#eab308!important;box-shadow:0 0 25px #eab308a6,inset 0 0 12px #fef08a4d!important}.tac-input__chamber--dark:focus-within,.tac-input__chamber--dark.tac-input__chamber--focused,.tac-input__chamber--dark.tac-input__chamber--running-border,.tac-input__chamber--violet:focus-within,.tac-input__chamber--violet.tac-input__chamber--focused,.tac-input__chamber--violet.tac-input__chamber--running-border{border-color:#8b5cf6!important;box-shadow:0 0 22px #8b5cf68c,inset 0 0 12px #7c3aed4d!important}.tac-input__field{z-index:2;width:100%;color:var(--tac-text-primary);font-family:var(--tac-font-mono);letter-spacing:.02em;background:0 0;border:none;outline:none;padding:.65rem .85rem;font-size:.875rem;position:relative}.tac-input__field::placeholder{color:var(--tac-text-dim)}.tac-input__field[type=date],.tac-input__field[type=time],.tac-input__field[type=datetime-local],.tac-input__field[type=month]{font-family:var(--tac-font-sans);cursor:pointer}.tac-input__field::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55;filter:invert(.25);padding:2px;transition:opacity .12s}.tac-input__field::-webkit-calendar-picker-indicator:hover{opacity:1}.tac-input__icon-left,.tac-input__icon-right{z-index:2;color:var(--tac-text-muted);flex-shrink:0;justify-content:center;align-items:center;padding:0 .6rem;display:flex;position:relative}.tac-input__prefix,.tac-input__suffix{z-index:2;font-family:var(--tac-font-mono);color:var(--tac-text-muted);background:var(--tac-bg-chassis);-webkit-user-select:none;user-select:none;border:1px solid var(--tac-border-subtle);border-radius:4px;margin:0 .35rem;padding:.4rem .6rem;font-size:.8rem;font-weight:700;position:relative}.tac-input__action-btn{z-index:2;color:var(--tac-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;margin-right:.35rem;padding:.35rem;transition:color .15s,background .15s;display:flex;position:relative}.tac-input__action-btn:hover{color:var(--tac-text-primary);background:var(--tac-bg-hover)}.tac-textarea__field{resize:vertical;min-height:90px;line-height:1.5}.tac-stepper-btn-group{z-index:2;flex-direction:column;margin-right:2px;display:flex;position:relative}.tac-stepper-btn{background:var(--tac-bg-chassis);border:1px solid var(--tac-border-subtle);color:var(--tac-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:24px;height:16px;font-size:.65rem;transition:all .12s;display:flex}.tac-stepper-btn:hover{background:var(--tac-bg-hover);color:var(--tac-text-primary)}.tac-stepper-btn:active{background:var(--tac-bg-recess)}.tac-stepper-btn--up{border-bottom:none;border-radius:4px 4px 0 0}.tac-stepper-btn--down{border-radius:0 0 4px 4px}.tac-select-wrapper{width:100%;position:relative}.tac-select__trigger{cursor:pointer;-webkit-user-select:none;user-select:none;width:100%}.tac-select__selected-text{z-index:2;font-family:var(--tac-font-mono);color:var(--tac-text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;gap:.5rem;padding:.65rem .85rem;font-size:.85rem;display:flex;position:relative;overflow:hidden}.tac-select__option-icon-inline{color:var(--tac-text-muted);align-items:center;display:flex}.tac-select__chevron{pointer-events:none;color:var(--tac-text-muted);z-index:2;align-items:center;transition:transform .18s,color .15s;display:flex;position:absolute;right:.85rem}.tac-select__chevron--open{color:var(--tac-accent-primary);transform:rotate(180deg)}.tac-select--sm .tac-select__trigger{border-radius:6px}.tac-select--sm .tac-select__selected-text{padding:.4rem .7rem;font-size:.75rem}.tac-select--sm .tac-select__chevron svg{width:14px;height:14px}.tac-select__dropdown{z-index:1050;background:var(--tac-bg-chassis);border:1px solid var(--tac-border-subtle);border-radius:10px;max-height:280px;padding:.35rem;animation:.16s cubic-bezier(.16,1,.3,1) tac-dropdown-pop;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden auto;box-shadow:0 12px 28px -4px #00000026,0 4px 10px -2px #00000014}.tac-select__dropdown--portal{z-index:10050;position:fixed;top:auto;right:auto}.tac-select__option-item--active{background:var(--tac-bg-hover)}.tac-combobox__new{border-top:var(--tac-border-subtle);color:var(--tac-text-muted);align-items:center;gap:.45rem;margin-top:.15rem;padding:.55rem .75rem;font-size:.78rem;display:flex}.tac-combobox__new strong{color:var(--tac-accent-primary)}@keyframes tac-dropdown-pop{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.tac-select__options-list{flex-direction:column;gap:.2rem;display:flex}.tac-select__option-item{cursor:pointer;font-family:var(--tac-font-mono);color:var(--tac-text-primary);-webkit-user-select:none;user-select:none;border-radius:6px;justify-content:space-between;align-items:center;padding:.6rem .75rem;font-size:.82rem;transition:all .12s;display:flex}.tac-select__option-item:hover{background:var(--tac-bg-hover);color:var(--tac-text-primary)}.tac-select__option-item--selected{color:#7c3aed;background:#8b5cf61a;font-weight:700}.tac-select__option-left{align-items:center;gap:.6rem;display:flex}.tac-select__option-icon{color:var(--tac-text-muted);align-items:center;display:flex}.tac-select__option-labels{flex-direction:column;gap:.1rem;display:flex}.tac-select__option-title{font-weight:600}.tac-select__option-sub{color:var(--tac-text-muted);font-size:.7rem}.tac-select__option-check{color:#8b5cf6;flex-shrink:0;align-items:center;display:flex}.tac-input__error-msg{color:#ef4444;font-size:.72rem;font-family:var(--tac-font-mono);margin-top:.15rem}.tac-input__success-msg{color:#10b981;font-size:.72rem;font-family:var(--tac-font-mono);margin-top:.15rem}.tac-elemental-aura{pointer-events:none;z-index:10;opacity:0;transition:opacity .3s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;overflow:visible}.tac-elemental-aura--active{opacity:1}.tac-hydro-liquid-wrapper{position:absolute;inset:-6px;overflow:visible}.tac-hydro-bubble{opacity:0;background:radial-gradient(circle at 32% 32%,#fff 0%,#7dd3fccc 45%,#0284c7bf 85%,#0369a1e6 100%);border-radius:50%;position:absolute;box-shadow:0 0 6px #38bdf899,inset 0 0 3px #fffc}.tac-hydro-bubble.b1{width:7px;height:7px;animation:2.1s .1s infinite tac-bubble-rise;bottom:-3px;left:14%}.tac-hydro-bubble.b2{width:9px;height:9px;animation:2.5s .5s infinite tac-bubble-rise;bottom:-4px;left:34%}.tac-hydro-bubble.b3{width:6px;height:6px;animation:1.9s .3s infinite tac-bubble-rise;bottom:-2px;left:52%}.tac-hydro-bubble.b4{width:10px;height:10px;animation:2.7s .8s infinite tac-bubble-rise;bottom:-4px;left:70%}.tac-hydro-bubble.b5{width:7px;height:7px;animation:2.2s .4s infinite tac-bubble-rise;bottom:-3px;left:86%}.tac-hydro-bubble.b6{width:5px;height:5px;animation:2.8s 1.1s infinite tac-bubble-rise;bottom:-2px;left:42%}@keyframes tac-bubble-rise{0%{opacity:0;transform:translateY(0)scale(.4)}25%{opacity:.95;transform:translateY(-4px)scale(1.1)}80%{opacity:.7}to{opacity:0;transform:translateY(-25px)scale(.3)}}.tac-datepicker-container{width:100%;position:relative}.tac-datepicker__trigger{cursor:pointer;-webkit-user-select:none;user-select:none}.tac-datepicker__icon{color:#64748b;transition:color .14s}.tac-datepicker__trigger:hover .tac-datepicker__icon{color:#8b5cf6}.tac-datepicker__input{flex:1;cursor:pointer!important}.tac-datepicker__right-actions{flex-shrink:0;justify-content:center;align-items:center;padding-left:.25rem;padding-right:.75rem;display:flex}.tac-datepicker__clear-btn{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:all .14s;display:inline-flex;box-shadow:0 1px 2px #0000000a}.tac-datepicker__clear-btn:hover{color:#ef4444;background:#fee2e2;border-color:#fca5a5;transform:scale(1.08)}.tac-datepicker__calendar-indicator{color:#94a3b8;opacity:.6;justify-content:center;align-items:center;display:inline-flex}.tac-datepicker__popover{z-index:1000;background:#fff;border:1px solid #e2e8f0;border-radius:14px;width:300px;padding:.85rem;animation:.16s cubic-bezier(.16,1,.3,1) tac-date-popover-in;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 16px 36px -4px #0f172a24,0 4px 12px #0f172a0a}.tac-datepicker__popover--range{width:310px}@keyframes tac-date-popover-in{0%{opacity:0;transform:translateY(6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.tac-datepicker__header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:.65rem;padding-bottom:.5rem;display:flex}.tac-datepicker__title{color:#0f172a;align-items:center;gap:.4rem;font-size:.88rem;font-weight:700;display:flex}.tac-datepicker__month-label{color:#0f172a}.tac-datepicker__year-label{color:#8b5cf6}.tac-datepicker__nav-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .12s;display:flex}.tac-datepicker__nav-btn:hover{color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}.tac-datepicker__weekdays{text-align:center;grid-template-columns:repeat(7,1fr);margin-bottom:.35rem;display:grid}.tac-datepicker__weekday{color:#94a3b8;text-transform:uppercase;padding:.25rem 0;font-size:.72rem;font-weight:700}.tac-datepicker__weekday--sun{color:#f43f5e}.tac-datepicker__grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.tac-datepicker__day{color:#334155;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;height:34px;font-size:.82rem;font-weight:500;transition:all .12s;display:inline-flex;position:relative}.tac-datepicker__day--outside{color:#cbd5e1;cursor:default}.tac-datepicker__day--curr:hover:not(.tac-datepicker__day--selected){color:#0f172a;background:#f1f5f9}.tac-datepicker__day--selected{background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%);border-color:#8b5cf6;font-weight:700;box-shadow:0 2px 6px #8b5cf659;color:#fff!important}.tac-datepicker__day--today{color:#8b5cf6;font-weight:700}.tac-datepicker__today-dot{background:#8b5cf6;border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px}.tac-datepicker__day--range-start{border-top-right-radius:0;border-bottom-right-radius:0;font-weight:700;color:#fff!important;background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%)!important}.tac-datepicker__day--range-end{border-top-left-radius:0;border-bottom-left-radius:0;font-weight:700;color:#fff!important;background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%)!important}.tac-datepicker__day--in-range{border-radius:0;font-weight:600;color:#7c3aed!important;background:#8b5cf61f!important}.tac-datepicker__footer{border-top:1px solid #f1f5f9;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem;margin-top:.65rem;padding-top:.5rem;display:flex}.tac-datepicker__quick-btn{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:.3rem;padding:.3rem .6rem;font-size:.74rem;font-weight:600;transition:all .12s;display:inline-flex}.tac-datepicker__quick-btn:hover{color:#0369a1;background:#e0f2fe;border-color:#bae6fd}.tac-timepicker__popover{z-index:1000;background:#fff;border:1px solid #e2e8f0;border-radius:14px;width:260px;padding:.85rem;animation:.16s cubic-bezier(.16,1,.3,1) tac-date-popover-in;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 16px 36px -4px #0f172a24,0 4px 12px #0f172a0a}.tac-timepicker__header{color:#64748b;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:.65rem;padding-bottom:.45rem;font-size:.82rem;display:flex}.tac-timepicker__time-display{color:#8b5cf6;font-family:monospace;font-size:.95rem}.tac-timepicker__columns{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.tac-timepicker__col{flex-direction:column;gap:.35rem;display:flex}.tac-timepicker__col-title{color:#94a3b8;text-align:center;text-transform:uppercase;font-size:.7rem;font-weight:700}.tac-timepicker__scroll{scrollbar-width:thin;scrollbar-color:#cbd5e1b3 transparent;flex-direction:column;gap:3px;max-height:180px;padding-right:4px;display:flex;overflow-y:auto}.tac-timepicker__scroll::-webkit-scrollbar{width:4px}.tac-timepicker__scroll::-webkit-scrollbar-track{background:0 0}.tac-timepicker__scroll::-webkit-scrollbar-thumb{background:#cbd5e1b3;border-radius:10px;transition:background .15s}.tac-timepicker__scroll:hover::-webkit-scrollbar-thumb{background:#94a3b8e6}.tac-timepicker__item{color:#334155;cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;border-radius:6px;padding:.35rem .5rem;font-family:monospace;font-size:.82rem;font-weight:600;transition:all .12s}.tac-timepicker__item:hover:not(.tac-timepicker__item--active){color:#0f172a;background:#f1f5f9}.tac-timepicker__item--active{color:#0369a1;background:#e0f2fe;border-color:#7dd3fc;font-weight:700}.tac-upload-dropzone-wrap,.tac-upload-compact-wrap,.tac-upload-avatar-wrap{width:100%;position:relative}.tac-upload-dropzone{cursor:pointer;text-align:center;background:#fff;border:1.5px dashed #cbd5e1;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.85rem;padding:2rem 1.5rem;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 1px 3px #00000005}.tac-upload-dropzone:hover:not(.tac-upload-dropzone--disabled){background:#f5f3ff;border-color:#8b5cf6;transform:translateY(-1px)}.tac-upload-dropzone--dragover{background:#ede9fe!important;border-color:#8b5cf6!important;box-shadow:0 0 0 4px #8b5cf626!important}.tac-upload-dropzone--disabled{opacity:.5;cursor:not-allowed;border-color:#e2e8f0}.tac-upload-dropzone--error{background:#fef2f2!important;border-color:#ef4444!important}.tac-upload-dropzone-icon-wrap{color:#8b5cf6;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:all .18s;display:flex}.tac-upload-dropzone:hover .tac-upload-dropzone-icon-wrap{color:#fff;background:#8b5cf6;transform:scale(1.06)}.tac-upload-dropzone-text-group{flex-direction:column;gap:.25rem;display:flex}.tac-upload-dropzone-title{color:#334155;font-size:.88rem;font-weight:600}.tac-upload-dropzone-link{color:#8b5cf6;text-underline-offset:3px;font-weight:700;text-decoration:underline}.tac-upload-dropzone-hint{color:#64748b;font-size:.74rem}.tac-upload-files-list{flex-direction:column;gap:.6rem;margin-top:1rem;display:flex}.tac-upload-files-header{color:#64748b;text-transform:uppercase;letter-spacing:.04em;justify-content:space-between;align-items:center;font-size:.76rem;font-weight:700;display:flex}.tac-upload-clear-all{color:#ef4444;cursor:pointer;background:0 0;border:none;font-size:.74rem;font-weight:600}.tac-upload-clear-all:hover{text-decoration:underline}.tac-upload-files-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.65rem;display:grid}.tac-upload-file-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:.65rem;padding:.6rem .75rem;transition:all .12s;display:flex;box-shadow:0 1px 2px #00000005}.tac-upload-file-card:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #0000000a}.tac-upload-thumb-wrap,.tac-upload-icon-wrap{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}.tac-upload-thumb{object-fit:cover;width:100%;height:100%}.tac-upload-file-icon--image{color:#0284c7}.tac-upload-file-icon--text{color:#10b981}.tac-upload-file-icon--archive{color:#f59e0b}.tac-upload-file-icon--code{color:#8b5cf6}.tac-upload-file-icon--audio{color:#ec4899}.tac-upload-file-icon--video{color:#f43f5e}.tac-upload-file-icon--default{color:#64748b}.tac-upload-file-details{flex:1;min-width:0}.tac-upload-file-name{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;overflow:hidden}.tac-upload-file-size{color:#64748b;font-family:monospace;font-size:.72rem}.tac-upload-file-remove-btn{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:all .12s;display:inline-flex}.tac-upload-file-remove-btn:hover{color:#ef4444;background:#fee2e2;border-color:#fca5a5}.tac-upload-compact-chamber{cursor:pointer;padding:.35rem .5rem}.tac-upload-compact-info{flex:1;align-items:center;min-width:0;display:flex}.tac-upload-compact-placeholder{color:#94a3b8;font-size:.82rem}.tac-upload-compact-chips{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.tac-upload-chip{color:#334155;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:.35rem;max-width:220px;padding:.2rem .5rem;font-size:.76rem;display:inline-flex}.tac-upload-chip-name{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.tac-upload-chip-size{color:#64748b;font-size:.7rem}.tac-upload-chip-remove{color:#94a3b8;cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:flex}.tac-upload-chip-remove:hover{color:#ef4444}.tac-upload-compact-btn{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;flex-shrink:0;margin-left:.5rem;padding:.35rem .75rem;font-size:.78rem;font-weight:600;transition:all .12s}.tac-upload-compact-btn:hover{background:#f8fafc;border-color:#94a3b8}.tac-upload-avatar{cursor:pointer;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;transition:all .16s;display:flex;position:relative;overflow:hidden}.tac-upload-avatar:hover{border-color:#8b5cf6}.tac-upload-avatar--drag{background:#ede9fe!important;border-color:#8b5cf6!important}.tac-upload-avatar-img{object-fit:cover;width:100%;height:100%}.tac-upload-avatar-placeholder{color:#64748b;flex-direction:column;align-items:center;gap:.25rem;font-size:.72rem;font-weight:500;display:flex}.tac-upload-avatar-overlay{color:#fff;opacity:0;background:#0f172aa6;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;font-size:.72rem;font-weight:600;transition:opacity .14s;display:flex;position:absolute;inset:0}.tac-upload-avatar:hover .tac-upload-avatar-overlay{opacity:1}.tac-card{box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:12px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,system-ui,sans-serif;transition:all .2s;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000a}.tac-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000000f}.tac-card--with-screws{padding:1.5rem}.tac-card__screw{z-index:2;background:#e2e8f0;border:1px solid #94a3b8;border-radius:50%;justify-content:center;align-items:center;width:9px;height:9px;display:flex;position:absolute}.tac-card__screw:after{content:"";background:#64748b;width:5px;height:1px;transform:rotate(45deg)}.tac-card__screw--tl{top:10px;left:10px}.tac-card__screw--tr{top:10px;right:10px}.tac-card__screw--bl{bottom:10px;left:10px}.tac-card__screw--br{bottom:10px;right:10px}.tac-card--chassis{background:#fff;border:1px solid #cbd5e1;padding:1.5rem;box-shadow:0 2px 8px #0000000f}.tac-card--deck{background:#fff;border:1px solid #e2e8f0;padding:1.25rem}.tac-card--recessed{background:#f8fafc;border:1px solid #e2e8f0;padding:1.25rem;box-shadow:inset 0 1px 3px #00000008}.tac-card--brushed{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border:1px solid #cbd5e1;padding:1.5rem;box-shadow:0 2px 6px #0000000d}.tac-card--hydro{background:#fff;border:1px solid #7dd3fc;padding:1.25rem}.tac-card--hydro:hover{border-color:#38bdf8;box-shadow:0 4px 16px #0ea5e91f}.tac-card--pyro{background:#fff;border:1px solid #fda4af;padding:1.25rem}.tac-card--pyro:hover{border-color:#fb7185;box-shadow:0 4px 16px #e11d481f}.tac-card--dendro{background:#fff;border:1px solid #bef264;padding:1.25rem}.tac-card--dendro:hover{border-color:#a3e635;box-shadow:0 4px 16px #84cc161f}.tac-card--electro{background:#fff;border:1px solid #d8b4fe;padding:1.25rem}.tac-card--electro:hover{border-color:#c084fc;box-shadow:0 4px 16px #a855f71f}.tac-card--anemo{background:#fff;border:1px solid #5eead4;padding:1.25rem}.tac-card--anemo:hover{border-color:#2dd4bf;box-shadow:0 4px 16px #14b8a61f}.tac-card--geo{background:#fff;border:1px solid #fde68a;padding:1.25rem}.tac-card--geo:hover{border-color:#fcd34d;box-shadow:0 4px 16px #f59e0b1f}.tac-card--cryo{background:#fff;border:1px solid #a5f3fc;padding:1.25rem}.tac-card--cryo:hover{border-color:#67e8f9;box-shadow:0 4px 16px #06b6d41f}.tac-card--light{background:#fff;border:1px solid #fef08a;padding:1.25rem}.tac-card--light:hover{border-color:#fde047;box-shadow:0 4px 18px #facc152e}.tac-card--dark{background:#fff;border:1px solid #ddd6fe;padding:1.25rem}.tac-card--dark:hover{border-color:#c4b5fd;box-shadow:0 4px 18px #8b5cf62e}.tac-card--diamond-5star{background:linear-gradient(#fff 0%,#fffdfa 100%);border:1px solid #f59e0b;padding:1.5rem;box-shadow:0 2px 10px #f59e0b1f}.tac-card--diamond-5star:hover{border-color:#d97706;box-shadow:0 6px 20px #f59e0b33}.tac-card__header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.tac-card__header--collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}.tac-card__header--collapsible:hover .tac-card__title{color:#0284c7}.tac-card__title-group{flex-direction:column;gap:.2rem;display:flex}.tac-card__title{color:#0f172a;letter-spacing:-.01em;align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;display:flex}.tac-card__subtitle{color:#64748b;font-size:.75rem;font-weight:500}.tac-card__actions{align-items:center;gap:.5rem;display:flex}.tac-card__collapse-btn{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:4px;padding:.25rem .55rem;font-size:.7rem;font-weight:700;transition:all .15s}.tac-card__collapse-btn:hover{color:#0f172a;background:#f1f5f9}.tac-card__body{z-index:1;position:relative}.tac-card__footer{color:#64748b;border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:.75rem;font-size:.8rem;display:flex}.tac-badge{letter-spacing:-.01em;-webkit-user-select:none;user-select:none;white-space:nowrap;-webkit-backdrop-filter:blur(10px);box-sizing:border-box;align-items:center;gap:.35rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Inter,system-ui,sans-serif;font-weight:550;line-height:1;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.tac-badge--sm{border-radius:9999px;gap:.28rem;padding:.2rem .5rem;font-size:.72rem}.tac-badge--md{border-radius:9999px;gap:.35rem;padding:.32rem .7rem;font-size:.8rem}.tac-badge--lg{border-radius:9999px;gap:.45rem;padding:.42rem .9rem;font-size:.88rem}.tac-badge:not(.tac-badge--pill){border-radius:6px}.tac-badge--pill{border-radius:9999px!important}.tac-badge--clickable{cursor:pointer}.tac-badge--clickable:hover{transform:translateY(-1px);box-shadow:0 3px 8px #0000000d}.tac-badge--clickable:active{transform:translateY(0)}.tac-badge--raised{color:#1e293b;background:#ffffffe6;border:1px solid #cbd5e1cc;box-shadow:0 1px 2px #00000008}.tac-badge--recessed{color:#475569;background:#f1f5f9d9;border:1px solid #e2e8f0cc}.tac-badge--cyan{color:#0284c7;background:#0ea5e914;border:1px solid #0ea5e940}.tac-badge--emerald{color:#059669;background:#10b98114;border:1px solid #10b98140}.tac-badge--amber{color:#d97706;background:#f59e0b14;border:1px solid #f59e0b40}.tac-badge--crimson{color:#dc2626;background:#ef444414;border:1px solid #ef444440}.tac-badge--hydro{color:#0284c7;background:#2dc4ff14;border:1px solid #2dc4ff4d}.tac-badge--hydro:hover{background:#2dc4ff1f;border-color:#2dc4ff73}.tac-badge--pyro{color:#e11d48;background:#ff623814;border:1px solid #ff62384d}.tac-badge--pyro:hover{background:#ff62381f;border-color:#ff623873}.tac-badge--dendro{color:#4d7c0f;background:#9ee0241a;border:1px solid #84cc1659}.tac-badge--dendro:hover{background:#9ee02426;border-color:#84cc1680}.tac-badge--electro{color:#7e22ce;background:#c06eff17;border:1px solid #c06eff4d}.tac-badge--electro:hover{background:#c06eff24;border-color:#c06eff73}.tac-badge--anemo{color:#0f766e;background:#33e7b817;border:1px solid #33e7b859}.tac-badge--anemo:hover{background:#33e7b824;border-color:#33e7b880}.tac-badge--geo{color:#b45309;background:#f5c5421a;border:1px solid #f5c54259}.tac-badge--geo:hover{background:#f5c54226;border-color:#f5c54280}.tac-badge--cryo{color:#0369a1;background:#8febff1a;border:1px solid #38bdf859}.tac-badge--cryo:hover{background:#8febff26;border-color:#38bdf880}.tac-badge--light{color:#a16207;background:#facc151f;border:1px solid #eab30866}.tac-badge--light:hover{background:#facc152e;border-color:#eab30899;box-shadow:0 0 10px #facc1540}.tac-badge--dark{color:#6d28d9;background:#8b5cf61f;border:1px solid #8b5cf659}.tac-badge--dark:hover{background:#8b5cf62e;border-color:#8b5cf68c;box-shadow:0 0 10px #8b5cf640}.tac-badge--rarity-5star{color:#92400e;background:linear-gradient(135deg,#fef3c7b3,#fde68a66);border:1px solid #f59e0b59;box-shadow:0 1px 3px #f59e0b1a}.tac-badge--rarity-4star{color:#6b21a8;background:linear-gradient(135deg,#f3e8ffb3,#e9d5ff66);border:1px solid #c084fc59;box-shadow:0 1px 3px #c084fc1a}.tac-badge--reaction{color:#0f172a;background:#f8fafce6;border:1px solid #cbd5e1b3}.tac-badge__dot{background:currentColor;border-radius:50%;flex-shrink:0;width:5.5px;height:5.5px}.tac-badge--sm .tac-badge__dot{width:4.5px;height:4.5px}.tac-badge--lg .tac-badge__dot{width:7px;height:7px}.tac-badge__dot--pulse{animation:2s ease-in-out infinite tac-apple-pulse}@keyframes tac-apple-pulse{0%,to{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}.tac-badge__icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.tac-badge__text{display:inline-block}.tac-tabs{box-sizing:border-box;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:9px;gap:3px;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.tac-tabs--full-width{width:100%;display:flex}.tac-tabs--full-width .tac-tab{flex:1}.tac-tabs--sm .tac-tab{gap:.35rem;padding:.35rem .65rem;font-size:.75rem}.tac-tabs--md .tac-tab{gap:.45rem;padding:.45rem .9rem;font-size:.84rem}.tac-tabs--lg .tac-tab{gap:.55rem;padding:.6rem 1.2rem;font-size:.92rem}.tac-tab{color:#64748b;font-family:var(--tac-font-sans,-apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", system-ui, sans-serif);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;font-weight:600;transition:all .16s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative}.tac-tab:hover:not(.tac-tab--active):not(.tac-tab--disabled){color:#0f172a;background:#ffffff80}.tac-tab--active{border:1px solid #cbd5e1;box-shadow:0 1px 3px #0000000f;color:#0f172a!important;background:#fff!important}.tac-tab--disabled{opacity:.45;cursor:not-allowed}.tac-tab__icon{justify-content:center;align-items:center;display:flex}.tac-tab__label{display:inline-block}.tac-tab__badge{color:#475569;background:#e2e8f0;border-radius:9999px;padding:.1rem .4rem;font-size:.65rem;font-weight:700}.tac-tabs--primary{background:#8b5cf60d;border:1px solid #8b5cf62e;box-shadow:0 1px 3px #8b5cf60f}.tac-tabs--primary .tac-tab{color:#64748b}.tac-tabs--primary .tac-tab:hover:not(.tac-tab--active):not(.tac-tab--disabled){color:#7c3aed;background:#8b5cf61a}.tac-tabs--primary .tac-tab--active{color:#fff!important;background:#7c3aed!important;border-color:#6d28d9!important;box-shadow:0 1px 2px #4c1d9540!important}.tac-tabs--primary .tac-tab--active .tac-tab__icon{color:#fff}.tac-tabs--primary .tac-tab--active .tac-tab__badge{color:#fff!important;background:#ffffff40!important}.tac-tabs--primary .tac-tab__badge{color:#7c3aed;background:#8b5cf61f}[data-theme=dark] .tac-tabs--primary{background:#120f1cb3;border-color:#8b5cf64d}[data-theme=dark] .tac-tabs--primary .tac-tab{color:#94a3b8}[data-theme=dark] .tac-tabs--primary .tac-tab:hover:not(.tac-tab--active):not(.tac-tab--disabled){color:#e2e8f0;background:#8b5cf62e}.tac-tabs--pill{border-radius:9999px;padding:4px}.tac-tabs--pill .tac-tab{border-radius:9999px}.tac-tabs--keypad{background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;gap:4px}.tac-tabs--keypad .tac-tab--active{border:1px solid #94a3b8;box-shadow:0 2px 4px #00000014;background:#fff!important}.tac-tabs--underlined{background:0 0;border:none;border-bottom:1px solid #e2e8f0;border-radius:0;gap:1.25rem;padding:0}.tac-tabs--underlined .tac-tab{color:#64748b;border-radius:0;padding:.6rem .2rem;box-shadow:none!important;background:0 0!important;border:none!important}.tac-tabs--underlined .tac-tab--active{color:#0284c7!important}.tac-tabs--underlined .tac-tab--active:after{content:"";background:#0284c7;border-radius:2px;height:2px;position:absolute;bottom:-1px;left:0;right:0}.tac-tabs--hydro .tac-tab--active{border-color:#7dd3fc;box-shadow:0 2px 8px #0ea5e926;color:#0284c7!important}.tac-tabs--pyro .tac-tab--active{border-color:#fda4af;box-shadow:0 2px 8px #e11d4826;color:#e11d48!important}.tac-tabs--dendro .tac-tab--active{border-color:#bef264;box-shadow:0 2px 8px #84cc1626;color:#4d7c0f!important}.tac-tabs--electro .tac-tab--active{border-color:#d8b4fe;box-shadow:0 2px 8px #a855f726;color:#7e22ce!important}.tac-tabs--anemo .tac-tab--active{border-color:#5eead4;box-shadow:0 2px 8px #14b8a626;color:#0f766e!important}.tac-tabs--geo .tac-tab--active{border-color:#fde68a;box-shadow:0 2px 8px #f59e0b26;color:#b45309!important}.tac-tabs--cryo .tac-tab--active{border-color:#a5f3fc;box-shadow:0 2px 8px #06b6d426;color:#0369a1!important}.tac-tabs--light .tac-tab--active{border-color:#fef08a;box-shadow:0 2px 10px #facc1533;color:#a16207!important}.tac-tabs--dark .tac-tab--active{border-color:#ddd6fe;box-shadow:0 2px 10px #8b5cf633;color:#6d28d9!important}.tac-tabs--diamond-5star .tac-tab--active{border-color:#f59e0b;box-shadow:0 2px 10px #f59e0b33;color:#b45309!important;background:linear-gradient(#fff 0%,#fffbeb 100%)!important}.tac-modal-backdrop{z-index:9999;background:#0f172a9e;justify-content:center;align-items:center;padding:1.5rem;animation:.11s ease-out tac-modal-fade-in;display:flex;position:fixed;inset:0}.tac-modal{box-sizing:border-box;background:#fff;border:1px solid #cbd5e1;border-radius:14px;width:100%;padding:1.75rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,system-ui,sans-serif;animation:.15s cubic-bezier(.2,.9,.3,1) tac-modal-slide-up;position:relative;box-shadow:0 20px 45px -10px #00000040,inset 0 0 0 1px #ffffff80}.tac-modal--with-screws{padding:2rem 1.75rem 1.75rem}.tac-modal__screw{background:#e2e8f0;border:1px solid #94a3b8;border-radius:50%;justify-content:center;align-items:center;width:9px;height:9px;display:flex;position:absolute}.tac-modal__screw:after{content:"";background:#64748b;width:5px;height:1px;transform:rotate(45deg)}.tac-modal__screw--tl{top:10px;left:10px}.tac-modal__screw--tr{top:10px;right:10px}.tac-modal__screw--bl{bottom:10px;left:10px}.tac-modal__screw--br{bottom:10px;right:10px}@media (prefers-reduced-motion:reduce){.tac-modal-backdrop,.tac-modal{animation:none}}@keyframes tac-modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes tac-modal-slide-up{0%{opacity:0;transform:scale(.97)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.tac-modal__header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.85rem;display:flex}.tac-modal__title-group{flex-direction:column;gap:.2rem;display:flex}.tac-modal__title{color:#0f172a;letter-spacing:-.01em;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;display:flex}.tac-modal__subtitle{color:#64748b;font-size:.75rem;font-weight:500}.tac-modal__body{color:#334155;margin-bottom:1.5rem;font-size:.88rem;line-height:1.55}.tac-modal__footer{border-top:1px solid #f1f5f9;justify-content:flex-end;align-items:center;gap:.75rem;padding-top:1rem;display:flex}.tac-modal--hydro{border-color:#7dd3fc;box-shadow:0 20px 45px -10px #0ea5e940}.tac-modal--pyro{border-color:#fda4af;box-shadow:0 20px 45px -10px #e11d4840}.tac-modal--dendro{border-color:#bef264;box-shadow:0 20px 45px -10px #84cc1640}.tac-modal--electro{border-color:#d8b4fe;box-shadow:0 20px 45px -10px #a855f740}.tac-modal--anemo{border-color:#5eead4;box-shadow:0 20px 45px -10px #14b8a640}.tac-modal--geo{border-color:#fde68a;box-shadow:0 20px 45px -10px #f59e0b40}.tac-modal--cryo{border-color:#a5f3fc;box-shadow:0 20px 45px -10px #06b6d440}.tac-modal--diamond-5star{border-color:#f59e0b;box-shadow:0 20px 50px -10px #f59e0b59}.tac-table-wrapper{box-sizing:border-box;background:#fff;border-radius:12px;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,system-ui,sans-serif;transition:all .18s;display:flex;overflow:hidden}.tac-table-wrapper--bordered{border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000a}.tac-table-wrapper--bordered:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000000f}.tac-table__toolbar{background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.tac-table__title-area{flex-direction:column;gap:.15rem;display:flex}.tac-table__title{color:#0f172a;letter-spacing:-.01em;align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;display:flex}.tac-table__subtitle{color:#64748b;font-size:.75rem;font-weight:500}.tac-table__controls-area{align-items:center;gap:.65rem;display:flex}.tac-table__search{align-items:center;display:flex;position:relative}.tac-table__search-icon{color:#94a3b8;pointer-events:none;position:absolute;left:.65rem}.tac-table__search-input{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;width:200px;padding:.38rem .65rem .38rem 1.85rem;font-size:.82rem;transition:all .15s}.tac-table__search-input:focus{border-color:#8b5cf6;width:240px;box-shadow:0 0 0 2px #8b5cf626}.tac-table-scroll{-webkit-overflow-scrolling:touch;flex:1;width:100%;min-height:0;overflow:auto}.tac-table{border-collapse:collapse;text-align:left;color:#334155;width:100%;font-size:.85rem}.tac-table__th{color:#475569;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;-webkit-user-select:none;user-select:none;z-index:5;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:.75rem 1rem;font-size:.76rem;font-weight:700;position:sticky;top:0;box-shadow:0 1px #e2e8f0}.tac-table__th--sortable:hover{color:#0f172a;background:#f1f5f9}.tac-table__th-content{align-items:center;gap:.35rem;display:flex}.tac-table__sort-icon{justify-content:center;align-items:center;display:inline-flex}.tac-table__th--checkbox,.tac-table__td--checkbox{text-align:center;width:40px;padding:.65rem .5rem .65rem 1rem}.tac-table__th--expand,.tac-table__td--expand{text-align:center;width:36px;padding:.65rem .25rem}.tac-table__expand-btn{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.2rem;display:flex}.tac-table__expand-btn:hover{color:#0f172a;background:#e2e8f0}.tac-table__checkbox{cursor:pointer;accent-color:#8b5cf6;width:15px;height:15px}.tac-table__td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:.85rem 1rem}.tac-table__tr{transition:background .12s}.tac-table--hoverable .tac-table__tr:hover{background:#f8fafc}.tac-table__tr--selected{background:#8b5cf60f!important}.tac-table__tr--clickable{cursor:pointer}.tac-table__tr--active{box-shadow:inset 3px 0 0 var(--tac-accent-primary);background:var(--tac-accent-primary-soft-bg,#8b5cf61a)!important}.tac-table--striped tbody .tac-table__tr:nth-child(2n){background:#fafbfc}.tac-table--compact .tac-table__th{padding:.5rem .75rem;font-size:.72rem}.tac-table--compact .tac-table__td{padding:.5rem .75rem;font-size:.8rem}.tac-table--spacious .tac-table__th{padding:1rem 1.25rem}.tac-table--spacious .tac-table__td{padding:1.1rem 1.25rem;font-size:.9rem}.tac-table__expanded-tr{background:#f8fafc}.tac-table__expanded-td{border-bottom:1px solid #e2e8f0;padding:1rem 1.5rem;box-shadow:inset 0 2px 4px #00000005}.tac-table__empty-cell,.tac-table__loading-cell{text-align:center;color:#94a3b8;padding:3rem 1.5rem;font-size:.88rem}.tac-table__loading-cell{justify-content:center;align-items:center;gap:.65rem;display:flex}.tac-table__loading-spinner{border:2px solid #e2e8f0;border-top-color:#8b5cf6;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite tac-table-spin}@keyframes tac-table-spin{to{transform:rotate(360deg)}}.tac-table__pagination{color:#64748b;background:#fff;border-top:1px solid #e2e8f0;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.25rem;font-size:.82rem;display:flex}.tac-table__pagination-info{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.tac-table__pagination-badge{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;align-items:center;gap:.5rem;padding:.35rem .75rem;font-size:.8rem;display:inline-flex}.tac-table__pagination-dot{background:#8b5cf6;border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px #8b5cf666}.tac-table__pagination-highlight{color:#0f172a;font-weight:600}.tac-table__pagination-total{color:#7c3aed;font-weight:700}.tac-table__selected-count{color:#7c3aed;background:#8b5cf614;border:1px solid #8b5cf640;border-radius:20px;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.78rem;font-weight:500;display:inline-flex}.tac-table__pagination-controls{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.tac-table__page-size-picker{align-items:center;gap:.5rem;display:flex;position:relative}.tac-table__page-size-label{color:#64748b;font-size:.8rem;font-weight:500}.tac-table__page-size-btn{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:.45rem;padding:.38rem .75rem;font-size:.8rem;font-weight:600;transition:all .15s;display:inline-flex;box-shadow:0 1px 2px #00000008}.tac-table__page-size-btn:hover{color:#0f172a;background:#f8fafc;border-color:#94a3b8}.tac-table__page-size-btn--open{background:#f5f3ff;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf626}.tac-table__dropdown-arrow{color:#64748b;transition:transform .16s}.tac-table__dropdown-arrow--up{color:#8b5cf6;transform:rotate(180deg)}.tac-table__page-size-menu{z-index:50;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:.15rem;min-width:160px;padding:.35rem;animation:.15s cubic-bezier(.16,1,.3,1) tac-dropdown-appear;display:flex;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 12px 28px -4px #0f172a1f,0 4px 10px #0f172a0a}@keyframes tac-dropdown-appear{0%{opacity:0;transform:translateY(6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.tac-table__page-size-menu-title{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;border-bottom:1px solid #f1f5f9;margin-bottom:.2rem;padding:.35rem .6rem .2rem;font-size:.7rem;font-weight:700}.tac-table__page-size-item{color:#334155;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;width:100%;padding:.45rem .65rem;font-size:.8rem;font-weight:500;transition:all .12s;display:flex}.tac-table__page-size-item:hover{color:#0f172a;background:#f1f5f9}.tac-table__page-size-item--active{color:#6d28d9;background:#ede9fe;font-weight:600}.tac-table__page-size-check{color:#8b5cf6}.tac-table__pagination-nav{align-items:center;gap:.35rem;display:flex}.tac-table__nav-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .14s;display:inline-flex;box-shadow:0 1px 2px #00000005}.tac-table__nav-btn:hover:not(:disabled){color:#0f172a;background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px)}.tac-table__nav-btn:active:not(:disabled){transform:translateY(0)}.tac-table__nav-btn:disabled{opacity:.35;cursor:not-allowed;background:#fafafa;border-color:#f1f5f9}.tac-table__page-pills{align-items:center;gap:.25rem;margin:0 .15rem;display:flex}.tac-table__page-pill{color:#475569;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;min-width:32px;height:32px;padding:0 .45rem;font-size:.82rem;font-weight:600;transition:all .14s;display:inline-flex}.tac-table__page-pill:hover:not(.tac-table__page-pill--active){color:#0f172a;background:#f1f5f9}.tac-table__page-pill--active{color:#fff;background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%);border-color:#7c3aed;box-shadow:0 2px 6px #7c3aed52}.tac-table__page-ellipsis{color:#94a3b8;letter-spacing:.1em;justify-content:center;align-items:center;width:24px;height:32px;font-size:.75rem;display:inline-flex}.tac-table__group-td{background:var(--tac-bg-plate,#f8fafc);text-transform:uppercase;letter-spacing:.04em;color:#64748b;border-bottom:1px solid #e2e8f0;padding:.5rem 1rem;font-size:.72rem;font-weight:700}.tac-table__group-count{color:#94a3b8;margin-left:.45rem;font-weight:600}[data-theme=dark] .tac-table__group-td{color:#94a3b8;border-bottom-color:#ffffff0f}.tac-spinner-container{align-items:center;gap:.65rem;display:inline-flex}.tac-spinner-container--bottom{flex-direction:column;justify-content:center}.tac-spinner-container--right{flex-direction:row}.tac-spinner{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.tac-spinner-label{color:#475569;font-size:.84rem;font-weight:500}.tac-spinner-ring{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.tac-spinner-svg{width:100%;height:100%;animation:1.1s cubic-bezier(.4,0,.2,1) infinite tac-spin}.tac-spinner-track{stroke:#e2e8f0}.tac-spinner-arc{stroke-linecap:round;stroke-dasharray:90 150;stroke-dashoffset:0;animation:1.5s ease-in-out infinite tac-ring-dash}@keyframes tac-spin{to{transform:rotate(360deg)}}@keyframes tac-ring-dash{0%{stroke-dasharray:1 150;stroke-dashoffset:0}50%{stroke-dasharray:90 150;stroke-dashoffset:-35px}to{stroke-dasharray:90 150;stroke-dashoffset:-124px}}.tac-spinner-sigil{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.tac-spinner-sigil-halo{opacity:.7;border:2px dashed;border-radius:50%;animation:4s linear infinite tac-spin;position:absolute;inset:-2px}.tac-spinner-sigil-icon{animation:1.8s ease-in-out infinite alternate tac-sigil-pulse}.tac-spinner-sigil-core{border-radius:50%;width:60%;height:60%;animation:1.8s ease-in-out infinite alternate tac-sigil-pulse;box-shadow:0 0 12px}@keyframes tac-sigil-pulse{0%{filter:drop-shadow(0 0 2px #0003);transform:scale(.9)}to{filter:drop-shadow(0 0 10px var(--spinner-color));transform:scale(1.1)}}.tac-spinner-orbit{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.tac-spinner-orbit-core{width:25%;height:25%;box-shadow:0 0 8px var(--spinner-color);border-radius:50%}.tac-spinner-orbit-ring{border:1.5px solid;border-radius:50%;animation:1.8s linear infinite tac-spin;position:absolute;inset:0}.tac-spinner-orbit-ring--second{animation:2.6s linear infinite reverse tac-spin}.tac-spinner-orbit-dot{width:8px;height:8px;box-shadow:0 0 6px var(--spinner-color);border-radius:50%;position:absolute;top:-4px;left:calc(50% - 4px)}.tac-spinner-orbit-dot--second{width:6px;height:6px;top:auto;bottom:-3px;left:calc(50% - 3px)}.tac-spinner-dots{align-items:center;gap:4px;display:flex}.tac-spinner-dots span{border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite tac-dot-bounce}.tac-spinner-dots span:nth-child(2){animation-delay:.16s}.tac-spinner-dots span:nth-child(3){animation-delay:.32s}@keyframes tac-dot-bounce{0%,80%,to{opacity:.4;transform:scale(.4)}40%{opacity:1;box-shadow:0 0 6px var(--spinner-color);transform:scale(1.1)}}.tac-spinner-pulse{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.tac-spinner-pulse-ring{border:2px solid;border-radius:50%;animation:1.6s cubic-bezier(.24,0,.38,1) infinite tac-pulse-wave;position:absolute;inset:0}.tac-spinner-pulse-ring--delay{animation-delay:.8s}.tac-spinner-pulse-dot{border-radius:50%;width:30%;height:30%}@keyframes tac-pulse-wave{0%{opacity:1;transform:scale(.2)}to{opacity:0;transform:scale(1.6)}}.tac-spinner-gear{justify-content:center;align-items:center;width:100%;height:100%;animation:3s linear infinite tac-spin;display:flex}.tac-spinner-gear svg{width:100%;height:100%}.tac-progress-wrapper{flex-direction:column;gap:.35rem;width:100%;display:flex}.tac-progress-header{justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.tac-progress-label-group{align-items:center;gap:.5rem;display:flex}.tac-progress-label{color:#1e293b;font-weight:600}.tac-progress-sublabel{color:#64748b;font-size:.74rem}.tac-progress-value-badge{font-family:JetBrains Mono,ui-monospace,monospace;font-weight:700}.tac-progress-track{background:#e2e8f0;border-radius:100px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #0000000f}.tac-progress--sm .tac-progress-track{height:6px}.tac-progress--md .tac-progress-track{height:10px}.tac-progress--lg .tac-progress-track{height:16px}.tac-progress-track--glow{box-shadow:0 0 10px var(--progress-color), inset 0 1px 2px #0000000f}.tac-progress-fill{border-radius:100px;height:100%;transition:width .35s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.tac-progress-fill--striped{background-image:linear-gradient(45deg,#ffffff38 25%,#0000 25% 50%,#ffffff38 50% 75%,#0000 75%,#0000);background-size:20px 20px}.tac-progress-fill--animated{animation:1s linear infinite tac-progress-stripes}@keyframes tac-progress-stripes{0%{background-position:0 0}to{background-position:20px 0}}.tac-progress-shine{background:linear-gradient(#ffffff59,#0000);border-radius:100px;height:40%;position:absolute;top:0;left:0;right:0}.tac-progress-segments{pointer-events:none;position:absolute;inset:0}.tac-progress-segment-tick{background:#ffffffb3;width:2px;position:absolute;top:0;bottom:0;transform:translate(-50%)}.tac-skeleton{background:#e2e8f0;position:relative;overflow:hidden}.tac-skeleton--text{border-radius:4px;width:100%;height:14px;margin-bottom:8px}.tac-skeleton--title{border-radius:6px;width:60%;height:22px;margin-bottom:12px}.tac-skeleton--avatar{border-radius:50%;width:44px;height:44px}.tac-skeleton--button{border-radius:8px;width:120px;height:36px}.tac-skeleton--card{border-radius:12px;width:100%;height:180px}.tac-skeleton--circle{border-radius:50%}.tac-skeleton--rect{border-radius:8px}.tac-skeleton-shimmer{background:linear-gradient(90deg,#fff0 0%,#ffffff80 50%,#fff0 100%);animation:1.6s ease-in-out infinite tac-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes tac-shimmer{to{transform:translate(100%)}}.tac-loading-overlay-container{position:relative}.tac-loading-overlay-container--fullscreen{position:static}.tac-loading-overlay{z-index:100;border-radius:inherit;background:#ffffffbf;justify-content:center;align-items:center;animation:.18s tac-fade-in;display:flex;position:absolute;inset:0}.tac-loading-overlay--blur{-webkit-backdrop-filter:blur(4px)}.tac-loading-overlay--fixed{z-index:9999;background:#0f172a66;position:fixed;inset:0}.tac-loading-overlay-card{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:.85rem;max-width:320px;padding:1.75rem 2.25rem;display:flex;box-shadow:0 20px 40px -10px #0000001f,0 1px 3px #0000000d}.tac-loading-overlay-title{color:#0f172a;font-size:.95rem;font-weight:700}.tac-loading-overlay-subtitle{color:#64748b;font-size:.78rem}@keyframes tac-fade-in{0%{opacity:0}to{opacity:1}}.admin-wrapper{background-color:var(--tac-bg-canvas);min-height:100vh;color:var(--tac-text-primary);font-family:var(--tac-font-sans);display:flex;position:relative}.admin-sidebar{color:#cbd5e1;z-index:1000;background:linear-gradient(#0d1e16 0%,#07130e 100%);border-right:1px solid #10b9812e;flex-direction:column;flex-shrink:0;width:260px;height:100vh;transition:width .22s cubic-bezier(.4,0,.2,1),transform .22s;display:flex;position:sticky;top:0;overflow:hidden auto;box-shadow:2px 0 16px #00000047}.admin-sidebar::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar{width:4px}.admin-sidebar::-webkit-scrollbar-track{background:0 0}.sidebar-nav::-webkit-scrollbar-track{background:0 0}.admin-sidebar::-webkit-scrollbar-thumb{background:#10b98140;border-radius:4px}.sidebar-nav::-webkit-scrollbar-thumb{background:#10b98140;border-radius:4px}.admin-sidebar::-webkit-scrollbar-thumb:hover{background:#10b98173}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#10b98173}.admin-sidebar--collapsed{width:72px}.sidebar-brand{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0d1e1699;border-bottom:1px solid #10b98126;flex-shrink:0;align-items:center;gap:.75rem;height:60px;padding:0 1.25rem;display:flex}.brand-logo-icon{border-radius:var(--tac-radius-md,8px);color:#34d399;background:#10b9811f;border:1px solid #10b98147;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 0 12px #10b9812e}.brand-text{flex-direction:column;display:flex;overflow:hidden}.brand-name{font-family:var(--tac-font-display);color:#f1f5f9;letter-spacing:-.01em;align-items:center;gap:3px;font-size:1.05rem;font-weight:700;display:flex}.brand-name strong{color:#34d399;font-weight:800}.brand-tag{color:#94a3b8;font-size:.62rem;font-family:var(--tac-font-mono);letter-spacing:.06em;font-weight:600}.sidebar-user-panel{background:#10b98114;border:1px solid #10b98133;border-radius:8px;align-items:center;gap:.75rem;margin:.75rem .85rem .25rem;padding:.75rem 1rem;display:flex}.user-avatar{color:#fff;background:linear-gradient(135deg,#10b981 0%,#047857 100%);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.78rem;font-weight:700;display:flex;box-shadow:0 2px 6px #10b98159}.user-info{flex-direction:column;min-width:0;display:flex}.user-name{color:#f1f5f9;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;overflow:hidden}.user-status{color:#94a3b8;font-size:.7rem;font-family:var(--tac-font-mono);align-items:center;gap:.35rem;display:flex}.status-indicator-dot{background:#10b981;border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px #10b981}.sidebar-search{margin:.65rem .85rem .35rem;position:relative}.sidebar-search-icon{color:#94a3b8;pointer-events:none;position:absolute;top:9px;left:10px}.sidebar-search-input{color:#f1f5f9;box-sizing:border-box;background:#10b9810f;border:1px solid #10b98133;border-radius:6px;outline:none;width:100%;padding:.45rem .75rem .45rem 2.1rem;font-size:.8rem;transition:all .14s}.sidebar-search-input:focus{background:#10b9811f;border-color:#10b981;box-shadow:0 0 0 2px #10b98140}.sidebar-search-input::placeholder{color:#6ee7b7;opacity:.45}.sidebar-nav{flex:1;padding:.65rem}.nav-group{margin-bottom:1.15rem}.nav-category-header{font-size:.65rem;font-family:var(--tac-font-mono);color:#6ee7b7;opacity:.6;letter-spacing:1.2px;text-transform:uppercase;padding:.35rem .65rem .25rem;font-weight:800}.nav-list{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.nav-item{position:relative}.nav-link{border-radius:var(--tac-radius-md,8px);color:#94a3b8;width:100%;font-family:var(--tac-font-sans);cursor:pointer;text-align:left;box-sizing:border-box;background:0 0;border:1px solid #0000;align-items:center;gap:.75rem;padding:.6rem .8rem;font-size:.835rem;font-weight:500;text-decoration:none;transition:all .18s;display:flex}.nav-link:hover{color:#f1f5f9;background:#10b98114;border-color:#10b98129}.nav-link--active{font-weight:600;color:#d1fae5!important;background:#10b98124!important;border-color:#10b98140 #10b98140 #10b98140 #10b981!important;border-left-style:solid!important;border-left-width:3px!important}.nav-link--active .nav-link-icon{color:#34d399}.nav-link-icon{color:inherit;flex-shrink:0;justify-content:center;align-items:center;transition:color .14s;display:flex}.nav-link-text{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.nav-link-arrow{color:#34d399}.sidebar-footer{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#07130ed9;border-top:1px solid #10b98124;align-items:center;padding:.75rem 1rem;display:flex}.sidebar-footer-title{color:#cbd5e1;letter-spacing:.02em;align-items:center;gap:.45rem;font-size:.74rem;font-weight:700;display:flex}.sidebar-footer--collapsed{justify-content:center;align-items:center;padding:.85rem 0;display:flex}.admin-content-area{flex-direction:column;flex:1;min-width:0;min-height:100vh;display:flex}.admin-navbar{z-index:900;background:linear-gradient(90deg,#0d1e16 0%,#07130e 100%);border-bottom:1px solid #10b98138;justify-content:space-between;align-items:center;height:58px;min-height:58px;max-height:58px;padding:0 1.5rem;display:flex;position:sticky;top:0;box-shadow:0 1px 12px #0003}.navbar-left{align-items:center;gap:.75rem;display:flex}.navbar-btn{color:#cbd5e1;cursor:pointer;box-sizing:border-box;background:#10b98114;border:1px solid #10b98133;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .16s;display:flex}.navbar-btn:hover{color:#34d399;background:#10b98129;border-color:#10b98159}.navbar-btn--toggle{color:#cbd5e1;background:0 0;border:none}.navbar-btn--toggle:hover{color:#34d399;background:#10b9811f}.navbar-breadcrumbs{align-items:center;gap:.45rem;margin-left:.25rem;font-size:.82rem;display:flex}.breadcrumb-root{color:#94a3b8;align-items:center;gap:.35rem;text-decoration:none;transition:color .18s;display:flex}.breadcrumb-root:hover{color:#34d399}.breadcrumb-separator{color:#10b98166}.breadcrumb-current{color:#f1f5f9;align-items:center;font-weight:600;display:flex}.navbar-right{align-items:center;gap:.75rem;display:flex}.navbar-actions-group{align-items:center;gap:.5rem;display:flex}.navbar-avatar{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#047857 100%);border:1px solid #10b98159;border-radius:6px;justify-content:center;align-items:center;width:34px;height:34px;font-size:.8rem;font-weight:700;transition:all .18s;display:flex}.navbar-avatar:hover{box-shadow:0 0 10px #10b98173}.navbar-user-dropdown{position:relative}.navbar-user-menu{z-index:950;background:#0d1e16;border:1px solid #10b98140;border-radius:12px;min-width:220px;padding:.6rem;animation:.18s notifFadeIn;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #00000080,0 2px 10px #10b98126}@keyframes notifFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.navbar-user-menu-header{border-bottom:1px solid #10b98126;margin-bottom:.35rem;padding:.5rem .65rem .6rem}.navbar-user-menu-name{color:#f1f5f9;font-size:.82rem;font-weight:600}.navbar-user-menu-email{color:#34d399;word-break:break-all;font-size:.72rem}.navbar-user-menu-item{color:#cbd5e1;text-align:left;cursor:pointer;box-sizing:border-box;background:0 0;border:none;border-radius:6px;align-items:center;gap:.6rem;width:100%;padding:.5rem .65rem;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .16s;display:flex}.navbar-user-menu-item:hover{color:#fff;background:#10b98126}.navbar-user-menu-item--danger{color:#f87171!important}.navbar-user-menu-item--danger:hover{color:#ef4444!important;background:#ef444426!important}.admin-main-body{box-sizing:border-box;flex:1;width:100%;max-width:1400px;margin:0 auto;padding:1.5rem 2rem 1.25rem}.content-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.content-title{font-family:var(--tac-font-display);color:var(--tac-text-primary);letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:800;line-height:1.25}.content-desc{color:var(--tac-text-secondary);margin-top:.25rem;font-size:.85rem}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}.gateway-pulse{background:#34d399;border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2.4s ease-in-out infinite pulseDot;box-shadow:0 0 8px #34d399}.gateway-pulse--green{background:#34d399;box-shadow:0 0 8px #34d399b3}.gateway-pulse--yellow{background:#fbbf24;box-shadow:0 0 8px #fbbf24b3}.gateway-pulse--red{background:#f87171;box-shadow:0 0 8px #f87171b3}.gateway-latency{font-family:var(--tac-font-mono,monospace);letter-spacing:.02em;color:#34d399;font-size:.76rem;font-weight:700}.infobox-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;width:100%;margin-bottom:1.25rem;display:grid}.infobox-card{border-radius:var(--tac-radius-md,10px);min-height:105px;color:inherit;background:#fff;border:1px solid #e2e8f0;flex-direction:column;justify-content:space-between;padding:1rem 1.25rem;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000d,0 4px 12px #00000008}[data-theme=dark] .infobox-card{background:var(--tac-bg-deck,#13241c);border:1px solid var(--tac-border-subtle,#ffffff14);box-shadow:var(--tac-shadow-raised-sm,0 2px 8px #0003)}.infobox-card:hover{border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 8px 20px -4px #10b9811f,0 0 0 1px #10b98133}[data-theme=dark] .infobox-card:hover{box-shadow:0 10px 25px -5px #0006,0 0 1px 1px #34d39940}.infobox-card:before{content:"";background:var(--infobox-accent,#10b981);opacity:.9;height:3px;transition:height .2s;position:absolute;top:0;left:0;right:0}.infobox-card:hover:before{height:4px}.infobox--green,.infobox--emerald{--infobox-accent:#10b981;--infobox-accent-bg:#10b9811f;--infobox-accent-text:#059669}.infobox--rose,.infobox--danger{--infobox-accent:#f43f5e;--infobox-accent-bg:#f43f5e1f;--infobox-accent-text:#e11d48}.infobox--cyan,.infobox--blue{--infobox-accent:#0ea5e9;--infobox-accent-bg:#0ea5e91f;--infobox-accent-text:#0284c7}.infobox--amber{--infobox-accent:#f59e0b;--infobox-accent-bg:#f59e0b1f;--infobox-accent-text:#d97706}[data-theme=dark] .infobox--green{--infobox-accent-text:#34d399}[data-theme=dark] .infobox--rose{--infobox-accent-text:#fb7185}[data-theme=dark] .infobox--cyan{--infobox-accent-text:#38bdf8}[data-theme=dark] .infobox--amber{--infobox-accent-text:#fbbf24}.infobox-content{z-index:1;flex-direction:column;display:flex}.infobox-header-title{text-transform:uppercase;letter-spacing:.75px;color:var(--tac-text-muted,#94a3b8);margin-bottom:.35rem;font-size:.72rem;font-weight:700}.infobox-num-row{align-items:baseline;gap:.4rem;display:flex}.infobox-num{font-size:1.6rem;font-weight:800;font-family:var(--tac-font-display,"Space Grotesk", sans-serif);color:var(--tac-text-primary,#1e293b);letter-spacing:-.5px;font-variant-numeric:tabular-nums;line-height:1.1}.infobox-icon{background:var(--infobox-accent-bg,#10b9811a);width:36px;height:36px;color:var(--infobox-accent-text,#10b981);pointer-events:none;border-radius:8px;justify-content:center;align-items:center;transition:transform .2s;display:flex;position:absolute;top:14px;right:14px}.infobox-card:hover .infobox-icon{transform:scale(1.08)}.infobox-footer{color:var(--tac-text-secondary,#64748b);border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.45rem;font-size:.75rem;font-weight:600;display:flex}[data-theme=dark] .infobox-footer{border-top-color:#ffffff0f}.admin-footer{color:var(--tac-text-muted);background:#fff;border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-top:auto;padding:1rem 2rem;font-size:.78rem;display:flex}[data-theme=dark] .admin-footer{background:var(--tac-bg-chassis,#0f1c16);border-top-color:var(--tac-border-subtle)}.footer-left strong{color:var(--tac-text-primary)}.wallet-fab{z-index:100;color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;font-size:26px;transition:transform .18s,box-shadow .18s;display:none;position:fixed;bottom:24px;right:20px;box-shadow:0 4px 18px #10b98173}.wallet-fab:hover{transform:scale(1.05);box-shadow:0 6px 24px #10b9818c}.wallet-fab:active{transform:scale(.96)}.bottom-nav{display:none}@media (width<=900px){.admin-sidebar,.navbar-btn--toggle{display:none}.bottom-nav{z-index:950;padding-bottom:env(safe-area-inset-bottom);background:var(--tac-bg-chassis,#fff);border-top:1px solid var(--border);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #00000014}[data-theme=dark] .bottom-nav{background:#0d1e16;border-top-color:#10b98138}.bottom-nav-link{min-height:56px;color:var(--muted);-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 2px;font-size:.66rem;font-weight:600;text-decoration:none;display:flex}.bottom-nav-link span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-nav-link--active{color:var(--accent)}.bottom-nav-link--active svg{filter:drop-shadow(0 0 6px #10b98173)}.admin-navbar{padding:0 .75rem}.navbar-right{gap:.5rem}.navbar-right>.tac-button{display:none}.navbar-btn,.navbar-avatar{width:40px;height:40px}.navbar-user-menu{max-width:calc(100vw - 1.5rem)}.admin-main-body{padding:1rem .85rem calc(9rem + env(safe-area-inset-bottom))}.content-title{font-size:1.3rem}.navbar-breadcrumbs{display:flex}.breadcrumb-root,.breadcrumb-separator{display:none}.breadcrumb-current{font-size:1rem}.admin-footer{display:none}.wallet-fab{right:16px;bottom:calc(72px + env(safe-area-inset-bottom));display:flex}}@media (width<=480px){.infobox-grid{grid-template-columns:1fr}.infobox-num{font-size:1.4rem}}.login-page{background-color:var(--tac-bg-canvas);box-sizing:border-box;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1.5rem;display:flex;position:relative;overflow:hidden}.login-ambient-orb{filter:blur(90px);pointer-events:none;z-index:0;opacity:.65;border-radius:50%;position:absolute}.login-ambient-orb--1{background:radial-gradient(circle,#10b98159 0%,#05966900 70%);width:460px;height:460px;top:-120px;left:-80px}.login-ambient-orb--2{background:radial-gradient(circle,#0ea5e947 0%,#0284c700 70%);width:500px;height:500px;bottom:-150px;right:-100px}.login-ambient-orb--3{background:radial-gradient(circle,#34d39933 0%,#10b98100 70%);width:340px;height:340px;top:40%;left:35%}.login-theme-btn{background:var(--tac-bg-chassis);border:var(--tac-border-bevel);width:42px;height:42px;box-shadow:var(--tac-shadow-raised-sm);cursor:pointer;z-index:10;border-radius:12px;justify-content:center;align-items:center;transition:all .18s;display:flex;position:absolute;top:1.5rem;right:1.5rem}.login-theme-btn:hover{box-shadow:var(--tac-shadow-raised-md);border-color:#cbd5e1;transform:translateY(-2px)}.login-container{z-index:1;justify-content:space-between;align-items:center;gap:3.5rem;width:100%;max-width:1100px;display:flex}.login-hero{flex-direction:column;flex:1;gap:1.25rem;display:flex}.login-hero-badge{color:var(--tac-accent-primary,#10b981);font-size:.72rem;font-weight:700;font-family:var(--tac-font-mono);background:#10b9811a;border:1px solid #10b98140;border-radius:9999px;align-items:center;gap:.5rem;width:fit-content;padding:.35rem .85rem;display:inline-flex}.login-hero-dot{background:var(--tac-accent-primary,#10b981);width:7px;height:7px;box-shadow:0 0 8px var(--tac-accent-primary,#10b981);border-radius:50%}.login-hero-title{font-family:var(--tac-font-display);color:var(--tac-text-primary);letter-spacing:-.03em;margin:0;font-size:2.75rem;font-weight:800;line-height:1.18}.login-hero-desc{color:var(--tac-text-muted);max-width:520px;margin:0;font-size:1.05rem;line-height:1.6}.login-feature-list{flex-direction:column;gap:1rem;margin-top:.5rem;display:flex}.login-feature-item{align-items:flex-start;gap:.85rem;display:flex}.login-feature-icon{background:var(--tac-bg-plate);border:var(--tac-border-bevel);width:38px;height:38px;color:var(--tac-accent-primary,#10b981);box-shadow:var(--tac-shadow-raised-sm);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.login-feature-item strong{color:var(--tac-text-primary);font-size:.92rem;font-weight:600;display:block}.login-feature-item p{color:var(--tac-text-muted);margin:2px 0 0;font-size:.82rem}.login-card{background:var(--tac-bg-chassis);border:1px solid var(--border);box-sizing:border-box;-webkit-backdrop-filter:blur(16px);border-radius:18px;width:100%;max-width:440px;padding:2.5rem 2.25rem;transition:transform .2s;box-shadow:0 20px 40px #00000014,0 1px 3px #0000000d}.login-brand{align-items:center;gap:.85rem;margin-bottom:1.5rem;display:flex}.login-brand-icon{background:linear-gradient(135deg,#10b98126 0%,#0596694d 100%);border:1px solid #10b98159;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 4px 12px #10b98140}.login-brand-text{font-family:var(--tac-font-display);color:var(--tac-text-primary);letter-spacing:-.01em;font-size:1.35rem;font-weight:800}.login-brand-text strong{background:linear-gradient(135deg,#10b981 0%,#34d399 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.login-brand-badge{color:var(--tac-text-muted);font-size:.65rem;font-family:var(--tac-font-mono);letter-spacing:.08em;font-weight:700;display:block}.login-title{font-family:var(--tac-font-display);color:var(--tac-text-primary);letter-spacing:-.02em;margin:0 0 .3rem;font-size:1.35rem;font-weight:800}.login-subtitle{color:var(--tac-text-muted);margin:0 0 1.5rem;font-size:.85rem}.login-form{flex-direction:column;gap:1.1rem;display:flex}.login-error{color:#dc2626;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;align-items:flex-start;gap:.6rem;padding:.75rem .85rem;font-size:.835rem;line-height:1.4;display:flex}[data-theme=dark] .login-error{color:#f87171;background:#ef444426}.login-notice{color:#047857;background:#10b9811a;border:1px solid #10b98140;border-radius:8px;align-items:center;gap:.6rem;padding:.75rem .85rem;font-size:.835rem;display:flex}[data-theme=dark] .login-notice{color:#34d399}.login-error-icon{flex-shrink:0;margin-top:1px}.login-submit-btn{width:100%;margin-top:.5rem;border-radius:10px!important;justify-content:center!important;padding:.75rem 1rem!important;font-size:.92rem!important;font-weight:700!important}.login-card-footer{border-top:1px solid var(--border);color:var(--tac-text-muted);justify-content:center;align-items:center;gap:.45rem;margin-top:1.5rem;padding-top:1.25rem;font-size:.75rem;display:flex}@media (width<=900px){.login-container{flex-direction:column;gap:2rem}.login-hero{text-align:center;align-items:center}.login-hero-title{font-size:2rem}.login-feature-list{display:none}}@media (width<=480px){.login-page{align-items:flex-start;padding:3.75rem .85rem 1.25rem}.login-card{padding:1.75rem 1.25rem}.login-hero-title{font-size:1.65rem}}:root,[data-theme=light]{--tac-bg-canvas:#f4f6f9;--tac-bg-chassis:#fff;--tac-bg-deck:#fff;--tac-bg-recess:#edf2f7;--tac-bg-elevated:#fff;--tac-bg-plate:#f8fafc;--tac-bg-hover:#e2e8f0;--tac-bg-sidebar:#1e293b;--tac-bg-sidebar-active:#0ea5e9;--tac-text-primary:#1e293b;--tac-text-secondary:#475569;--tac-text-muted:#64748b;--tac-text-dim:#94a3b8;--tac-text-sidebar:#cbd5e1;--tac-font-sans:"Plus Jakarta Sans", "Be Vietnam Pro", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--tac-font-vietnam:"Plus Jakarta Sans", "Be Vietnam Pro", sans-serif;--tac-font-display:"Plus Jakarta Sans", "Space Grotesk", "Be Vietnam Pro", sans-serif;--tac-font-mono:"JetBrains Mono", "Fira Code", "Courier New", monospace;--tac-shadow-raised-sm:0 1px 3px #00000014, 0 1px 2px #0000000a;--tac-shadow-raised-md:-1px -1px 2px #fff, 0 3px 6px #00000012, 0 1px 3px #0000000d;--tac-shadow-raised-lg:-2px -2px 4px #fff, 0 10px 15px -3px #00000014, 0 4px 6px -2px #0000000a;--tac-shadow-inset-sm:inset 0 1px 2px #00000014, inset 0 -1px 1px #fffc;--tac-shadow-inset-md:inset 0 2px 4px #0000001a, inset 0 -1px 2px #ffffffe6;--tac-shadow-inset-deep:inset 0 3px 6px #00000026, inset 0 -2px 3px #fff;--tac-shadow-pressed:inset 0 2px 5px #00000029, 0 1px 1px #fffc;--tac-border-bevel:1px solid #e2e8f0;--tac-border-recess:1px solid #cbd5e1;--tac-border-subtle:1px solid #e2e8f0;--tac-radius-xs:4px;--tac-radius-sm:6px;--tac-radius-md:10px;--tac-radius-lg:14px;--tac-radius-xl:18px;--tac-radius-2xl:24px;--tac-radius-full:9999px;--tac-accent-primary:#10b981;--tac-accent-primary-hover:#059669;--tac-accent-primary-glow:#10b98147;--tac-accent-primary-soft-bg:#10b98114;--tac-accent-primary-soft-border:#10b98133;--tac-accent-cyan:#0891b2;--tac-accent-cyan-glow:#0891b240;--tac-accent-emerald:#10b981;--tac-accent-emerald-glow:#10b98140;--tac-accent-amber:#d97706;--tac-accent-amber-glow:#d9770640;--tac-accent-crimson:#dc2626;--tac-accent-crimson-glow:#dc262640;--tac-accent-violet:#7c3aed;--tac-accent-violet-glow:#7c3aed40;--tac-metal-finish:linear-gradient(180deg, #fff 0%, #f1f5f9 100%);--tac-metal-brushed:linear-gradient(180deg, #fff 0%, #f8fafc 50%, #e2e8f0 100%);--tac-element-dark-primary:#10b981;--tac-element-dark-deep:#047857;--tac-element-dark-light:#34d399;--tac-element-dark-bg:#10b98114;--tac-element-dark-bg-hover:#10b9812e;--tac-element-dark-border:#10b98140;--tac-element-dark-border-focus:#10b98180;--tac-element-dark-glow:0 0 10px #10b98166;--tac-element-dark-gradient:linear-gradient(135deg, #10b981 0%, #047857 100%);--tac-element-dark-navbar-gradient:linear-gradient(90deg, #0d1e16 0%, #07130e 100%);--tac-ease-spring:cubic-bezier(.16, 1, .3, 1);--tac-ease-snap:cubic-bezier(.4, 0, .2, 1);--tac-ease-tactile:cubic-bezier(.2, .8, .2, 1)}[data-theme=dark]{--tac-bg-canvas:#09120e;--tac-bg-chassis:#0f1c16;--tac-bg-deck:#13241c;--tac-bg-recess:#0a1410;--tac-bg-elevated:#1a2f25;--tac-bg-plate:#15261f;--tac-bg-hover:#1e352b;--tac-bg-sidebar:#060e0a;--tac-bg-sidebar-active:#10b981;--tac-text-primary:#f1f5f9;--tac-text-secondary:#94a3b8;--tac-text-muted:#64748b;--tac-text-dim:#334155;--tac-text-sidebar:#94a3b8;--tac-shadow-raised-sm:-1px -1px 0px #ffffff14, 0 2px 4px #0009;--tac-shadow-raised-md:-1px -1px 0px #ffffff1f, inset 0 1px 1px #ffffff0f, 0 4px 10px #0009;--tac-shadow-raised-lg:-1px -1px 0px #ffffff29, 0 8px 24px #000000b3;--tac-shadow-inset-sm:inset 0 1px 3px #000c, inset 0 -1px 1px #ffffff0d;--tac-shadow-inset-md:inset 0 2px 6px #000000d9, inset 0 -1px 1px #ffffff14;--tac-shadow-inset-deep:inset 0 3px 10px #000000f2, inset 0 -1px 1px #ffffff1a;--tac-shadow-pressed:inset 0 2px 6px #000000e6, 0 1px 1px #0006;--tac-border-bevel:1px solid #ffffff14;--tac-border-recess:1px solid #0009;--tac-border-subtle:1px solid #ffffff0f;--tac-accent-primary:#34d399;--tac-accent-primary-glow:#34d39966;--tac-accent-cyan:#00f0ff;--tac-accent-cyan-glow:#00f0ff66;--tac-accent-emerald:#10b981;--tac-accent-emerald-glow:#10b98166;--tac-accent-amber:#fa0;--tac-accent-amber-glow:#fa06;--tac-accent-crimson:#f05;--tac-accent-crimson-glow:#f056;--tac-accent-violet:#c084fc;--tac-accent-violet-glow:#c084fc66;--tac-metal-finish:linear-gradient(180deg, #1e2a3c 0%, #131b28 100%);--tac-metal-brushed:linear-gradient(180deg, #27364d 0%, #192333 50%, #101722 100%)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--tac-bg-canvas,#f4f6f9);--surface:var(--tac-bg-chassis,#fff);--surface-2:var(--tac-bg-plate,#f8fafc);--border:#e2e8f0;--border-focus:#10b981;--text:var(--tac-text-primary,#1e293b);--muted:var(--tac-text-muted,#64748b);--accent:#10b981;--accent-hover:#059669;--accent-text:#fff;--income:#059669;--expense:#e11d48;--danger:#ef4444;--focus:#10b981;--shadow:0 1px 3px #0000000d, 0 1px 2px #00000008;--shadow-hover:0 4px 12px #00000012;--radius:12px;font-family:var(--tac-font-sans)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}[data-theme=dark]{--bg:#09120e;--surface:#0f1c16;--surface-2:#14241d;--border:#ffffff14;--border-focus:#34d399;--text:#f1f5f9;--muted:#94a3b8;--accent:#34d399;--accent-hover:#10b981;--accent-text:#062016;--income:#34d399;--expense:#fb7185;--danger:#f87171;--focus:#34d399;--shadow:0 2px 8px #0000004d;--shadow-hover:0 6px 18px #00000073}*{box-sizing:border-box}html,body,#root{background-color:var(--bg);min-height:100vh;color:var(--text);font-family:var(--tac-font-sans);margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14.5px;line-height:1.5;transition:background-color .2s,color .2s}h1,h2,h3,h4{color:var(--text);line-height:1.25;font-family:var(--tac-font-display);margin:0}a{color:var(--accent);font-weight:500;text-decoration:none;transition:color .14s}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#10b98140;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#10b98173}.muted{color:var(--muted)}.small{font-size:13px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.page-head h1{letter-spacing:-.02em;font-size:1.5rem;font-weight:800}.page-actions{align-items:center;gap:8px;display:flex}.section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;font-weight:700;font-family:var(--tac-font-mono);margin:24px 0 12px}.section-head{justify-content:space-between;align-items:center;display:flex}.section-head a{font-size:.85rem;font-weight:600}.cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.cards-wallets{margin-top:14px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px;transition:all .18s;position:relative;overflow:hidden}.card:hover{box-shadow:var(--shadow-hover);border-color:#cbd5e1}[data-theme=dark] .card:hover{border-color:#34d3994d}.card-total{border-top:3px solid var(--accent)}.card-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.76rem;font-weight:700;font-family:var(--tac-font-mono);margin-bottom:6px}.card-value{font-size:1.45rem;font-weight:800;font-family:var(--tac-font-display);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.card-total .card-value{font-size:1.65rem}.kv{grid-template-columns:1fr auto;gap:6px 12px;margin:10px 0 0;font-size:.88rem;display:grid}.kv dt{color:var(--muted)}.kv dd{text-align:right;margin:0;font-weight:600}.money{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.money.income{color:var(--income)}.money.expense{color:var(--expense)}.list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:0;padding:0;list-style:none;overflow:hidden}.row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 16px;transition:background-color .14s;display:flex}.row:last-child{border-bottom:0}.row:hover{background-color:var(--surface-2)}.row-btn{all:unset;box-sizing:border-box;cursor:pointer;align-items:center;gap:12px;width:100%;display:flex}div.row-btn{cursor:default}.row-btn:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.row-main{flex:1;min-width:0}.row-main .small{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;overflow:hidden}.row-title{color:var(--text);font-size:.92rem;font-weight:600}.dot{background:var(--muted);border-radius:50%;flex:none;width:10px;height:10px}.dot-income{background:var(--income);box-shadow:0 0 6px var(--income)}.dot-expense{background:var(--expense);box-shadow:0 0 6px #e11d4866}.dot-transfer{background:#0ea5e9;box-shadow:0 0 6px #0ea5e966}.day{color:var(--muted);font-size:.8rem;font-weight:700;font-family:var(--tac-font-mono);letter-spacing:.04em;text-transform:uppercase;margin:22px 0 10px}.wallet{flex-direction:column;justify-content:space-between;min-height:140px;display:flex}.wallet-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.wallet-balance{font-size:1.25rem;font-weight:800;font-family:var(--tac-font-display)}.wallet-actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:10px;display:flex}.is-archived{opacity:.65;filter:grayscale(.2)}.filters{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:14px 16px}.filters-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;display:flex}.filters-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.month-nav{align-items:center;gap:10px;font-size:.95rem;font-weight:700;display:inline-flex}.check{color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.85rem;display:inline-flex}.more{text-align:center;margin:20px 0}.form{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;gap:5px;display:flex}.field-label{color:var(--muted);font-size:.8rem;font-weight:600}.field-hint{color:var(--muted);margin-top:2px;font-size:.75rem}input,select{font:inherit;color:var(--text);background:var(--surface);box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;outline:none;width:100%;min-height:42px;padding:9px 12px;transition:all .16s}[data-theme=dark] input,[data-theme=dark] select{background:var(--surface-2);border-color:#ffffff26}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #10b98133}input[type=checkbox]{width:auto;min-height:0;accent-color:var(--accent)}input:disabled,select:disabled{background:var(--surface-2);color:var(--muted);cursor:not-allowed}.form-error{color:var(--danger);margin:0;font-size:.85rem;font-weight:500}.notice{color:#047857;background:#10b98114;border:1px solid #10b98133;border-radius:8px;margin:0;padding:10px 14px;font-size:.875rem;font-weight:500}[data-theme=dark] .notice{color:#34d399}.form-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.push-left{margin-right:auto}.btn{font:inherit;background:var(--surface);min-height:40px;color:var(--text);cursor:pointer;border:1px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .16s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 1px 2px #0000000a}[data-theme=dark] .btn{background:var(--surface-2);border-color:#ffffff1f}.btn:hover:not(:disabled){background:var(--surface-2);border-color:#94a3b8;transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-color:#059669;box-shadow:0 2px 8px #10b9814d}.btn-primary:hover:not(:disabled){color:#fff;background:linear-gradient(135deg,#059669 0%,#047857 100%);border-color:#047857;box-shadow:0 4px 14px #10b98166}.btn-danger{color:#ef4444;background:#ef44440f;border-color:#ef44444d}.btn-danger:hover:not(:disabled){color:#dc2626;background:#ef444424;border-color:#ef4444}.btn-quiet{color:var(--muted);box-shadow:none;background:0 0;border-color:#0000}.btn-quiet:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.btn-sm{border-radius:6px;min-height:32px;padding:4px 12px;font-size:.8rem}.btn-lg{width:100%;min-height:48px;font-size:1rem}.icon-btn{font:inherit;border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:18px;line-height:1;transition:all .16s;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--surface-2);border-color:#94a3b8}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.segmented{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.seg{font:inherit;min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:.85rem;font-weight:600;transition:all .16s}.seg.on{background:var(--surface);color:var(--text);box-shadow:0 1px 4px #00000014}.seg.on.seg-income{color:#059669;background:#10b9811f;border:1px solid #10b9814d}.seg.on.seg-expense{color:#e11d48;background:#f43f5e1a;border:1px solid #f43f5e40}.seg.on.seg-transfer{color:#0284c7;background:#0ea5e91a;border:1px solid #0ea5e940}.seg:disabled{opacity:.45;cursor:not-allowed}.modal{width:100%;max-width:100vw;max-height:100dvh;color:var(--text);background:0 0;border:0;padding:0}.modal::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#07130ea6}.modal-body{background:var(--surface);border:1px solid var(--border);border-radius:16px 16px 0 0;max-height:92dvh;margin:auto 0 0;padding:20px;position:fixed;bottom:0;left:0;right:0;overflow:auto;box-shadow:0 -4px 20px #0003}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.modal-head h2{font-size:1.15rem;font-weight:700}@media (width>=640px){.modal{width:480px}.modal-body{border-radius:16px;margin:0;position:static;box-shadow:0 20px 50px #00000059}}.state{text-align:center;color:var(--muted);background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);flex-direction:column;align-items:center;gap:12px;margin:16px 0;padding:36px 20px;display:flex}.state p{max-width:420px;margin:0}.state-title{color:var(--text);font-size:1.05rem;font-weight:700}.state-error{color:var(--danger);background:#ef44440a;border-color:#ef44444d}.center-note{color:var(--muted);justify-content:center;align-items:center;gap:10px;padding:36px;font-size:.9rem;display:flex}.spinner{border:2.5px solid #10b98133;border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.report{margin-bottom:32px}.breakdown h3{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:700;font-family:var(--tac-font-mono);margin:22px 0 12px}.bars{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:12px;margin:0;padding:16px;list-style:none;display:flex}.bar-head{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:.88rem;font-weight:600;display:flex}.bar{background:var(--surface-2);border:1px solid var(--border);border-radius:5px;height:9px;overflow:hidden}.bar-fill{border-radius:4px;height:100%;transition:width .4s}.bar-expense{background:linear-gradient(90deg,#f43f5e 0%,#e11d48 100%)}.bar-income{background:linear-gradient(90deg,#34d399 0%,#059669 100%)}@media (width<=640px){input,select{font-size:16px}.page-head h1{font-size:1.3rem}.page-head{margin-bottom:14px}.page-actions{flex-wrap:wrap;width:100%}.filters{padding:12px}.filters-row{flex-wrap:wrap;gap:8px}.row{gap:10px;padding:11px 12px}.row-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cards{grid-template-columns:1fr}.card{padding:14px}.form-actions{background:var(--surface);padding:12px 0 calc(4px + env(safe-area-inset-bottom));margin-bottom:-4px;position:sticky;bottom:-20px}.form-actions .btn{flex:1}.modal-body{padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.icon-btn{width:40px;height:40px}.tac-toast-container{left:12px;right:12px;bottom:calc(136px + env(safe-area-inset-bottom))}}
