:root{color:#18181b;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f7f5;font:14px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}h1,h2,h3{letter-spacing:-.01em;font-weight:600}.app{flex-direction:column;width:100vw;height:100vh;display:flex}:root{--sun-deep:#c43a1a;--sun-orange:#f2722b;--sun-gold:#fbb034;--ink:#2a2018;--cream:#fff9f1;--sunset-gradient:linear-gradient(135deg, var(--sun-deep) 0%, var(--sun-orange) 48%, var(--sun-gold) 100%);--glow-orange:0 8px 24px #f2722b59}.navbar-static{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10;background:#fff9f1f7;justify-content:space-between;align-items:center;padding:.6rem 1.5rem;display:flex;box-shadow:0 2px 14px #2a201814}.navbar-brand{align-items:center;text-decoration:none;display:flex}.brand-wordmark{letter-spacing:.06em;text-transform:uppercase;color:var(--ink);font-family:Bebas Neue,Impact,sans-serif;font-size:1.55rem;line-height:1;transition:color .2s}.navbar-brand:hover .brand-wordmark{color:var(--sun-orange)}.nav-links{align-items:center;gap:1.6rem;margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:var(--ink);letter-spacing:.1em;text-transform:uppercase;padding:.4rem 0;font-family:Oswald,sans-serif;font-size:.85rem;text-decoration:none;transition:color .2s;position:relative}.nav-links a:after{content:"";background:var(--sunset-gradient);width:0;height:2px;transition:width .3s;position:absolute;bottom:0;left:0}.nav-links a:hover{color:var(--sun-orange)}.nav-links a:hover:after{width:100%}.nav-cta{background:var(--sunset-gradient);border-radius:6px;font-weight:600;color:#fff!important;padding:.55rem 1.2rem!important}.nav-cta:hover{box-shadow:var(--glow-orange);transform:translateY(-1px)}.nav-cta:after{display:none!important}.app-header{background:#fff;border-bottom:1px solid #e4e4e7;align-items:center;gap:20px;padding:10px 20px;display:flex}.app-header-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-family:Oswald,sans-serif;font-size:.85rem}.app-header h1{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:600}.template-picker{color:#52525b;align-items:center;gap:8px;font-size:13px;display:inline-flex}.template-picker select{cursor:pointer;background:#fff;border:1px solid #d4d4d8;border-radius:6px;padding:6px 10px;font-size:13px}.workspace{flex:1;grid-template-columns:1fr 320px;min-height:0;display:grid}.design-canvas{background:#f7f7f5;width:100%;height:100%;display:block}.design-canvas .region{stroke:#0000;stroke-width:0;cursor:pointer;transition:stroke .1s}.design-canvas .region:hover{stroke:#3478f68c;stroke-width:1.4px}.design-canvas .region.is-selected{stroke:#3478f6;stroke-width:2.5px}.design-canvas.is-drawing .region{cursor:crosshair}.design-canvas.is-drawing .region:hover{stroke:#0000}.inspector{background:#fff;border-left:1px solid #e4e4e7;padding:20px;overflow-y:auto}.inspector h2{margin:0 0 4px;font-size:16px}.inspector label{flex-direction:column;gap:6px;margin-top:16px;font-size:13px;display:flex}.inspector input[type=color]{cursor:pointer;background:#fff;border:1px solid #d4d4d8;border-radius:6px;width:100%;height:36px}.inspector select{cursor:pointer;background:#fff;border:1px solid #d4d4d8;border-radius:6px;padding:8px 10px;font-size:13px}.swatch-row{gap:8px;margin-top:16px;display:flex}.swatch{cursor:pointer;border:2px solid #d4d4d8;border-radius:6px;width:40px;height:40px;padding:0;transition:border-color .12s}.swatch.is-selected{border-color:#3478f6;box-shadow:inset 0 0 0 2px #3478f6}.auth-loading{color:#71717a;place-items:center;height:100vh;display:grid}.auth-screen{background:#f7f7f5;place-items:center;min-height:100vh;padding:20px;display:grid}.auth-card{background:#fff;border:1px solid #e4e4e7;border-radius:10px;flex-direction:column;gap:12px;width:100%;max-width:360px;padding:28px;display:flex}.auth-card h1{text-align:center;margin:0 0 8px;font-size:20px}.auth-tabs{background:#f4f4f5;border-radius:8px;gap:2px;padding:3px;display:flex}.auth-tab{cursor:pointer;color:#52525b;background:0 0;border:0;border-radius:6px;flex:1;padding:8px 12px;font-size:13px}.auth-tab.is-active{color:#18181b;background:#fff;box-shadow:0 1px 3px #0000000f}.auth-card label{color:#52525b;flex-direction:column;gap:6px;font-size:13px;display:flex}.auth-card input{background:#fff;border:1px solid #d4d4d8;border-radius:6px;padding:9px 11px;font-size:14px}.auth-card input:focus{outline-offset:1px;outline:2px solid #3478f6}.auth-submit{color:#fff;cursor:pointer;background:#18181b;border:0;border-radius:6px;margin-top:4px;padding:10px 16px;font-size:14px}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-error{color:#b91c1c;background:#fef2f2;border-radius:6px;margin:0;padding:8px 10px;font-size:13px}.app-header{flex-wrap:wrap}.designs-menu{flex-wrap:wrap;align-items:center;gap:12px;margin-left:auto;display:flex}.design-label{color:#52525b;padding-right:4px;font-size:13px}.design-label strong{color:#18181b;font-weight:600}.designs-menu button{cursor:pointer;background:#fff;border:1px solid #d4d4d8;border-radius:6px;padding:6px 12px;font-size:13px}.designs-menu button:hover{background:#f4f4f5}.designs-menu button:disabled{opacity:.6;cursor:not-allowed}.user-chip{color:#52525b;border-left:1px solid #e4e4e7;align-items:center;gap:8px;margin-left:4px;padding-left:12px;font-size:13px;display:inline-flex}.designs-menu button.danger{color:#b91c1c;border-color:#fca5a5}.designs-menu button.danger:hover{background:#fef2f2}.dirty-dot{color:#b45309;margin-left:4px;font-weight:700}.modal-backdrop{z-index:50;background:#0f0f1473;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border-radius:10px;flex-direction:column;gap:14px;width:100%;max-width:420px;padding:24px;display:flex;box-shadow:0 20px 50px #00000038}.modal-card h2{margin:0;font-size:16px}.modal-card label{color:#52525b;flex-direction:column;gap:6px;font-size:13px;display:flex}.modal-card input{border:1px solid #d4d4d8;border-radius:6px;padding:9px 11px;font-size:14px}.modal-card input:focus{outline-offset:1px;outline:2px solid #3478f6}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.modal-actions button{cursor:pointer;background:#fff;border:1px solid #d4d4d8;border-radius:6px;padding:8px 16px;font-size:13px}.modal-actions button:hover:not(:disabled){background:#f4f4f5}.modal-actions .auth-submit{color:#fff;background:#18181b;border-color:#18181b;margin-top:0;padding:8px 18px}.inspector-empty{color:#71717a;font-size:13px}.muted{color:#71717a;margin:0;font-size:12px}.trim-toggle{cursor:pointer;background:#fff;border:1px solid #d4d4d8;border-radius:6px;padding:6px 12px;font-size:13px}.trim-toggle:hover{background:#f4f4f5}.trim-toggle.is-active{color:#fff;background:#3478f6;border-color:#3478f6}.design-canvas.is-drawing{cursor:crosshair}.fascia-control{display:inline-flex;position:relative}.fascia-trigger{align-items:center;gap:6px;display:inline-flex}.fascia-swatch{border:1px solid #00000040;border-radius:3px;width:14px;height:14px;display:inline-block}.fascia-popover{z-index:30;background:#fff;border:1px solid #d4d4d8;border-radius:8px;flex-direction:column;gap:8px;min-width:220px;padding:12px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #00000024}.fascia-popover label{justify-content:space-between;align-items:center;gap:8px;font-size:13px;display:flex}.inspector-delete{color:#b91c1c;cursor:pointer;background:#fff;border:1px solid #fca5a5;border-radius:6px;margin-top:20px;padding:8px 12px;font-size:13px}.inspector-delete:hover{background:#fef2f2}.split-panel{border-top:1px solid #e5e7eb;flex-direction:column;gap:6px;margin-top:18px;padding-top:14px;display:flex}.split-trim-toggle{cursor:pointer;flex-direction:row;align-items:center;gap:8px;font-size:13px;display:flex}.split-panel .inspector-delete{align-self:flex-start;margin-top:6px}.preset-block{flex-direction:column;gap:6px;margin-top:16px;display:flex}.preset-label{color:#52525b;font-size:13px}.preset-row{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.preset-swatch{aspect-ratio:1;cursor:pointer;border:1px solid #d4d4d8;border-radius:4px;width:100%;padding:0;transition:transform 80ms}.preset-swatch:hover{transform:scale(1.08)}.preset-swatch.is-selected{border-color:#3478f6;box-shadow:inset 0 0 0 2px #3478f6}.mullion-row{grid-template-columns:1fr 1fr;gap:6px;margin-top:4px;margin-bottom:12px;display:grid}.mullion-option{cursor:pointer;text-align:center;color:#3f3f46;background:#fff;border:1px solid #d4d4d8;border-radius:4px;padding:6px 8px;font-size:12px}.mullion-option:hover{color:#3478f6;border-color:#3478f6}.mullion-option.is-selected{color:#fff;background:#3478f6;border-color:#3478f6}.btn-primary{letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--sunset-gradient);cursor:pointer;border:none;border-radius:6px;padding:.85rem 1.8rem;font-family:Oswald,sans-serif;font-size:.95rem;font-weight:600;transition:transform .15s,box-shadow .15s;display:inline-block;box-shadow:0 8px 20px #c43a1a47}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 34px #f2722b52}.btn-primary:disabled{opacity:.6;cursor:default}.lead-landing{background:linear-gradient(to bottom, var(--sun-deep) 0%, var(--sun-orange) 55%, var(--sun-gold) 100%);min-height:100vh}.lead-hero{text-align:center;place-items:center;min-height:calc(100vh - 64px);padding:2rem 1.5rem;display:grid}.lead-hero-inner{color:#fff;max-width:640px}.lead-hero-eyebrow{text-transform:uppercase;letter-spacing:.18em;opacity:.9;margin:0 0 .75rem;font-family:Oswald,sans-serif;font-size:.8rem}.lead-hero-title{letter-spacing:.03em;text-shadow:0 4px 24px #00000040;margin:0 0 1rem;font-family:Bebas Neue,Impact,sans-serif;font-size:clamp(3rem,9vw,6rem);line-height:.95}.lead-hero-sub{text-shadow:0 1px 8px #00000040;max-width:520px;margin:0 auto;font-size:clamp(1rem,2.2vw,1.25rem);line-height:1.6}.lead-backdrop{background:#28140a8c}.lead-modal-title,.save-send-modal h2{color:var(--ink);margin:0;font-family:Oswald,sans-serif;font-size:1.35rem}.lead-modal-sub{color:#6e5f4f;margin:-4px 0 4px;font-size:.9rem}.lead-submit{width:100%;margin-top:4px}.lead-leave{color:#6e5f4f;cursor:pointer;background:0 0;border:none;padding:4px;font-size:.85rem;text-decoration:underline}.lead-leave:hover{color:var(--sun-deep)}.save-send-btn{cursor:pointer;border:none;font-family:Oswald,sans-serif}.save-send-modal input[readonly]{color:var(--ink);background:#f6f5f3}.share-app{min-height:100vh}.share-status{text-align:center;color:var(--ink);place-items:center;gap:.5rem;padding:4rem 1.5rem;display:grid}.share-status a{color:var(--sun-deep);font-weight:600}.share-workspace{display:block}.admin-app{min-height:100vh}.admin-main{padding:20px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--line,#2a20181a);white-space:nowrap;padding:8px 10px}.admin-table th{text-transform:uppercase;letter-spacing:.06em;color:#6e5f4f;font-family:Oswald,sans-serif;font-size:11px}.admin-table tr.is-contacted{opacity:.55}.admin-table a{color:var(--sun-deep);text-decoration:none}.crm-badge{color:#555;background:#eee;border-radius:10px;padding:2px 7px;font-size:11px}.crm-badge.crm-ok{color:#1f7a3d;background:#dff3e2}.crm-badge.crm-failed{color:#b3261e;background:#fde2e0}.admin-table .inspector-delete{margin:0;padding:4px 8px;font-size:12px}.admin-actions{align-items:center;gap:8px;display:flex}.admin-edit-link{white-space:nowrap;font-size:12px;font-weight:600}.admin-edit-banner{background:var(--sunset-gradient);color:#fff;text-align:center;padding:8px 16px;font-size:13px}.zip-stats{max-width:560px}.zip-row{grid-template-columns:64px 1fr 40px;align-items:center;gap:10px;margin-bottom:6px;display:grid}.zip-code{font-variant-numeric:tabular-nums;color:var(--ink);font-size:13px;font-weight:600}.zip-bar-track{background:#f0ece4;border-radius:4px;height:16px;overflow:hidden}.zip-bar{background:var(--sunset-gradient);border-radius:4px;min-width:2px;height:100%}.zip-count{font-variant-numeric:tabular-nums;color:#6e5f4f;text-align:right;font-size:13px}.template-locks{max-width:480px}.tl-row{border-bottom:1px solid var(--line,#2a20181a);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.tl-name{color:var(--ink);font-size:14px}.tl-toggle{cursor:pointer;white-space:nowrap;border:1px solid #d4d4d8;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600}.tl-toggle.is-live{color:#1f7a3d;background:#dff3e2;border-color:#a9dcb8}.tl-toggle.is-locked{color:#6e5f4f;background:#f3f0ea}
