:root,*{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root{--bg:#edeef0;--bg-2:#dfe1e5;--panel:#fafbfc;--ink:#1f2328;--ink-2:#4a4f57;--ink-3:#52596a;--line:#cfd3d9;--line-2:#b5bac2;--accent:oklch(70% .18 45);--accent-soft:oklch(94% .04 45);--red:oklch(55% .2 25);--red-soft:oklch(96% .04 25);--amp-6:oklch(62% .19 145);--amp-10:oklch(52% .22 22);--amp-16:oklch(62% .03 260);--amp-20:oklch(55% .18 255);--amp-25:oklch(78% .17 92);--amp-32:oklch(58% .2 288);--amp-40:oklch(68% .19 52);--amp-50:oklch(100% 0 0);--amp-63:oklch(55% .14 48);--amp-rcd:oklch(65% .15 190);--shadow-sm:0 1px 0 #14191e0a, 0 1px 2px #14191e0f;--shadow-md:0 2px 4px #14191e0f, 0 4px 12px #14191e14;--shadow-lg:0 8px 24px #14191e24, 0 2px 6px #14191e1a;--radius:.375rem;--radius-lg:.625rem}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:Inter,system-ui,sans-serif;font-size:.875rem;line-height:1.45}.mono{font-feature-settings:"ss01";font-family:JetBrains Mono,ui-monospace,monospace}.app{flex-direction:column;min-height:100vh;display:flex}.app-loading{background:var(--bg);position:fixed;inset:0}@keyframes skeleton-shimmer{0%{background-position:200%}to{background-position:-200%}}.skeleton{background:linear-gradient(90deg, var(--line) 25%, var(--bg-2) 50%, var(--line) 75%);background-size:200% 100%;border-radius:3px;animation:1.4s infinite skeleton-shimmer;display:inline-block}.skeleton--text{vertical-align:middle;height:.65em}.topbar{background:var(--ink);color:var(--bg);border-bottom:1px solid #000;justify-content:space-between;align-items:center;padding:.875rem 1.5rem;display:flex}.brand{color:inherit;cursor:pointer;align-items:center;gap:.75rem;text-decoration:none;display:flex}.brand:hover .brand-mark{opacity:.85}.brand-mark{flex-shrink:0;display:block}.brand-name{letter-spacing:.04em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:600}.brand-sub{color:#f5f2ecb8;letter-spacing:.08em;text-transform:uppercase;border-left:1px solid #f5f2ec33;padding-left:.75rem;font-family:JetBrains Mono,monospace;font-size:.6875rem}.topbar-right{letter-spacing:.06em;text-transform:uppercase;color:#f5f2ecb3;align-items:center;gap:1rem;font-family:JetBrains Mono,monospace;font-size:.6875rem;display:flex}.status-dot{background:oklch(72% .14 145);border-radius:50%;width:.5rem;height:.5rem;margin-right:.375rem;animation:2s ease-in-out infinite pulse;display:inline-block;box-shadow:0 0 0 3px #78c88c26}@keyframes pulse{50%{opacity:.55}}.configbar{background:var(--panel);border-bottom:1px solid var(--line);align-items:stretch;min-height:4.125rem;display:flex}.configbar-group{border-left:1px solid var(--line);flex-shrink:0;align-items:center;gap:1.25rem;padding:.875rem 1.5rem;display:flex}.configbar-group--identity{border-left:none;flex:0 340px;min-width:0}.configbar-group--actions{margin-left:auto}@media (width<=992px){.configbar{flex-wrap:wrap}.configbar-group--identity{flex:100%}.configbar-group--switches{border-left:none;border-top:1px solid var(--line);flex:100%}.configbar-group--actions{border-left:none;border-top:1px solid var(--line);flex-wrap:wrap;flex:100%;margin-left:0}}.config-group{align-items:center;gap:.625rem;display:flex}.config-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:.6875rem}.stepper{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--bg);align-self:flex-start;align-items:stretch;height:2rem;display:inline-flex;overflow:hidden}.stepper button{cursor:pointer;width:1.75rem;color:var(--ink-2);background:0 0;border:0;font-family:JetBrains Mono,monospace;font-size:.875rem;transition:background .12s}.stepper button:hover:not(:disabled){background:var(--bg-2);color:var(--ink)}.stepper button:disabled{color:var(--line-2);cursor:not-allowed}.stepper-value{border-left:1px solid var(--line);border-right:1px solid var(--line);background:var(--panel);place-items:center;min-width:2.25rem;font-family:JetBrains Mono,monospace;font-size:.8125rem;font-weight:600;display:grid}.config-stat{flex-direction:column;gap:.125rem;display:flex}.config-stat-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:.625rem}.config-stat-value{color:var(--ink);font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:600}.btn{border-radius:var(--radius);border:1px solid var(--line-2);background:var(--bg);height:2rem;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;appearance:none;outline:none;align-items:center;gap:.5rem;padding:0 .875rem;font-family:Inter,sans-serif;font-size:.8125rem;font-weight:500;transition:all .12s;display:inline-flex}.btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.btn:hover{background:var(--bg-2);border-color:var(--ink-3)}.btn:active{background:var(--line-2);border-color:var(--ink-3)}.btn-primary{background:var(--accent);color:var(--ink);border-color:var(--accent)}.btn-primary:hover{background:color-mix(in oklch, var(--accent) 85%, black);border-color:color-mix(in oklch, var(--accent) 85%, black)}.btn.btn-primary:active{background:var(--accent);border-color:var(--accent);opacity:.8}.btn-primary:disabled{background:var(--accent);border-color:var(--accent);color:var(--ink);opacity:.5;cursor:not-allowed}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--bg-2)}.btn-ghost:active{background:var(--line-2)}.btn-icon{justify-content:center;width:2rem;padding:0}.btn-danger{background:var(--red-soft);color:var(--red);border-color:oklch(85% .06 25)}.btn-danger:hover{background:var(--red);color:#fff;border-color:var(--red)}.btn-danger:active{background:var(--red);color:#fff;border-color:var(--red);opacity:.8}.notice{border-radius:var(--radius-lg);background:var(--accent-soft);border:1px solid color-mix(in oklch, var(--accent) 35%, transparent);color:color-mix(in oklch, var(--accent) 70%, black);padding:.75rem 1rem;font-size:.8125rem;line-height:1.5}.notice--mb{margin-bottom:1rem}.sample-banner{background:var(--accent-soft);border-bottom:1px solid color-mix(in oklch, var(--accent) 35%, transparent);color:color-mix(in oklch, var(--accent) 70%, black);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.625rem 1.5rem;font-size:.8125rem;display:flex}.sample-banner-text{flex:100%}.sample-banner-actions{flex:1;gap:.5rem;display:flex}@media (width>=600px){.sample-banner-text{flex:auto}.sample-banner-actions{flex:none}}.sample-banner-close{border-radius:var(--radius-sm);width:1.75rem;height:1.75rem;color:color-mix(in oklch, var(--accent) 70%, black);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.sample-banner-close:hover{background:color-mix(in oklch, var(--accent) 15%, transparent)}.sample-banner-close svg{width:14px;height:14px}.danger-zone{border-radius:var(--radius-lg);background:var(--panel);border:1px solid oklch(85% .06 25)}.danger-zone-header{color:var(--red);letter-spacing:.04em;text-transform:uppercase;padding:.875rem 1rem 0;font-size:.8125rem;font-weight:600}.danger-zone-body{justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 1rem 1rem;display:flex}.danger-zone-body p{color:var(--ink-2);margin:0;font-size:.8125rem;line-height:1.5}.main{flex-direction:column;flex:1;gap:1.25rem;width:100%;max-width:92.5rem;margin:0 auto;padding:1.5rem;display:flex}.sidebar{grid-template-columns:1.2fr 1fr 1fr;align-items:start;gap:1rem;display:grid}@media (width<=980px){.sidebar{grid-template-columns:1fr}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.panel-infostrip{background:var(--bg-2);border-bottom:1px solid var(--line);color:var(--ink-2);letter-spacing:.04em;align-items:center;gap:.5rem;padding:.375rem 1.5rem;font-family:JetBrains Mono,monospace;font-size:.6875rem;display:flex}.infostrip-dot{color:var(--ink-3);-webkit-user-select:none;user-select:none}.panel-header{border-bottom:1px solid var(--line);background:var(--bg);justify-content:space-between;align-items:center;padding:.875rem 1.125rem;display:flex}.panel-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:.625rem}.panel-header-identity{align-items:baseline;gap:.75rem;display:flex}.panel-header-name{letter-spacing:.06em;text-transform:uppercase;color:var(--ink);font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600}.panel-header-location{letter-spacing:.06em;color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:.625rem}.panel-title{letter-spacing:.1em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600}.panel-location{letter-spacing:.05em;color:var(--ink-3);margin-top:.0625rem;font-family:JetBrains Mono,monospace;font-size:.5625rem}.panel-meta{color:var(--ink-3);letter-spacing:.04em;gap:.875rem;font-family:JetBrains Mono,monospace;font-size:.6875rem;display:flex}.breaker{background:var(--ink);color:var(--bg);border-radius:var(--radius);grid-template-columns:auto 1fr auto;align-items:center;gap:1.25rem;margin:1.125rem;padding:1.125rem 1.375rem;display:grid;position:relative;overflow:hidden}.breaker:before{content:"";pointer-events:none;background:repeating-linear-gradient(-45deg,#0000 0 8px,#ffffff05 8px 9px);position:absolute;inset:0}.breaker-switch{cursor:pointer;background:#2a2723;border:1px solid #000;border-radius:.25rem;flex-shrink:0;width:2.75rem;height:4rem;transition:background .2s;position:relative}.breaker-switch:before{content:"";background:linear-gradient(#c9c2b1 0%,#a8a08c 100%);border:1px solid #0006;border-radius:.125rem;height:1.625rem;transition:top .25s cubic-bezier(.6,1.5,.4,1);position:absolute;left:.25rem;right:.25rem}.breaker-switch.on:before{top:.25rem}.breaker-switch.off:before{top:2.125rem}.breaker-switch:after{content:"ON";text-align:center;letter-spacing:.12em;color:#fff6;font-family:JetBrains Mono,monospace;font-size:.5625rem;position:absolute;top:.375rem;left:0;right:0}.breaker-switch.on:after{content:"OFF";top:auto;bottom:.375rem}.breaker-info{z-index:1}.breaker-label{letter-spacing:.12em;text-transform:uppercase;color:#f5f2ec8c;margin-bottom:.25rem;font-family:JetBrains Mono,monospace;font-size:.625rem}.breaker-name{letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:1.125rem;font-weight:600}.breaker-sub{color:#f5f2ecb3;margin-top:.125rem;font-size:.75rem}.breaker-amp{z-index:1;text-align:right;flex-direction:column;align-items:flex-end;gap:.25rem;display:flex}.breaker-amp-value{color:var(--accent);letter-spacing:-.02em;font-family:JetBrains Mono,monospace;font-size:2rem;font-weight:700;line-height:1}.breaker-amp-unit{letter-spacing:.1em;color:#f5f2ec80;font-family:JetBrains Mono,monospace;font-size:.6875rem}.fuse-rows{flex-direction:column;gap:.625rem;padding:1.125rem;display:flex}.fuse-row{grid-template-columns:2rem 1fr;align-items:stretch;gap:.625rem;display:grid}.fuse-row.standard{grid-template-columns:2rem 1fr 2.25rem 1fr}.row-label{color:var(--ink-3);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);letter-spacing:.04em;place-items:center;font-family:JetBrains Mono,monospace;font-size:.6875rem;font-weight:600;display:grid}.bus-bar{background:linear-gradient(#2a2723 0%,#1a1916 50%,#2a2723 100%);border:1px solid #000;border-radius:.1875rem;flex-direction:column;justify-content:center;align-items:center;gap:.375rem;display:flex;position:relative;box-shadow:inset 0 1px #ffffff0f,inset 0 -1px #0006}.bus-bar:before{content:"";background:linear-gradient(#6b6558 0%,#3a3631 100%);border-radius:1px;width:2px;margin-left:-1px;position:absolute;top:.25rem;bottom:.25rem;left:50%;box-shadow:0 0 0 1px #0006}.bus-bar span{z-index:1;background:radial-gradient(circle at 30% 30%,#d9d3c5,#6b6558 70%,#2a2723);border-radius:50%;width:.5rem;height:.5rem;position:relative;box-shadow:0 0 0 1px #00000080,inset 0 0 1px #ffffff4d}.row-slots{grid-auto-columns:1fr;grid-auto-flow:column;gap:.5rem;display:grid}.slot{border:1px dashed var(--line-2);border-radius:var(--radius);background:var(--bg);min-height:6rem;transition:all .12s;position:relative}.slot.empty{padding:0}.slot.empty .slot-pos{color:var(--ink-3);letter-spacing:.08em;font-family:JetBrains Mono,monospace;font-size:.625rem}.slot-empty-btn{cursor:pointer;width:100%;height:100%;color:var(--ink-3);border-radius:var(--radius);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:.375rem;font-family:inherit;transition:all .12s;display:flex}.slot-empty-btn .slot-pos{position:absolute;top:.375rem;left:.5rem}.slot-add-icon{border:1px dashed var(--line-2);width:1.75rem;height:1.75rem;color:var(--ink-3);background:0 0;border-radius:50%;place-items:center;transition:all .12s;display:grid}.slot-add-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);opacity:0;font-family:JetBrains Mono,monospace;font-size:.5625rem;transition:opacity .12s}.slot-empty-btn:hover{background:var(--accent-soft)}.slot-empty-btn:hover .slot-add-icon{border-color:var(--accent);background:var(--accent);color:var(--ink);border-style:solid}.slot-empty-btn:hover .slot-add-label{opacity:1;color:var(--accent)}.slot-empty-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.slot.drop-target{border-color:var(--accent);background:var(--accent-soft);border-style:solid}.slot.drop-target.swap-target:after{content:"SWAP";letter-spacing:.1em;color:var(--accent);font-family:JetBrains Mono,monospace;font-size:.5625rem;font-weight:600;position:absolute;top:.375rem;right:.375rem}.fuse{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);cursor:grab;box-shadow:var(--shadow-sm);-webkit-user-select:none;user-select:none;grid-template-rows:auto 1fr auto;gap:.25rem;padding:.5rem .5rem .5rem .75rem;transition:transform .12s,box-shadow .12s,border-color .12s;display:grid;position:absolute;inset:0;overflow:hidden}.fuse:before{content:"";background:var(--fuse-color,var(--ink-3));border-radius:var(--radius) 0 0 var(--radius);width:.25rem;position:absolute;top:0;bottom:0;left:0}.fuse:hover{border-color:var(--ink-3);box-shadow:var(--shadow-md);transform:translateY(-1px)}.fuse.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent), var(--shadow-md);background:var(--accent-soft)}.fuse.selected:before{width:.3125rem}.fuse.dragging{opacity:.4;cursor:grabbing}.fuse-head{justify-content:space-between;align-items:center;gap:.25rem;display:flex}.fuse-pos{color:var(--ink-3);letter-spacing:.04em;font-family:JetBrains Mono,monospace;font-size:.625rem;font-weight:500}.fuse-remove{cursor:pointer;width:1.125rem;height:1.125rem;color:var(--ink-3);opacity:0;background:0 0;border:0;border-radius:.1875rem;place-items:center;transition:all .12s;display:grid}.fuse:hover .fuse-remove{opacity:1}.fuse-remove:hover{background:var(--bg-2);color:var(--amp-63)}.fuse-label{color:var(--ink);text-wrap:pretty;-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;font-size:.75rem;font-weight:500;line-height:1.25;display:-webkit-box;overflow:hidden}.fuse-foot{justify-content:space-between;align-items:center;gap:.25rem;display:flex}.amp-badge{background:var(--badge-bg,var(--bg-2));color:var(--badge-fg,var(--ink));letter-spacing:.02em;border:1px solid var(--badge-border,transparent);border-radius:.1875rem;align-items:baseline;gap:.125rem;padding:.125rem .375rem;font-family:JetBrains Mono,monospace;font-size:.6875rem;font-weight:700;display:inline-flex}.amp-badge .unit{font-size:.5625rem;font-weight:500}.fuse-state{letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.5625rem}.slot.empty.drop-target{background:var(--accent-soft)}.slot.empty.drop-target .slot-pos{color:var(--accent);font-weight:700}.slot.slot-focused{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px color-mix(in oklch, var(--accent) 25%, transparent);border-style:solid}.slot.slot-focused .slot-pos{color:var(--accent);font-weight:700}.slot.slot-focused .slot-add-icon{border-color:var(--accent);background:var(--accent);color:var(--ink);border-style:solid}.slot.slot-focused .slot-add-label{opacity:1;color:var(--accent)}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card-header{border-bottom:1px solid var(--line);background:var(--bg);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.card-title{letter-spacing:.1em;text-transform:uppercase;margin-bottom:0;font-family:JetBrains Mono,monospace;font-size:.6875rem;font-weight:600}.card-body{padding:1rem}.field{flex-direction:column;gap:.375rem;margin-bottom:.75rem;display:flex}.field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:.625rem}.field-required{color:var(--red);font-style:normal}.field-hint{color:var(--ink-3);font-size:.6875rem}.input,.select{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--bg);height:2.25rem;color:var(--ink);outline:none;width:100%;padding:0 .625rem;font-family:Inter,sans-serif;font-size:.8125rem;transition:border-color .12s,box-shadow .12s}.input:focus,.select:focus{border-color:var(--ink);box-shadow:0 0 0 3px #14191e14}.input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--ink);border-color:var(--line-2);transition:background-color 5000s ease-in-out}.input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--ink);border-color:var(--line-2);transition:background-color 5000s ease-in-out}.input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--ink);border-color:var(--line-2);transition:background-color 5000s ease-in-out}.amp-grid{grid-template-columns:repeat(4,1fr);gap:.375rem;display:grid}.amp-pill{border:1px solid var(--line-2);background:var(--bg);border-radius:var(--radius);cursor:pointer;height:2.25rem;color:var(--ink-2);place-items:center;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600;transition:all .12s;display:grid;position:relative}.amp-pill:before{content:"";background:var(--pill-color);border-radius:50%;width:.375rem;height:.375rem;margin-top:-.1875rem;position:absolute;top:50%;left:.375rem}.amp-pill:hover{border-color:var(--ink-3)}.amp-pill.active{border-color:var(--ink);background:var(--ink);color:var(--bg)}.btn-block{justify-content:center;width:100%;height:2.375rem}.form-actions{gap:.5rem;display:flex}.form-actions .btn{flex:1;justify-content:center;height:2.375rem}.card-edit{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in oklch, var(--accent) 25%, transparent), var(--shadow-md)}.card-edit .card-header{background:var(--accent-soft);border-bottom-color:color-mix(in oklch, var(--accent) 30%, var(--line))}.card-focused{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in oklch, var(--accent) 25%, transparent), var(--shadow-md)}.card-focused .card-header{background:var(--accent-soft);border-bottom-color:color-mix(in oklch, var(--accent) 30%, var(--line))}.legend{grid-template-columns:1fr 1fr;gap:.5rem 1.125rem;display:grid}.legend-row{justify-content:space-between;align-items:center;gap:.625rem;font-size:.75rem;display:flex}.legend-key{align-items:center;gap:.5rem;display:flex}.legend-swatch{border:1px solid #00000014;border-radius:.1875rem;width:.875rem;height:.875rem}.legend-name{font-family:JetBrains Mono,monospace;font-size:.6875rem;font-weight:500}.legend-row--rcd{grid-column:1/-1}.legend-count{color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:.6875rem}.stats{background:var(--line);grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.stat{background:var(--panel);flex-direction:column;gap:.125rem;padding:.75rem;display:flex}.stat-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-family:JetBrains Mono,monospace;font-size:.5625rem}.stat-value{letter-spacing:-.01em;font-family:JetBrains Mono,monospace;font-size:1.125rem;font-weight:700}.stat-value.warn{color:oklch(56% .17 40)}.snack{opacity:1;background:var(--bg);color:var(--ink);border:1px solid var(--ink-3);letter-spacing:.04em;border-radius:var(--radius);z-index:100;padding:.625rem 1rem;font-family:JetBrains Mono,monospace;font-size:.75rem;animation:.2s ease-out snack-in;position:fixed;top:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0000002e}.snack--error{color:#fff;background:#c0392b}@keyframes snack-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.fuse[draggable=true]:active{cursor:grabbing}.lang-toggle{align-items:center;gap:2px;margin-left:auto;margin-right:.875rem;display:flex}.lang-btn{cursor:pointer;color:#edeef0a6;background:0 0;border:none;border-radius:4px;height:2rem;padding:0 .625rem;font-family:Inter,sans-serif;font-size:.875rem;font-weight:500;line-height:1;transition:color .15s,background .15s}.lang-btn:hover,.lang-btn--active{color:var(--ink);background:var(--bg-2)}.user-menu{position:relative}.user-menu-avatar{cursor:pointer;display:block}.user-menu-photo{object-fit:cover;border-radius:50%;width:2rem;height:2rem;display:block}.user-menu-initials{background:var(--accent);width:2rem;height:2rem;color:var(--ink);border-radius:50%;place-items:center;font-family:JetBrains Mono,monospace;font-size:.6875rem;font-weight:700;display:grid}.user-menu-dropdown{border:1px solid var(--line);border-radius:var(--radius);min-width:200px;box-shadow:var(--shadow-md);z-index:100;background:#fff;position:absolute;top:calc(100% + 8px);right:0}.user-menu-email{color:var(--ink-3);border-bottom:1px solid var(--line);word-break:break-all;padding:.625rem .875rem;font-size:.75rem}.user-menu-item{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:none;padding:.625rem .875rem;font-family:Inter,sans-serif;font-size:.8125rem;transition:background .12s;display:block}.user-menu-item:hover{background:var(--bg)}.user-menu-signout{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:none;padding:.625rem .875rem;font-family:Inter,sans-serif;font-size:.8125rem;transition:background .12s;display:block}.user-menu-signout:hover{background:var(--bg)}.user-menu-signin{background:var(--accent);color:var(--ink);border-color:#0000}.user-menu-signin:hover{background:color-mix(in oklch, var(--accent) 85%, black);border-color:#0000}.panel-dropdown{position:relative}.panel-dropdown-trigger{border-radius:var(--radius);color:#f5f2ecb3;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #f5f2ec33;align-items:center;gap:.5rem;padding:.25rem .625rem;font-family:JetBrains Mono,monospace;font-size:.6875rem;transition:border-color .12s,color .12s,background .12s;display:inline-flex}.panel-dropdown-trigger:hover{color:#f5f2ec;background:#f5f2ec0f;border-color:#f5f2ec73}.panel-dropdown-menu{border-radius:var(--radius);min-width:12.5rem;box-shadow:var(--shadow-lg);z-index:200;background:#262420;border:1px solid #f5f2ec1f;padding:.25rem;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden}.panel-dropdown-item{color:#f5f2ecbf;letter-spacing:.04em;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.25rem;justify-content:space-between;align-items:center;gap:.625rem;width:100%;padding:.5rem .625rem;font-family:JetBrains Mono,monospace;font-size:.75rem;transition:background .1s,color .1s;display:flex}.panel-dropdown-item:hover{color:#f5f2ec;background:#f5f2ec14}.panel-dropdown-item.active{color:var(--accent)}.panel-dropdown-new{color:#f5f2ec80;font-size:.6875rem}.panel-dropdown-new:hover{color:var(--accent);background:color-mix(in oklch, var(--accent) 10%, transparent)}.panel-dropdown-sep{background:#f5f2ec1a;height:1px;margin:.25rem 0}.panel-dropdown-form{flex-direction:column;gap:.375rem;padding:.5rem .375rem .25rem;display:flex}.panel-dropdown-input{color:#f5f2ece6;background:#f5f2ec0f;border:1px solid #f5f2ec26;border-radius:.25rem;outline:none;width:100%;height:1.875rem;padding:0 .5rem;font-family:Inter,sans-serif;font-size:.75rem;transition:border-color .12s}.panel-dropdown-input::placeholder{color:#f5f2ec4d}.panel-dropdown-input:focus{border-color:var(--accent)}.panel-dropdown-form-actions{gap:.375rem;margin-top:.125rem;display:flex}.panel-dropdown-action{cursor:pointer;border:1px solid #f5f2ec26;border-radius:.25rem;flex:1;height:1.75rem;font-family:Inter,sans-serif;font-size:.75rem;font-weight:500;transition:all .12s}.panel-dropdown-action.cancel{color:#f5f2ec80;background:0 0}.panel-dropdown-action.cancel:hover{color:#f5f2eccc;background:#f5f2ec14}.panel-dropdown-action.create{background:var(--accent);border-color:var(--accent);color:var(--ink)}.panel-dropdown-action.create:hover:not(:disabled){filter:brightness(1.08)}.panel-dropdown-action.create:disabled{opacity:.4;cursor:not-allowed}.panel-typeahead{width:100%;position:relative}.panel-typeahead-trigger{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--bg);cursor:pointer;align-items:center;gap:.25rem;width:100%;height:2rem;padding:0 .5rem;transition:border-color .12s,background .12s,box-shadow .12s;display:flex}.panel-typeahead-trigger:hover{border-color:var(--ink-3);background:var(--bg-2)}.panel-typeahead-trigger.open{border-color:var(--ink);background:var(--bg);box-shadow:0 0 0 3px #14191e0f}.panel-typeahead-input{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);cursor:pointer;background:0 0;border:0;outline:none;flex:1;min-width:0;padding:0;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600;transition:letter-spacing .12s}.panel-typeahead-trigger.open .panel-typeahead-input{cursor:text;text-transform:none;letter-spacing:.02em;font-weight:500}.panel-typeahead-input::placeholder{color:var(--ink-3);letter-spacing:.02em;text-transform:none;font-weight:400}.panel-typeahead-chevron{color:var(--ink-3);flex-shrink:0;transition:transform .15s,color .12s}.panel-typeahead-trigger:hover .panel-typeahead-chevron{color:var(--ink-2)}.panel-typeahead-trigger.open .panel-typeahead-chevron{color:var(--ink);transform:rotate(180deg)}.panel-typeahead-menu{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-width:14rem;box-shadow:var(--shadow-md);z-index:200;padding:.25rem;position:absolute;top:calc(100% + .375rem);left:0;overflow:hidden}.panel-typeahead-item{width:100%;color:var(--ink-2);letter-spacing:.03em;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.25rem;align-items:center;gap:.5rem;padding:.4375rem .625rem;font-family:JetBrains Mono,monospace;font-size:.75rem;transition:background .1s,color .1s;display:flex}.panel-typeahead-item:hover,.panel-typeahead-item.keyboard-focused{background:var(--bg-2);color:var(--ink)}.panel-typeahead-item.active{color:var(--accent)}.panel-typeahead-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.panel-typeahead-item-loc{color:var(--ink-3);letter-spacing:.04em;white-space:nowrap;margin-left:auto;padding-left:.5rem;font-size:.625rem}.panel-typeahead-item.active .panel-typeahead-item-loc{margin-left:0}.panel-typeahead-empty{color:var(--ink-3);letter-spacing:.04em;padding:.5rem .625rem;font-family:JetBrains Mono,monospace;font-size:.6875rem}.panel-typeahead-new{color:var(--ink-3);font-size:.6875rem}.panel-typeahead-new:hover,.panel-typeahead-new.keyboard-focused{color:var(--accent);background:color-mix(in oklch, var(--accent) 8%, transparent)}.modal-backdrop{z-index:300;background:#14191e8c;justify-content:center;align-items:center;animation:.15s ease-out fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.dialog{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:22.5rem;max-width:calc(100vw - 3rem);animation:.18s cubic-bezier(.4,1.4,.6,1) modal-in}@keyframes modal-in{0%{opacity:0;transform:translateY(-.75rem)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.dialog-header{border-bottom:1px solid var(--line);background:var(--bg);border-radius:var(--radius-lg) var(--radius-lg) 0 0;justify-content:space-between;align-items:center;padding:.875rem 1rem;display:flex}.dialog-title{letter-spacing:.1em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.6875rem;font-weight:600}.dialog-body{padding:1.25rem 1rem 1rem}.dialog-footer{border-top:1px solid var(--line);background:var(--bg);border-radius:0 0 var(--radius-lg) var(--radius-lg);justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;display:flex}.panel-actions{gap:.125rem;display:flex}.panel-action-btn{align-items:center;gap:.35rem;display:flex}.panel-action-btn svg{color:var(--accent)}.panel-action-btn:disabled{opacity:.3;cursor:not-allowed}.empty-state{text-align:center;color:var(--ink-3);padding:2rem .75rem;font-size:.75rem}.app-footer{background:var(--ink);color:#f5f2eca6;letter-spacing:.03em;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.5rem;font-size:.6875rem;display:flex}.app-footer-sep{color:#f5f2eca6}.app-footer-link{color:#f5f2eccc;text-decoration:none;transition:color .15s}.app-footer-link:hover,.app-footer-link:focus-visible{color:#f5f2ec;outline-offset:2px;text-decoration:underline}.app-footer-repo{align-items:center;gap:.3rem;display:inline-flex}@media (width<=768px){.fuse-row{grid-template-columns:2rem 1fr}.fuse-row.standard{grid-template-rows:auto auto auto;grid-template-columns:2rem 1fr}.fuse-row.standard .bus-bar{flex-direction:row;grid-column:2;min-height:1.5rem}.row-slots{grid-auto-flow:row;grid-auto-columns:unset;grid-template-columns:1fr!important}.slot{min-height:3rem}.fuse{flex-direction:row;align-items:center;gap:.5rem;padding:.375rem .5rem .375rem .75rem;display:flex}.fuse-head{flex-direction:column;flex-shrink:0;align-items:flex-start;gap:0}.fuse-remove{opacity:1}.fuse-label{white-space:nowrap;text-overflow:ellipsis;-webkit-line-clamp:unset;flex:1;min-width:0;display:block;overflow:hidden}.fuse-foot{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.125rem}}.login-page{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.login-content{flex:1;justify-content:center;align-items:center;padding:2rem 1rem;display:flex}.login-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;gap:1.75rem;width:100%;max-width:360px;padding:2.5rem 2rem;display:flex}.login-brand{flex-direction:column;align-items:center;gap:.5rem;display:flex}.login-brand-mark{margin-bottom:.25rem;display:block}.login-title{letter-spacing:.04em;text-transform:uppercase;color:var(--ink);margin:0;font-family:JetBrains Mono,monospace;font-size:1.25rem;font-weight:700}.login-sub{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0;font-family:JetBrains Mono,monospace;font-size:.6875rem}.login-features{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;gap:.625rem;margin:0;padding:1.25rem 0;list-style:none;display:flex}.login-features li{color:var(--ink-2);align-items:flex-start;gap:.625rem;font-size:.8125rem;line-height:1.4;display:flex}.login-features li:before{content:"—";color:var(--accent);flex-shrink:0;margin-top:.05em;font-family:JetBrains Mono,monospace;font-size:.75rem}.login-btn{background:var(--accent);width:100%;color:var(--ink);border-radius:var(--radius);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:none;padding:.625rem 1rem;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600;transition:background .15s}.login-btn:hover{background:color-mix(in oklch, var(--accent) 85%, black)}.login-btn-back{width:100%;color:var(--ink-3);border-radius:var(--radius);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;margin-top:-.75rem;padding:.5rem 1rem;font-family:JetBrains Mono,monospace;font-size:.75rem;transition:color .15s}.login-btn-back:hover{color:var(--ink)}.login-btn-google{background:var(--panel);color:var(--ink);border:1px solid var(--line)}.login-btn-google:hover{background:var(--bg)}.login-email-form{flex-direction:column;gap:.625rem;display:flex}.login-input{background:var(--bg);width:100%;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-sizing:border-box;outline:none;padding:.5625rem .75rem;font-family:JetBrains Mono,monospace;font-size:.8125rem;transition:border-color .15s}.login-input:focus{border-color:var(--accent)}.login-input::placeholder{color:var(--ink-3)}.login-error{color:var(--red,#e55);margin:0;font-family:JetBrains Mono,monospace;font-size:.75rem}.login-mode-toggle{color:var(--ink-3);text-align:center;margin-top:-.75rem;font-family:JetBrains Mono,monospace;font-size:.75rem}.login-link-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-family:JetBrains Mono,monospace;font-size:.75rem;text-decoration:underline}.login-divider{color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.75rem;margin:-.5rem 0;font-family:JetBrains Mono,monospace;font-size:.6875rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--line);flex:1;height:1px}.panels-page{max-width:860px}.page-header{justify-content:space-between;align-items:center;display:flex}.page-title{letter-spacing:.04em;text-transform:uppercase;color:var(--ink);margin:0;font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:700}.panels-list-empty{color:var(--ink-3);text-align:center;flex-direction:column;gap:.25rem;padding:2rem 1rem;font-size:.8125rem;display:flex}.panels-empty-link{color:var(--accent);cursor:pointer;text-decoration:underline}.panels-empty-link:hover{color:var(--accent-hover,var(--accent))}.panels-toolbar{border-bottom:1px solid var(--line);align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.panels-toolbar-spacer{flex:1}.panels-search{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--bg);width:16rem;height:2.25rem;color:var(--ink);outline:none;padding:0 .625rem;font-size:.8125rem}.panels-search:focus{border-color:var(--ink);box-shadow:0 0 0 3px #14191e14}.panels-sort-label{color:var(--ink-3);white-space:nowrap;flex-shrink:0;font-size:.75rem}.panels-sort{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--bg);height:2.25rem;color:var(--ink);cursor:pointer;outline:none;flex-shrink:0;padding:0 .5rem;font-size:.8125rem}.panels-sort:focus{border-color:var(--ink);box-shadow:0 0 0 3px #14191e14}.panels-table{border-collapse:collapse;table-layout:auto;width:100%}.panels-th{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);text-align:left;background:var(--accent-soft);border-bottom:1px solid color-mix(in oklch, var(--accent) 30%, var(--line));white-space:nowrap;padding:.5rem 1rem;font-family:JetBrains Mono,monospace;font-size:.625rem;font-weight:600}.panels-row{border-bottom:1px solid var(--line);transition:background .1s}.panels-row:last-child{border-bottom:none}.panels-row:hover{background:var(--bg)}.panels-td{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;padding:.75rem 1rem;font-size:.8125rem;overflow:hidden}.panels-td-name{width:55%;min-width:12rem;font-family:JetBrains Mono,monospace;font-weight:600}.panels-td-loc{color:var(--ink-3);width:20%;min-width:8rem}.panels-td-date{color:var(--ink-3);white-space:nowrap;font-size:.75rem}.panels-td-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}@media (width<=767px){.panels-th-date,.panels-td-date{display:none}}@media (width<=575px){.panels-th-loc,.panels-td-loc{display:none}}.reload-prompt{background:var(--panel);border:1px solid var(--line);z-index:9999;white-space:nowrap;border-radius:10px;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex;position:fixed;bottom:4rem;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #00000038,0 2px 8px #0000001f}.reload-prompt-text{color:var(--ink);font-size:.875rem}.reload-prompt-actions{gap:.5rem;display:flex}.reload-prompt-btn{height:auto;padding:.3rem .75rem;font-size:.8125rem}@media (width<=480px){.reload-prompt{white-space:normal;flex-direction:column;align-items:flex-start;width:calc(100vw - 2.5rem);bottom:1.25rem}}.print-view{display:none}@media print{*{-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{margin:0;size:landscape}html,body{margin:0;padding:0;background:#fff!important}.topbar,.configbar,.panel-infostrip,.sample-banner,.main,.sidebar,.snack,.app-footer{display:none!important}.app{justify-content:center;align-items:center;min-height:100vh;padding:0;display:flex;background:#fff!important}.print-view{box-sizing:border-box;color:#1f2328;background:#fff;width:100%;max-width:100%;padding:1.5cm;font-family:Inter,system-ui,sans-serif;font-size:10pt;display:block}.print-header{border-bottom:2px solid #1f2328;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.print-brand{flex-direction:row;justify-content:center;align-items:center;gap:.6rem;margin-bottom:2rem;display:flex}.print-brand-mark{display:block}.print-brand-name{letter-spacing:.08em;text-transform:uppercase;color:#1f2328;font-family:JetBrains Mono,monospace;font-size:13pt;font-weight:600}.print-header-main{flex-direction:column;gap:.25rem;display:flex}.print-panel-name{letter-spacing:.04em;text-transform:uppercase;margin:0;font-family:JetBrains Mono,monospace;font-size:16pt;font-weight:700;line-height:1.1}.print-panel-location{color:#8b919a;letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:8pt}.print-header-meta{flex-direction:column;align-items:flex-end;gap:.25rem;display:flex}.print-meta-item{color:#4a4f57;letter-spacing:.04em;font-family:JetBrains Mono,monospace;font-size:8pt}.print-grid{flex-direction:column;gap:.375rem;margin-bottom:1.25rem;display:flex}.print-row{align-items:stretch;gap:.375rem;display:grid}.print-row--standard{grid-template-columns:1.5rem 1fr .625rem 1fr}.print-row--custom{grid-template-columns:1.5rem 1fr}.print-row-label{color:#8b919a;letter-spacing:.06em;background:#dfe1e5;border:1px solid #cfd3d9;border-radius:3px;place-items:center;font-family:JetBrains Mono,monospace;font-size:6pt;font-weight:600;display:grid}.print-slots-row{gap:.25rem;display:grid}.print-bus-bar{background:#2a2723;border-radius:2px}.print-slot{background:#fff;border:1px solid #cfd3d9;border-radius:3px;grid-template-rows:auto 1fr auto;gap:.15rem;min-height:3.5rem;padding:.3rem .375rem .3rem .5rem;display:grid;position:relative}.print-slot--filled:before{content:"";background:var(--fuse-color,#8b919a);border-radius:3px 0 0 3px;width:3px;position:absolute;top:0;bottom:0;left:0}.print-slot--empty{background:#f7f8f9;border-style:dashed}.print-slot-pos{color:#8b919a;letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:6pt;font-weight:500}.print-slot-label{color:#1f2328;word-break:break-word;font-size:7.5pt;font-weight:500;line-height:1.25}.print-legend{page-break-inside:avoid;border-top:1px solid #cfd3d9;padding-top:.75rem}.print-legend-title{letter-spacing:.1em;text-transform:uppercase;color:#8b919a;margin:0 0 .5rem;font-family:JetBrains Mono,monospace;font-size:7pt;font-weight:600}.print-legend-grid{grid-template-columns:repeat(4,1fr);gap:.375rem 1rem;display:grid}.print-legend-item{align-items:center;gap:.375rem;display:flex}.print-legend-swatch{border:1px solid #0000001f;border-radius:2px;flex-shrink:0;width:.625rem;height:.625rem}.print-legend-label{color:#1f2328;font-family:JetBrains Mono,monospace;font-size:7pt}.print-legend-count{color:#8b919a;margin-left:auto;font-family:JetBrains Mono,monospace;font-size:7pt}}
