:root{font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;color:#0f172a;background:#f8fafc;--blue-600: #2563eb;--blue-700: #1d4ed8;--blue-50: #eff6ff;--slate-50: #f8fafc;--slate-100: #f1f5f9;--slate-200: #e2e8f0;--slate-500: #64748b;--slate-700: #334155;--slate-900: #0f172a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:var(--blue-700);text-decoration:none}a:hover{text-decoration:underline}.btn-primary,.btn-outline,.btn-secondary,button{font:inherit;cursor:pointer;border-radius:8px;transition:background .15s,border-color .15s,color .15s}.btn-primary,button:not(.btn-secondary):not(.btn-outline):not(.tab):not(.secondary){background:var(--blue-700);color:#fff;border:none;padding:.65rem 1.25rem;font-weight:600}.btn-primary:hover,button:not(.btn-secondary):not(.btn-outline):not(.tab):not(.secondary):hover{background:var(--blue-600);text-decoration:none}.btn-outline{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--blue-700);border:1px solid var(--slate-200);padding:.65rem 1.25rem;font-weight:600}.btn-outline:hover{background:var(--slate-50);text-decoration:none}.btn-secondary,button.secondary{background:var(--slate-500);color:#fff;border:none;padding:.4rem .75rem}.btn-sm{padding:.45rem 1rem;font-size:.9rem}.btn-block{width:100%}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:8px;background:var(--blue-700);color:#fff;font-weight:700;font-size:.75rem}.container{max-width:1120px;margin:0 auto;padding:0 1.5rem}.marketing-header{position:sticky;top:0;z-index:100;background:#fffffff2;border-bottom:1px solid var(--slate-200);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.marketing-header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4rem}.marketing-logo{display:flex;align-items:center;gap:.65rem;font-weight:700;font-size:1.1rem;color:var(--slate-900);text-decoration:none}.marketing-logo:hover{text-decoration:none}.marketing-nav{display:none;gap:1.5rem}.marketing-nav a{color:var(--slate-700);font-weight:500;text-decoration:none}.marketing-nav a:hover{color:var(--blue-700)}@media(min-width:768px){.marketing-nav{display:flex}}.hero{background:linear-gradient(180deg,var(--blue-50) 0%,#fff 100%);padding:4rem 0 5rem}.hero-inner{display:grid;gap:3rem;align-items:center}@media(min-width:900px){.hero-inner{grid-template-columns:1.2fr .8fr}}.hero-eyebrow{color:var(--blue-700);font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .75rem}.hero h1{font-size:clamp(2rem,4vw,3rem);line-height:1.15;margin:0 0 1rem;color:var(--slate-900)}.hero-subtitle{font-size:1.125rem;color:var(--slate-500);max-width:36rem;margin:0 0 1.75rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.hero-card{background:#fff;border:1px solid var(--slate-200);border-radius:16px;padding:1.5rem;box-shadow:0 20px 40px #0f172a14;display:grid;gap:1rem}.hero-stat{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--slate-100)}.hero-stat:last-child{border-bottom:none}.hero-stat span{color:var(--slate-500);font-size:.95rem}.hero-stat strong{font-size:1.25rem;color:var(--slate-900)}.section{padding:4rem 0}.section-alt{background:var(--slate-50)}.section-heading{max-width:40rem;margin-bottom:2rem}.section h2{font-size:2rem;margin:0 0 .75rem;color:var(--slate-900)}.section-lead{color:var(--slate-500);font-size:1.05rem;margin:0}.section-grid{display:grid;gap:2rem}@media(min-width:768px){.section-grid{grid-template-columns:.9fr 1.1fr;align-items:start}}.section-body p{color:var(--slate-700);margin:0 0 1rem}.feature-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.feature-card,.trust-card{background:#fff;border:1px solid var(--slate-200);border-radius:12px;padding:1.25rem}.section-alt .feature-card{background:#fff}.feature-card h3,.trust-card h3{margin:0 0 .5rem;font-size:1.05rem;color:var(--slate-900)}.feature-card p,.trust-card p{margin:0;color:var(--slate-500);font-size:.95rem}.audience-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.audience-chip{background:#fff;border:1px solid var(--slate-200);border-radius:999px;padding:.75rem 1rem;text-align:center;font-weight:500;color:var(--slate-700)}.section-alt .audience-chip{background:#fff}.trust-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.cta-section{background:var(--blue-700);color:#fff}.cta-inner{text-align:center}.cta-inner h2{color:#fff;margin:0 0 .75rem}.cta-inner p{margin:0 0 1.5rem;opacity:.9}.cta-section .btn-primary{background:#fff;color:var(--blue-700)}.cta-section .btn-primary:hover{background:var(--slate-100)}.marketing-footer{background:var(--slate-900);color:#cbd5e1;padding:2rem 0}.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.5rem;align-items:center}.footer-inner strong{color:#fff;font-size:1.1rem}.footer-inner p{margin:.25rem 0 0}.footer-links{display:flex;gap:1.25rem}.footer-links a{color:#94a3b8;text-decoration:none}.footer-links a:hover{color:#fff}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--blue-50) 0%,var(--slate-50) 100%);padding:2rem 1rem}.login-panel{width:100%;max-width:420px}.login-logo{display:inline-flex;align-items:center;gap:.65rem;font-weight:700;font-size:1.1rem;color:var(--slate-900);margin-bottom:1.5rem;text-decoration:none}.login-card{background:#fff;border:1px solid var(--slate-200);border-radius:16px;padding:2rem;box-shadow:0 16px 40px #0f172a14}.login-card h1{margin:0 0 .35rem;font-size:1.75rem}.login-subtitle{margin:0 0 1.5rem;color:var(--slate-500)}.login-form{display:grid;gap:1rem}.login-form label{display:grid;gap:.35rem;font-weight:500;font-size:.9rem;color:var(--slate-700)}.login-form input{width:100%;padding:.65rem .75rem;border:1px solid var(--slate-200);border-radius:8px;font:inherit}.login-form input:focus{outline:2px solid var(--blue-50);border-color:var(--blue-700)}.demo-credentials{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--slate-200)}.demo-credentials p{margin:0 0 .5rem;font-size:.85rem;color:var(--slate-500)}.demo-credentials code{display:block;background:var(--slate-50);border:1px solid var(--slate-200);border-radius:6px;padding:.35rem .5rem;font-size:.85rem;margin-bottom:.35rem}.login-back{text-align:center;margin-top:1.25rem;color:var(--slate-500)}.app-layout{display:grid;min-height:100vh;grid-template-columns:240px 1fr}.app-sidebar{background:#fff;border-right:1px solid var(--slate-200);display:flex;flex-direction:column;padding:1.25rem 1rem}.sidebar-brand{margin-bottom:2rem}.brand-link{display:flex;align-items:center;gap:.65rem;font-weight:700;color:var(--slate-900);text-decoration:none}.brand-text{font-size:1.05rem}.sidebar-nav{display:grid;gap:.35rem;flex:1}.nav-item{display:block;padding:.65rem .75rem;border-radius:8px;color:var(--slate-700);font-weight:500;text-decoration:none}.nav-item:hover{background:var(--slate-50);text-decoration:none}.nav-item.active{background:var(--blue-50);color:var(--blue-700)}.sidebar-footer{margin-top:auto;padding-top:1rem}.app-main{background:var(--slate-50);overflow:auto}.app-page{padding:1.5rem 2rem 2rem;max-width:1200px}.app-page-header{margin-bottom:1.5rem}.app-page-header h1{margin:.25rem 0 0;font-size:1.75rem}.page-subtitle{margin:.35rem 0 0;color:var(--slate-500)}@media(max-width:768px){.app-layout{grid-template-columns:1fr}.app-sidebar{border-right:none;border-bottom:1px solid var(--slate-200)}.sidebar-nav{flex-direction:row;display:flex;flex-wrap:wrap}}.card{background:#fff;border:1px solid var(--slate-200);border-radius:12px;padding:1rem;margin-bottom:1rem}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.65rem .5rem;border-bottom:1px solid var(--slate-200)}th{font-size:.85rem;color:var(--slate-500);font-weight:600}input,select{font:inherit;padding:.4rem .6rem;border:1px solid var(--slate-200);border-radius:6px}.error{color:#b91c1c}.tabs{display:flex;gap:.5rem;margin-bottom:1rem}.tab{background:var(--slate-200);color:var(--slate-900);border:none;border-radius:8px 8px 0 0;padding:.5rem 1rem}.tab.active{background:var(--blue-700);color:#fff}.workspace-tabs{flex-wrap:wrap}.project-workspace h2,.project-workspace h3{margin-top:0}.workspace-row-editor{display:grid;gap:1rem;margin:1rem 0}.workspace-row-editor-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.workspace-row{border:1px solid var(--slate-200);border-radius:8px;padding:1rem;display:grid;gap:.75rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1rem}.summary-card{background:#fff;border:1px solid var(--slate-200);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.25rem}.summary-card span{font-size:.85rem;color:var(--slate-500)}.summary-card strong{font-size:1.25rem}.summary-card .negative{color:#b91c1c}.inline-form{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;align-items:center}.inline-form input,.inline-form select{min-width:120px}.public-portal{min-height:100vh;display:flex;flex-direction:column;background:var(--slate-50)}.public-portal-header{background:#fff;border-bottom:1px solid var(--slate-200)}.public-portal-header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4rem}.public-portal-brand{display:flex;align-items:center;gap:.65rem;font-weight:700;color:var(--slate-900);text-decoration:none}.public-portal-nav{display:flex;align-items:center;gap:1rem}.public-portal-nav a{color:var(--slate-700);font-weight:500;text-decoration:none}.public-portal-nav a:hover{color:var(--portal-accent, var(--blue-700))}.public-portal .brand-mark{background:var(--portal-accent, var(--blue-700))}.public-portal main{flex:1}.public-portal-footer{background:var(--slate-900);color:#cbd5e1;padding:2rem 0}.public-portal-footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.5rem}.public-portal-footer strong{color:#fff}.public-portal-contact p{margin:.25rem 0}.public-portal-empty{min-height:60vh;display:flex;align-items:center;padding:3rem 0}.public-hero{background:linear-gradient(180deg,#fff 0%,var(--slate-50) 100%);padding:3.5rem 0;border-bottom:1px solid var(--slate-200)}.public-hero-inner{max-width:760px}.public-hero h1{margin:0 0 1rem;font-size:clamp(2rem,4vw,2.75rem);color:var(--slate-900)}.public-hero-lead{font-size:1.125rem;color:var(--slate-500);margin:0 0 1.5rem}.public-hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.public-portal .btn-primary{background:var(--portal-accent, var(--blue-700))}.public-info-grid{display:grid;gap:1.5rem}@media(min-width:768px){.public-info-grid{grid-template-columns:1.2fr .8fr}}.public-info-card{background:#fff;border:1px solid var(--slate-200);border-radius:12px;padding:1.25rem}.public-info-card h3{margin:0 0 .75rem}.public-project-group{margin-bottom:2.5rem}.public-project-group h2{margin:0 0 1rem;color:var(--slate-900)}.public-project-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.public-project-card{background:#fff;border:1px solid var(--slate-200);border-radius:12px;padding:1.25rem}.public-project-card h3{margin:0 0 .5rem}.public-project-card p{color:var(--slate-500);margin:0 0 1rem}.public-project-meta{display:grid;grid-template-columns:auto 1fr;gap:.25rem .75rem;margin:0;font-size:.9rem}.public-project-meta dt{color:var(--slate-500);font-weight:500}.public-project-meta dd{margin:0;color:var(--slate-700)}.public-detail{max-width:960px}.public-back-link{display:inline-block;margin-bottom:1rem}.public-detail-header h1{margin:.5rem 0}.public-status-badge{display:inline-block;background:var(--blue-50);color:var(--portal-accent, var(--blue-700));padding:.25rem .65rem;border-radius:999px;font-size:.85rem;font-weight:600}.public-detail-grid{display:grid;gap:1.25rem;margin-top:1.5rem}@media(min-width:768px){.public-detail-grid{grid-template-columns:1fr 1fr}}.public-detail-list{display:grid;grid-template-columns:120px 1fr;gap:.5rem 1rem;margin:0}.public-detail-list dt{color:var(--slate-500);font-weight:500}.public-detail-list dd{margin:0;color:var(--slate-900)}.app-page-header-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem}.admin-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.card-wide{grid-column:1 / -1}.settings-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.detail-list{display:grid;grid-template-columns:140px 1fr;gap:.5rem 1rem;margin:0}.detail-list-wide{grid-template-columns:180px 1fr}.detail-list dt{color:var(--slate-500);font-weight:500}.detail-list dd{margin:0}.mono{font-family:ui-monospace,monospace;font-size:.85rem}.muted{color:var(--slate-500);font-size:.95rem}.coming-soon{color:var(--slate-500);font-style:italic;font-size:.9rem}.success-text{color:#15803d;font-size:.9rem}.settings-form{display:grid;gap:.75rem}.settings-form label{display:grid;gap:.35rem;font-weight:500}.settings-form select{width:100%}.builder-form{display:grid;gap:1.5rem}.form-section{border:none;padding:0;margin:0}.form-section legend{font-weight:600;font-size:1.05rem;margin-bottom:.75rem;color:var(--slate-900)}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.form-grid .span-2{grid-column:span 2}.form-grid textarea{width:100%;font:inherit;padding:.5rem .65rem;border:1px solid var(--slate-200);border-radius:8px;resize:vertical}.form-grid label{display:grid;gap:.35rem;font-weight:500;font-size:.9rem}.form-grid input,.form-grid select{width:100%}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-weight:500}.form-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.overview-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0}.overview-details{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--slate-200)}.tab-link{display:inline-flex;align-items:center;padding:.5rem 1rem;text-decoration:none;border-radius:8px 8px 0 0}.builder-inline-form .flex-2{flex:2;min-width:200px}.page-footer-link{margin-top:1.5rem}@media(max-width:640px){.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:span 1}}
