.tt-wrap{background:var(--muted);width:13px;height:13px;color:var(--muted-foreground);cursor:help;vertical-align:middle;-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:4px;font-size:8.5px;font-style:normal;font-weight:700;display:inline-flex;position:relative}.tt-box{background:var(--card);border:1px solid var(--border);width:240px;color:var(--foreground);letter-spacing:0;text-transform:none;white-space:normal;z-index:9999;pointer-events:none;border-radius:7px;padding:10px 12px;font-size:11.5px;font-weight:400;line-height:1.6;display:none;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00000059}.tt-wrap:hover .tt-box{display:block}.dash-title{letter-spacing:-.02em;margin:0 0 4px;font-size:clamp(20px,3vw,28px);font-weight:800}.tools-cats{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.tools-cat-pill{background:var(--muted);color:var(--muted-foreground);border:1px solid var(--border);cursor:pointer;border-radius:99px;padding:5px 13px;font-size:12px;font-weight:600;text-decoration:none;transition:background .12s,color .12s,border-color .12s}.tools-cat-pill:hover,.tools-cat-pill.active{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary);border-color:color-mix(in srgb, var(--primary) 45%, transparent)}.tools-section{margin-bottom:32px}.tools-section-hd{letter-spacing:.12em;text-transform:uppercase;color:var(--muted-foreground);border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:8px;font-size:11px;font-weight:700}.tools-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}@media (max-width:600px){.tools-grid{grid-template-columns:1fr}}.tool-card{background:var(--card);border:1px solid var(--border);color:inherit;border-radius:14px;align-items:flex-start;gap:14px;padding:16px 18px;text-decoration:none;transition:border-color .15s,background .12s;display:flex}.tool-card:hover{border-color:color-mix(in srgb, var(--primary) 50%, transparent);background:color-mix(in srgb, var(--primary) 3%, var(--card))}.tool-card-icon{background:color-mix(in srgb, var(--pc-vio) 10%, transparent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:24px;display:flex}.tool-card-body{flex:1;min-width:0}.tool-card-hd{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:5px;display:flex}.tool-card-name{font-size:13.5px;font-weight:700}.tool-card-cat{font-size:9.5px}.tool-card-paid{text-transform:uppercase;letter-spacing:.08em;color:var(--pc-gold,#e0a400);border:1px solid color-mix(in srgb, var(--pc-gold,#e0a400) 45%, transparent);background:color-mix(in srgb, var(--pc-gold,#e0a400) 12%, transparent);border-radius:999px;padding:2px 7px;font-size:9.5px;font-weight:700}.tool-card-desc{color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.5}.tool-card-cta{color:var(--primary);white-space:nowrap;opacity:0;flex-shrink:0;align-self:center;font-size:12px;font-weight:600;transition:opacity .12s}.tool-card:hover .tool-card-cta{opacity:1}.tool-page{max-width:900px;margin:0 auto}.tool-back{color:var(--muted-foreground);align-items:center;gap:6px;margin-bottom:20px;font-size:13px;text-decoration:none;display:inline-flex}.tool-back:hover{color:var(--foreground)}.tool-hero{margin-bottom:28px}.tool-hero-icon{border-radius:12px;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.tool-hero-title{letter-spacing:-.03em;background:linear-gradient(135deg, var(--pc-vio) 0%, var(--pc-teal) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 6px;font-size:clamp(26px,4vw,36px);font-weight:800;line-height:1.1}.tool-hero-desc{color:var(--muted-foreground);margin:0;font-size:13.5px;line-height:1.5}.tool-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.tool-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tool-input[type=number]{-moz-appearance:textfield}.tool-layout{grid-template-columns:340px 1fr;align-items:start;gap:16px;display:grid}@media (max-width:750px){.tool-layout{grid-template-columns:1fr}}.tool-inputs{flex-direction:column;gap:12px;display:flex}.tool-field{flex-direction:column;gap:3px;display:flex}.tool-label{color:var(--muted-foreground);font-size:11.5px;font-weight:600}.tool-input{background:var(--field-bg);border:var(--field-border);border-radius:var(--field-radius);width:100%;padding:var(--field-pad);font-size:var(--field-size);color:var(--foreground);transition:var(--field-transition);padding:var(--field-pad-sm);font-family:inherit;font-size:var(--field-size-sm);outline:none}.tool-input:focus{border-color:var(--field-focus);box-shadow:var(--field-focus-ring)}.tool-input::placeholder{color:var(--muted-foreground);opacity:.8}.tool-input:disabled{opacity:.6;cursor:not-allowed}.tool-select{appearance:none;background-image:var(--field-chevron);background-position:right 8px center;background-repeat:no-repeat;padding-right:26px}.tool-section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted-foreground);border-bottom:1px solid var(--border);margin-top:4px;padding-bottom:6px;font-size:10.5px;font-weight:700}.tool-row{gap:10px;display:flex}.tool-row .tool-field{flex:1}.tool-toggle{flex-wrap:wrap;gap:6px;display:flex}.tool-toggle-btn{border:1px solid var(--border);color:var(--muted-foreground);cursor:pointer;background:0 0;border-radius:6px;padding:3px 10px;font-size:12px;font-weight:600;transition:all .12s}.tool-toggle-btn.active{background:color-mix(in srgb, var(--primary) 15%, transparent);color:var(--primary);border-color:color-mix(in srgb, var(--primary) 40%, transparent)}.tool-results{flex-direction:column;gap:10px;display:flex}.tool-result-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px 18px}.tool-result-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted-foreground);margin-bottom:4px;font-size:11px;font-weight:600}.tool-result-value{letter-spacing:-.02em;color:var(--foreground);font-size:26px;font-weight:800;line-height:1.1}.tool-result-unit{color:var(--muted-foreground);margin-left:4px;font-size:14px;font-weight:400}.tool-result-sub{color:var(--muted-foreground);margin-top:2px;font-size:12px}.tool-result-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.tool-result-row:last-child{border-bottom:none}.tool-result-row-label{color:var(--muted-foreground);font-size:12.5px}.tool-result-row-val{font-size:13px;font-weight:700}.tool-result-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tool-warn{background:color-mix(in srgb, var(--pc-gold) 12%, transparent);border:1px solid color-mix(in srgb, var(--pc-gold) 30%, transparent);color:var(--pc-gold);border-radius:8px;padding:10px 14px;font-size:12.5px}.tool-info{background:color-mix(in srgb, var(--pc-blue) 10%, transparent);border:1px solid color-mix(in srgb, var(--pc-blue) 25%, transparent);color:var(--muted-foreground);border-radius:8px;padding:10px 14px;font-size:12.5px;line-height:1.5}.tool-table{border-collapse:collapse;width:100%;font-size:12.5px}.tool-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--muted-foreground);border-bottom:1px solid var(--border);padding:8px 12px;font-size:10.5px;font-weight:700}.tool-table td{border-bottom:1px solid var(--border);padding:9px 12px}.tool-table tr:last-child td{border-bottom:none}.tool-table tr:hover td{background:color-mix(in srgb, var(--primary) 4%, transparent)}.tool-accent{color:var(--pc-vio)}.tool-accent-teal{color:var(--pc-teal)}.tool-accent-gold{color:var(--pc-gold)}.tp-canvas-wrap{border:1px solid var(--border);background:#000;border-radius:4px;width:100%;overflow:hidden}.tp-canvas-wrap canvas{width:100%;height:100%;display:block}.tp-controls{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.sync-matrix{border:1px solid var(--border);border-radius:12px;overflow:hidden}.sync-matrix th,.sync-matrix td{text-align:center}.sync-matrix th:first-child,.sync-matrix td:first-child{text-align:left}.sync-compat{border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;display:inline-flex}.sync-compat-yes{background:color-mix(in srgb, var(--pc-teal) 20%, transparent);color:var(--pc-teal)}.sync-compat-no{color:#ef4444;background:#ef444426}.sync-compat-partial{background:color-mix(in srgb, var(--pc-gold) 15%, transparent);color:var(--pc-gold)}.rack-item{border-bottom:1px solid var(--border);grid-template-columns:1fr 80px 60px 32px;align-items:center;gap:8px;padding:6px 0;display:grid}.rack-item:last-child{border-bottom:none}.rack-item-add{gap:8px;padding-top:10px;display:flex}.tool-link-row{border-bottom:1px solid var(--border);grid-template-columns:160px 1fr 100px 60px;align-items:center;gap:8px;padding:6px 0;display:grid}.tool-link-row:last-child{border-bottom:none}.tool-link-bar-wrap{background:color-mix(in srgb, var(--primary) 10%, transparent);border-radius:4px;height:6px;overflow:hidden}.tool-link-bar{border-radius:4px;height:100%;transition:width .2s}.tool-link-name{color:var(--muted-foreground);font-size:12px}.tool-link-util{text-align:right;font-size:11.5px;font-weight:600}.tool-status-ok{color:var(--pc-teal);text-transform:uppercase;font-size:11px;font-weight:700}.tool-status-warn{color:var(--pc-gold);text-transform:uppercase;font-size:11px;font-weight:700}.tool-status-danger{color:#ef4444;text-transform:uppercase;font-size:11px;font-weight:700}.tool-formula{color:var(--muted-foreground);background:color-mix(in srgb, var(--primary) 5%, transparent);border-radius:8px;padding:10px 14px;font-family:monospace;font-size:11.5px;line-height:1.6}.tool-formula span{color:var(--foreground)}.tool-svg-wrap{border:1px solid var(--border);background:#0a0e14;border-radius:12px;overflow:hidden}.tool-svg-wrap svg{width:100%;height:auto;display:block}.proj-stack{flex-direction:column;gap:10px;display:flex}.proj-row-card{background:var(--card);border:1px solid var(--border);border-radius:12px;grid-template-columns:120px 1fr;align-items:center;gap:16px;padding:12px 16px;display:grid}.proj-row-label{text-transform:uppercase;letter-spacing:.11em;color:var(--muted-foreground);font-size:10px;font-weight:700;line-height:1.4}.proj-row-controls{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.proj-ifield{flex-direction:column;gap:3px;display:flex}.proj-ilabel{color:var(--muted-foreground);white-space:nowrap;font-size:10px;font-weight:600}.proj-ifield .tool-input{width:auto}.proj-row-sep{background:var(--border);flex-shrink:0;align-self:flex-end;width:1px;height:28px;margin-bottom:6px}.proj-stat-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.xfer-row{border-bottom:1px solid var(--border);grid-template-columns:160px 1fr 80px 110px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;display:grid}.xfer-row:last-child{border-bottom:none}.xfer-row.header{text-transform:uppercase;letter-spacing:.08em;color:var(--muted-foreground);padding:8px 12px;font-size:10.5px;font-weight:700}.xfer-bar-wrap{background:color-mix(in srgb, var(--primary) 10%, transparent);border-radius:3px;height:5px;overflow:hidden}.xfer-bar{background:var(--pc-teal);border-radius:3px;height:100%}.xfer-time{text-align:right;font-weight:700}.xfer-speed{color:var(--muted-foreground);text-align:right;font-size:11px}.led-compat-box{border:1px solid;border-radius:8px;padding:12px 14px;font-size:12.5px;line-height:1.6}.led-compat-safe{background:color-mix(in srgb, var(--pc-teal) 10%, transparent);border-color:color-mix(in srgb, var(--pc-teal) 30%, transparent);color:var(--muted-foreground)}.led-compat-warn{background:color-mix(in srgb, var(--pc-gold) 12%, transparent);border-color:color-mix(in srgb, var(--pc-gold) 30%, transparent);color:var(--muted-foreground)}.led-compat-danger{color:var(--muted-foreground);background:#ef44441a;border-color:#ef444440}.ptp-gm-info{background:color-mix(in srgb, var(--primary) 6%, transparent);border:1px solid var(--border);border-radius:8px;padding:12px 14px;font-size:12.5px;line-height:1.6}.ptp-lab-badge{color:var(--pc-gold);margin-left:8px;font-size:11px;font-weight:700}.ptp-prod-badge{color:var(--pc-teal);margin-left:8px;font-size:11px;font-weight:700}.pc-blocks .blocklyFlyout[style*="display: none"]+.blocklyFlyoutScrollbar{display:none}.tool-card{isolation:isolate;position:relative;overflow:hidden}.tool-card>:not(.pcard-hero):not(.ta){z-index:1;position:relative}.tl-hero{isolation:isolate;border:1px solid var(--border);background:radial-gradient(70% 140% at 0% 0%, color-mix(in srgb, var(--pc-vio) 8%, transparent), transparent 60%), var(--card);border-radius:16px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;padding:12px 16px;display:flex;position:relative;overflow:hidden}.tl-hero-glow{z-index:-1;border-radius:50%;width:260px;height:260px;display:none;position:absolute;inset:-40% -10% auto auto}@keyframes tl-float{to{transform:translate(-60px,40px)}}.tl-hero-icon{width:38px;height:38px;color:var(--pc-vio);background:color-mix(in srgb, var(--pc-vio) 16%, transparent);border:1px solid color-mix(in srgb, var(--pc-vio) 35%, transparent);border-radius:11px;justify-content:center;align-items:center;display:flex}.tl-hero-text{flex:1;min-width:200px}.tl-hero-title{letter-spacing:-.03em;background:linear-gradient(90deg, var(--foreground), color-mix(in srgb, var(--pc-teal) 70%, var(--foreground)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(19px,2.2vw,24px);font-weight:900;line-height:1.05}.tl-hero-sub{color:var(--muted-foreground);margin:2px 0 0;font-size:12.5px}.tl-hero-count{background:var(--muted);border:1px solid var(--border);color:var(--muted-foreground);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.tl-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px;display:flex}.tl-search{border:1px solid var(--border);background:color-mix(in srgb, var(--card) 70%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;flex:220px;align-items:center;max-width:340px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.tl-search svg{color:var(--muted-foreground);pointer-events:none;position:absolute;left:13px}.tl-search input{width:100%;color:var(--foreground);background:0 0;border:0;outline:none;padding:9px 14px 9px 36px;font-size:13px}.tl-search:focus-within{border-color:color-mix(in srgb, var(--pc-vio) 70%, transparent);box-shadow:0 0 0 4px color-mix(in srgb, var(--pc-vio) 18%, transparent)}.tl-chips{flex-wrap:wrap;gap:8px;display:flex}.tl-chip{--cc:var(--pc-vio);cursor:pointer;color:var(--foreground);background:var(--card);border:1px solid var(--border);border-radius:999px;align-items:center;gap:7px;padding:7px 13px;font-size:12.5px;font-weight:600;transition:transform .15s,box-shadow .15s,background .15s,border-color .15s;display:inline-flex}.tl-chip:hover{border-color:color-mix(in srgb, var(--cc) 50%, var(--border))}.tl-chip:active{transform:translateY(0)scale(.97)}.tl-chip.on{color:var(--cc);border-color:color-mix(in srgb, var(--cc) 50%, transparent);background:color-mix(in srgb, var(--cc) 14%, var(--card))}.tl-chip-dot{background:var(--cc);border-radius:50%;width:8px;height:8px}.tl-chip-n{text-align:center;background:color-mix(in srgb, var(--foreground) 10%, transparent);border-radius:999px;min-width:18px;padding:0 6px;font-size:10.5px;line-height:18px}.tl-chip.on .tl-chip-n{background:color-mix(in srgb, var(--cc) 18%, transparent)}.tc-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-auto-rows:262px;gap:16px;display:grid}.tc{--tc:var(--pc-vio);isolation:isolate;color:inherit;border:1px solid var(--border);background:var(--card);border-radius:20px;flex-direction:column;text-decoration:none;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,border-color .22s;animation:.45s cubic-bezier(.2,.8,.2,1) backwards tl-in;display:flex;position:relative;overflow:hidden}.tc:nth-child(2){animation-delay:40ms}.tc:nth-child(3){animation-delay:80ms}.tc:nth-child(4){animation-delay:.12s}.tc:nth-child(5){animation-delay:.16s}.tc:nth-child(6){animation-delay:.2s}.tc:nth-child(n+7){animation-delay:.24s}@keyframes tl-in{0%{opacity:0;transform:translateY(12px)}}.tc:hover{border-color:color-mix(in srgb, var(--tc) 45%, var(--border));box-shadow:var(--shadow-lift-hi);transform:translateY(-3px)}.tc:active{transform:translateY(-2px)scale(.995)}.tc:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--tc) 65%, transparent);outline:none}.tc-media{background:radial-gradient(70% 110% at 50% 100%, color-mix(in srgb, var(--tc) 12%, transparent), transparent 70%), var(--card);border-bottom:1px solid var(--border);flex-shrink:0;height:112px;position:relative;overflow:hidden}.tc-media:before{content:"";background-image:radial-gradient(color-mix(in srgb, var(--tc) 30%, transparent) 1px, transparent 1.2px);opacity:.45;background-size:14px 14px;position:absolute;inset:0}.tc-media .ta-svg,.tc-media .pcard-hero{transition:transform .5s cubic-bezier(.2,.8,.2,1)}.tc:hover .tc-media .ta-svg{transform:scale(1.05)}.tc-paid{z-index:2;letter-spacing:.06em;text-transform:uppercase;color:var(--pc-on-accent);background:var(--pc-gold);border-radius:999px;padding:3px 9px;font-size:10px;font-weight:800;position:absolute;top:10px;right:10px}.tc:after{content:"";z-index:3;pointer-events:none;background:linear-gradient(105deg, transparent 35%, color-mix(in srgb, var(--foreground) 8%, transparent) 50%, transparent 65%);transition:transform .75s;position:absolute;inset:0;transform:translate(-120%)}.tc:hover:after{transform:translate(120%)}.tc-body{flex-direction:column;flex:1;min-height:0;padding:24px 16px 14px;display:flex;position:relative}.tc-icon{width:38px;height:38px;color:var(--tc);background:color-mix(in srgb, var(--tc) 16%, var(--card));border:1px solid color-mix(in srgb, var(--tc) 35%, transparent);box-shadow:0 0 0 4px var(--card);border-radius:11px;justify-content:center;align-items:center;transition:transform .25s cubic-bezier(.3,1.6,.5,1);display:flex;position:absolute;top:-19px;left:16px}.tc:hover .tc-icon{transform:rotate(-8deg)scale(1.08)}.tc-hd{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:4px;display:flex}.tc-name{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;font-weight:800;line-height:1.2;overflow:hidden}.tc-cat{color:color-mix(in srgb, var(--tc) 70%, var(--foreground));background:color-mix(in srgb, var(--tc) 14%, transparent);border:1px solid color-mix(in srgb, var(--tc) 32%, transparent);border-radius:999px;flex-shrink:0;padding:2px 9px;font-size:10.5px;font-weight:700}.tc-desc{color:var(--muted-foreground);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 10px;font-size:12.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.tc-cta{color:var(--foreground);border:1px solid var(--border);background:0 0;border-radius:10px;justify-content:center;align-self:stretch;align-items:center;gap:7px;margin-top:auto;padding:7px 14px;font-size:13px;font-weight:600;transition:border-color .2s,color .2s,background .2s;display:inline-flex}.tc-cta svg{transition:transform .2s}.tc:hover .tc-cta{color:var(--tc);border-color:color-mix(in srgb, var(--tc) 50%, transparent);background:color-mix(in srgb, var(--tc) 10%, transparent)}.tc:hover .tc-cta svg{transform:translate(5px)}@media (max-width:600px){.tc-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.tl-hero-glow,.tc{animation:none}.tc,.tl-chip,.tc-icon,.tc-cta svg,.tc-media .ta-svg{transition:none}.tc:hover,.tl-chip:hover,.tc:hover .tc-media .ta-svg{transform:none}.tc:after{display:none}}.viz-frame{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;min-width:0;margin-bottom:10px;padding:12px 14px;display:flex}.viz-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.viz-title{text-transform:uppercase;letter-spacing:.11em;color:var(--muted-foreground);font-size:10px;font-weight:700}.viz-sub{color:var(--foreground);font-variant-numeric:tabular-nums;margin-top:2px;font-size:12px}.viz-svg{background:color-mix(in srgb, var(--foreground) 3%, transparent);border-radius:8px;width:100%;height:auto;display:block}.viz-svg text{font-family:ui-monospace,monospace}.viz-cap{letter-spacing:.14em;fill:var(--muted-foreground);font-size:10px}.viz-name{fill:var(--foreground);font-size:13px;font-weight:700}.viz-small{fill:var(--muted-foreground);font-size:10.5px}.viz-dimtext{fill:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:11.5px}.viz-strong{fill:var(--foreground);font-weight:600}.viz-dim{stroke:var(--muted-foreground);stroke-width:1px;fill:none}.viz-dashed{stroke-dasharray:4 3}.viz-floor{stroke:var(--border);stroke-width:1.5px}.viz-spill{stroke:var(--pc-live);stroke-width:3px;stroke-dasharray:3 3}.viz-empty{text-align:center;color:var(--muted-foreground);padding:40px 16px;font-size:12px}.viz-3d{position:relative}.viz-3d-host{background:radial-gradient(ellipse at 50% 30%, color-mix(in srgb, var(--pc-blue) 10%, transparent), transparent 70%), color-mix(in srgb, var(--foreground) 3%, transparent);cursor:grab;touch-action:none;border-radius:8px;width:100%;min-height:280px;overflow:hidden}.viz-3d-host:active{cursor:grabbing}.viz-3d-host canvas{display:block}.viz-reset{padding:3px 9px;font-size:11px;position:absolute;top:8px;right:8px}.viz-hint{color:var(--muted-foreground);margin-top:6px;font-size:10.5px}.led-wall-card{border:1px solid var(--border);background:color-mix(in srgb, var(--pc-teal) 4%, transparent);border-radius:10px;margin-bottom:8px;padding:8px 10px}.led-wall-head{align-items:center;gap:6px;margin-bottom:6px;display:flex}.led-wall-name{flex:1;font-weight:600}.led-wall-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.led-wall-num{flex-direction:column;gap:2px;min-width:0;display:flex}.led-wall-num>span:first-child{color:var(--muted-foreground);white-space:nowrap;font-size:10px;font-weight:600}.led-wall-num .tool-input{width:100%;min-width:0;padding-left:6px;padding-right:4px}.led-wall-num .dash-btn-ghost{padding:2px 6px}.led-wall-foot{color:var(--muted-foreground);font-variant-numeric:tabular-nums;margin-top:6px;font-size:11px}.cat-pick{width:100%;position:relative}.cat-pick .tool-input{width:100%}.cat-pick-list{z-index:30;background:var(--card);border:1px solid var(--border);max-height:320px;box-shadow:0 12px 32px color-mix(in srgb, var(--foreground) 18%, transparent);border-radius:10px;min-width:280px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.cat-pick-item{text-align:left;cursor:pointer;width:100%;color:var(--foreground);background:0 0;border:none;border-radius:6px;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 8px;display:flex}.cat-pick-item:hover,.cat-pick-item:focus-visible{background:color-mix(in srgb, var(--primary) 10%, transparent)}.cat-pick-name{font-size:12.5px}.cat-pick-sum{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:11px}.cat-pick-note{color:var(--muted-foreground);padding:6px 8px;font-size:11px}.led-wall-card .cat-pick{margin-bottom:6px}.cat-pick-mm{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:6px;margin-bottom:6px;display:grid}.cat-pick-mm .tool-input{width:100%;min-width:0}.led-wall-place{color:var(--muted-foreground);align-items:center;gap:8px;margin:8px 0 6px;font-size:10px;font-weight:600;display:flex}.led-wall-place .tool-input{flex:1;min-width:0}.led-wall-snap{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.led-wall-snap .dash-btn-ghost{padding:2px 8px;font-size:11px}.spk-face{aspect-ratio:16/9;border:3px solid;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:18px 16px 22px;transition:border-color .2s;display:flex;position:relative;overflow:hidden}.spk-face:fullscreen{border-width:8px;border-radius:0}.spk-lights{gap:12px;display:flex}.spk-light{border-radius:50%;width:18px;height:18px;transition:opacity .2s}.spk-digits{font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:clamp(48px,12vw,120px);font-weight:800;line-height:1}.spk-msg{color:var(--foreground);text-align:center;max-width:90%;font-size:clamp(16px,3vw,28px);font-weight:700}.spk-bar{background:var(--border);height:6px;position:absolute;bottom:0;left:0;right:0}.spk-bar>div{height:100%;transition:width .1s linear}.spk-clock{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600;position:absolute;top:10px;right:14px}.spk-face:fullscreen .spk-digits,.spk-face-big .spk-digits{font-size:min(26vw,48vh)}.spk-face:fullscreen .spk-msg,.spk-face-big .spk-msg{font-size:min(6vw,9vh)}.spk-face:fullscreen .spk-light,.spk-face-big .spk-light{width:4vh;height:4vh}.spk-face:fullscreen .spk-clock,.spk-face-big .spk-clock{font-size:4vh}.spk-display{z-index:2147483000;background:var(--background);position:fixed;inset:0}.spk-display .spk-face{aspect-ratio:auto;border-width:8px;border-radius:0;width:100%;height:100%}.spk-controls{flex-wrap:wrap;gap:8px;display:flex}.spk-btn{border:1px solid var(--border);background:var(--card);color:var(--foreground);cursor:pointer;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600}.spk-btn:hover{border-color:var(--muted-foreground)}.spk-btn-primary{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary);min-width:96px}.spk-face:not(.spk-face-big):not(:fullscreen){border-width:2px;gap:6px;max-width:380px;padding:12px 12px 16px}.spk-face:not(.spk-face-big):not(:fullscreen) .spk-digits{font-size:56px}.spk-face:not(.spk-face-big):not(:fullscreen) .spk-msg{font-size:15px}.spk-face:not(.spk-face-big):not(:fullscreen) .spk-light{width:12px;height:12px}.spk-face:not(.spk-face-big):not(:fullscreen) .spk-bar{height:4px}
