:root{--bg:var(--paper);--bg-surface:var(--paper);--bg-elevated:var(--paper-2);--text:var(--ink);--text-secondary:var(--ink-3);--text-tertiary:var(--ink-3);--border:var(--grid-bold);--border-hover:var(--ink-3);--primary:var(--blue);--primary-hover:var(--blue-2);--primary-light:var(--blue-tint);--accent:var(--blue-3);--danger:#c23d3d;--danger-bg:#fbeaea;--warning:#d97f2a;--warning-bg:#fbf1e5;--success:#3d7a4a;--info:var(--blue);--info-bg:var(--blue-tint);--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--radius-sm:0;--radius-md:0;--radius-lg:0;--radius-xl:0;--transition:.15s ease;--max-width:1200px;--font-family:var(--font-sans);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--font-size-xs:11px;--font-size-sm:12px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:18px;--font-size-xl:20px;--font-size-2xl:24px;--font-size-3xl:28px;--font-size-4xl:32px;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.75;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--button-padding:var(--space-2) var(--space-4);--button-radius:0;--input-height:32px;--input-padding:var(--space-1) var(--space-2);--card-padding:var(--space-4);--card-radius:0;--section-gap:var(--space-6);--color-surface-1:var(--bg);--color-surface-2:var(--bg-surface);--color-surface-3:var(--bg-elevated);--color-error-text:var(--danger);--color-error-bg:var(--danger-bg);--color-warning-text:var(--warning);--color-warning-bg:var(--warning-bg);--color-success-text:var(--success);--color-info-text:var(--info);--color-info-bg:var(--info-bg)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--sidebar-width:280px;--toolbar-height:auto;--statusbar-height:28px;--focus-ring:0 0 0 2px #2d6a4f4d;--accent-bg:#dbeafe}html.dark{--focus-ring:0 0 0 2px #52b78866;--accent-bg:#3b82f626}body{font-family:var(--font-family);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}body.planner-body{-webkit-user-select:none;user-select:none;flex-direction:column;height:100vh;display:flex;overflow:hidden}.planner-body{padding-top:44px}.skip-link{background:var(--primary);color:#fff;z-index:20000;border-radius:0 0 var(--radius-md) 0;padding:8px 16px;font-size:13px;position:absolute;top:-100%;left:0}.skip-link:focus{top:0}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}:root{--paper:#f4f1e8;--paper-2:#ebe6d6;--ink:#0a1a3a;--ink-2:#1a2d52;--ink-3:#3d5280;--blue:#1e4fa8;--blue-2:#2d66c9;--blue-3:#5a8fd9;--blue-tint:#e2ecf9;--cyan-trace:#7eb8e8;--grid:#cfc9b4;--grid-bold:#a89f82;--rule:#1a2d52;--red-mark:#c23d3d;--amber-mark:#d97f2a;--green-ok:#3d7a4a;--dk-paper:#0b2547;--dk-paper-2:#0e2b52;--dk-ink:#e8f1ff;--dk-ink-2:#c4d8f4;--dk-ink-3:#7ea8d8;--dk-blue:#9dc4f0;--dk-grid:#1a3866;--dk-grid-bold:#2a4a7d;--dk-rule:#5a8fd9;--font-mono:"JetBrains Mono", "IBM Plex Mono", ui-monospace, monospace;--font-sans:"Inter", system-ui, sans-serif;--font-display:"Instrument Serif", "Times New Roman", serif;--u:8px;--rule-thin:.5px;--rule-norm:1px;--rule-bold:2px}html.dark{--paper:var(--dk-paper);--paper-2:var(--dk-paper-2);--ink:var(--dk-ink);--ink-2:var(--dk-ink-2);--ink-3:var(--dk-ink-3);--blue:var(--dk-blue);--blue-2:#b4d0f0;--blue-3:#7ea8d8;--blue-tint:#143565;--cyan-trace:#4a7dc0;--grid:var(--dk-grid);--grid-bold:var(--dk-grid-bold);--rule:var(--dk-rule);--red-mark:#e87878;--amber-mark:#e8a560;--green-ok:#6dbf80}html{transition:background-color .2s}body{transition:background-color .2s,color .2s}::selection{background:var(--blue);color:var(--paper)}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px), linear-gradient(var(--grid-bold) 1px, transparent 1px), linear-gradient(90deg, var(--grid-bold) 1px, transparent 1px);background-position:0 0;background-size:8px 8px,8px 8px,80px 80px,80px 80px;font-size:14px;line-height:1.5}*,:before,:after{box-sizing:border-box}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0}.bp-frame{background:var(--paper);border:var(--rule-norm) solid var(--ink);max-width:1440px;min-height:100vh;margin:0 auto;padding:0;position:relative}body.planner-body .bp-frame,body.admin-body .bp-frame,body.auth-body .bp-frame{border:0;max-width:none}body.planner-body .bp-reg-tl,body.planner-body .bp-reg-tr,body.planner-body .bp-reg-bl,body.planner-body .bp-reg-br,body.admin-body .bp-reg-tl,body.admin-body .bp-reg-tr,body.admin-body .bp-reg-bl,body.admin-body .bp-reg-br,body.auth-body .bp-reg-tl,body.auth-body .bp-reg-tr,body.auth-body .bp-reg-bl,body.auth-body .bp-reg-br{display:none}.bp-nav{border-bottom:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.04em;grid-template-columns:320px 1fr 320px;align-items:stretch;min-height:56px;font-size:11px;line-height:1;display:grid}.bp-nav>*{align-items:center;gap:12px;padding:0 16px;display:flex}.bp-nav-logo{border-right:var(--rule-norm) solid var(--ink);text-transform:uppercase;font-size:13px;font-weight:600}.bp-nav-logo .mark{border:var(--rule-norm) solid var(--ink);border-radius:50%;flex-shrink:0;width:22px;height:22px;position:relative}.bp-nav-logo .mark:before{content:"";border:var(--rule-thin) solid var(--ink);border-radius:50%;position:absolute;inset:4px}.bp-nav-logo .mark:after{content:"";background:var(--red-mark);border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bp-nav-logo-version{color:var(--red-mark);font-family:var(--font-mono);letter-spacing:.04em;margin-left:2px;font-size:11px;font-weight:500}.bp-nav-items{text-transform:uppercase;letter-spacing:.12em;justify-content:center;gap:28px}.bp-nav-items a{padding:4px 0;transition:color .15s;position:relative}.bp-nav-items a:hover{color:var(--blue)}.bp-nav-items a.active:after{content:"";background:var(--red-mark);height:2px;position:absolute;bottom:-2px;left:-4px;right:-4px}.bp-nav-right{border-left:var(--rule-norm) solid var(--ink);white-space:nowrap;flex-wrap:nowrap;justify-content:flex-end;gap:16px}.bp-nav-right .bp-user-link,.bp-nav-right .bp-user-signup{white-space:nowrap}.bp-theme-toggle{border:var(--rule-thin) solid var(--ink);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;transition:all .15s;display:flex}.bp-theme-toggle:hover{background:var(--ink);color:var(--paper)}.bp-titleblock{border-top:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.08em;grid-template-columns:repeat(6,1fr);font-size:10px;display:grid}.bp-tb-cell{border-right:var(--rule-thin) solid var(--ink);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.bp-tb-cell:last-child{border-right:0}.bp-tb-label{color:var(--ink-3);text-transform:uppercase;font-size:9px}.bp-tb-value{color:var(--ink);font-weight:500}.bp-btn{border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--paper);align-items:center;gap:8px;padding:10px 20px;font-size:12px;transition:all .15s;display:inline-flex;position:relative}.bp-btn:hover,.bp-btn-primary{background:var(--ink);color:var(--paper)}.bp-btn-primary:hover{background:var(--blue);border-color:var(--blue)}.bp-btn-ghost{text-underline-offset:4px;border:none;padding:10px 0;text-decoration:underline}.bp-reg-tl,.bp-reg-tr,.bp-reg-bl,.bp-reg-br{pointer-events:none;width:12px;height:12px;position:absolute}.bp-reg-tl:before,.bp-reg-tr:before,.bp-reg-bl:before,.bp-reg-br:before,.bp-reg-tl:after,.bp-reg-tr:after,.bp-reg-bl:after,.bp-reg-br:after{content:"";background:var(--ink);position:absolute}.bp-reg-tl:before,.bp-reg-tr:before,.bp-reg-bl:before,.bp-reg-br:before{width:1px;top:0;bottom:0;left:50%;transform:translate(-.5px)}.bp-reg-tl:after,.bp-reg-tr:after,.bp-reg-bl:after,.bp-reg-br:after{height:1px;top:50%;left:0;right:0;transform:translateY(-.5px)}.bp-reg-tl{top:-6px;left:-6px}.bp-reg-tr{top:-6px;right:-6px}.bp-reg-bl{bottom:-6px;left:-6px}.bp-reg-br{bottom:-6px;right:-6px}.bp-h-display{font-family:var(--font-mono);letter-spacing:-.03em;text-transform:uppercase;font-size:clamp(56px,9vw,148px);font-weight:500;line-height:.9}.bp-h-serif{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(56px,9vw,140px);font-weight:400;line-height:.95}.bp-h-serif em{color:var(--blue);font-style:italic}.bp-h1{font-family:var(--font-mono);letter-spacing:-.01em;text-transform:uppercase;font-size:48px;font-weight:500;line-height:1}.bp-h2{font-family:var(--font-mono);letter-spacing:.02em;text-transform:uppercase;font-size:28px;font-weight:500}.bp-h3{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:14px;font-weight:600}.bp-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);font-size:10px}.bp-mono{font-family:var(--font-mono)}.bp-section{border-bottom:var(--rule-norm) solid var(--ink);padding:80px 40px;position:relative}.bp-section-header{border-bottom:var(--rule-thin) dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;grid-template-columns:120px 1fr 120px;gap:40px;margin-bottom:48px;padding-bottom:32px;font-size:11px;display:grid}.bp-section-header .num{color:var(--red-mark);font-weight:600}.bp-section-header .title{color:var(--ink)}.bp-section-header .scale{text-align:right;color:var(--ink-3)}.bp-dashed{border:var(--rule-thin) dashed var(--ink-3)}.bp-solid{border:var(--rule-norm) solid var(--ink)}.bp-dim{font-family:var(--font-mono);color:var(--red-mark);text-align:center;font-size:10px;position:relative}.bp-dim:before,.bp-dim:after{content:"";background:var(--red-mark);height:1px;position:absolute;top:50%}.bp-dim:before{left:0;right:calc(50% + 18px)}.bp-dim:after{left:calc(50% + 18px);right:0}.bp-chip{border:var(--rule-thin) solid var(--ink);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:var(--paper);align-items:center;gap:6px;padding:4px 10px;font-size:10px;display:inline-flex}.bp-chip.red{border-color:var(--red-mark);color:var(--red-mark)}.bp-chip.blue{border-color:var(--blue);color:var(--blue)}.bp-chip.filled{background:var(--ink);color:var(--paper)}.bp-link{color:var(--blue);text-underline-offset:3px;font-weight:600;text-decoration:underline;text-decoration-thickness:.5px}.bp-link:hover{text-decoration-thickness:1.5px}html{scrollbar-width:thin;scrollbar-color:var(--ink) var(--paper)}.bp-label-red{color:var(--red-mark)}.stat-cell{border:var(--rule-thin) solid var(--ink);background:var(--paper);flex-direction:column;gap:6px;min-width:120px;padding:16px 20px;display:flex}.stat-cell-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:10px}.stat-cell-value{font-family:var(--font-mono);color:var(--ink);letter-spacing:-.01em;font-size:22px;font-weight:600}.page-hero{border-bottom:var(--rule-norm) solid var(--ink);padding:72px 48px 56px}.page-hero-title{font-family:var(--font-display);letter-spacing:-.02em;max-width:900px;margin-top:24px;font-size:clamp(40px,5vw,72px);font-weight:400;line-height:1.02}.page-hero-title em{color:var(--blue);font-style:italic}.page-hero-subtitle{color:var(--ink-2);max-width:640px;margin-top:20px;font-size:16px;line-height:1.6}.cta-block{text-align:center;border-top:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);background:var(--paper-2);padding:80px 48px}.cta-title{font-family:var(--font-display);letter-spacing:-.02em;max-width:880px;margin:0 auto;font-size:clamp(40px,5vw,72px);font-weight:400;line-height:1.05}.cta-title em{color:var(--blue);font-style:italic}.cta-subtitle{color:var(--ink-2);margin-top:16px;max-width:600px;margin-inline:auto;font-size:15px}.cta-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:32px;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.bp-nav-hamburger{border:var(--rule-norm) solid var(--ink);color:var(--ink);cursor:pointer;background:0 0;padding:4px;display:none}.bp-nav-hamburger[aria-expanded=true]{background:var(--ink);color:var(--paper)}@media (width<=960px){.bp-nav{grid-template-columns:1fr auto}.bp-nav-items{background:var(--paper);border-bottom:var(--rule-norm) solid var(--ink);z-index:10;flex-direction:column;gap:12px;padding:12px 16px;display:none;position:absolute;top:56px;left:0;right:0}.bp-nav-items.is-open{display:flex}.bp-nav-hamburger{display:inline-flex}.bp-nav-right .nav-search,.bp-nav-right .bp-lang{display:none}}.nav-search-input{font-family:var(--font-mono);border:var(--rule-norm) solid var(--ink);background:var(--paper);color:var(--ink);border-radius:0;padding:6px 30px 6px 10px;font-size:12px}.nav-search-kbd{background:var(--paper-2);border:var(--rule-thin) solid var(--ink-3);color:var(--ink-3);border-radius:0}.nav-search-results{background:var(--paper);border:var(--rule-norm) solid var(--ink);border-radius:0}.bp-titleblock .bp-tb-value a{color:var(--ink);border-bottom:var(--rule-thin) dotted transparent;padding:2px 0;transition:border-color .15s;display:block}.bp-titleblock .bp-tb-value a:hover,.bp-titleblock .bp-tb-value a:focus-visible{border-bottom-color:var(--ink)}.early-access-banner{background:var(--ink);color:var(--paper);border-bottom:var(--rule-bold) solid var(--blue);font-family:var(--font-mono)}h1,.hero h1,.hero-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);font-size:clamp(28px,4vw,56px);font-weight:400;line-height:1.1}h2,.section-title,.features-card h2,.pricing-card h3{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border-bottom:var(--rule-norm) solid var(--ink);padding-bottom:8px;font-size:13px;font-weight:600}h3,h4{font-family:var(--font-sans);color:var(--ink);font-weight:600}p,li,td{font-family:var(--font-sans);color:var(--ink-2)}.hero-subtitle,.hero-badge{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.08em}.btn,.btn-primary,.btn-secondary,.btn-outline,.auth-submit,.cta-button,.pricing-cta-btn,.pricing-btn,.pricing-btn-primary,.pricing-btn-secondary,.pricing-btn-accent,.features-cta-btn,.admin-btn{background:var(--paper);color:var(--ink);border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:0;align-items:center;gap:8px;padding:10px 18px;font-size:12px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.btn:hover,.btn-primary:hover,.auth-submit:hover,.pricing-cta-btn:hover,.pricing-btn:hover,.pricing-btn-primary:hover,.features-cta-btn:hover{background:var(--ink);color:var(--paper)}.btn-primary,.auth-submit,.pricing-btn-primary,.features-cta-btn{background:var(--blue);color:var(--paper);border-color:var(--blue)}.btn-primary:hover,.auth-submit:hover{background:var(--blue-2);border-color:var(--blue-2)}.btn-outline,.pricing-btn-secondary{background:0 0}.btn-lg{padding:14px 26px;font-size:13px}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],textarea,select{background:var(--paper);color:var(--ink);border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);border-radius:0;padding:10px 12px;font-size:13px;transition:border-color .15s}input:focus,textarea:focus,select:focus{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);outline:none}label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);margin-bottom:6px;font-size:11px;display:block}.auth-card,.pricing-card,.features-card,.blog-card,.template-card,.brand-item,.audience-card,.comparison-card,.admin-card{background:var(--paper);border:var(--rule-norm) solid var(--ink);box-shadow:none;border-radius:0;padding:24px}.pricing-card-popular{border-width:var(--rule-bold);border-color:var(--blue)}.pricing-toggle{border:var(--rule-norm) solid var(--ink);background:var(--paper-2);border-radius:0;padding:4px}.pricing-period{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);border-radius:0}.pricing-badge{background:var(--blue);color:var(--paper);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:0}.pricing-features .check,.pricing-table .check{color:var(--blue)}.pricing-features .check.dim,.pricing-table .check.dim,.pricing-features .cross,.pricing-table .cross{color:var(--ink-3)}.beta-free-tag,.beta-badge{background:var(--blue);color:var(--paper);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:0}.features-card-icon,.audience-icon{color:var(--blue)}section,.section{border-top:var(--rule-thin) dashed var(--grid-bold);padding:48px 0}section:first-of-type,.hero{border-top:none}table,.admin-table,.comparison-table{background:var(--paper);border:var(--rule-norm) solid var(--ink);border-collapse:collapse;font-family:var(--font-mono);font-size:12px}th{background:var(--paper-2);border-bottom:var(--rule-norm) solid var(--ink);text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);padding:8px 12px;font-size:10px;font-weight:600}td{border-bottom:var(--rule-thin) solid var(--grid-bold);padding:10px 12px}tr:last-child td{border-bottom:none}a:not(.btn,.bp-btn,.bp-nav-logo,.bp-lang-cell,[data-nav],.pricing-cta-btn,.pricing-btn,.btn-primary,.btn-outline,.btn-secondary,.info-btn,.info-btn-primary,.info-btn-ghost,.bl-art-share-link,.bl-art-share-copy,.bl-art-related-card,.bp-btn-primary,.features-cta-btn,.cta-btn){color:var(--blue);border-bottom:var(--rule-thin) dotted transparent;text-decoration:none;transition:border-color .15s}a:not(.btn,.bp-btn,.bp-nav-logo,.bp-lang-cell,[data-nav],.pricing-cta-btn,.pricing-btn,.btn-primary,.btn-outline,.btn-secondary,.info-btn,.info-btn-primary,.info-btn-ghost,.bl-art-share-link,.bl-art-share-copy,.bl-art-related-card,.bp-btn-primary,.features-cta-btn,.cta-btn):hover,a:not(.btn,.bp-btn,.bp-nav-logo,.bp-lang-cell,[data-nav],.pricing-cta-btn,.pricing-btn,.btn-primary,.btn-outline,.btn-secondary,.info-btn,.info-btn-primary,.info-btn-ghost,.bl-art-share-link,.bl-art-share-copy,.bl-art-related-card,.bp-btn-primary,.features-cta-btn,.cta-btn):focus-visible{border-bottom-color:var(--blue)}.hero-badge,.beta-badge,.beta-pricing-banner,.blog-card-category,.pricing-card-badge,.brand-count{background:var(--paper-2);color:var(--ink-3);border:var(--rule-thin) dashed var(--ink-3);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;border-radius:0;align-items:center;gap:6px;padding:4px 10px;font-size:10px;display:inline-flex}.waitlist-form-wrapper,.waitlist-form{background:var(--paper);border:var(--rule-norm) solid var(--ink);padding:24px}.form-row{flex-wrap:wrap;gap:12px;display:flex}.auth-body{justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex}.auth-card{width:100%;max-width:420px}.auth-title{font-family:var(--font-display);text-transform:none;letter-spacing:0;border:none;padding-bottom:16px;font-size:28px;font-weight:400}.auth-logo h1{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;font-size:16px}.feature-icon{background:var(--blue-tint);color:var(--blue);border:var(--rule-thin) solid var(--blue);border-radius:0}.stats-section{background:var(--paper-2);color:var(--ink);border-top:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);padding:56px 0}.stats-section .stat-number{font-family:var(--font-display);color:var(--blue);font-weight:400}.stats-section .stat-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-size:12px}.cta-section{background:var(--paper-2);color:var(--ink);border-top:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);padding:80px 0}.cta-section h2{font-family:var(--font-display);color:var(--ink);font-size:clamp(40px,5vw,72px);font-weight:400;line-height:1.05}.cta-section p{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-3);opacity:1;font-size:13px}.cta-section .btn-primary{background:var(--ink);color:var(--paper);border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:0}.cta-section .btn-primary:hover{background:var(--blue);border-color:var(--blue);color:var(--paper)}.admin-body{background:var(--paper)}.admin-sidebar{background:var(--paper-2);border-right:var(--rule-norm) solid var(--ink);font-family:var(--font-mono)}.admin-main{background:var(--paper)}.beta-badge{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--red-mark);border:var(--rule-thin) solid var(--red-mark);background:0 0;border-radius:0;flex-shrink:0;align-items:center;margin-left:6px;padding:1px 7px;font-size:10px;font-weight:500;line-height:16px;display:inline-flex}@keyframes beta-pulse{0%,to{opacity:1}50%{opacity:.8}}.beta-pricing-banner{background:var(--paper-2);max-width:640px;color:var(--ink);border:var(--rule-norm) solid var(--ink);box-shadow:none;font-family:var(--font-mono);border-radius:0;align-items:center;gap:16px;margin:32px auto;padding:12px 20px;display:flex}.beta-pricing-banner-icon{flex-shrink:0;font-size:28px}.beta-pricing-banner-text strong{margin-bottom:2px;font-size:16px;display:block}.beta-pricing-banner-text p{opacity:.9;margin:0;font-size:13px}.beta-price-crossed{opacity:.5;text-decoration:line-through}.beta-free-tag{color:#fff;background:var(--primary);border-radius:var(--radius-sm);margin-left:8px;padding:2px 10px;font-size:14px;font-weight:700;display:inline-block}.bp-footer{border-top:var(--rule-norm) solid var(--ink);background:var(--paper-2);font-family:var(--font-mono);padding:60px 40px 0}.bp-footer-grid{border-bottom:1px dashed var(--ink-3);grid-template-columns:1.3fr repeat(5,1fr);gap:32px;padding-bottom:40px;display:grid}.bp-footer-brand-head{align-items:center;gap:10px;margin-bottom:16px;display:flex}.bp-footer-brand-mark{border:1px solid var(--ink);border-radius:50%;width:22px;height:22px;display:inline-block;position:relative}.bp-footer-brand-mark:before{content:"";border:.5px solid var(--ink);border-radius:50%;position:absolute;inset:4px}.bp-footer-brand-mark:after{content:"";background:var(--red-mark);border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bp-footer-brand-name{letter-spacing:.04em;text-transform:uppercase;font-size:14px;font-weight:600}.bp-footer-brand-version{color:var(--ink-3);font-size:11px}.bp-footer-brand-lede{max-width:320px;color:var(--ink-2);letter-spacing:.02em;margin:0 0 20px;font-size:11px;line-height:1.7}.bp-footer-brand-chips{flex-wrap:wrap;gap:8px;display:flex}.bp-footer-col-head{border-bottom:1px dashed var(--ink-3);color:#8f2828;letter-spacing:.16em;text-transform:uppercase;margin-bottom:16px;padding-bottom:8px;font-size:10px;font-weight:600}.bp-footer-col-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.bp-footer-col-list a{color:var(--ink-2);letter-spacing:.04em;font-size:12px;text-decoration:none;transition:color .12s}.bp-footer-col-list a:hover,.bp-footer-col-list a:focus-visible{color:var(--blue);outline:none}.bp-footer-meta{border-bottom:1px dashed var(--ink-3);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);grid-template-columns:1fr 1fr 1fr;gap:32px;padding:24px 0;font-size:10px;display:grid}.bp-footer-meta-center{text-align:center}.bp-footer-meta-right{text-align:right}.bp-footer-tagline{letter-spacing:.12em;color:var(--ink-3);justify-content:space-between;padding:16px 0;font-size:9px;display:flex}@media (width<1024px){.bp-footer{padding:40px 24px 0}.bp-footer-grid{grid-template-columns:1fr 1fr;gap:28px}.bp-footer-brand{grid-column:1/-1}}@media (width<640px){.bp-footer-grid{grid-template-columns:1fr}.bp-footer-meta,.bp-footer-tagline{text-align:left;flex-direction:column;grid-template-columns:1fr;gap:8px}.bp-footer-meta-center,.bp-footer-meta-right{text-align:left}}.bp-user{align-items:center;gap:8px;display:inline-flex;position:relative}.bp-user[hidden]{display:none}.bp-user-signin{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;padding:8px 16px;font-size:11px}.bp-user-avatar-btn{border:2px solid var(--ink);background:var(--ink);width:38px;height:38px;color:var(--paper);font-family:var(--font-mono);letter-spacing:.04em;cursor:pointer;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:700;transition:box-shadow .12s;display:flex}.bp-user-avatar-btn:hover,.bp-user-avatar-btn:focus-visible,.bp-user-avatar-btn[aria-expanded=true]{box-shadow:3px 3px 0 var(--ink);outline:none}.bp-user-avatar-btn.is-admin,.bp-user.is-admin .bp-user-avatar-btn{background:var(--red-mark)}.bp-user-avatar{font-family:var(--font-mono);letter-spacing:.04em;font-size:12px;font-weight:700}.bp-user-avatar.lg{background:var(--ink);width:40px;height:40px;color:var(--paper);border:2px solid var(--ink);flex-shrink:0;justify-content:center;align-items:center;font-size:13px;display:flex}.bp-user.is-admin .bp-user-avatar.lg{background:var(--red-mark)}.bp-user-menu{background:var(--paper);border:2px solid var(--ink);width:280px;box-shadow:4px 4px 0 var(--ink);z-index:1000;font-family:var(--font-mono);position:absolute;top:calc(100% + 10px);right:0}.bp-user-menu-header{border-bottom:1px dashed var(--ink-3);background:var(--paper-2);align-items:center;gap:12px;padding:16px 18px;display:flex}.bp-user-menu-header-meta{flex:1;min-width:0}.bp-user-menu-name{color:var(--ink);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.bp-user-menu-handle{color:var(--ink-3);letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:10px;overflow:hidden}.bp-user-menu-admin-badge{border:1px solid var(--red-mark);color:var(--red-mark);letter-spacing:.14em;text-transform:uppercase;margin:10px 18px 0;padding:3px 8px;font-size:9px;font-weight:700;display:inline-block}.bp-user-menu-list{padding:6px 0}.bp-user-menu-list a{color:var(--ink);letter-spacing:.02em;align-items:center;gap:12px;padding:10px 18px;font-size:12px;text-decoration:none;transition:background 80ms;display:flex}.bp-user-menu-list a[hidden],.bp-user-menu-admin-badge[hidden]{display:none}.bp-user-menu-list a:hover,.bp-user-menu-list a:focus-visible{background:var(--paper-2);outline:none}.bp-user-menu-list a.admin{color:var(--red-mark)}.bp-user-menu-list .ico{text-align:center;width:16px;color:var(--ink-3);flex-shrink:0;font-size:13px}.bp-user-menu-list a.admin .ico{color:var(--red-mark)}.bp-user-menu-list .label{flex:1}.bp-user-menu-signout{border:0;border-top:1px dashed var(--ink-3);width:100%;color:var(--red-mark);font-family:var(--font-mono);letter-spacing:.04em;text-align:left;cursor:pointer;background:0 0;align-items:center;gap:12px;padding:10px 18px;font-size:12px;transition:background 80ms;display:flex}.bp-user-menu-signout:hover,.bp-user-menu-signout:focus-visible{background:var(--paper-2);outline:none}.bp-user-menu-signout .ico{text-align:center;flex-shrink:0;width:16px;font-size:11px}.bp-user-menu-signout .label{flex:1}.nav-search{align-items:center;margin-left:auto;margin-right:12px;display:flex;position:relative}.nav-search-input{width:200px;height:30px;font-size:13px;font-family:var(--font-family);color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--transition), box-shadow var(--transition), width var(--transition);outline:none;padding:0 32px 0 10px}.nav-search-input::placeholder{color:var(--text-tertiary)}.nav-search-input:focus{border-color:var(--primary);width:280px;box-shadow:var(--focus-ring)}.nav-search-kbd{font-size:10px;font-family:var(--font-family);color:var(--text-tertiary);background:var(--bg-surface);border:1px solid var(--border);pointer-events:none;transition:opacity var(--transition);border-radius:4px;align-items:center;padding:1px 5px;line-height:16px;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.nav-search-input:focus~.nav-search-kbd{opacity:0}.nav-search-results{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);min-width:320px;max-height:400px;box-shadow:var(--shadow-lg);z-index:500;padding:4px 0;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.search-result-group{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;padding:8px 12px 4px;font-size:11px;font-weight:600}.search-result-item{color:var(--text);border-radius:var(--radius-sm);transition:background var(--transition);margin:0 4px;padding:8px 12px;font-size:13px;text-decoration:none;display:block}.search-result-item:hover{background:var(--primary-light)}.search-no-results{color:var(--text-tertiary);text-align:center;padding:16px 12px;font-size:13px}@media (width<=768px){.nav-search{display:none}.nav-search.mobile-visible{order:-1;width:100%;margin:0;display:flex}.nav-search-input,.nav-search-input:focus{width:100%}.nav-search-results{min-width:100%}.nav-search-kbd{display:none}}.toolbar{background:var(--bg-surface);border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px 16px;padding:6px 12px;display:flex}.toolbar-group{border-right:1px solid var(--border);align-items:center;gap:6px;padding-right:16px;display:flex}.toolbar-group:last-child{border-right:none}.toolbar-label{color:var(--text-tertiary);white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:500}.tool-btn{border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);transition:all var(--transition);white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:4px;padding:4px 10px;font-size:12px;display:flex}.tool-btn:hover{background:var(--bg);border-color:var(--border);color:var(--text)}.tool-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.tool-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}html.dark .tool-btn.active{color:#0f172a}.tool-btn.active svg{stroke:#fff}html.dark .tool-btn.active svg{stroke:#0f172a}.tool-btn svg{flex-shrink:0}.action-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);cursor:pointer;color:var(--text-secondary);transition:all var(--transition);white-space:nowrap;padding:4px 10px;font-size:12px}.action-btn:hover{background:var(--bg);border-color:var(--border-hover);color:var(--text)}.action-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.action-btn:active{transform:scale(.96)}.checkbox-label{cursor:pointer;white-space:nowrap;color:var(--text-secondary);align-items:center;gap:4px;font-size:12px;display:flex}.toolbar select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text);transition:border-color var(--transition);padding:3px 6px;font-size:12px}.toolbar select:focus-visible{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.checkbox-label input[type=checkbox]:focus-visible{box-shadow:var(--focus-ring);border-radius:2px;outline:none}.toolbar-info{color:var(--primary);background:var(--primary-light);border-radius:var(--radius-sm);white-space:nowrap;padding:2px 8px;font-size:11px;font-weight:600}.tool-btn[data-mode=delete].active{background:var(--danger);border-color:var(--danger);color:#fff}.tool-btn[data-mode=delete].active svg{stroke:#fff}.templates-dropdown{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:500;min-width:180px;margin-top:4px;padding:4px 0;position:absolute;top:100%;left:0}.templates-dropdown .template-item{cursor:pointer;width:100%;color:var(--text);text-align:left;transition:background var(--transition);background:0 0;border:none;padding:8px 14px;font-size:13px;display:block}.templates-dropdown .template-item:hover{background:var(--primary-light);color:var(--primary)}.workspace{flex:1;display:flex;overflow:hidden}.canvas-container{background:var(--bg);cursor:crosshair;flex:1;position:relative;overflow:hidden}html.dark .canvas-container{background:#0c1222}.canvas-container svg{width:100%;height:100%;display:block}.compass-widget{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;z-index:10;width:64px;height:64px;transition:opacity var(--transition);position:absolute;top:12px;right:12px}.compass-widget:hover{opacity:.9}.compass-widget.compass-dragging{cursor:grabbing}.compass-needle{transform-origin:50%;width:100%;height:100%;transition:transform .15s ease-out}.compass-dragging .compass-needle{transition:none}.compass-ring{fill:var(--bg-surface);fill-opacity:.85;stroke:var(--border);stroke-width:1.5px}html.dark .compass-ring{fill-opacity:.8}.compass-north{fill:var(--danger);opacity:.9}.compass-south{fill:var(--text-secondary);opacity:.5}.compass-center{fill:var(--text-secondary)}.compass-label{fill:var(--text-secondary);text-anchor:middle;dominant-baseline:central;pointer-events:none;font-size:8px;font-weight:700}.compass-label-n{fill:var(--danger);font-size:9px}.zoom-controls{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);align-items:center;gap:4px;padding:2px;display:flex;position:absolute;bottom:12px;left:12px}.zoom-controls button{cursor:pointer;border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-secondary);transition:all var(--transition);background:0 0;border:none;justify-content:center;align-items:center;font-size:16px;display:flex}.zoom-controls button:hover{background:var(--primary-light);color:var(--primary)}.zoom-controls button:focus-visible{box-shadow:var(--focus-ring);outline:none}.zoom-controls button:active{transform:scale(.93)}.zoom-controls span{text-align:center;min-width:44px;color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-size:11px}.heatmap-cell{pointer-events:none}.heatmap-legend-item{align-items:center;gap:8px;padding:4px 0;font-size:13px;display:flex}.heatmap-legend-swatch{border:1px solid var(--border);border-radius:3px;width:20px;height:14px}.sidebar{width:var(--sidebar-width);background:var(--bg-surface);border-left:1px solid var(--border);scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex-shrink:0;overflow-y:auto}.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.panel{border-bottom:1px solid var(--border);padding:12px}.panel h3{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;cursor:default;margin-bottom:10px;font-size:11px;font-weight:600}details.panel{padding:0}details.panel>summary{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition);align-items:center;gap:6px;padding:10px 12px;font-size:11px;font-weight:600;list-style:none;display:flex}details.panel>summary:hover{background:var(--bg)}details.panel>summary::-webkit-details-marker{display:none}details.panel>summary:after{content:"▸";color:var(--text-tertiary);flex-shrink:0;margin-left:auto;font-size:10px;transition:transform .15s}details.panel[open]>summary:after{transform:rotate(90deg)}details.panel>summary span{color:var(--text-tertiary);text-transform:none;letter-spacing:0;font-weight:400}details.panel>.panel-body{padding:0 12px 12px}.panel h3 span{color:var(--text-tertiary);text-transform:none;letter-spacing:0;font-weight:400}.panel-icon{color:var(--text-tertiary);flex-shrink:0;align-items:center;display:inline-flex}.panel h3{align-items:center;gap:6px;display:flex}.field-input-group{align-items:center;gap:0;display:flex}.field-input-group input,.field-input-group select{border-top-right-radius:0;border-bottom-right-radius:0}.field-unit{color:var(--text-tertiary);background:var(--bg);border:1px solid var(--border);border-radius:0 var(--radius-sm) var(--radius-sm) 0;white-space:nowrap;border-left:none;align-items:center;min-height:26px;padding:4px 6px;font-size:10px;line-height:1;display:flex}.field-value{color:var(--text);font-size:12px;font-weight:600}.field-row[title]{position:relative}.field-row input:disabled,.field-row select:disabled{opacity:.6;cursor:not-allowed}.panel[id$=Props]{background:var(--bg);border-left:3px solid var(--primary)}.field-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.field-row label{color:var(--text-secondary);white-space:nowrap;font-size:12px}.field-row input,.field-row select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);width:100px;color:var(--text);transition:border-color var(--transition);padding:4px 8px;font-size:12px}.field-row input:focus,.field-row select:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.field-row input:hover,.field-row select:hover{border-color:var(--border-hover)}.sprinkler-list,.zone-list{max-height:200px;overflow-y:auto}.sprinkler-item,.zone-item{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition);justify-content:space-between;align-items:center;padding:6px 8px;font-size:12px;display:flex}.sprinkler-item:hover,.zone-item:hover{background:var(--primary-light)}.sprinkler-item.selected,.zone-item.selected{background:var(--primary-light);outline:1px solid var(--primary)}.sprinkler-item .coords{color:var(--text-tertiary);font-size:11px}.sprinkler-item .name{font-weight:500}.sprinkler-item .delete-btn,.zone-item .delete-btn,.pipe-item .delete-btn,.tree-item .delete-btn,.valve-obj-item .delete-btn{cursor:pointer;width:20px;height:20px;color:var(--text-tertiary);opacity:0;transition:opacity var(--transition);background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;font-size:14px;display:flex}.sprinkler-item:hover .delete-btn,.zone-item:hover .delete-btn,.pipe-item:hover .delete-btn,.tree-item:hover .delete-btn,.valve-obj-item:hover .delete-btn{opacity:1}.sprinkler-item .delete-btn:hover,.zone-item .delete-btn:hover,.pipe-item .delete-btn:hover,.tree-item .delete-btn:hover,.valve-obj-item .delete-btn:hover{color:var(--danger);background:var(--danger-bg)}.empty-state{color:var(--text-tertiary);text-align:center;background:var(--bg);border-radius:var(--radius-md);border:1px dashed var(--border);padding:16px 8px;font-size:12px}.empty-state:before{content:"";opacity:.3;background:currentColor;width:32px;height:32px;margin:0 auto 8px;display:block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V9z'/%3E%3Cpolyline points='13 2 13 9 20 9'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V9z'/%3E%3Cpolyline points='13 2 13 9 20 9'/%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.stats-panel{background:var(--bg);border-left:3px solid var(--primary)}.stats-panel .stat-row{justify-content:space-between;padding:4px 0;font-size:12px;display:flex}.stats-panel .stat-row span:last-child{color:var(--primary);font-weight:600}.model-range{color:var(--text-tertiary);padding:2px 0;font-size:11px}.preset-info{background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border);margin-top:8px;padding:8px;font-size:11px;line-height:1.6}.preset-info .info-label{color:var(--text-tertiary)}.preset-info .info-value{color:var(--text);font-weight:600}.preset-info .info-row{justify-content:space-between;display:flex}.statusbar{background:var(--bg-surface);border-top:1px solid var(--border);height:var(--statusbar-height);color:var(--text-tertiary);flex-shrink:0;justify-content:space-between;align-items:center;padding:4px 12px;font-size:11px;display:flex}.statusbar #statusMode{color:var(--primary);font-weight:600}.boundary-polygon{fill:#52b78814;stroke:var(--primary);stroke-width:2px;stroke-linejoin:round}.boundary-vertex{fill:var(--bg-surface);stroke:var(--primary);stroke-width:2px;cursor:move}.boundary-vertex:hover{fill:var(--primary-light);r:6}.temp-line{stroke:var(--primary);stroke-width:1.5px;stroke-dasharray:6 3;pointer-events:none}.temp-polygon{fill:#52b7880d;stroke:var(--primary);stroke-width:1.5px;stroke-dasharray:6 3;pointer-events:none}.sprinkler-marker{cursor:move}.sprinkler-marker circle.body{fill:var(--info);stroke:var(--bg-surface);stroke-width:2px}.sprinkler-marker:hover circle.body{fill:#2563eb;r:7}.sprinkler-marker.selected circle.body{fill:var(--danger);stroke:var(--bg-surface);r:7}.sprinkler-label{font-size:11px;font-family:var(--font-family);fill:var(--text);text-anchor:middle;pointer-events:none;font-weight:500}.sprinkler-coords{fill:var(--text-secondary);text-anchor:middle;pointer-events:none;font-family:monospace;font-size:9px}.zone-polygon{fill:#8b5cf61a;stroke:#8b5cf6;stroke-width:1.5px;stroke-dasharray:6 3}.zone-vertex{fill:var(--bg-surface);stroke:#8b5cf6;stroke-width:2px;cursor:move}.axis-label{fill:var(--text-tertiary);font-family:monospace;font-size:10px}.canvas-container[data-mode=select]{cursor:default}.canvas-container[data-mode=boundary]{cursor:crosshair}.canvas-container[data-mode=sprinkler]{cursor:copy}.canvas-container[data-mode=zone],.canvas-container[data-mode=pipe]{cursor:crosshair}.canvas-container[data-mode=tree],.canvas-container[data-mode=valveObj]{cursor:copy}.canvas-container[data-mode=delete]{cursor:not-allowed}.pipe-polyline{fill:none;stroke:#64748b;stroke-linecap:round;stroke-linejoin:round;cursor:pointer}.pipe-polyline.selected{stroke:var(--danger);stroke-width:4px}.pipe-vertex{fill:var(--bg-surface);stroke:#64748b;stroke-width:2px;cursor:move;r:5}.pipe-vertex:hover{fill:#64748b;stroke:var(--bg-surface);r:6}.pipe-label{fill:#64748b;text-anchor:middle;pointer-events:none;font-family:monospace;font-size:9px}.pipe-snap-indicator{fill:#fbbf2433;stroke:var(--warning);stroke-width:2px;stroke-dasharray:3 2;pointer-events:none}.pipe-list{max-height:160px;overflow-y:auto}.pipe-item{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition);justify-content:space-between;align-items:center;padding:5px 8px;font-size:12px;display:flex}.pipe-item:hover{background:var(--primary-light)}.pipe-item.selected{background:var(--primary-light);outline:1px solid var(--primary)}.guide-line{stroke:#ec4899;stroke-width:.8px;stroke-dasharray:8 4;pointer-events:none;opacity:.5}.guide-label{fill:#ec4899;pointer-events:none;opacity:.6;font-family:monospace;font-size:9px}.smart-guide-line{stroke:#ec4899;stroke-width:.6px;stroke-dasharray:3 3;pointer-events:none;opacity:.7}.smart-guide-label{fill:#ec4899;pointer-events:none;font-family:monospace;font-size:9px;font-weight:600}.zone-stats{background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border);margin-top:8px;padding:8px;font-size:11px;line-height:1.6}.zone-stats .info-row{justify-content:space-between;display:flex}.zone-stats .info-label{color:var(--text-tertiary)}.zone-stats .info-value{color:var(--text);font-weight:600}.zone-warning{background:var(--danger-bg);border:1px solid var(--danger);border-radius:var(--radius-sm);color:var(--danger);margin-top:6px;padding:6px 8px;font-size:11px;font-weight:500}.zone-warning.warning-yellow{background:var(--warning-bg);border-color:var(--warning);color:var(--warning)}html:not(.dark) .zone-warning.warning-yellow{color:#b45309}.zone-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-right:6px;display:inline-block}.zone-status-dot.ok{background:var(--success)}.zone-status-dot.warning{background:var(--warning)}.zone-status-dot.over-capacity{background:var(--danger)}.zone-status-dot.no-valve{background:var(--text-tertiary)}.zone-badge{color:#fff;border-radius:3px;margin-left:4px;padding:1px 5px;font-size:10px;font-weight:500;display:inline-block}.zone-sprinkler-list{max-height:120px;margin-top:6px;overflow-y:auto}.zone-sp-item{transition:background var(--transition);border-radius:3px;justify-content:space-between;align-items:center;padding:3px 6px;font-size:11px;display:flex}.zone-sp-item:hover{background:var(--primary-light)}.tree-crown{cursor:move;pointer-events:all}.tree-crown.tree{fill:#4caf504d;stroke:#5d4037;stroke-width:1.5px}.tree-crown.thuja{fill:#2e7d324d;stroke:#004d40;stroke-width:1.5px}.tree-crown.bush{fill:#8bc34a59;stroke:#33691e;stroke-width:1.5px}.tree-crown.flower{fill:#e91e6340;stroke:#c2185b;stroke-width:1.5px}.tree-crown.pond{fill:#2196f34d;stroke:#0d47a1;stroke-width:1.5px}.tree-crown.gazebo{fill:#79554840;stroke:#4e342e;stroke-width:1.5px}.tree-crown.pool{fill:#1565c04d;stroke:#0d47a1;stroke-width:1.5px}.tree-crown.terrace{fill:#8d6e634d;stroke:#5d4037;stroke-width:1.5px}.tree-crown.building{fill:#607d8b4d;stroke:#37474f;stroke-width:1.5px}.tree-crown.furniture{fill:#9e9e9e4d;stroke:#616161;stroke-width:1.5px}.tree-crown.sandbox{fill:#ffb74d4d;stroke:#e65100;stroke-width:1.5px}.tree-crown.selected{stroke-width:3px;stroke-dasharray:4 2}.tree-label{font-size:10px;font-family:var(--font-family);fill:#33691e;text-anchor:middle;pointer-events:none;font-weight:500}html.dark .tree-label{fill:var(--success)}.tree-list{max-height:160px;overflow-y:auto}.tree-item{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition);justify-content:space-between;align-items:center;padding:5px 8px;font-size:12px;display:flex}.tree-item:hover{background:var(--primary-light)}.tree-item.selected{background:var(--primary-light);outline:1px solid var(--primary)}.valve-obj-marker{cursor:move}.valve-obj-marker .body{fill:var(--danger);stroke:var(--bg-surface);stroke-width:1.5px}.valve-obj-marker:hover .body{fill:#dc2626}.valve-obj-marker.selected .body{fill:#f97316;stroke:var(--bg-surface);stroke-width:2px}.valve-obj-label{fill:var(--danger);text-anchor:middle;pointer-events:none;font-family:monospace;font-size:9px}.valve-obj-list{max-height:160px;overflow-y:auto}.valve-obj-item{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition);justify-content:space-between;align-items:center;padding:5px 8px;font-size:12px;display:flex}.valve-obj-item:hover{background:var(--primary-light)}.valve-obj-item.selected{background:var(--primary-light);outline:1px solid var(--primary)}.weather-station-marker{cursor:move}.weather-station-marker:hover rect{fill:#37474f}.weather-station-marker.selected rect{stroke:#ff9800;stroke-width:2px}.weather-station-label{fill:#455a64;text-anchor:middle;pointer-events:none;font-family:monospace;font-size:9px}.weather-station-list{max-height:160px;overflow-y:auto}.weather-station-item{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition);justify-content:space-between;align-items:center;padding:5px 8px;font-size:12px;display:flex}.weather-station-item:hover{background:var(--primary-light)}.weather-station-item.selected{background:var(--primary-light);outline:1px solid var(--primary)}.tier-toast{background:var(--warning);color:#fff;border-radius:var(--radius-md);z-index:9999;opacity:0;pointer-events:none;box-shadow:var(--shadow-lg);padding:10px 24px;font-size:13px;font-weight:500;transition:opacity .3s,transform .3s;position:fixed;bottom:60px;left:50%;transform:translate(-50%)translateY(20px)}.tier-toast--visible{opacity:1;transform:translate(-50%)translateY(0)}.collab-indicator{z-index:100;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:center;gap:4px;padding:4px 8px;display:flex;position:fixed;top:60px;right:20px}.collab-avatar{color:#fff;border:2px solid var(--bg-surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:600;display:flex}.sprinkler-marker.dragging,.tree-crown.dragging,.valve-obj-marker.dragging,.weather-station-marker.dragging{opacity:.5;filter:brightness(1.2)}@keyframes planner-place-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.sprinkler-marker.placing,.tree-crown.placing,.valve-obj-marker.placing,.weather-station-marker.placing,.zone-polygon.placing{animation:.2s ease-out planner-place-in}@keyframes planner-delete-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.85)}}.sprinkler-marker.deleting,.tree-crown.deleting,.valve-obj-marker.deleting,.weather-station-marker.deleting,.zone-polygon.deleting{pointer-events:none;animation:.25s ease-in forwards planner-delete-out}@media (prefers-reduced-motion:reduce){.sprinkler-marker.placing,.tree-crown.placing,.valve-obj-marker.placing,.weather-station-marker.placing,.zone-polygon.placing,.sprinkler-marker.deleting,.tree-crown.deleting,.valve-obj-marker.deleting,.weather-station-marker.deleting,.zone-polygon.deleting{animation:none}.sprinkler-marker.dragging,.tree-crown.dragging,.valve-obj-marker.dragging,.weather-station-marker.dragging{opacity:.7}}.onboarding-overlay{z-index:10000;pointer-events:auto;clip-path:polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%, var(--cutout-left) var(--cutout-top), var(--cutout-left) calc(var(--cutout-top) + var(--cutout-height)), calc(var(--cutout-left) + var(--cutout-width)) calc(var(--cutout-top) + var(--cutout-height)), calc(var(--cutout-left) + var(--cutout-width)) var(--cutout-top), var(--cutout-left) var(--cutout-top), 0% 0%);--cutout-top:0px;--cutout-left:0px;--cutout-width:0px;--cutout-height:0px;background:#0000008c;transition:clip-path .3s;position:fixed;inset:0}.onboarding-tooltip{z-index:10001;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:240px;max-width:320px;padding:16px 20px;transition:top .3s,left .3s;position:fixed}.onboarding-progress{justify-content:center;gap:6px;margin-bottom:10px;display:flex}.onboarding-dot{background:var(--border);width:8px;height:8px;transition:all var(--transition);border-radius:50%}.onboarding-dot.active{background:var(--primary);transform:scale(1.25)}.onboarding-dot.done{background:var(--accent)}.onboarding-step-indicator{color:var(--text-tertiary);margin-bottom:6px;font-size:11px}.onboarding-title{color:var(--text);margin-bottom:6px;font-size:15px;font-weight:600}.onboarding-desc{color:var(--text-secondary);margin-bottom:14px;font-size:13px;line-height:1.5}.onboarding-actions{justify-content:flex-end;gap:8px;display:flex}.onboarding-btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);border:none;padding:6px 16px;font-size:13px;font-weight:500}.onboarding-skip{color:var(--text-secondary);background:0 0}.onboarding-skip:hover{background:var(--bg)}.onboarding-next{background:var(--primary);color:#fff}html.dark .onboarding-next{color:#0f172a}.onboarding-next:hover{background:var(--primary-hover)}.onboarding-pulse{z-index:10002;pointer-events:auto;animation:1.5s ease-in-out infinite onboarding-pulse-ring;position:relative}@keyframes onboarding-pulse-ring{0%,to{box-shadow:0 0 #2d6a4f66}50%{box-shadow:0 0 0 6px #2d6a4f00}}@media (prefers-reduced-motion:reduce){.onboarding-pulse{box-shadow:0 0 0 3px var(--primary);animation:none}.onboarding-overlay,.onboarding-tooltip{transition:none}}.bom-overlay{z-index:5000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.bom-overlay[hidden]{display:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.bom-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);flex-direction:column;width:90vw;max-width:800px;max-height:80vh;animation:.2s slideUp;display:flex}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.bom-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.bom-header h2{color:var(--text);font-size:16px;font-weight:600}.bom-close-btn{cursor:pointer;width:32px;height:32px;color:var(--text-tertiary);border-radius:var(--radius-md);transition:all var(--transition);background:0 0;border:none;justify-content:center;align-items:center;font-size:20px;display:flex}.bom-close-btn:hover{background:var(--danger-bg);color:var(--danger)}.bom-close-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.bom-body{flex:1;padding:16px 20px;overflow-y:auto}#upgradeOverlay .bom-modal{text-align:center;max-width:440px}#upgradeOverlay .bom-body{padding:24px 32px}#upgradeOverlay .bom-body p{color:var(--text-secondary);margin-bottom:16px;font-size:14px;line-height:1.6}.upgrade-cta{background:var(--primary);color:#fff;border-radius:var(--radius-md);transition:all var(--transition);padding:12px 32px;font-size:15px;font-weight:600;text-decoration:none;display:inline-block}html.dark .upgrade-cta{color:#0f172a}.upgrade-cta:hover{background:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.modal-overlay{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-overlay[hidden]{display:none}.modal-content{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-lg);overflow-y:auto}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3{color:var(--text);font-size:16px;font-weight:600}.modal-close{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition);background:0 0;border:none;padding:4px;font-size:20px;line-height:1}.modal-close:hover{color:var(--danger);background:var(--danger-bg)}.modal-body{padding:24px}.modal-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.form-group{margin-bottom:16px}.form-group label{color:var(--text);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-group input,.form-group textarea,.form-group select{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);width:100%;color:var(--text);transition:border-color var(--transition);padding:10px 12px;font-size:14px}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.form-group small{color:var(--text-tertiary);margin-top:4px;font-size:12px;display:block}.projects-header-actions{align-items:center;gap:8px;display:flex}.sketch-modal{position:relative}.sketch-subtitle{color:var(--text-secondary);margin-bottom:16px;font-size:14px}.sketch-upload-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);text-align:center;cursor:pointer;transition:all var(--transition);padding:40px 20px}.sketch-upload-zone:hover,.sketch-upload-zone.drag-over{border-color:var(--primary);background:var(--primary-light)}.sketch-upload-icon{margin-bottom:12px;font-size:48px}.sketch-upload-zone p{color:var(--text-secondary);margin:4px 0;font-size:14px}.sketch-requirements{color:var(--text-tertiary);font-size:12px}.sketch-preview{text-align:center;margin:16px 0}.sketch-preview img{border-radius:var(--radius-lg);border:1px solid var(--border);object-fit:contain;max-width:100%;max-height:300px}.sketch-name-field{margin-top:16px}.sketch-name-field label{color:var(--text);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.sketch-name-field input{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text);background:var(--bg);transition:border-color var(--transition);padding:10px 12px;font-size:14px}.sketch-name-field input:focus{border-color:var(--primary);outline:none}.sketch-loading{background:var(--bg-surface);border-radius:var(--radius-xl);z-index:1;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.sketch-loading[hidden]{display:none}.sketch-loading .spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;margin-bottom:12px;animation:.8s linear infinite spin}.sketch-loading p{color:var(--text-secondary);font-size:14px}@keyframes spin{to{transform:rotate(360deg)}}.btn-text{color:var(--danger);cursor:pointer;background:0 0;border:none;margin-top:8px;padding:4px 8px;font-size:13px}.btn-text:hover{text-decoration:underline}.custom-dialog-overlay{z-index:10000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;justify-content:center;align-items:center;animation:.15s dialog-fade-in;display:flex;position:fixed;inset:0}@keyframes dialog-fade-in{0%{opacity:0}to{opacity:1}}.custom-dialog{background:var(--bg-surface,#fff);width:calc(100% - 32px);max-width:400px;box-shadow:0 20px 60px #0003, 0 0 0 1px var(--border,#e5e7eb);border-radius:12px;padding:24px;animation:.15s dialog-slide-in}@keyframes dialog-slide-in{0%{opacity:0;transform:translateY(-12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.custom-dialog-title{color:var(--text,#111827);margin-bottom:8px;font-size:18px;font-weight:700}.custom-dialog-message{color:var(--text-secondary,#6b7280);margin-bottom:16px;font-size:14px;line-height:1.6}.custom-dialog-input{border:1px solid var(--border,#e5e7eb);border-radius:var(--radius-sm,6px);background:var(--bg,#fafafa);width:100%;color:var(--text,#111827);transition:border-color var(--transition,.15s ease), box-shadow var(--transition,.15s ease);outline:none;margin-bottom:16px;padding:10px 12px;font-size:14px}.custom-dialog-input:focus{border-color:var(--primary,#2d6a4f);box-shadow:var(--focus-ring,0 0 0 2px #2d6a4f4d)}.custom-dialog-buttons{justify-content:flex-end;gap:8px;display:flex}.custom-dialog-btn{border-radius:var(--radius-sm,6px);cursor:pointer;transition:background var(--transition,.15s ease), border-color var(--transition,.15s ease);border:1px solid #0000;padding:8px 20px;font-size:14px;font-weight:500}.custom-dialog-btn:focus-visible{box-shadow:var(--focus-ring,0 0 0 2px #2d6a4f4d);outline:none}.custom-dialog-btn-primary{background:var(--primary,#2d6a4f);color:#fff;border-color:var(--primary,#2d6a4f)}.custom-dialog-btn-primary:hover{background:var(--primary-hover,#1b4332);border-color:var(--primary-hover,#1b4332)}.custom-dialog-btn-primary:disabled{opacity:.5;cursor:not-allowed}.custom-dialog-btn-secondary{color:var(--text-secondary,#6b7280);border-color:var(--border,#e5e7eb);background:0 0}.custom-dialog-btn-secondary:hover{background:var(--bg,#fafafa);border-color:var(--border-hover,#d1d5db)}.custom-dialog-stars{justify-content:center;gap:4px;margin-bottom:16px;display:flex}.custom-dialog-star{cursor:pointer;color:var(--border,#e5e7eb);background:0 0;border:none;padding:4px;font-size:32px;line-height:1;transition:color .1s,transform .1s}.custom-dialog-star:hover,.custom-dialog-star.active{color:var(--warning,#f59e0b)}.custom-dialog-star:hover{transform:scale(1.15)}.custom-dialog-star:focus-visible{box-shadow:var(--focus-ring,0 0 0 2px #2d6a4f4d);border-radius:4px;outline:none}@media (width<=480px){.custom-dialog{max-width:calc(100% - 24px);padding:20px}.custom-dialog-star{font-size:28px}}@media (width<=768px){.modal-content{max-height:95vh;margin:10px}}.shortcut-help-body{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px 32px;padding:20px 24px;display:grid;overflow-y:auto}.shortcut-help-section h3{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);border-bottom:1px solid var(--border);margin-bottom:10px;padding-bottom:6px;font-size:13px;font-weight:600}.shortcut-list{grid-template-columns:auto 1fr;align-items:center;gap:8px 14px;font-size:13px;display:grid}.shortcut-list dt{white-space:nowrap;justify-self:end;align-items:center;gap:4px;display:flex}.shortcut-list dd{color:var(--text);margin:0}.shortcut-list kbd{color:var(--text);background:var(--bg-muted,#f0f0f0);border:1px solid var(--border);white-space:nowrap;border-bottom-width:2px;border-radius:4px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:600;line-height:1.2;display:inline-block}html.dark .shortcut-list kbd{background:#ffffff14}@media (width<=600px){.shortcut-help-body{grid-template-columns:1fr;gap:16px}}.dashboard-page{background:var(--paper);padding:0}.dashboard-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1.3fr auto;align-items:end;gap:40px;padding:40px 40px 32px;display:grid}.dashboard-hero-marker{color:var(--red-mark);margin-bottom:16px;display:block}.dashboard-user-name{font-family:var(--font-mono);letter-spacing:.16em;color:var(--red-mark);text-transform:uppercase;font-size:10px;font-weight:600}.dashboard-hero-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;margin:12px 0 0;padding:0;font-size:clamp(56px,7vw,104px);font-weight:400;line-height:.92}.dashboard-hero-title em{color:var(--blue);font-style:italic}.dashboard-hero-actions{flex-wrap:wrap;gap:10px;display:flex}.tier-badge{border:var(--rule-thin) solid var(--ink);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;background:var(--paper);color:var(--ink);align-items:center;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.tier-badge.free{border-color:var(--ink-3);color:var(--ink-3);background:var(--paper)}.tier-badge.lite{border-color:var(--blue);color:var(--blue);background:var(--blue-tint)}.tier-badge.pro{border-color:var(--ink);background:var(--ink);color:var(--paper)}.dashboard-org-row{padding:0 40px}.dashboard-org-row .org-switcher:not([hidden]){border-bottom:var(--rule-thin) dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-2);padding:16px 0;font-size:11px}.dashboard-stats{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:repeat(3,1fr);gap:0;display:grid}.stat-card{border-right:var(--rule-thin) solid var(--ink-3);background:var(--paper);border-radius:0;padding:20px 28px;transition:background .15s}.stat-card:last-child{border-right:0}.stat-card:hover{background:var(--paper-2);box-shadow:none}.stat-card-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.stat-card-label{font-family:var(--font-mono);letter-spacing:.14em;color:var(--red-mark);text-transform:uppercase;font-size:10px;font-weight:600}.stat-card-label:before{content:"▸ ";color:var(--red-mark)}.stat-card-value{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:11px}.stat-progress{background:var(--paper-2);border:var(--rule-thin) solid var(--ink-3);border-radius:0;height:4px;overflow:hidden}.stat-progress-bar{border-radius:0;height:100%;transition:width .3s}.stat-progress-bar.ok{background:var(--blue)}.stat-progress-bar.warning{background:var(--amber-mark)}.stat-progress-bar.danger{background:var(--red-mark)}.upgrade-banner{background:var(--paper-2);border-bottom:var(--rule-norm) solid var(--ink);color:var(--ink);font-family:var(--font-mono);letter-spacing:.06em;border-radius:0;justify-content:space-between;align-items:center;gap:20px;margin:0;padding:18px 40px;font-size:12px;display:flex}.upgrade-banner:before{content:"▸ ";color:var(--red-mark);margin-right:4px;font-weight:700}.upgrade-banner p{flex:1;margin:0;font-size:12px;font-weight:500}.upgrade-banner .bp-btn{flex-shrink:0}.org-panel:not([hidden]){border-bottom:var(--rule-norm) solid var(--ink);background:var(--paper);font-family:var(--font-mono);padding:24px 40px}.dashboard-projects{border-bottom:var(--rule-norm) solid var(--ink);padding:40px 40px 60px}.projects-header.bp-section-header{margin-bottom:24px}.projects-header .title{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin:0;font-size:11px;font-weight:600}.projects-grid{border:var(--rule-norm) solid var(--ink);background:var(--paper);grid-template-columns:repeat(3,1fr);gap:0;display:grid}.project-card{background:var(--paper);border:0;border-right:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);border-radius:0;flex-direction:column;gap:12px;min-height:260px;padding:22px 22px 16px;transition:background .15s;display:flex;position:relative;overflow:hidden}.project-card:nth-child(3n){border-right:0}.project-card:nth-last-child(-n+3):not(:nth-child(3n+1))~.project-card{border-bottom:0}.project-card:hover{background:var(--blue-tint);box-shadow:none;transform:none}.project-card-preview{background:var(--paper-2);border:var(--rule-thin) dashed var(--ink-3);justify-content:center;align-items:center;height:130px;display:flex;overflow:hidden}.project-card-preview svg{max-width:100%;max-height:100%}.project-card-info{flex-direction:column;flex:1;gap:4px;padding:0;display:flex}.project-card-name{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 2px;font-size:22px;font-weight:400;line-height:1.1;overflow:hidden}.project-card-meta{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-3);text-transform:uppercase;margin:0;font-size:10px}.project-card-stats{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-2);text-transform:uppercase;gap:14px;margin-top:8px;font-size:10px;display:flex}.project-card-stats span{align-items:center;gap:4px;display:inline-flex}.project-card-actions{border-top:var(--rule-thin) dashed var(--ink-3);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:10px;display:flex}.project-card .btn-primary,.project-card .btn-primary.btn-sm{border:var(--rule-norm) solid var(--ink);background:var(--ink);color:var(--paper);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:0;align-items:center;gap:6px;padding:6px 14px;font-size:10px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.project-card .btn-primary:hover{background:var(--blue);border-color:var(--blue);color:var(--paper)}.project-card .btn-danger{border:var(--rule-thin) solid var(--red-mark);color:var(--red-mark);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;padding:6px 10px;font-size:10px;font-weight:600;transition:all .15s}.project-card .btn-danger:hover{background:var(--red-mark);color:var(--paper)}.projects-empty{text-align:center;border:var(--rule-norm) solid var(--ink);background:var(--paper);flex-direction:column;align-items:center;gap:20px;padding:80px 24px;display:flex}.projects-empty-marker{color:var(--red-mark)}.projects-empty-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;margin:0;font-size:clamp(32px,4.5vw,52px);font-weight:400;line-height:1}.projects-empty-sub{font-family:var(--font-display);margin:0;font-size:clamp(32px,4.5vw,52px);line-height:1}.projects-empty-sub em{color:var(--blue);font-style:italic}@media (width<=1024px){.projects-grid{grid-template-columns:repeat(2,1fr)}.project-card:nth-child(3n){border-right:var(--rule-norm) solid var(--ink)}.project-card:nth-child(2n){border-right:0}.project-card:nth-last-child(-n+3):not(:nth-child(3n+1))~.project-card{border-bottom:var(--rule-norm) solid var(--ink)}.project-card:nth-last-child(-n+2):not(:nth-child(odd))~.project-card{border-bottom:0}.dashboard-stats{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.dashboard-hero{grid-template-columns:1fr;gap:20px;padding:28px 20px}.dashboard-hero-actions{width:100%}.dashboard-hero-actions .bp-btn{flex:1;justify-content:center}.dashboard-org-row{padding:0 20px}.dashboard-stats{grid-template-columns:1fr}.stat-card{border-right:0;border-bottom:var(--rule-thin) solid var(--ink-3)}.stat-card:last-child{border-bottom:0}.upgrade-banner{text-align:left;flex-direction:column;align-items:flex-start;padding:16px 20px}.dashboard-projects{padding:28px 20px 40px}.projects-grid{grid-template-columns:1fr}.project-card{border-bottom:var(--rule-norm) solid var(--ink);min-height:220px;border-right:0!important}.project-card:last-child{border-bottom:0}.projects-header.bp-section-header{grid-template-columns:auto 1fr auto;gap:16px}}.marketplace-page{background:var(--paper);padding:0}.marketplace-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1.3fr 1fr;align-items:end;gap:48px;padding:60px 40px;display:grid}.marketplace-hero-marker{color:var(--red-mark);margin-bottom:16px;display:block}.marketplace-hero-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;margin:0;padding:0;font-size:clamp(56px,8vw,128px);font-weight:400;line-height:.95}.marketplace-hero-title em{color:var(--blue);font-style:italic}.marketplace-hero-lede{font-family:var(--font-mono);color:var(--ink-2);max-width:460px;margin:0;font-size:13px;line-height:1.7}.marketplace-filters{background:var(--paper-2);border-bottom:var(--rule-norm) solid var(--ink);flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:20px 40px;display:flex}.marketplace-filters-label{color:var(--ink-3);margin-right:8px}.marketplace-search{flex:1;min-width:220px;max-width:300px}.marketplace-search input{border:var(--rule-norm) solid var(--ink);width:100%;font-family:var(--font-mono);letter-spacing:.04em;background:var(--paper);color:var(--ink);border-radius:0;padding:8px 12px;font-size:11px;transition:background .15s}.marketplace-search input:focus{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);outline:none}.category-tabs{border:var(--rule-norm) solid var(--ink);flex-wrap:wrap;gap:0;display:flex}.category-tab{border:0;border-right:var(--rule-thin) solid var(--ink);background:var(--paper);cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);white-space:nowrap;border-radius:0;padding:7px 14px;font-size:11px;font-weight:500;transition:background .15s,color .15s}.category-tab:last-child{border-right:0}.category-tab:hover:not(.active){background:var(--blue-tint);color:var(--ink)}.category-tab.active{background:var(--ink);color:var(--paper);font-weight:500}.marketplace-sort select{border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:var(--paper);color:var(--ink);cursor:pointer;border-radius:0;padding:8px 12px;font-size:11px}.marketplace-publish-btn{margin-left:auto;font-size:11px}.marketplace-my-links{border-bottom:var(--rule-thin) dashed var(--ink-3);background:var(--paper);gap:24px;padding:16px 40px;display:flex}.btn-link{color:var(--blue);cursor:pointer;font-family:var(--font-mono);letter-spacing:.08em;border:0;border-bottom:var(--rule-thin) dotted var(--blue);background:0 0;padding:4px 0;font-size:11px;font-weight:500;text-decoration:none}.btn-link:hover{border-bottom-style:solid}.btn-link{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:14px;font-weight:500;text-decoration:none}.btn-link:hover{text-decoration:underline}.marketplace-grid{border:var(--rule-norm) solid var(--ink);grid-template-columns:repeat(3,1fr);gap:0;margin:40px;display:grid}.marketplace-empty{text-align:center;font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-3);text-transform:uppercase;grid-column:1/-1;padding:80px 20px;font-size:12px}.template-card{background:var(--paper);border:0;border-right:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);cursor:pointer;border-radius:0;flex-direction:column;gap:10px;min-height:220px;padding:24px 22px;transition:background .15s;display:flex;position:relative;overflow:hidden}.template-card:nth-child(3n){border-right:0}.template-card:nth-last-child(-n+3):not(:nth-child(3n+1))~.template-card{border-bottom:0}.template-card:hover{box-shadow:none;background:var(--blue-tint);transform:none}.template-card-preview{background:var(--paper-2);border:var(--rule-thin) dashed var(--ink-3);justify-content:center;align-items:center;height:100px;display:flex;overflow:hidden}.template-card-preview svg{max-width:100%;max-height:100%}.template-card-info{flex-direction:column;gap:6px;padding:0;display:flex}.template-card-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 2px;font-size:24px;font-weight:400;line-height:1.05;overflow:hidden}.template-card-author{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-3);text-transform:uppercase;margin:0;font-size:10px}.template-card-rating{align-items:center;gap:4px;margin-bottom:6px;display:flex}.star{font-size:14px;line-height:1}.star.filled{color:var(--warning)}.star.half{color:var(--warning);opacity:.6}.star.empty{color:var(--border)}.rating-count{color:var(--text-tertiary);font-size:12px}.template-card-stats{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-3);gap:12px;font-size:10px;display:flex}.template-card-footer{border-top:var(--rule-thin) dashed var(--ink-3);justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;display:flex}.price-badge{border:var(--rule-thin) solid var(--ink);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:0;align-items:center;padding:3px 8px;font-size:11px;font-weight:500;display:inline-flex}.price-badge.free{color:var(--blue);border-color:var(--blue);background:0 0}.price-badge.paid{background:var(--ink);color:var(--paper);border-color:var(--ink)}.marketplace-pagination{justify-content:center;gap:8px;padding:20px 0;display:flex}.pagination-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);cursor:pointer;color:var(--text-secondary);transition:all var(--transition);padding:6px 12px;font-size:13px}.pagination-btn:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.pagination-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}html.dark .pagination-btn.active{color:#0f172a}.detail-modal{max-width:700px}.detail-preview{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);justify-content:center;align-items:center;min-height:100px;margin-bottom:16px;padding:16px;display:flex}.detail-boundary-svg{width:100%;max-height:200px}.detail-info{margin-bottom:16px}.detail-author{color:var(--text-secondary);margin-bottom:8px;font-size:13px}.detail-description{color:var(--text);margin-bottom:12px;font-size:14px;line-height:1.6}.detail-stats{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.detail-stats span{background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);white-space:nowrap;border-radius:100px;align-items:center;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.detail-rating{align-items:center;gap:6px;margin-bottom:16px;font-size:14px;display:flex}.detail-rating .star.filled{color:#f59e0b}.detail-price{color:var(--primary);font-size:20px;font-weight:700}.detail-actions{gap:8px;display:flex}.detail-reviews{border-top:1px solid var(--border);margin-top:8px;padding-top:16px}.detail-reviews h4{margin-bottom:12px;font-size:15px;font-weight:600}.review-item{border-bottom:1px solid var(--border);padding:10px 0}.review-item:last-child{border-bottom:none}.review-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.review-comment{color:var(--text-secondary);font-size:13px;line-height:1.4}.comments-section{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.comments-title{color:var(--text);margin-bottom:12px;font-size:15px;font-weight:600}.comment-form{align-items:flex-start;gap:8px;margin-bottom:16px;display:flex}.comment-input{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text);resize:vertical;min-height:40px;max-height:120px;transition:border-color var(--transition);flex:1;padding:10px 12px;font-family:inherit;font-size:13px}.comment-input:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.comment-submit{flex-shrink:0}.comment-login-hint{color:var(--text-secondary);margin-bottom:12px;font-size:13px}.comments-list{flex-direction:column;display:flex}.no-comments{color:var(--text-tertiary);padding:8px 0;font-size:13px}.comment-item{border-bottom:1px solid var(--border);padding:10px 0}.comment-item:last-child{border-bottom:none}.comment-item.comment-reply{border-left:2px solid var(--border);border-bottom:none;margin-left:24px;padding-left:12px}.comment-header{align-items:center;gap:8px;margin-bottom:4px;font-size:13px;display:flex}.comment-header strong{color:var(--text)}.comment-time{color:var(--text-tertiary);font-size:12px}.comment-author-badge{background:var(--primary-light);color:var(--primary);border-radius:100px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-block}.comment-body{color:var(--text);margin-bottom:4px;font-size:13px;line-height:1.5}.comment-actions{gap:8px;display:flex}.comment-reply-btn,.comment-delete{cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition);background:0 0;border:none;padding:2px 4px;font-size:12px}.comment-reply-btn{color:var(--primary)}.comment-reply-btn:hover{background:var(--primary-light)}.comment-delete{color:var(--danger,#ef4444)}.comment-delete:hover{background:var(--danger-bg,#fef2f2)}.comment-replies{margin-top:4px}.reply-form{align-items:flex-start;gap:8px;margin-top:8px;display:flex}.reply-input{min-height:36px}@media (width<=768px){.marketplace-filters{flex-direction:column;align-items:stretch}.marketplace-search{min-width:0}.category-tabs{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.marketplace-grid{grid-template-columns:1fr}.detail-modal{margin:10px}.detail-stats{gap:8px}.detail-stats span{padding:3px 8px;font-size:11px}.comment-form,.reply-form{flex-direction:column}.comment-submit{align-self:flex-end}}.auth-body{background:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--font-sans);-webkit-user-select:auto;user-select:auto;margin:0;padding:0;font-size:14px;display:block;overflow:auto}.au-stage{background:var(--paper);border:var(--rule-norm) solid var(--ink);grid-template-columns:minmax(0,2fr) minmax(0,3fr);min-height:100vh;display:grid}.au-left{background:var(--paper);border-right:var(--rule-norm) solid var(--ink);flex-direction:column;justify-content:space-between;gap:48px;padding:64px 56px;display:flex;position:relative;overflow:hidden}.au-left:before{content:"";background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);opacity:.5;pointer-events:none;z-index:0;background-size:8px 8px;position:absolute;inset:0}.au-left>*{z-index:1;position:relative}.au-marker{margin-bottom:32px;font-weight:600;display:inline-block;color:var(--red-mark)!important}.au-title{font-family:var(--font-display);letter-spacing:-.025em;color:var(--ink);text-transform:none;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;border:0;max-width:100%;margin:0 0 24px;padding:0;font-size:clamp(64px,8vw,120px);font-weight:400;line-height:.92}.au-title em{color:var(--blue);font-style:italic}.au-sub{font-family:var(--font-mono);color:var(--ink-2);letter-spacing:.04em;max-width:480px;margin:0;font-size:13px;line-height:1.7}.au-foot{border-top:1px dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);grid-template-columns:repeat(3,1fr);gap:24px;padding-top:24px;font-size:10px;display:grid}.au-foot b{color:var(--ink);margin-top:6px;font-size:11px;font-weight:500;display:block}.au-right{background:var(--paper-2);justify-content:center;align-items:center;padding:48px 32px;display:flex;position:relative}.au-right .auth-card{background:var(--paper);width:100%;max-width:480px;color:var(--ink);border:var(--rule-norm) solid var(--ink);box-shadow:none;border-radius:0;margin:0 auto;padding:40px 36px 32px;position:relative}.au-right .auth-lang-switcher{margin:0;display:block;position:absolute;top:16px;right:16px}.au-right .auth-lang-switcher .lang-select{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);background:var(--paper);border:var(--rule-norm) solid var(--ink);cursor:pointer;border-radius:0;padding:4px 8px;font-size:10px}.au-right .auth-lang-switcher .lang-select:hover,.au-right .auth-lang-switcher .lang-select:focus{background:var(--blue-tint);color:var(--blue);border-color:var(--blue);outline:none}.auth-logo{text-align:left;margin-bottom:24px}.auth-logo h1{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink);border:0;margin:0;padding:0;font-size:13px;font-weight:700}.auth-logo p{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:6px 0 0;font-size:10px}.auth-title{font-family:var(--font-display);color:var(--ink);text-transform:none;letter-spacing:-.01em;border:0;margin:0 0 24px;padding:0;font-size:32px;font-style:italic;font-weight:400;line-height:1.1}.auth-form .form-group{margin-bottom:16px}.auth-form label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin:0 0 6px;font-size:10px;font-weight:500;display:block}.auth-form input{background:var(--paper);width:100%;color:var(--ink);border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.02em;box-sizing:border-box;border-radius:0;padding:12px 14px;font-size:13px;transition:border-color .15s,box-shadow .15s}.auth-form input::placeholder{color:var(--ink-3);opacity:.7}.auth-form input:focus{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);outline:none}.auth-forgot{text-align:right;margin:-4px 0 20px}.auth-forgot a{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--blue);border-bottom:1px dotted var(--blue);font-size:10px;text-decoration:none}.auth-forgot a:hover{border-bottom-style:solid}.auth-error{background:var(--paper);color:var(--red-mark);border:var(--rule-norm) solid var(--red-mark);font-family:var(--font-mono);letter-spacing:.02em;border-radius:0;margin-bottom:16px;padding:10px 14px;font-size:12px}.auth-promo-banner{background:var(--blue-tint);color:var(--ink);border:var(--rule-norm) solid var(--blue);font-family:var(--font-mono);letter-spacing:.06em;text-align:left;background-image:none;border-radius:0;margin-bottom:20px;padding:12px 14px;font-size:11px;line-height:1.5}.auth-promo-banner strong{color:var(--blue);letter-spacing:.1em;font-weight:700;display:inline}.auth-submit{background:var(--ink);width:100%;color:var(--paper);border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;border-radius:0;justify-content:center;align-items:center;gap:8px;margin-top:8px;padding:14px 20px;font-size:12px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.auth-submit:hover{background:var(--blue);border-color:var(--blue);color:var(--paper)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-divider{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:12px;margin:24px 0 12px;font-size:10px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--ink-3);opacity:.5;flex:1;height:1px}.auth-divider span{white-space:nowrap;padding:0}.auth-google{background:var(--paper);width:100%;color:var(--ink);border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;border-radius:0;justify-content:center;align-items:center;gap:10px;padding:12px 16px;font-size:11px;font-weight:500;transition:background .15s;display:inline-flex}.auth-google:hover{background:var(--paper-2)}.auth-google svg{flex-shrink:0;width:18px;height:18px}.auth-fine{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-3);text-align:center;margin:18px 0 0;font-size:10px;line-height:1.6}.auth-fine a{color:var(--blue);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:.5px}.auth-fine a:hover{text-decoration-thickness:1.5px}.auth-footer{border-top:1px dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-3);text-align:center;margin-top:28px;padding-top:20px;font-size:11px}.auth-footer a{color:var(--blue);border-bottom:1px dotted var(--blue);margin-left:6px;font-weight:500;text-decoration:none}.auth-footer a:hover{border-bottom-style:solid}@media (width<=900px){.au-stage{border:0;grid-template-columns:1fr;min-height:auto}.au-left{border-right:0;border-bottom:var(--rule-norm) solid var(--ink);gap:32px;padding:40px 28px}.au-title{font-size:clamp(40px,9vw,64px)}.au-foot{gap:12px;font-size:9px}.au-foot b{font-size:10px}.au-right{padding:32px 16px}}@media (width<=480px){.au-right .auth-card{padding:32px 20px 24px}.auth-title{font-size:26px}.au-left{padding:32px 20px}}.pricing-page{max-width:none;margin:0;padding:0}.pricing-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1fr auto;grid-template-areas:"marker marker""title toggle""sub toggle";align-items:start;gap:20px 48px;padding:64px 40px 48px;display:grid}.pricing-section-marker{color:var(--red-mark);grid-area:marker}.pricing-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;grid-area:title;margin:0;padding-bottom:0;font-size:clamp(48px,6vw,88px);font-weight:400;line-height:.95}.pricing-title em{color:var(--blue);font-style:italic}.pricing-subtitle{font-family:var(--font-sans);color:var(--ink-2);grid-area:sub;max-width:520px;font-size:15px;line-height:1.6}.pricing-toggle{background:var(--paper-2);border:var(--rule-norm) solid var(--ink);border-radius:0;grid-area:toggle;justify-self:end;gap:0;padding:4px;display:inline-flex}.pricing-period{cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);background:0 0;border:0;border-radius:0;padding:8px 18px;font-size:11px;font-weight:500;transition:background .15s,color .15s}.pricing-period.active{background:var(--ink);color:var(--paper)}.pricing-period:hover:not(.active){background:var(--blue-tint);color:var(--ink)}.pricing-save{color:var(--red-mark);font-weight:500}.pricing-grid{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:repeat(4,1fr);gap:0;margin:0;display:grid}.pricing-card{background:var(--paper);border-right:var(--rule-norm) solid var(--ink);box-shadow:none;border-radius:0;flex-direction:column;gap:20px;padding:40px 28px;transition:background .15s;display:flex;position:relative}.pricing-card:last-child{border-right:0}.pricing-card:hover{box-shadow:none;background:var(--paper-2);transform:none}.pricing-card-popular{background:var(--paper-2);border:0;border-right:var(--rule-norm) solid var(--ink)}.pricing-card-popular:before{content:"Recommended for residential";background:var(--red-mark);color:var(--paper);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;text-align:center;padding:4px 16px;font-size:9px;position:absolute;top:0;left:0;right:0}.pricing-badge{display:none}.pricing-card-header{text-align:left;border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1fr auto;grid-template-areas:"label scale""name scale""price price""desc desc";gap:6px 12px;margin:16px 0 0;padding-bottom:20px;display:grid}.pricing-card-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);grid-area:label;font-size:10px}.pricing-card-header h3{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;grid-area:name;margin:0;padding-bottom:0;font-size:44px;font-weight:400;line-height:.95}.pricing-card-scale{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);text-align:right;grid-area:scale;font-size:10px}.pricing-card-scale b{color:var(--red-mark);letter-spacing:.08em;margin-top:4px;font-size:14px;font-weight:600;display:block}.pricing-card-scale-cap{color:var(--ink-3);letter-spacing:.06em;margin-top:4px;font-weight:400;display:block}.pricing-price{grid-area:price;align-items:baseline;gap:8px;margin-top:20px;display:flex}.pricing-currency{font-family:var(--font-mono);color:var(--ink-3);font-size:22px}.pricing-amount{font-family:var(--font-mono);letter-spacing:-.04em;color:var(--ink);font-size:56px;font-weight:500;line-height:1}.pricing-period-label{text-align:right;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);align-self:flex-end;margin-left:auto;font-size:10px;line-height:1.3}.pricing-desc{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-2);grid-area:desc;margin-top:6px;font-size:11px}.pricing-features{font-family:var(--font-mono);flex:1;margin:0;padding:0;font-size:11px;line-height:1.6;list-style:none}.pricing-features li{border-bottom:var(--rule-thin) dashed var(--ink-3);color:var(--ink);grid-template-columns:16px 1fr;align-items:baseline;gap:10px;padding:8px 0;display:grid}.pricing-features li:last-child{border-bottom:0}.pricing-features .check{color:var(--blue);font-size:12px;font-weight:500}.pricing-features .check.dim{color:var(--ink-3)}.pricing-features .cross{color:var(--red-mark);font-size:12px}.pricing-features .dim{color:var(--ink-3)}.pricing-btn{background:var(--paper);color:var(--ink);border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:11px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.pricing-btn:hover{background:var(--ink);color:var(--paper)}.pricing-btn-primary,.pricing-btn-accent{background:var(--ink);color:var(--paper);border-color:var(--ink);box-shadow:none}.pricing-btn-primary:hover,.pricing-btn-accent:hover{background:var(--blue);border-color:var(--blue);box-shadow:none}.pricing-comparison{border-bottom:var(--rule-norm) solid var(--ink);padding:60px 40px}.pricing-comparison h2{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);text-align:left;border-bottom:var(--rule-thin) dashed var(--ink-3);margin:0 0 32px;padding-bottom:16px;font-size:13px;font-weight:600}.pricing-table{border-collapse:collapse;border:var(--rule-norm) solid var(--ink);width:100%;font-family:var(--font-mono);font-size:12px}.pricing-table th,.pricing-table td{text-align:center;border-right:var(--rule-thin) solid var(--ink);border-bottom:var(--rule-thin) solid var(--grid-bold);background:var(--paper);padding:14px 16px}.pricing-table th:last-child,.pricing-table td:last-child{border-right:0}.pricing-table tr:last-child td{border-bottom:0}.pricing-table thead th{background:var(--ink);color:var(--paper);letter-spacing:.1em;text-transform:uppercase;font-size:11px;position:static}.pricing-table th:first-child,.pricing-table td:first-child{text-align:left;font-weight:500}.pricing-table .check{color:var(--blue);font-size:12px;font-weight:500}.pricing-table .cross{color:var(--red-mark);font-size:12px}.pricing-table-popular{background:var(--blue-tint)}.pricing-table tbody td.pricing-table-popular{color:var(--ink);background:var(--blue-tint)}.pricing-table tbody tr:hover td{background:var(--paper-2)}.pricing-table tbody tr:hover td.pricing-table-popular{background:var(--blue-tint)}.pricing-cta{text-align:center;background:var(--paper-2);border:0;border-top:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);border-radius:0;padding:80px 40px}.pricing-cta h2{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);border:0;margin-bottom:12px;padding:0;font-size:20px;font-weight:500}.pricing-cta p{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-3);margin-bottom:32px;font-size:12px}.pricing-cta-btn{padding:14px 32px}.pricing-faq{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1fr 2fr;gap:60px;max-width:none;margin:0;padding:60px 40px;display:grid}.pricing-faq h2{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);border:0;margin:0 0 16px;padding:0;font-size:13px;font-weight:600}.pricing-faq details{border:0;border-top:var(--rule-thin) solid var(--ink);border-radius:0;margin:0;padding:16px 0;overflow:hidden}.pricing-faq details:last-child{border-bottom:var(--rule-thin) solid var(--ink)}.pricing-faq summary{font-family:var(--font-mono);letter-spacing:.04em;cursor:pointer;color:var(--ink);padding:0;font-size:13px;font-weight:500;list-style:none;transition:color .15s}.pricing-faq summary:hover{color:var(--blue);background:0 0}.pricing-faq details[open] summary{color:var(--blue);border-bottom:0}.pricing-faq details p{color:var(--ink-2);font-family:var(--font-sans);max-width:680px;padding:12px 0 0;font-size:13px;line-height:1.7}@media (width<=1024px){.pricing-grid{grid-template-columns:repeat(2,1fr)}.pricing-card{border-right:var(--rule-norm) solid var(--ink)}.pricing-card:nth-child(2n){border-right:0}.pricing-card:first-child,.pricing-card:nth-child(2){border-bottom:var(--rule-norm) solid var(--ink)}.pricing-hero{grid-template-columns:1fr;grid-template-areas:"marker""title""sub""toggle"}.pricing-toggle{justify-self:start}.pricing-faq{grid-template-columns:1fr;gap:32px}}@media (width<=640px){.pricing-grid{grid-template-columns:1fr}.pricing-card,.pricing-card:nth-child(n){border-right:0;border-bottom:var(--rule-norm) solid var(--ink)}.pricing-card:last-child{border-bottom:0}.pricing-hero{padding:40px 24px}.pricing-comparison,.pricing-faq{padding:40px 20px}.pricing-table{font-size:11px}.pricing-table th,.pricing-table td{padding:10px 8px}}.features-page{max-width:none;margin:0;padding:0}.features-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1.3fr 1fr;align-items:end;gap:48px;padding:60px 40px;display:grid}.features-hero-marker{color:var(--red-mark);margin-bottom:16px;display:block}.features-hero-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;margin:0;padding:0;font-size:clamp(56px,8vw,128px);font-weight:400;line-height:.92}.features-hero-title em{color:var(--blue);font-style:italic}.features-hero-lede{font-family:var(--font-mono);color:var(--ink-2);text-transform:none;letter-spacing:.02em;max-width:460px;margin:0;font-size:13px;line-height:1.7}.features-subtitle{display:none}.features-grid{border:var(--rule-norm) solid var(--ink);flex-direction:column;gap:0;margin:40px;display:flex}.features-card{border-bottom:var(--rule-norm) solid var(--ink);background:var(--paper);border-radius:0;grid-template-columns:80px 180px 1fr 300px;min-height:140px;padding:0;transition:background .15s;display:grid}.features-card:last-child{border-bottom:0}.features-card:hover{background:var(--paper-2);box-shadow:none;transform:none}.features-card:before{content:counter(features-row, decimal-leading-zero);counter-increment:features-row;border-right:var(--rule-thin) dashed var(--ink-3);background:var(--paper-2);font-family:var(--font-display);color:var(--red-mark);align-items:flex-start;padding:20px 16px;font-size:42px;font-weight:400;line-height:1;display:flex}.features-grid{counter-reset:features-row}.features-card-icon{border-right:var(--rule-thin) dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.14em;color:var(--ink-3);text-transform:uppercase;background:0 0;border-radius:0;align-items:center;width:auto;height:auto;margin:0;padding:20px 18px;font-size:10px;font-weight:600;display:flex}.features-card-icon svg{display:none}.features-card-icon:after{content:attr(data-category)}.features-card h2{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);text-transform:none;border:0;grid-column-start:3;margin:20px 24px 4px;padding:0;font-size:26px;font-weight:400}.features-card-desc{font-family:var(--font-mono);color:var(--ink-2);grid-column-start:3;margin:0 24px 8px;font-size:13px;line-height:1.65}.features-card-list{border-left:var(--rule-thin) dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.06em;color:var(--blue);flex-direction:column;grid-row:1/span 3;grid-column-start:4;justify-content:center;margin:0;padding:20px 18px;font-size:10px;line-height:1.8;list-style:none;display:flex}.features-card-list li{border:0;padding:0 0 0 14px;position:relative}.features-card-list li:before{content:"// ";color:var(--blue);font-size:10px;font-weight:500;position:absolute;left:0}.features-cta{background:var(--paper-2);border-top:var(--rule-norm) solid var(--ink);border:0;border-radius:0;grid-template-columns:1fr auto;align-items:center;gap:40px;padding:60px 40px;display:grid}.features-cta h2{font-family:var(--font-display);color:var(--ink);text-transform:none;border:0;margin:0;padding:0;font-size:clamp(32px,4vw,48px);font-weight:400;line-height:.95}.features-cta h2 em{color:var(--blue);font-style:italic}.features-cta p{display:none}.features-cta-btn{background:var(--ink);color:var(--paper);border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;box-shadow:none;border-radius:0;justify-content:center;align-items:center;padding:12px 24px;font-size:12px;font-weight:500;text-decoration:none;transition:background .15s;display:inline-flex}.features-cta-btn:hover{background:var(--blue);border-color:var(--blue);box-shadow:none}@media (width<=1024px){.features-hero{grid-template-columns:1fr;gap:24px}.features-card{grid-template-rows:auto auto auto;grid-template-columns:60px 1fr}.features-card:before{padding:12px;font-size:28px}.features-card-icon{border-right:0;border-bottom:var(--rule-thin) dashed var(--ink-3);grid-row-start:1;grid-column-start:2;padding:12px 18px}.features-card h2{grid-column:1/3;margin:16px 18px 4px}.features-card-desc{grid-column:1/3;margin:0 18px 12px}.features-card-list{border-left:0;border-top:var(--rule-thin) dashed var(--ink-3);grid-area:auto/1/auto/3;padding:12px 18px}}@media (width<=640px){.features-hero{padding:40px 20px}.features-grid{margin:24px 20px}.features-cta{grid-template-columns:1fr;padding:40px 20px}}.legal-page{max-width:none;color:var(--ink);font-family:var(--font-sans);margin:0;padding:0}.legal-container{max-width:none;margin:0;padding:0}.legal-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1.3fr 1fr;align-items:end;gap:40px;padding:60px 40px;display:grid}.legal-hero-head{min-width:0}.legal-hero-marker{color:var(--red-mark);margin-bottom:16px;display:block}.legal-hero-title,.legal-page .legal-container h1,.legal-page h1{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;margin:0;padding:0;font-size:clamp(72px,9vw,136px);font-weight:400;line-height:.92}.legal-hero-title em,.legal-page h1 em{color:var(--blue);font-style:italic}.legal-hero-lede{font-family:var(--font-mono);color:var(--ink-2);margin:0;font-size:13px;line-height:1.7}.legal-hero-meta{font-family:var(--font-mono);color:var(--ink-2);border-left:2px solid var(--red-mark);padding-left:16px;font-size:11px;line-height:1.8}.legal-hero-meta .bp-tb-label,.legal-hero-meta .bp-tb-value{display:inline}.legal-updated{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin:0;font-size:11px}.legal-body{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:220px 1fr;gap:48px;padding:48px 40px 80px;display:grid}.legal-toc{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-2);border:var(--rule-norm) solid var(--ink);background:var(--paper);text-transform:uppercase;flex-direction:column;align-self:start;gap:8px;padding:20px 18px;font-size:11px;display:flex;position:sticky;top:24px}.legal-toc-label{letter-spacing:.16em;color:var(--red-mark);margin-bottom:8px;font-size:10px;font-weight:600}.legal-toc a{color:var(--ink-2);border-bottom:var(--rule-thin) dashed var(--ink-3);letter-spacing:.06em;padding:4px 0;text-decoration:none;display:block}.legal-toc a:last-child{border-bottom:0}.legal-toc a:hover{color:var(--blue)}.legal-main{min-width:0}.legal-section{border-bottom:var(--rule-thin) dashed var(--ink-3);margin:0;padding:28px 0}.legal-section:first-child{padding-top:0}.legal-section:last-child{border-bottom:0}.legal-section h2,.legal-page .legal-container h2{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);text-transform:none;border:0;margin:0 0 14px;padding:0;font-size:32px;font-weight:400;line-height:1.1}.legal-section h2 em{color:var(--blue);font-style:italic}.legal-section p{font-family:var(--font-mono);color:var(--ink-2);margin:0 0 12px;font-size:13px;line-height:1.7}.legal-section p:last-child{margin-bottom:0}.legal-section strong{color:var(--ink);font-weight:600}.legal-section a,.legal-page a{color:var(--blue);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:.5px}.legal-section a:hover{text-decoration-thickness:1.5px}.legal-clause-marker{font-family:var(--font-mono);letter-spacing:.14em;color:var(--red-mark);text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:600;display:block}.legal-clause h3{font-family:var(--font-display);letter-spacing:-.01em;font-size:28px;font-weight:400}.legal-table-wrap{border:var(--rule-norm) solid var(--ink);margin:16px 0 4px;overflow-x:auto}.legal-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);font-size:12px}.legal-table th{text-align:left;background:var(--ink);color:var(--paper);letter-spacing:.14em;text-transform:uppercase;border:0;padding:12px 16px;font-size:10px;font-weight:600}.legal-table thead th{border-right:var(--rule-thin) solid var(--paper-2)}.legal-table thead th:last-child{border-right:0}.legal-table td{border-top:var(--rule-thin) solid var(--ink-3);border-right:var(--rule-thin) dashed var(--ink-3);color:var(--ink-2);background:var(--paper);padding:12px 16px;line-height:1.55}.legal-table tbody tr:nth-child(2n) td{background:var(--paper-2)}.legal-table td:last-child{border-right:0}.legal-table code{color:var(--blue);font-size:12px;font-weight:600;font-family:var(--font-mono);background:0 0;border-radius:0;padding:0}.legal-cta{background:var(--paper-2);border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:60px 40px;display:grid}.legal-cta-head h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);border:0;margin:8px 0 0;padding:0;font-size:clamp(32px,5vw,56px);font-weight:400;line-height:.95}.legal-cta-head h2 em{color:var(--blue);font-style:italic}.legal-cta-actions{flex-wrap:wrap;gap:12px;display:flex}.legal-cta-btn{border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--paper);color:var(--ink);align-items:center;gap:8px;padding:12px 22px;font-size:12px;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.legal-cta-btn:hover,.legal-cta-btn.primary{background:var(--ink);color:var(--paper)}.legal-cta-btn.primary:hover{background:var(--blue);border-color:var(--blue)}.legal-cta-btn.ghost{text-underline-offset:4px;border:0;padding:12px 0;text-decoration:underline}@media (width<=1024px){.legal-hero{grid-template-columns:1fr;gap:24px}.legal-body{grid-template-columns:1fr;gap:32px;padding:32px 24px 60px}.legal-toc{position:static}.legal-cta{grid-template-columns:1fr;padding:48px 24px}}@media (width<=640px){.legal-hero{padding:40px 20px}.legal-body{padding:24px 20px 48px}.legal-section h2{font-size:26px}.legal-table th,.legal-table td{padding:10px 12px}}.about-page{max-width:none;margin:0;padding:0}.about-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1fr 1fr;align-items:end;gap:60px;padding:80px 40px;display:grid}.about-hero h1{font-family:var(--font-display);letter-spacing:-.025em;color:var(--ink);text-transform:none;border:0;margin:16px 0 0;padding:0;font-size:clamp(80px,11vw,176px);font-weight:400;line-height:.88}.about-hero h1 em{color:var(--blue);font-style:italic}.about-hero-side{font-family:var(--font-mono);color:var(--ink-2);flex-direction:column;gap:24px;font-size:13px;line-height:1.7;display:flex}.about-hero-lede{font-family:var(--font-mono);color:var(--ink-2);margin:0;font-size:15px;line-height:1.7}.about-hero-stats{border:var(--rule-norm) solid var(--ink);background:var(--paper);grid-template-columns:1fr 1fr;gap:16px;padding:20px;display:grid}.about-hero-stats .stat .label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);font-size:10px}.about-hero-stats .stat .value{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);margin-top:4px;font-size:32px;font-weight:400;display:block}.about-mani{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1fr 2fr;gap:60px;padding:80px 40px;display:grid}.about-mani-head h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;margin:8px 0 0;padding:0;font-size:64px;font-weight:400;line-height:.95}.about-mani-head h2 em{color:var(--blue);font-style:italic}.about-mani-grid{border:var(--rule-norm) solid var(--ink);grid-template-columns:repeat(2,1fr);gap:0;display:grid}.about-principle{border-right:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);background:var(--paper);flex-direction:column;gap:12px;padding:32px 28px;display:flex}.about-principle:nth-child(2n){border-right:0}.about-principle:nth-last-child(-n+2){border-bottom:0}.about-principle-num{font-family:var(--font-mono);letter-spacing:.16em;color:var(--red-mark);font-size:11px;font-weight:600}.about-principle h3{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);text-transform:none;border:0;margin:0;padding:0;font-size:32px;font-weight:400;line-height:1.05}.about-principle h3 em{color:var(--blue);font-style:italic}.about-principle p{font-family:var(--font-mono);color:var(--ink-2);margin:0;font-size:13px;line-height:1.7}.about-section{border-bottom:var(--rule-norm) solid var(--ink);padding:80px 40px}.about-section:last-of-type{border-bottom:0}.about-section-header{border-bottom:var(--rule-thin) dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;grid-template-columns:120px 1fr 120px;gap:40px;margin-bottom:32px;padding-bottom:24px;font-size:11px;display:grid}.about-section-header .num{color:var(--red-mark);font-weight:600}.about-section-header .title{color:var(--ink)}.about-section-header .scale{text-align:right;color:var(--ink-3)}.about-feature-grid{border:var(--rule-norm) solid var(--ink);grid-template-columns:repeat(2,1fr);gap:0;display:grid}.about-feature{border-right:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);background:var(--paper);flex-direction:column;gap:10px;padding:24px 28px;display:flex}.about-feature:nth-child(2n){border-right:0}.about-feature:last-child,.about-feature:nth-last-child(2):nth-child(odd){border-bottom:0}.about-feature strong{font-family:var(--font-display);letter-spacing:-.005em;color:var(--ink);font-size:22px;font-weight:400}.about-feature span{font-family:var(--font-mono);color:var(--ink-2);font-size:12px;line-height:1.7}.about-copy p{font-family:var(--font-mono);color:var(--ink-2);max-width:780px;margin:0 0 14px;font-size:13px;line-height:1.7}.about-copy p:last-child{margin-bottom:0}.about-cta{grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding:80px 40px;display:grid}.about-cta h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;margin:8px 0 0;padding:0;font-size:clamp(40px,6vw,80px);font-weight:400;line-height:.95}.about-cta h2 em{color:var(--blue);font-style:italic}.about-cta-actions{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.about-cta-meta{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;margin-top:16px;font-size:11px;line-height:1.6}@media (width<=1024px){.about-hero,.about-mani{grid-template-columns:1fr;gap:32px;padding:48px 24px}.about-mani-grid{grid-template-columns:1fr}.about-principle,.about-principle:nth-child(2n){border-right:0}.about-principle:last-child{border-bottom:0}.about-section{padding:48px 24px}.about-feature-grid{grid-template-columns:1fr}.about-feature{border-right:0}.about-feature:last-child{border-bottom:0}.about-cta{grid-template-columns:1fr;padding:48px 24px}}@media (width<=640px){.about-hero h1{font-size:56px}.about-principle h3{font-size:24px}}.about-page .about-team{border-bottom:var(--rule-norm) solid var(--ink);padding:80px 40px}.about-page .about-team-grid{border-top:var(--rule-norm) solid var(--ink);border-left:var(--rule-norm) solid var(--ink);grid-template-columns:repeat(4,1fr);display:grid}.about-page .about-tcell{border-right:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);background:var(--paper);flex-direction:column;gap:12px;min-height:340px;padding:32px 24px 28px;display:flex;position:relative}.about-page .about-port{aspect-ratio:1;border:var(--rule-norm) solid var(--ink);background:var(--paper-2);justify-content:center;align-items:center;margin-bottom:8px;display:flex;position:relative;overflow:hidden}.about-page .about-port .init{font-family:var(--font-display);color:var(--ink);letter-spacing:-.04em;font-size:88px;font-weight:400;line-height:1}.about-page .about-port:before{content:"";border:var(--rule-thin) dashed var(--ink-3);pointer-events:none;position:absolute;inset:8px}.about-page .about-port:after{content:"PORTRAIT · TBD";text-align:center;font-family:var(--font-mono);letter-spacing:.16em;color:var(--ink-3);font-size:8px;position:absolute;bottom:8px;left:0;right:0}.about-page .about-tcell h3{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);text-transform:none;border:0;margin:8px 0 0;padding:0;font-size:24px;font-weight:400;line-height:1}.about-page .about-tcell .role{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--blue);font-size:10px;font-weight:500}.about-page .about-tcell .bio{font-family:var(--font-mono);color:var(--ink-2);border-top:var(--rule-thin) dashed var(--ink-3);margin:auto 0 0;padding-top:12px;font-size:11px;line-height:1.6}.about-page .about-time{border-bottom:var(--rule-norm) solid var(--ink);padding:80px 40px}.about-page .about-tline{border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);font-size:12px;position:relative}.about-page .about-trow{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:140px 1fr 200px;display:grid}.about-page .about-trow:last-child{border-bottom:0}.about-page .about-trow:hover{background:var(--blue-tint)}.about-page .about-trow>div{border-right:var(--rule-norm) solid var(--ink);padding:18px 20px}.about-page .about-trow>div:last-child{border-right:0}.about-page .about-trow .yr{font-family:var(--font-mono);color:var(--red-mark);letter-spacing:-.02em;font-size:24px;font-weight:500}.about-page .about-trow .ev{font-family:var(--font-display);color:var(--ink);font-size:18px;line-height:1.3}.about-page .about-trow .met{color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.about-page .about-trow.fut{background:var(--paper-2)}.about-page .about-trow.fut .yr{color:var(--blue)}.about-page .about-press{border-bottom:var(--rule-norm) solid var(--ink);background:var(--paper-2);padding:60px 40px}.about-page .about-press-grid{border:var(--rule-norm) solid var(--ink);grid-template-columns:repeat(4,1fr);gap:0;margin-top:32px;display:grid}.about-page .about-press-cell{border-right:var(--rule-norm) solid var(--ink);background:var(--paper);flex-direction:column;gap:12px;min-height:180px;padding:28px 24px;display:flex}.about-page .about-press-cell:last-child{border-right:0}.about-page .about-press-cell .src{font-family:var(--font-display);color:var(--blue);font-size:24px;font-style:italic;font-weight:400}.about-page .about-press-cell .quote{font-family:var(--font-display);color:var(--ink);margin:0;font-size:18px;font-style:italic;line-height:1.3}.about-page .about-press-cell .by{font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase;border-top:var(--rule-thin) dashed var(--ink-3);margin:auto 0 0;padding-top:10px;font-size:10px}@media (width<=1024px){.about-page .about-team{padding:48px 24px}.about-page .about-team-grid{grid-template-columns:repeat(2,1fr)}.about-page .about-time{padding:48px 24px}.about-page .about-trow{grid-template-columns:100px 1fr}.about-page .about-trow .met{border-top:var(--rule-thin) dashed var(--ink-3);grid-column:1/-1;border-right:0!important}.about-page .about-press{padding:40px 24px}.about-page .about-press-grid{grid-template-columns:repeat(2,1fr)}.about-page .about-press-cell:nth-child(2n){border-right:0}.about-page .about-press-cell:nth-child(-n+2){border-bottom:var(--rule-norm) solid var(--ink)}}@media (width<=640px){.about-page .about-team-grid{grid-template-columns:1fr}.about-page .about-tcell{min-height:auto}.about-page .about-port .init{font-size:64px}.about-page .about-trow{grid-template-columns:1fr}.about-page .about-trow>div{border-bottom:var(--rule-thin) dashed var(--ink-3);border-right:0!important}.about-page .about-trow>div:last-child{border-bottom:0}.about-page .about-press-grid{grid-template-columns:1fr}.about-page .about-press-cell{border-right:0;border-bottom:var(--rule-norm) solid var(--ink)}.about-page .about-press-cell:last-child{border-bottom:0}}.info-page{max-width:none;margin:0;padding:0}.info-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1.3fr 1fr;align-items:end;gap:40px;padding:60px 40px;display:grid}.info-hero-marker{color:var(--red-mark);margin-bottom:16px;display:block}.info-hero-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;margin:0;padding:0;font-size:clamp(56px,8vw,128px);font-weight:400;line-height:.92}.info-hero-title em{color:var(--blue);font-style:italic}.faq-page .info-hero-title,.support-page .info-hero-title{font-size:clamp(64px,8vw,128px)}.contact-page .info-hero-title{font-size:clamp(72px,9vw,136px)}.info-hero-lede{font-family:var(--font-mono);color:var(--ink-2);letter-spacing:.02em;max-width:460px;margin:0;font-size:13px;line-height:1.7}.info-hero-aside{border:var(--rule-norm) solid var(--ink);background:var(--paper);padding:20px}.info-hero-aside-label{font-family:var(--font-mono);letter-spacing:.12em;color:var(--ink-3);text-transform:uppercase;margin-bottom:8px;font-size:10px;display:block}.info-hero-aside-value{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--green-ok);font-size:32px;font-weight:500}.info-hero-aside-note{font-family:var(--font-mono);color:var(--ink-2);margin-top:8px;font-size:11px;line-height:1.6}.info-section{border-bottom:var(--rule-norm) solid var(--ink);padding:40px}.info-section-header{border-bottom:var(--rule-thin) dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;grid-template-columns:120px 1fr 120px;gap:40px;margin-bottom:48px;padding-bottom:32px;font-size:11px;display:grid}.info-section-header .num{color:var(--red-mark);font-weight:600}.info-section-header .title{color:var(--ink)}.info-section-header .scale{text-align:right;color:var(--ink-3)}.support-page .info-hero{grid-template-columns:1.3fr 1fr;align-items:end}.support-docs-grid{border:var(--rule-norm) solid var(--ink);grid-template-columns:repeat(3,1fr);margin-top:24px;display:grid}.support-doc-card{border-right:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);cursor:pointer;background:var(--paper);min-height:220px;color:inherit;flex-direction:column;gap:10px;padding:28px 24px;transition:background .15s;display:flex}.support-doc-card:nth-child(3n){border-right:0}.support-doc-card:nth-last-child(-n+3){border-bottom:0}.support-doc-card:hover{background:var(--blue-tint)}.support-doc-meta{font-family:var(--font-mono);letter-spacing:.12em;color:var(--red-mark);text-transform:uppercase;justify-content:space-between;font-size:10px;font-weight:600;display:flex}.support-doc-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);margin:4px 0;font-size:24px;font-weight:400}.support-doc-desc{font-family:var(--font-mono);color:var(--ink-2);margin:0;font-size:11px;line-height:1.6}.support-doc-foot{border-top:var(--rule-thin) dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase;justify-content:space-between;margin-top:auto;padding-top:10px;font-size:10px;display:flex}.support-doc-foot .cta{color:var(--red-mark)}.support-channels{border:var(--rule-norm) solid var(--ink);background:var(--paper-2);grid-template-columns:1fr 1fr;margin:40px;display:grid}.support-channel{border-right:var(--rule-norm) solid var(--ink);padding:32px}.support-channel:last-child{border-right:0}.support-channel-label{color:var(--red-mark);margin-bottom:12px;display:block}.support-channel-title{font-family:var(--font-display);color:var(--ink);letter-spacing:-.01em;margin:0 0 16px;font-size:40px;font-weight:400}.support-channel-desc{font-family:var(--font-mono);color:var(--ink-2);margin:0 0 20px;font-size:12px;line-height:1.7}.support-form{gap:10px;display:grid}.support-form input,.support-form select,.support-form textarea{border:var(--rule-norm) solid var(--ink);background:var(--paper);font-family:var(--font-mono);color:var(--ink);border-radius:0;padding:14px;font-size:13px}.support-form textarea{resize:vertical}.support-form button{background:var(--ink);color:var(--paper);border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:0;justify-self:start;padding:12px 24px;font-size:12px;font-weight:500;transition:background .15s}.support-form button:hover{background:var(--blue);border-color:var(--blue)}.support-form button[disabled]{opacity:.6;cursor:not-allowed}.support-next-session{border:var(--rule-norm) solid var(--ink);background:var(--paper);padding:20px}.support-next-session-tag{font-family:var(--font-mono);letter-spacing:.12em;color:var(--red-mark);text-transform:uppercase;margin-bottom:10px;font-size:10px;font-weight:600;display:block}.support-next-session-date{font-family:var(--font-display);color:var(--ink);margin:0 0 12px;font-size:32px;font-weight:400}.support-next-session-note{font-family:var(--font-mono);color:var(--ink-2);margin:0 0 16px;font-size:11px;line-height:1.7}.support-btn{border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--paper);color:var(--ink);align-items:center;padding:10px 20px;font-size:11px;text-decoration:none;transition:all .15s;display:inline-flex}.support-btn:hover{background:var(--ink);color:var(--paper)}.contact-page .info-hero{grid-template-columns:1.3fr 1fr;align-items:end}.contact-offices{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1fr 1fr;display:grid}.contact-office{border-right:var(--rule-norm) solid var(--ink);flex-direction:column;gap:20px;padding:48px;display:flex}.contact-office:last-child{border-right:0}.contact-office-label{color:var(--red-mark);display:block}.contact-office-city{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:64px;font-weight:400;line-height:.95}.contact-office-map{border:var(--rule-norm) solid var(--ink);background:var(--paper-2);aspect-ratio:16/9;position:relative;overflow:hidden}.contact-office-map svg{width:100%;height:100%;display:block}.contact-office-meta{font-family:var(--font-mono);font-size:12px;line-height:1.9}.contact-office-row{border-bottom:var(--rule-thin) dashed var(--ink-3);grid-template-columns:100px 1fr;gap:12px;padding:6px 0;display:grid}.contact-office-row:last-child{border-bottom:0}.contact-office-row-label{color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.contact-office-row-value{color:var(--ink);font-weight:600}.contact-office-row-value.link{color:var(--blue)}.contact-office-row-value.link a{color:inherit;text-decoration:none}.contact-office-note{color:var(--ink-2);font-size:13px;line-height:1.7;font-family:var(--font-mono);margin:0}.contact-inboxes-wrap{border-bottom:var(--rule-norm) solid var(--ink);background:var(--paper-2);padding:60px 40px}.contact-inboxes{border:var(--rule-norm) solid var(--ink);background:var(--paper);grid-template-columns:repeat(4,1fr);margin-top:24px;display:grid}.contact-inbox{border-right:var(--rule-norm) solid var(--ink);flex-direction:column;gap:10px;padding:24px;display:flex}.contact-inbox:last-child{border-right:0}.contact-inbox-label{color:var(--red-mark);display:block}.contact-inbox-email{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);overflow-wrap:anywhere;font-size:28px;font-weight:400}.contact-inbox-email .alias{color:var(--blue);font-style:italic}.contact-inbox-desc{font-family:var(--font-mono);color:var(--ink-2);margin:0;font-size:11px}.contact-inbox-chip{border:var(--rule-thin) solid var(--red-mark);color:var(--red-mark);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;align-self:flex-start;align-items:center;padding:4px 10px;font-size:10px;display:inline-flex}.faq-page{display:block}.faq-page .info-hero{grid-template-columns:1fr;align-items:end;display:block}.faq-page .info-hero-title{max-width:900px;margin-top:16px}.faq-section{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:200px 1fr;gap:48px;padding:40px;display:grid}.faq-section-label{font-family:var(--font-mono);letter-spacing:.12em;color:var(--red-mark);text-transform:uppercase;border-top:var(--rule-bold) solid var(--red-mark);align-self:start;padding-top:12px;font-size:12px;font-weight:600}.faq-items{flex-direction:column;display:flex}.faq-item{border-bottom:var(--rule-norm) solid var(--ink);padding:0;list-style:none}.faq-item:last-child{border-bottom:0}.faq-item>summary{cursor:pointer;font-family:var(--font-mono);color:var(--ink);grid-template-columns:60px 1fr 24px;align-items:center;gap:16px;padding:18px 0;font-size:14px;font-weight:500;list-style:none;display:grid}.faq-item>summary::-webkit-details-marker{display:none}.faq-item>summary::marker{content:""}.faq-item-num{color:var(--red-mark);letter-spacing:.1em;font-size:11px;font-weight:600}.faq-item-q{color:var(--ink);letter-spacing:.02em}.faq-item-toggle{color:var(--ink-3);font-size:18px;font-family:var(--font-mono);justify-self:end}.faq-item[open] .faq-item-toggle:before{content:"−"}.faq-item:not([open]) .faq-item-toggle:before{content:"+"}.faq-item-toggle-char{display:none}.faq-item-a{font-family:var(--font-mono);color:var(--ink-2);max-width:720px;padding:0 0 18px 76px;font-size:14px;line-height:1.7}.faq-item-a p{margin:0}.faq-stuck{background:var(--paper-2);border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:40px;display:grid}.faq-stuck-label{color:var(--ink);font-weight:600;display:block}.faq-stuck-label:first-letter{color:var(--red-mark)}.faq-stuck-title{font-family:var(--font-display);color:var(--ink);margin:12px 0 0;font-size:48px;font-weight:400;line-height:.95}.faq-stuck-title em{color:var(--blue);font-style:italic}.faq-stuck-actions{flex-wrap:wrap;gap:12px;display:flex}.faq-stuck-actions .info-btn,.faq-stuck-actions .info-btn-primary,.faq-stuck-actions .info-btn-ghost{text-decoration:none}.info-btn{border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--paper);color:var(--ink);align-items:center;gap:8px;padding:10px 20px;font-size:12px;text-decoration:none;transition:all .15s;display:inline-flex}.info-btn:hover,.info-btn-primary{background:var(--ink);color:var(--paper)}.info-btn-primary:hover{background:var(--blue);border-color:var(--blue);color:var(--paper)}.info-btn-ghost{text-underline-offset:4px;color:var(--ink);background:0 0;border:0;padding:10px 0;text-decoration:underline}@media (width<=1024px){.info-hero{grid-template-columns:1fr;gap:24px}.support-docs-grid{grid-template-columns:1fr 1fr}.support-doc-card:nth-child(3n){border-right:var(--rule-norm) solid var(--ink)}.support-doc-card:nth-child(2n){border-right:0}.support-channels{grid-template-columns:1fr}.support-channel{border-right:0;border-bottom:var(--rule-norm) solid var(--ink)}.support-channel:last-child{border-bottom:0}.contact-offices{grid-template-columns:1fr}.contact-office{border-right:0;border-bottom:var(--rule-norm) solid var(--ink)}.contact-office:last-child{border-bottom:0}.contact-inboxes{grid-template-columns:1fr 1fr}.contact-inbox:nth-child(2n){border-right:0}.contact-inbox:nth-child(-n+2){border-bottom:var(--rule-norm) solid var(--ink)}.faq-section{grid-template-columns:1fr;gap:20px}.faq-stuck{grid-template-columns:1fr}}@media (width<=640px){.info-hero{padding:40px 20px}.info-section{padding:32px 20px}.support-docs-grid{grid-template-columns:1fr}.support-doc-card{border-right:0}.support-channels{margin:24px 20px}.support-channel{padding:24px}.contact-office{padding:32px 20px}.contact-office-city{font-size:44px}.contact-inboxes-wrap{padding:40px 20px}.contact-inboxes{grid-template-columns:1fr}.contact-inbox{border-right:0;border-bottom:var(--rule-norm) solid var(--ink)}.contact-inbox:last-child{border-bottom:0}.contact-inbox-email{font-size:22px}.faq-section{padding:32px 20px}.faq-item>summary{grid-template-columns:48px 1fr 20px;gap:12px;font-size:12px}.faq-item-a{padding-left:60px;font-size:13px}.faq-stuck{padding:32px 20px}.faq-stuck-title{font-size:36px}.support-channel-title{font-size:28px}}.changelog-page{max-width:none;margin:0;padding:0}.changelog-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1.3fr 1fr;align-items:end;gap:40px;padding:60px 40px;display:grid}.changelog-hero-marker{color:var(--red-mark);margin-bottom:16px;display:block}.changelog-hero-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;margin:0;padding:0;font-size:clamp(72px,9vw,136px);font-weight:400;line-height:.92}.changelog-hero-title em{color:var(--blue);font-style:italic}.changelog-hero-stats{font-family:var(--font-mono);color:var(--ink-2);border-left:2px solid var(--red-mark);margin:0;padding-left:16px;font-size:11px;line-height:1.8}.changelog-hero-stats span{display:block}.changelog-timeline{padding:0 40px 40px}.changelog-release{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:180px 1fr;gap:40px;margin:0;padding:32px 0;display:grid}.changelog-release:last-child{border-bottom:0}.changelog-release-meta{flex-direction:column;align-items:flex-start;display:flex}.changelog-release-version{font-family:var(--font-display);letter-spacing:-.02em;color:var(--red-mark);text-transform:none;border:0;margin:0;padding:0;font-size:48px;font-weight:400;line-height:1}.changelog-release-date{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase;margin-top:6px;font-size:11px}.changelog-release-tag{background:var(--ink);color:var(--paper);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin-top:12px;padding:3px 10px;font-size:10px;font-weight:600;display:inline-block}.changelog-release-tag.changelog-tag-feature{background:var(--blue)}.changelog-release-tag.changelog-tag-fix{background:var(--red-mark)}.changelog-release-tag.changelog-tag-perf{background:var(--green-ok)}.changelog-release-body{flex-direction:column;gap:16px;display:flex}.changelog-group-title{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);border:0;margin:0;padding:0;font-size:10px;font-weight:600}.changelog-items{flex-direction:column;gap:6px;margin:0 0 8px;padding:0;list-style:none;display:flex}.changelog-items li{background:var(--paper-2);border-left:3px solid var(--blue);font-family:var(--font-mono);color:var(--ink);grid-template-columns:28px 1fr;gap:12px;padding:10px 14px;font-size:13px;line-height:1.6;display:grid}.changelog-items li:before{color:var(--blue);font-size:16px;font-weight:700}.changelog-items-added li{border-left-color:var(--green-ok)}.changelog-items-added li:before{content:"+";color:var(--green-ok)}.changelog-items-changed li{border-left-color:var(--blue)}.changelog-items-changed li:before{content:"~";color:var(--blue)}.changelog-items-fixed li{border-left-color:var(--red-mark)}.changelog-items-fixed li:before{content:"−";color:var(--red-mark)}.changelog-items li code{font-family:var(--font-mono);border:var(--rule-thin) solid var(--ink-3);background:var(--paper);color:var(--ink);padding:1px 5px;font-size:12px}@media (width<=1024px){.changelog-hero{grid-template-columns:1fr;gap:24px}.changelog-release{grid-template-columns:1fr;gap:20px}}@media (width<=640px){.changelog-hero{padding:40px 20px}.changelog-timeline{padding:0 20px 40px}}.status-page{max-width:none;margin:0;padding:0}.status-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1.3fr 1fr;align-items:end;gap:40px;padding:60px 40px;display:grid}.status-hero-marker{color:var(--red-mark);margin-bottom:16px;display:block}.status-hero-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-transform:none;border:0;margin:0;padding:0;font-size:clamp(72px,9vw,136px);font-weight:400;line-height:.92}.status-hero-title em{color:var(--blue);font-style:italic}.status-overall-card{border:var(--rule-norm) solid var(--ink);background:var(--paper-2);padding:20px}.status-overall-label{font-family:var(--font-mono);letter-spacing:.12em;color:var(--ink-3);text-transform:uppercase;margin-bottom:6px;font-size:10px}.status-overall-value{font-family:var(--font-mono);color:var(--green-ok);font-size:28px;font-weight:500}.status-overall-value.status-overall-degraded{color:#c8941a}.status-overall-value.status-overall-down{color:var(--red-mark)}.status-overall-meta{font-family:var(--font-mono);color:var(--ink-2);margin-top:4px;font-size:11px}.status-services{border-bottom:var(--rule-norm) solid var(--ink);padding:40px}.status-services-list{border:var(--rule-norm) solid var(--ink);margin-top:24px}.status-service-row{border-bottom:var(--rule-thin) solid var(--ink-3);grid-template-columns:1.2fr 2fr 120px 110px;align-items:center;gap:16px;padding:16px 20px;display:grid}.status-service-row:last-child{border-bottom:0}.status-service-name{font-family:var(--font-mono);color:var(--ink);font-size:13px;font-weight:500}.status-service-strip{gap:2px;height:28px;display:flex}.status-service-strip>span{background:var(--green-ok);opacity:.9;flex:1;height:28px}.status-service-strip>span.status-cell-deg{opacity:1;background:#f5b544}.status-service-strip>span.status-cell-down{background:var(--red-mark);opacity:1}.status-service-uptime{font-family:var(--font-mono);text-align:right;color:var(--green-ok);font-size:14px;font-weight:600}.status-service-badge{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;text-align:right;color:var(--green-ok);justify-content:flex-end;align-items:center;gap:6px;font-size:10px;font-weight:600;display:inline-flex}.status-indicator{background:var(--green-ok);border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.status-indicator.status-ok{background:var(--green-ok)}.status-indicator.status-degraded{background:#f5b544}.status-indicator.status-down{background:var(--red-mark)}.status-service-row.is-degraded .status-service-uptime,.status-service-row.is-degraded .status-service-badge{color:#c8941a}.status-service-row.is-down .status-service-uptime,.status-service-row.is-down .status-service-badge{color:var(--red-mark)}.status-services-axis{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.1em;justify-content:space-between;margin-top:12px;font-size:10px;display:flex}.status-incidents{background:var(--paper-2);padding:40px}.status-incidents-list{flex-direction:column;gap:12px;margin-top:24px;display:flex}.status-incident{background:var(--paper);border:var(--rule-norm) solid var(--ink);grid-template-columns:180px 1fr 120px;align-items:start;gap:24px;padding:20px 24px;display:grid}.status-incident-date{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.08em;font-size:11px}.status-incident-title{font-family:var(--font-display);color:var(--ink);border:0;margin:0 0 4px;padding:0;font-size:20px;font-weight:400}.status-incident-body{font-family:var(--font-mono);color:var(--ink-2);margin:0;font-size:12px;line-height:1.6}.status-incident-pill{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--green-ok);color:var(--paper);place-self:start end;padding:4px 10px;font-size:10px;font-weight:600}.status-incident-pill.is-monitoring{background:#f5b544}.status-incident-pill.is-investigating{background:var(--red-mark)}.status-empty-note{font-family:var(--font-mono);color:var(--ink-2);margin:0;font-size:13px}.status-section-head{border-bottom:var(--rule-thin) dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;grid-template-columns:120px 1fr 120px;gap:32px;padding-bottom:20px;font-size:11px;display:grid}.status-section-head .num{color:var(--red-mark);font-weight:600}.status-section-head .title{color:var(--ink)}.status-section-head .scale{text-align:right;color:var(--ink-3)}.status-report{border-top:var(--rule-norm) solid var(--ink);padding:40px}.status-report h2{font-family:var(--font-display);color:var(--ink);letter-spacing:-.01em;text-transform:none;border:0;margin:0 0 8px;padding:0;font-size:clamp(28px,3vw,40px);font-weight:400}.status-report p{font-family:var(--font-mono);color:var(--ink-2);max-width:520px;margin:0;font-size:13px;line-height:1.7}.status-report a{color:var(--blue);text-underline-offset:3px;text-decoration:underline}@media (width<=1024px){.status-hero{grid-template-columns:1fr;gap:24px}.status-service-row{grid-template-columns:1fr 1fr;grid-template-areas:"name badge""strip strip""uptime uptime";gap:8px}.status-service-name{grid-area:name}.status-service-badge{text-align:right;grid-area:badge}.status-service-strip{grid-area:strip}.status-service-uptime{text-align:left;grid-area:uptime}.status-incident{grid-template-columns:1fr;gap:10px}.status-incident-pill{justify-self:start}}@media (width<=640px){.status-hero,.status-services,.status-incidents,.status-report{padding:40px 20px}.status-service-strip>span{min-width:2px}}.not-found-page{max-width:none;margin:0;padding:0}.not-found-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1fr 1fr;align-items:center;gap:60px;min-height:80vh;padding:80px 40px;display:grid;position:relative;overflow:hidden}.not-found-hero:before{content:"";background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);opacity:.6;pointer-events:none;background-size:40px 40px;position:absolute;inset:0}.not-found-hero-body,.not-found-hero-figure{position:relative}.not-found-marker{color:var(--red-mark);margin-bottom:16px;display:block}.not-found-title{font-family:var(--font-display);letter-spacing:-.04em;color:var(--ink);text-transform:none;border:0;margin:0 0 24px;padding:0;font-size:clamp(72px,14vw,180px);font-weight:400;line-height:.82}.not-found-title em{color:var(--blue);font-style:italic}.not-found-lede{color:var(--ink-2);max-width:460px;font-size:17px;line-height:1.65;font-family:var(--font-sans);margin:0 0 32px}.not-found-cta-row{flex-wrap:wrap;gap:12px;display:flex}.not-found-hero-figure{aspect-ratio:1;border:var(--rule-norm) solid var(--ink);background:var(--paper-2);justify-content:center;align-items:center;padding:32px;display:flex}.not-found-hero-figure svg{width:100%;height:100%;display:block}.not-found-directory{border-bottom:var(--rule-norm) solid var(--ink);padding:40px}.not-found-directory-head{border-bottom:var(--rule-thin) dashed var(--ink-3);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;grid-template-columns:120px 1fr 120px;gap:32px;padding-bottom:20px;font-size:11px;display:grid}.not-found-directory-head .num{color:var(--red-mark);font-weight:600}.not-found-directory-head .title{color:var(--ink)}.not-found-directory-head .scale{text-align:right;color:var(--ink-3)}.not-found-directory-grid{border:var(--rule-norm) solid var(--ink);grid-template-columns:repeat(4,1fr);gap:0;margin-top:20px;display:grid}.not-found-directory-grid a{border-right:var(--rule-norm) solid var(--ink);border-bottom:var(--rule-norm) solid var(--ink);color:var(--ink);font-family:var(--font-mono);justify-content:space-between;align-items:center;padding:20px 24px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s;display:flex}.not-found-directory-grid a:nth-child(4n){border-right:0}.not-found-directory-grid a:nth-last-child(-n+4){border-bottom:0}.not-found-directory-grid a .arrow{color:var(--red-mark)}.not-found-directory-grid a:hover{background:var(--blue-tint)}@media (width<=1024px){.not-found-hero{grid-template-columns:1fr;gap:32px;min-height:0}.not-found-hero-figure{max-width:480px}.not-found-directory-grid{grid-template-columns:repeat(2,1fr)}.not-found-directory-grid a:nth-child(4n){border-right:var(--rule-norm) solid var(--ink)}.not-found-directory-grid a:nth-child(2n){border-right:0}.not-found-directory-grid a:nth-last-child(-n+4){border-bottom:var(--rule-norm) solid var(--ink)}.not-found-directory-grid a:nth-last-child(-n+2){border-bottom:0}}@media (width<=640px){.not-found-hero,.not-found-directory{padding:40px 20px}.not-found-title{font-size:clamp(64px,18vw,96px)}}.error-page{max-width:none;margin:0;padding:0}.error-hero{border-bottom:var(--rule-norm) solid var(--ink);grid-template-columns:1fr 1fr;align-items:center;gap:60px;min-height:70vh;padding:80px 40px;display:grid;position:relative;overflow:hidden}.error-hero:before{content:"";background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);opacity:.6;pointer-events:none;background-size:40px 40px;position:absolute;inset:0}.error-hero-body,.error-hero-figure{position:relative}.error-marker{color:var(--red-mark);margin-bottom:16px;display:block}.error-number{font-family:var(--font-display);letter-spacing:-.04em;color:var(--ink);text-transform:none;border:0;margin:0 0 24px;padding:0;font-size:clamp(96px,14vw,220px);font-weight:400;line-height:.82}.error-number em{color:var(--blue);font-style:italic}.error-lede{color:var(--ink-2);max-width:460px;font-size:17px;line-height:1.65;font-family:var(--font-sans);margin:0 0 32px}.error-actions{flex-wrap:wrap;gap:12px;display:flex}.error-hero-figure{aspect-ratio:1;border:var(--rule-norm) solid var(--ink);background:var(--paper-2);justify-content:center;align-items:center;padding:32px;display:flex}.error-hero-figure svg{width:100%;height:100%;display:block}.error-coords{border-bottom:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;gap:24px;padding:24px 40px;font-size:11px;display:flex}.error-coords .coord-cell{white-space:nowrap}.error-coords .coord-cell strong{color:var(--red-mark);margin-right:6px;font-weight:600}.error-page-blocked .error-marker,.error-page-blocked .error-coords .coord-cell strong,.error-page-server .error-marker,.error-page-server .error-coords .coord-cell strong{color:var(--red-mark)}.error-page-unprocessable .error-marker,.error-page-unprocessable .error-coords .coord-cell strong{color:var(--blue)}@media (width<=1024px){.error-hero{grid-template-columns:1fr;gap:32px;min-height:0}.error-hero-figure{max-width:480px}}@media (width<=640px){.error-hero{padding:40px 20px}.error-coords{padding:20px;font-size:10px}.error-number{font-size:clamp(64px,18vw,96px)}}.feedback-btn{border:var(--rule-norm) solid var(--ink);background:var(--paper);height:40px;color:var(--ink);cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;box-shadow:3px 3px 0 var(--ink);z-index:9000;border-radius:0;align-items:center;gap:8px;padding:0 16px;font-size:11px;font-weight:500;transition:background .15s,color .15s,box-shadow .15s,transform .15s;display:flex;position:fixed;bottom:24px;right:24px}.feedback-btn-label{white-space:nowrap}.feedback-btn:hover{background:var(--ink);color:var(--paper);box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.feedback-btn:focus-visible{background:var(--blue);border-color:var(--blue);color:var(--paper);box-shadow:3px 3px 0 var(--ink);outline:none}.feedback-overlay{z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.feedback-overlay[hidden]{display:none!important}.feedback-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:460px;max-height:90vh;animation:.2s ease-out feedbackSlideUp;overflow-y:auto}@keyframes feedbackSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.feedback-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.feedback-header h3{color:var(--text);margin:0;font-size:18px;font-weight:600}.feedback-close{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition), background var(--transition);background:0 0;border:none;padding:4px 8px;font-size:22px}.feedback-close:hover{color:var(--text);background:var(--bg-elevated)}.feedback-body{flex-direction:column;gap:8px;padding:16px 24px;display:flex}.feedback-body label{color:var(--text-secondary);margin-top:4px;font-size:13px;font-weight:500}.feedback-select,.feedback-textarea,.feedback-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);width:100%;color:var(--text);transition:border-color var(--transition), box-shadow var(--transition);padding:10px 12px;font-family:inherit;font-size:14px}.feedback-select:focus,.feedback-textarea:focus,.feedback-input:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.feedback-textarea{resize:vertical;min-height:100px}.feedback-footer{justify-content:flex-end;gap:8px;padding:16px 24px 20px;display:flex}.feedback-btn-cancel,.feedback-btn-submit{border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border);transition:background var(--transition), color var(--transition), border-color var(--transition);padding:8px 20px;font-size:14px;font-weight:500}.feedback-btn-cancel{background:var(--bg);color:var(--text-secondary)}.feedback-btn-cancel:hover{background:var(--bg-elevated);color:var(--text)}.feedback-btn-submit{background:var(--primary);color:#fff;border-color:var(--primary)}.feedback-btn-submit:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.feedback-btn-submit:disabled{opacity:.6;cursor:not-allowed}@media (width<=480px){.feedback-btn{width:44px;height:44px;bottom:16px;right:16px}.feedback-modal{max-width:100%}.feedback-header,.feedback-body,.feedback-footer{padding-inline:16px}}.lang-select{appearance:none;background:var(--paper);color:var(--ink);border:var(--rule-norm) solid var(--ink);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath d='M3 5l3 3 3-3' stroke='%230a1a3a' stroke-width='1.2' fill='none'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border-radius:0;min-width:72px;padding:6px 28px 6px 12px;font-size:11px;font-weight:500;transition:background .15s,color .15s}.lang-select:hover,.lang-select:focus-visible{background-color:var(--ink);color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath d='M3 5l3 3 3-3' stroke='%23f4f1e8' stroke-width='1.2' fill='none'/%3E%3C/svg%3E");outline:none}.bp-lang{position:relative}.bp-lang-btn{border:var(--rule-norm) solid var(--ink);background:var(--paper);font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink);cursor:pointer;align-items:center;gap:6px;padding:5px 10px;font-size:11px;transition:all .15s;display:inline-flex}.bp-lang-btn:hover,.bp-lang-btn:focus-visible,.bp-lang-btn[aria-expanded=true]{background:var(--blue-tint);color:var(--blue);outline:none}.bp-lang-code{letter-spacing:.14em;font-weight:600}.bp-lang-n{color:var(--ink-3);letter-spacing:.1em;font-size:9px}.bp-lang-menu{z-index:1000;background:var(--paper);border:var(--rule-norm) solid var(--ink);width:380px;box-shadow:4px 4px 0 var(--ink);font-family:var(--font-mono);position:absolute;top:calc(100% + 10px);right:0}.bp-titleblock .bp-lang-menu{inset:auto auto calc(100% + 10px) 0}.bp-lang-head{border-bottom:var(--rule-norm) solid var(--ink);background:var(--paper-2);letter-spacing:.14em;color:var(--ink-3);text-transform:uppercase;justify-content:space-between;padding:10px 14px;font-size:9px;font-weight:700;display:flex}.bp-lang-grid{grid-template-columns:repeat(4,1fr);display:grid}.bp-lang-cell{background:var(--paper);color:var(--ink);border-right:1px dashed var(--ink-3);border-bottom:1px dashed var(--ink-3);font-family:var(--font-mono);text-align:left;cursor:pointer;flex-direction:column;gap:2px;padding:10px 8px;text-decoration:none;transition:background .1s,color .1s;display:flex}.bp-lang-cell:nth-child(4n){border-right:0}.bp-lang-cell:nth-last-child(-n+4){border-bottom:0}.bp-lang-cell b{letter-spacing:.14em;color:var(--ink);font-size:11px;font-weight:700}.bp-lang-cell span{letter-spacing:.04em;color:var(--ink-3);text-transform:none;white-space:nowrap;text-overflow:ellipsis;opacity:.8;font-size:9px;overflow:hidden}.bp-lang-cell:hover,.bp-lang-cell:focus-visible{background:var(--blue-tint);outline:none}.bp-lang-cell:hover b,.bp-lang-cell:focus-visible b,.bp-lang-cell:hover span,.bp-lang-cell:focus-visible span{color:var(--blue)}.bp-lang-cell.on{background:var(--ink)}.bp-lang-cell.on b,.bp-lang-cell.on span{color:var(--paper)}.bp-lang-foot{border-top:var(--rule-norm) solid var(--ink);background:var(--paper-2);letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase;justify-content:space-between;padding:10px 14px;font-size:9px;display:flex}.early-access-banner{background:var(--paper-2);color:var(--ink-2);border-bottom:var(--rule-thin) solid var(--ink);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;text-align:center;z-index:1000;flex-shrink:0;padding:7px 16px;font-size:10px;line-height:1.5;position:sticky;top:0}.early-access-banner-inner{max-width:var(--max-width);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:0 auto;display:flex}.early-access-badge{color:var(--ink);letter-spacing:.1em;white-space:nowrap;background:0 0;border:0;padding:0;font-weight:600}.early-access-badge:before{content:"§ ";color:var(--red-mark);margin-right:2px;font-weight:700}.early-access-text{color:var(--ink-2);text-transform:none;letter-spacing:.02em;font-weight:400}.early-access-text strong{color:var(--ink);font-weight:500}.banner-feedback-link{color:var(--blue);text-underline-offset:2px;cursor:pointer;font-weight:500;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:.5px}.banner-feedback-link:hover,.banner-feedback-link:focus-visible{text-decoration-style:solid;text-decoration-thickness:1px}@media (width<=640px){.early-access-banner{padding:5px 10px;font-size:9px}.early-access-banner-inner{gap:6px}}.cross-links{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:12px;display:flex}.cross-links a{color:var(--primary);border:1px solid var(--border);border-radius:var(--radius-sm);transition:background var(--transition);padding:6px 12px;font-size:14px;text-decoration:none}.cross-links a:hover{background:var(--primary-light)}html.dark .pipe-polyline,html.dark .pipe-vertex{stroke:#94a3b8}html.dark .pipe-vertex:hover,html.dark .pipe-label,html.dark .weather-station-label,html.dark .weather-station-marker:hover rect{fill:#94a3b8}html.dark .weather-station-marker.selected rect{stroke:#fbbf24}html.dark .sprinkler-marker:hover circle.body{fill:#60a5fa}html.dark .zone-polygon{fill:#8b5cf626;stroke:#a78bfa}html.dark .zone-vertex{stroke:#a78bfa}html.dark .guide-line,html.dark .smart-guide-line{stroke:#f472b6}html.dark .guide-label,html.dark .smart-guide-label{fill:#f472b6}html.dark .valve-obj-label,html.dark .valve-obj-marker .body{fill:#f87171}html.dark .valve-obj-marker:hover .body{fill:#ef4444}html.dark .tree-crown.tree{fill:#4caf5033;stroke:#8d6e63}html.dark .tree-crown.thuja{fill:#2e7d3233;stroke:#4db6ac}html.dark .tree-crown.bush{fill:#8bc34a33;stroke:#aed581}html.dark .tree-crown.flower{fill:#e91e6333;stroke:#f48fb1}html.dark .tree-crown.pond{fill:#2196f333;stroke:#64b5f6}html.dark .tree-crown.gazebo{fill:#79554833;stroke:#a1887f}html.dark .tree-crown.pool{fill:#1565c033;stroke:#42a5f5}html.dark .tree-crown.terrace{fill:#8d6e6333;stroke:#bcaaa4}html.dark .tree-crown.building{fill:#607d8b33;stroke:#90a4ae}html.dark .tree-crown.furniture{fill:#9e9e9e33;stroke:#bdbdbd}html.dark .tree-crown.sandbox{fill:#ffb74d33;stroke:#ffb74d}html.dark .boundary-polygon{fill:#52b7880f}html.dark .temp-polygon{fill:#52b7880a}html.dark .article-body{color:var(--text);line-height:1.7}html.dark .article-body h2{color:var(--accent)}html.dark .article-body h3{color:var(--text)}html.dark .article-body blockquote{border-left-color:var(--accent);color:var(--text-secondary);background:#52b78814}html.dark .article-body code{background:var(--bg-elevated);color:#e2e8f0;border-radius:4px;padding:2px 6px}html.dark .article-body pre{border:1px solid var(--border);border-radius:var(--radius-md);background:#0f172a;padding:16px;overflow-x:auto}html.dark .article-body pre code{background:0 0;padding:0}html.dark .article-body img{opacity:.9}html.dark .article-body a{color:var(--accent);-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--accent) 40%, transparent)}html.dark .article-body a:hover{color:#86efac;text-decoration-color:#86efac}html.dark .article-body th{background:var(--bg-elevated)}html.dark .article-body tr:nth-child(2n){background:#ffffff05}html.dark .article-body hr{border-color:var(--border)}html.dark .page-btn.active{color:#0f172a}html.dark .translations-bar,html.dark .article-cta,html.dark .cta-section{background:#52b7880f}html.dark .comment-item.comment-reply{border-left-color:var(--border)}html.dark .product-specs-table th{background:var(--bg-elevated);color:var(--text-secondary)}html.dark .product-specs-table tr:hover td{background:#52b7880f}html.dark .valve-table th{background:var(--bg-elevated);color:var(--text-secondary)}html.dark .valve-table tr:hover td{background:#52b7880f}html.dark .compare-table th{background:var(--bg-elevated)}html.dark .compare-table .highlight{color:var(--accent)}html.dark .brand-catalog-intro{background:#52b7880f}html.dark .product-calculator{background:var(--bg-surface);border-color:var(--border)}html.dark .calc-slider-group input[type=range]{background:var(--border)}html.dark .calc-slider-group input[type=range]::-webkit-slider-thumb{box-shadow:0 2px 4px #00000080}html.dark .calc-result-card{background:var(--bg-surface)}html.dark .nozzle-card-color{opacity:.8}html.dark .product-color-dot{border:1px solid #fff3}html.dark .template-card-preview{background:var(--bg-surface);border-bottom:1px solid var(--border)}html.dark .detail-preview{background:var(--bg-surface)}html.dark .price-badge.paid{color:#60a5fa;background:#3b82f626}html.dark .project-card-preview{background:var(--bg-surface);border-bottom:1px solid var(--border)}html.dark .stat-progress{background:var(--bg-elevated)}html.dark .admin-error{color:#f87171}html.dark .toast-notification.error{background:#dc2626}html.dark .toast-notification.success{background:#059669}html.dark .toast-notification.warning{background:#d97706}html.dark .admin-form-group input:focus,html.dark .admin-form-group textarea:focus,html.dark .admin-form-group select:focus{box-shadow:0 0 0 3px #52b78840}html.dark .admin-json-raw{color:#e2e8f0;background:#0f172a}html.dark .pricing-period.active,html.dark .pricing-badge,html.dark .pricing-btn-primary,html.dark .pricing-btn-accent{color:#0f172a}html.dark .pricing-btn-accent{box-shadow:0 4px 14px #52b7884d}html.dark .pricing-btn-accent:hover{box-shadow:0 6px 20px #52b78866}html.dark .pricing-card{background:var(--bg-surface)}html.dark .pricing-card-popular{border-color:var(--accent)}html.dark .pricing-faq details{background:var(--bg-surface)}html.dark .pricing-faq summary:hover{background:#52b78814}html.dark .pricing-cta,html.dark .pricing-table thead th{background:var(--bg-surface)}html.dark .auth-google{background:var(--bg-elevated);border-color:var(--border)}html.dark .auth-google:hover{background:var(--bg-surface);border-color:var(--border-hover)}html.dark .bom-overlay,html.dark .modal-overlay{background:#0009}html.dark .custom-dialog{box-shadow:0 20px 60px #00000080, 0 0 0 1px var(--border)}html.dark .custom-dialog-star{color:var(--border)}html.dark .sketch-upload-zone{border-color:var(--border)}html.dark .sketch-upload-zone:hover,html.dark .sketch-upload-zone.drag-over{border-color:var(--accent);background:#52b7880f}html.dark .ai-overlay{background:#0009}html.dark .empty-state{border-color:var(--border);background:#ffffff05}html.dark .onboarding-overlay{background:#000000a6}html.dark .feedback-overlay{background:#0009}html.dark .feedback-btn:hover{box-shadow:0 8px 25px #0006}html.dark ::selection{color:#f1f5f9;background:#52b7884d}html.dark ::-webkit-scrollbar{width:8px;height:8px}html.dark ::-webkit-scrollbar-track{background:var(--bg)}html.dark ::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}html.dark ::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}html.dark *{scrollbar-color:var(--border) var(--bg)}html.dark img:not([src*=\.svg]){filter:brightness(.92)}html.dark .brand-card-logo img,html.dark .brand-detail-logo img,html.dark .brand-logo-large img,html.dark .auth-google svg{filter:none}html.dark .waitlist-section{background:var(--bg-surface)}html.dark .three-view-container{background:#0c1222}html.dark .three-time-slider__input::-webkit-slider-thumb{border-color:#334155}html.dark .three-time-slider__input::-moz-range-thumb{border-color:#334155}html.dark .cross-links a{background:var(--bg-surface);border-color:var(--border)}html.dark .cross-links a:hover{border-color:var(--primary)}html.dark .early-access-badge{color:#fbbf24;background:#f59e0b26}html.dark .features-cta-btn{color:#0f172a;box-shadow:0 4px 14px #52b7884d}html.dark .features-cta-btn:hover{box-shadow:0 6px 20px #52b78866}html.dark .legal-content h2{color:var(--text)}html.dark .legal-content a{color:var(--accent)}html.dark .early-access-banner{background:linear-gradient(90deg,#1b4332,#2d6a4f)}@media (width<=768px){html.dark .sidebar{box-shadow:0 -4px 16px #0006}}html.dark body,html.dark .toolbar,html.dark .sidebar,html.dark .statusbar,html.dark .canvas-container{transition:background-color .2s,color .2s,border-color .2s}@media (width<=900px){.sidebar{width:220px}.toolbar-group span.toolbar-label,.tool-btn span{display:none}}.btn-mobile-sidebar{display:none}.sidebar-backdrop{z-index:199;opacity:0;visibility:hidden;pointer-events:none;background:#0006;transition:opacity .2s,visibility .2s;position:fixed;inset:0}.sidebar-backdrop.visible{opacity:1;visibility:visible;pointer-events:auto}@media (width<=768px){:root{--sidebar-width:260px}.btn-mobile-sidebar{justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:6px 10px;display:inline-flex}.toolbar{gap:4px 8px;padding:4px 8px}.toolbar-group{padding-right:8px}.tool-btn{justify-content:center;min-width:36px;min-height:36px;padding:6px 8px}.action-btn{min-width:36px;min-height:36px;padding:6px 8px}.sidebar{border-left:none;border-top:1px solid var(--border);z-index:200;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:50vh;transition:transform .3s;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(calc(100% - 40px));box-shadow:0 -4px 16px #0000001a;width:100%!important}.sidebar.drawer-open{max-height:70vh;transform:translateY(0)}.sidebar:before{content:"";background:var(--text-secondary,#6b7280);cursor:grab;border-radius:2px;width:36px;height:4px;margin:8px auto;display:block}.sidebar.drawer-open:before{cursor:pointer}.workspace{flex-direction:column}.canvas-container{flex:1}.statusbar{padding:3px 8px;font-size:11px}.compass-widget{width:48px;height:48px;top:8px;right:8px}.zoom-controls{bottom:52px}.lang-select{min-width:52px;padding:3px 20px 3px 6px;font-size:12px}}@media (width<=480px){.toolbar{gap:3px 4px;padding:3px 6px}.toolbar-group{gap:3px;padding-right:4px}.toolbar-group:not(:first-child,:last-child){display:none}.tool-btn{min-width:44px;min-height:44px;padding:4px 6px}.tool-btn svg{width:20px;height:20px}.action-btn{min-width:44px;min-height:44px}.sidebar{max-height:60vh}.panel{padding:8px}.panel h3,.field-row label{font-size:11px}.field-row input,.field-row select{width:80px}.zoom-controls{bottom:52px;left:8px}.zoom-controls button{width:36px;height:36px;font-size:18px}.statusbar{height:24px;padding:2px 6px;font-size:10px}.onboarding-tooltip{min-width:200px;max-width:calc(100vw - 24px)}}@media (pointer:coarse){.tool-btn,.action-btn{min-width:44px;min-height:44px}.checkbox-label{align-items:center;min-height:44px;display:flex}.checkbox-label input[type=checkbox]{width:18px;height:18px}.zoom-controls button{width:36px;height:36px}.sprinkler-item,.zone-item,.pipe-item,.tree-item,.valve-obj-item{min-height:44px;padding:8px}.sprinkler-item .delete-btn,.zone-item .delete-btn,.pipe-item .delete-btn,.tree-item .delete-btn,.valve-obj-item .delete-btn{opacity:1;width:32px;height:32px}}@media print{.toolbar,.sidebar,.statusbar,.zoom-controls,.compass-widget,.tier-toast{display:none!important}body{color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;height:auto;display:block;overflow:visible}.workspace{display:block;overflow:visible}.canvas-container{cursor:default;background:#fff;width:100%;height:auto;overflow:visible}.canvas-container svg{break-inside:avoid;width:100%;height:auto}.canvas-container:after{content:"Масштаб: 1 клітинка = 1 м";text-align:center;color:#666;border-top:1px solid #ccc;margin-top:8px;padding:8px 0;font-size:10px;display:block}@page{margin:15mm}}@media (width>=768px) and (width<=1024px){.toolbar{flex-wrap:wrap;gap:6px 10px;padding:8px 12px}.toolbar-group{gap:4px}.tool-btn span,.tool-btn-3d{font-size:12px}.toolbar .action-btn span{display:none}aside.sidebar{width:260px;font-size:13px}aside.sidebar .panel-header,aside.sidebar .panel h3{padding:8px 10px}.status-bar{padding:4px 8px;font-size:11px}}aside.sidebar .panel h3{letter-spacing:.25px;font-weight:600}aside.sidebar input[type=number]:focus-visible,aside.sidebar input[type=text]:focus-visible,aside.sidebar select:focus-visible{box-shadow:var(--focus-ring,0 0 0 3px #3b82f659);border-color:var(--primary,#2d6a4f);outline:none}.sprinkler-item.multi-selected,.pipe-item.multi-selected,.tree-item.multi-selected,.zone-item.multi-selected{background:var(--primary-light,#d1fae5);outline:2px solid var(--primary,#2d6a4f);outline-offset:-2px}[dir=rtl] body{text-align:right}[dir=rtl] .beta-badge{margin-left:0;margin-right:4px}[dir=rtl] .beta-free-tag{margin-left:0;margin-right:8px}[dir=rtl] .toolbar{flex-direction:row-reverse}[dir=rtl] .toolbar-group{border-right:none;border-left:1px solid var(--border);padding-left:16px;padding-right:0}[dir=rtl] .toolbar-group:last-child{border-left:none}[dir=rtl] .sidebar{border-left:none;border-right:1px solid var(--border)}[dir=rtl] .panel[id$=Props]{border-left:none;border-right:3px solid var(--primary)}[dir=rtl] .field-row{flex-direction:row-reverse}[dir=rtl] input,[dir=rtl] select,[dir=rtl] textarea,[dir=rtl] label{text-align:right}[dir=rtl] .tool-btn{flex-direction:row-reverse}[dir=rtl] .project-card{text-align:right}[dir=rtl] .project-card-actions{flex-direction:row-reverse}[dir=rtl] table,[dir=rtl] th,[dir=rtl] td{text-align:right}[dir=rtl] ul,[dir=rtl] ol{padding-left:0;padding-right:1.5em}[dir=rtl] .icon-arrow-right,[dir=rtl] .icon-chevron-right,[dir=rtl] .icon-arrow-left,[dir=rtl] .icon-chevron-left{transform:scaleX(-1)}[dir=rtl] .search-input{padding-left:12px;padding-right:36px}[dir=rtl] .search-icon{left:auto;right:10px}[dir=rtl] .auth-form{text-align:right}[dir=rtl] .feedback-btn{left:16px;right:auto}[dir=rtl] .onboarding-tooltip,[dir=rtl] .article-content{text-align:right}[dir=rtl] .article-meta{flex-direction:row-reverse}[dir=rtl] .bp-nav-logo{border-right:0;border-left:var(--rule-norm) solid var(--ink)}[dir=rtl] .bp-nav-right{border-left:0;border-right:var(--rule-norm) solid var(--ink);justify-content:flex-start}[dir=rtl] .bp-tb-cell{border-right:0;border-left:var(--rule-thin) solid var(--ink)}[dir=rtl] .bp-tb-cell:first-child{border-left:0}[dir=rtl] .bp-tb-cell:last-child{border-left:var(--rule-thin) solid var(--ink)}
