:root{--color-primary:#0066FF;--color-primary-dark:#0044CC;--color-accent:#FF6B00;--color-gray-900:#0F172A;--color-gray-800:#1E293B;--color-gray-700:#334155;--color-gray-500:#64748B;--color-gray-300:#CBD5E1;--color-gray-100:#F1F5F9;--color-gray-50:#F8FAFC;--color-white:#FFFFFF;--color-critical:#DC2626;--color-high:#EA580C;--color-medium:#CA8A04;--color-low:#16A34A;--color-success:#22C55E;--color-warning:#F59E0B;--color-error:#EF4444;--color-info:#3B82F6;--bg:var(--color-gray-50);--surface:var(--color-white);--text:var(--color-gray-900);--text-secondary:var(--color-gray-500);--border:var(--color-gray-300);--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;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 2px 4px rgba(0,0,0,0.08);--shadow-lg:0 4px 12px rgba(0,0,0,0.12);--sidebar-width:260px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}.app-layout{display:flex;min-height:100vh}.sidebar{background:var(--color-gray-900);color:var(--color-white);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:transform .2s ease}.sidebar-brand{padding:var(--space-6);border-bottom:1px solid var(--color-gray-700)}.sidebar-brand h1{font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:var(--space-2)}.sidebar-brand h1 span.brand-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--color-primary);border-radius:var(--radius-md);font-size:.875rem}.sidebar-brand p{font-size:.75rem;color:var(--text-secondary);margin-top:var(--space-1)}.sidebar-nav{flex:1 1;padding:var(--space-4) 0;display:flex;flex-direction:column;gap:var(--space-1)}.sidebar-nav a{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);font-size:.875rem;font-weight:500;color:var(--text-secondary);border-left:3px solid transparent;transition:all .15s ease}.sidebar-nav a:hover{color:var(--color-white);background:rgba(255,255,255,.05)}.sidebar-nav a.active{color:var(--color-white);background:rgba(0,102,255,.15);border-left-color:var(--color-primary)}.sidebar-nav a .nav-icon{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;font-size:1rem}.sidebar-user{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-gray-700);display:flex;align-items:center;gap:var(--space-3)}.sidebar-user .avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.sidebar-user .user-info{flex:1 1;min-width:0}.sidebar-user .user-info .name{font-size:.875rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user .user-info .role{font-size:.75rem;color:var(--text-secondary)}.main-content{flex:1 1;min-width:0;margin-left:var(--sidebar-width);padding:var(--space-8);max-width:calc(1280px + var(--space-8) * 2)}.page-header{margin-bottom:var(--space-8)}.page-header h2{font-size:1.75rem;font-weight:700;color:var(--text)}.page-header p{font-size:.9375rem;color:var(--text-secondary);margin-top:var(--space-1)}.page-header-row{justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.breadcrumb,.page-header-row{display:flex;align-items:center}.breadcrumb{gap:var(--space-2);font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--space-4)}.breadcrumb a{color:var(--color-primary);font-weight:500}.breadcrumb a:hover{text-decoration:underline}.breadcrumb .separator{color:var(--text-secondary)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:box-shadow .15s ease}.card:hover{box-shadow:var(--shadow-md)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.card-header h3{font-size:1rem;font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:var(--space-6);gap:var(--space-6);margin-bottom:var(--space-8)}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.stat-card .stat-icon{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin-bottom:var(--space-3)}.stat-card .stat-value{font-size:1.875rem;font-weight:700;line-height:1.2}.stat-card .stat-label{font-size:.875rem;color:var(--text-secondary);margin-top:var(--space-1)}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:var(--space-6);gap:var(--space-6)}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow .15s ease,transform .15s ease;cursor:pointer}.project-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.project-card-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:var(--space-3)}.project-card-header .project-icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-primary);color:white;display:flex;align-items:center;justify-content:center;font-size:1.125rem;flex-shrink:0}.project-card-header .project-title{font-weight:600;font-size:1rem}.project-card-header .project-type{font-size:.75rem;color:var(--text-secondary);text-transform:capitalize}.project-card-body{padding:var(--space-5) var(--space-6)}.project-card-body .project-address{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.project-card-stats{display:flex;gap:var(--space-5)}.project-card-stats .mini-stat{display:flex;flex-direction:column;align-items:center}.project-card-stats .mini-stat .mini-stat-value{font-size:1.125rem;font-weight:700}.project-card-stats .mini-stat .mini-stat-label{font-size:.75rem;color:var(--text-secondary)}.table-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.table-container table{width:100%;border-collapse:collapse}.table-container th{text-align:left;padding:var(--space-3) var(--space-5);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:var(--color-gray-50);border-bottom:1px solid var(--border)}.table-container td{padding:var(--space-4) var(--space-5);font-size:.875rem;border-bottom:1px solid var(--color-gray-100);vertical-align:middle}.table-container tr:last-child td{border-bottom:none}.table-container tr:hover td{background:var(--color-gray-50)}.table-container tr.clickable{cursor:pointer}.badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;line-height:1.5;white-space:nowrap}.badge-critical{color:var(--color-critical)}.badge-high{background:#FFF7ED;color:var(--color-high)}.badge-medium{background:#FEFCE8;color:var(--color-medium)}.badge-low{background:#F0FDF4;color:var(--color-low)}.badge-open{background:#EFF6FF;color:var(--color-info)}.badge-in_progress{background:#FFFBEB;color:var(--color-warning)}.badge-resolved{background:#F0FDF4;color:var(--color-success)}.badge-closed,.badge-wont_fix{background:var(--color-gray-100);color:var(--text-secondary)}.badge-draft{background:var(--color-gray-100);color:var(--text)}.badge-completed{background:#F0FDF4;color:var(--color-success)}.badge-archived{background:var(--color-gray-100);color:var(--text-secondary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap;height:40px}.btn-primary{background:var(--color-primary);color:var(--color-white)}.btn-primary:hover{background:var(--color-primary-dark)}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--color-gray-100)}.btn-accent{background:var(--color-accent);color:var(--color-white)}.btn-accent:hover{background:#E55D00}.btn-sm{height:32px;padding:var(--space-1) var(--space-3);font-size:.8125rem}.btn-ghost{background:transparent;color:var(--text-secondary);border:none}.btn-ghost:hover{background:var(--color-gray-100);color:var(--text)}.filter-bar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-6)}.search-input{padding:var(--space-2) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);font-size:.875rem;background:var(--surface);min-width:240px;height:40px;outline:none;transition:border-color .15s ease}.search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(0,102,255,.1)}.chip-group{display:flex;gap:var(--space-2);flex-wrap:wrap}.chip{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-full);font-size:.8125rem;font-weight:500;cursor:pointer;background:var(--surface);color:var(--text-secondary);transition:all .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chip:hover{color:var(--color-primary)}.chip.active,.chip:hover{border-color:var(--color-primary)}.chip.active{background:var(--color-primary);color:var(--color-white)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12) var(--space-6);text-align:center}.empty-state .empty-icon{font-size:3rem;margin-bottom:var(--space-4);opacity:.4}.empty-state h3{font-size:1.125rem;font-weight:600;margin-bottom:var(--space-2)}.empty-state p{font-size:.875rem;color:var(--text-secondary);max-width:400px}.section-title{font-size:1.125rem;font-weight:600;margin-bottom:var(--space-4)}.divider{border:none;border-top:1px solid var(--border);margin:var(--space-6) 0}.text-muted{color:var(--text-secondary)}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.font-semibold{font-weight:600}.font-bold{font-weight:700}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.issue-detail{background:var(--surface);border-top:1px solid var(--border);padding:var(--space-5) var(--space-6)}.issue-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.issue-detail-field label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:var(--space-1)}.issue-detail-field p{font-size:.875rem}.issue-photos{margin-top:var(--space-5)}.issue-photos h3{font-size:1rem;margin-bottom:var(--space-3)}.issue-photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,320px));grid-gap:var(--space-4);gap:var(--space-4)}.issue-photo-grid figure{margin:0;min-width:0}.issue-photo-grid img{display:block;width:100%;max-height:400px;object-fit:contain;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md)}.issue-photo-grid figcaption{color:var(--text-secondary);font-size:.875rem;margin-top:var(--space-2)}.settings-section{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-sm)}.settings-section h3{font-size:1.125rem;font-weight:600;margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--color-gray-100)}.settings-row:last-child{border-bottom:none}.settings-row .settings-label{font-size:.875rem;font-weight:500}.settings-row .settings-value{font-size:.875rem;color:var(--text-secondary)}.quick-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.recent-list{display:flex;flex-direction:column}.recent-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0;border-bottom:1px solid var(--color-gray-100)}.recent-item:last-child{border-bottom:none}.recent-item-left{display:flex;align-items:center;gap:var(--space-3)}.recent-item-icon{width:36px;height:36px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.recent-item-info h4{font-size:.875rem;font-weight:600}.recent-item-info p{font-size:.75rem;color:var(--text-secondary);margin-top:1px}.recent-item-right{display:flex;align-items:center;gap:var(--space-3)}.report-template-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;align-items:flex-start;gap:var(--space-4);box-shadow:var(--shadow-sm);transition:box-shadow .15s ease}.report-template-card:hover{box-shadow:var(--shadow-md)}.report-template-icon{width:48px;height:48px;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.report-template-info h4{font-size:1rem;font-weight:600;margin-bottom:var(--space-1)}.report-template-info p{font-size:.8125rem;color:var(--text-secondary);line-height:1.4}.report-template-meta{display:flex;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap}.report-template-meta span{font-size:.75rem;color:var(--text-secondary);display:flex;align-items:center;gap:var(--space-1)}.toggle-row{display:flex;align-items:center;gap:var(--space-3)}.toggle-switch{position:relative;width:44px;height:24px;background:var(--color-gray-300);border-radius:var(--radius-full);cursor:pointer;transition:background .2s ease;border:none}.toggle-switch.active{background:var(--color-primary)}.toggle-switch .toggle-knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:var(--radius-full);background:var(--surface);transition:transform .2s ease;box-shadow:var(--shadow-sm)}.toggle-switch.active .toggle-knob{transform:translateX(20px)}.toggle-label{font-size:.875rem;font-weight:500}.mobile-menu-bar{display:none}@media (max-width:1024px){.app-layout{flex-direction:column}.mobile-menu-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1.25rem;background:var(--color-gray-900);color:white}.mobile-menu-bar a{color:inherit;font-weight:700}.mobile-menu-bar button{min-height:44px;padding:.5rem 1rem;border:1px solid var(--color-gray-500);border-radius:8px;background:transparent;color:inherit;cursor:pointer}.sidebar{display:none;position:static;width:100%}.sidebar.is-open{display:flex}.sidebar-brand{display:none}.sidebar-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.main-content{width:100%}.main-content .table-container{overflow-x:auto}.main-content{margin-left:0;padding:var(--space-5)}.stats-grid{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:1fr}}@media (max-width:640px){.stats-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column;align-items:stretch}.search-input{min-width:unset}}.marketing{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text)}.marketing-nav{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-gray-300)}.marketing-nav-inner{max-width:1140px;margin:0 auto;padding:0 var(--space-6);height:64px;display:flex;align-items:center;justify-content:space-between}.marketing-brand{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;color:inherit}.marketing-brand-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(145deg,#0044CC,#0066FF,#3B82F6);color:#fff;border-radius:var(--radius-md);font-size:.8rem;font-weight:700}.marketing-brand-text{font-size:1.125rem;font-weight:700}.marketing-nav-links{display:flex;align-items:center;gap:var(--space-6)}.marketing-nav-links a{font-size:.875rem;font-weight:500;color:var(--text-secondary);transition:color .15s}.marketing-nav-links a:hover{color:var(--text)}.marketing-nav-links .btn{color:revert}.marketing-nav-links .btn-primary{color:var(--color-white)}.marketing-nav-links .btn-secondary{color:var(--text)}.marketing-hero{padding:140px var(--space-6) 80px;text-align:center;background:linear-gradient(180deg,#f0f5ff,#fff)}.marketing-hero-inner{max-width:720px;margin:0 auto}.marketing-hero-badge{display:inline-block;background:#EBF2FF;color:var(--color-primary);font-size:.8rem;font-weight:600;padding:6px 16px;border-radius:var(--radius-full);margin-bottom:var(--space-6)}.marketing-hero h1{font-size:3rem;font-weight:800;line-height:1.15;letter-spacing:-.02em;margin-bottom:var(--space-5)}.marketing-hero-sub{font-size:1.2rem;color:var(--text-secondary);line-height:1.6;max-width:560px;margin:0 auto var(--space-8)}.marketing-hero-actions{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.marketing-hero-badges{display:flex;gap:var(--space-3);justify-content:center;align-items:center;margin-top:var(--space-4)}.marketing-hero-badges img{transition:opacity .15s}.marketing-hero-badges img:hover{opacity:.85}.marketing-hero-note{margin-top:var(--space-4);font-size:.8rem;color:var(--text-secondary)}.marketing-download{padding:60px var(--space-6);background:var(--color-gray-50)}.marketing-trust-bar{display:flex;justify-content:center;gap:var(--space-8);margin-top:var(--space-8);padding:var(--space-4) var(--space-6);font-size:.875rem;color:var(--text-secondary);flex-wrap:wrap}.marketing-trust-bar span{display:flex;align-items:center;gap:var(--space-2)}.marketing-features{padding:80px var(--space-6)}.marketing-section-inner{max-width:1140px;margin:0 auto;text-align:center}.marketing-section-inner h2{font-size:2rem;font-weight:700;margin-bottom:var(--space-3)}.marketing-section-sub{font-size:1.1rem;color:var(--text-secondary);margin-bottom:var(--space-10)}.marketing-features-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--space-6);gap:var(--space-6);text-align:left}.marketing-feature-card{background:var(--surface);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);padding:var(--space-6);transition:box-shadow .2s}.marketing-feature-card:hover{box-shadow:var(--shadow-lg)}.marketing-feature-icon{font-size:2rem;margin-bottom:var(--space-3)}.marketing-feature-card h3{font-size:1.05rem;font-weight:600;margin-bottom:var(--space-2)}.marketing-feature-card p{font-size:.9rem;color:var(--text-secondary);line-height:1.5}.marketing-steps{padding:80px var(--space-6);background:var(--color-gray-50)}.marketing-steps-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--space-8);gap:var(--space-8)}.marketing-step{text-align:center}.marketing-step-num{display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;font-size:1.25rem;font-weight:700;border-radius:50%;margin-bottom:var(--space-4)}.marketing-step h3{font-size:1.1rem;font-weight:600;margin-bottom:var(--space-2)}.marketing-step p{font-size:.9rem;color:var(--text-secondary);line-height:1.5}.marketing-compare{padding:80px var(--space-6);background:#F8FAFC}.marketing-compare-table{max-width:800px;margin:0 auto;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:#fff}.marketing-compare-header{display:grid;grid-template-columns:1fr 1fr 1fr;background:#0F172A;color:#fff;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.marketing-compare-header>div{padding:14px 16px}.marketing-compare-row{display:grid;grid-template-columns:1fr 1fr 1fr;border-bottom:1px solid var(--border)}.marketing-compare-row:last-child{border-bottom:none}.marketing-compare-label{padding:12px 16px;font-weight:500;color:#334155;font-size:.875rem}.marketing-compare-us{padding:12px 16px;font-size:.875rem;color:#475569}.marketing-compare-them{padding:12px 16px;font-size:.875rem;color:#94A3B8}.marketing-compare-win{color:#16A34A;font-weight:600}.marketing-pricing{padding:80px var(--space-6)}.marketing-pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-6);gap:var(--space-6);max-width:720px;margin:0 auto}.marketing-pricing-card{background:var(--surface);border:1px solid var(--color-gray-300);border-radius:var(--radius-xl);padding:var(--space-8);position:relative;text-align:left}.marketing-pricing-card.highlighted{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary),var(--shadow-lg)}.marketing-pricing-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--color-primary);color:#fff;font-size:.75rem;font-weight:600;padding:4px 14px;border-radius:var(--radius-full)}.marketing-pricing-card h3{font-size:1.2rem;font-weight:600;margin-bottom:var(--space-2)}.marketing-pricing-price{display:flex;align-items:baseline;gap:4px;margin-bottom:var(--space-3)}.marketing-pricing-amount{font-size:2.5rem;font-weight:800;color:var(--color-primary)}.marketing-pricing-period{font-size:1rem;color:var(--text-secondary)}.marketing-pricing-desc{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--space-5)}.marketing-pricing-features{list-style:none;padding:0;margin-bottom:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.marketing-pricing-features li{font-size:.875rem}.marketing-pricing-banner{margin-bottom:var(--space-10);padding:var(--space-8) var(--space-6);background:linear-gradient(135deg,#FEF3C7,#FEE2BE);border-radius:var(--radius-xl);border:2px solid #f59e0b}.marketing-pricing-banner-inner{max-width:720px;margin:0 auto;text-align:center}.marketing-pricing-banner-badge{display:inline-block;background:#F59E0B;font-size:.75rem;font-weight:700;padding:6px 14px;border-radius:var(--radius-full);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.05em}.marketing-pricing-banner-title{font-size:1.5rem;font-weight:700;color:#92400E;margin-bottom:var(--space-2)}.marketing-pricing-banner-sub{font-size:.95rem;color:#B45309;line-height:1.6;max-width:560px;margin:0 auto}.marketing-pricing-offer{font-size:.875rem;color:var(--color-warning);font-weight:600;margin-bottom:var(--space-3);padding:var(--space-2) 0;text-align:center}.marketing-footer{padding:var(--space-8) var(--space-6);border-top:1px solid var(--color-gray-300)}.marketing-footer-inner{display:flex;align-items:center;justify-content:space-between}.marketing-footer-brand{display:flex;align-items:center;gap:var(--space-2);font-weight:700}.marketing-footer p{font-size:.8rem;color:var(--text-secondary)}.btn-lg{padding:12px 28px;font-size:1rem}.btn-sm{padding:6px 14px;font-size:.8rem}@media (max-width:768px){.marketing-hero h1{font-size:2rem}.marketing-features-grid,.marketing-pricing-grid,.marketing-steps-grid{grid-template-columns:1fr}.marketing-compare-table{font-size:.8rem}.marketing-footer-inner{flex-direction:column;gap:var(--space-3);text-align:center}}.legal-page{min-height:100vh;background:var(--bg);display:flex;flex-direction:column}.legal-content{width:100%;min-width:0;max-width:780px;overflow-wrap:anywhere;margin:0 auto;padding:120px var(--space-6) var(--space-10);flex:1 1;line-height:1.75;color:var(--text)}.legal-content h1{font-size:2rem;font-weight:700;margin-bottom:var(--space-2);color:var(--text)}.legal-effective{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--space-8)}.legal-content h2{font-size:1.3rem;font-weight:600;margin-top:var(--space-8);margin-bottom:var(--space-3);color:var(--text)}.legal-content h3{font-size:1.1rem;font-weight:600;margin-top:var(--space-5);margin-bottom:var(--space-2);color:var(--text)}.legal-content p,.legal-content ul{margin-bottom:var(--space-4)}.legal-content ul{padding-left:var(--space-6)}.legal-content ul li{margin-bottom:var(--space-2)}.legal-content a{color:var(--color-primary);text-decoration:underline}.legal-content a:hover{color:var(--color-primary-dark)}.legal-table{width:100%;table-layout:fixed;border-collapse:collapse;margin:var(--space-4) 0;font-size:.9rem}.legal-table td,.legal-table th{border:1px solid var(--border);padding:var(--space-3) var(--space-4);text-align:left}.legal-table th{background:var(--color-gray-100);font-weight:600}.legal-table td{background:var(--surface)}.legal-footer-links{display:flex;gap:var(--space-4)}.legal-footer-links a{color:var(--text-secondary);text-decoration:none;font-size:.9rem}.legal-footer-links a:hover{color:var(--color-primary)}.project-create-form .search-input{width:100%;min-width:0;max-width:100%}.project-create-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4)}@media (max-width:640px){.project-create-fields{grid-template-columns:minmax(0,1fr)}}.dashboard-content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);grid-gap:var(--space-6);gap:var(--space-6)}@media (max-width:1024px){.dashboard-content-grid{grid-template-columns:minmax(0,1fr)}.recent-item{flex-wrap:wrap;gap:12px}.recent-item-left{min-width:0;flex:1 1 180px}.recent-item-info{min-width:0;overflow-wrap:anywhere}}.issue-title-button{border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:0;min-height:44px;overflow-wrap:anywhere}.issue-detail-field{min-width:0;overflow-wrap:anywhere}.issue-detail-field p{white-space:pre-wrap}.inspection-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.inspection-form-fields .search-input{width:100%;min-width:0}.badge-n_a{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border)}@media(max-width:640px){.inspection-issues table,.inspection-issues tbody{display:block;width:100%}.inspection-issues thead{display:none}.inspection-issues tr.clickable{display:grid;grid-template-columns:42px minmax(0,1fr);grid-gap:0;gap:0;border-bottom:1px solid var(--border);padding:12px}.inspection-issues tr.clickable td{border:0;padding:6px;white-space:normal;overflow-wrap:anywhere}.inspection-issues tr.clickable td:nth-child(n+3){grid-column:2}.inspection-issues tr.clickable td:nth-child(5):before{content:"Trade: ";font-weight:600}.inspection-issues tr.clickable td:nth-child(6):before{content:"Area: ";font-weight:600}.inspection-issues .issue-expanded-row,.inspection-issues .issue-expanded-row>td{display:block;width:100%}.issue-detail{padding:20px}.inspection-form-fields,.issue-detail-grid,.issue-photo-grid{grid-template-columns:minmax(0,1fr)}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}:root,:root[data-theme=light]{color-scheme:light;--bg:#F4F7FB;--surface:#FFFFFF;--raised:#EAF0F7;--text:#14263D;--text-secondary:#4B6078;--border:#D4DEEB;--input-border:#788AA2;--primary:#1D4ED8;--primary-soft:#E7EFFF;--action:#1D4ED8;--on-action:#FFFFFF;--header-bg:#10243A;--header-text:#FFFFFF;--success:#166534;--warning:#854D0E;--error:#B91C1C;--accent:#9A3412;--error-soft:#FEF2F2;--warning-soft:#FEF3C7;--success-soft:#DCFCE7;--ai:#6D28D9;--ai-soft:#EDE9FE;--ai-action:#6D28D9}:root[data-theme=dark]{color-scheme:dark;--bg:#0B1220;--surface:#152238;--raised:#1D2E46;--text:#F4F7FC;--text-secondary:#B7C6D9;--border:#354861;--input-border:#7890AE;--primary:#9AB8FF;--primary-soft:#1D3457;--action:#1D4ED8;--on-action:#FFFFFF;--header-bg:#10243A;--header-text:#FFFFFF;--success:#86EFAC;--warning:#FDE68A;--error:#FCA5A5;--accent:#FDBA74;--error-soft:#3B202A;--warning-soft:#332A14;--success-soft:#17352B;--ai:#C4B5FD;--ai-soft:#302350;--ai-action:#6D28D9}.survey-choices{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.survey-brief-input label{display:block;font-weight:650;margin-bottom:8px}.survey-brief-input textarea{width:100%;resize:vertical;padding:14px;line-height:1.6}.survey-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px;margin-top:16px}.resume-work{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 28px;background:var(--primary-soft);border-color:var(--primary)}.resume-work p{margin:7px 0}.customer-site{background:var(--bg);color:var(--text);line-height:1.65}.customer-site p{color:var(--text-secondary);margin:16px 0}.customer-site h1,.customer-site h2,.customer-site h3{color:var(--text);line-height:1.12}.customer-site h1{font-size:clamp(2.4rem,5.4vw,4.7rem);letter-spacing:-.055em;margin:22px 0}.customer-site h2{font-size:clamp(1.8rem,3.3vw,2.8rem);margin:18px 0}.customer-site h3{font-size:1.35rem;margin:18px 0}.customer-nav{max-width:1360px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 5vw;border-bottom:1px solid var(--border)}.customer-brand{display:inline-flex;align-items:center;gap:12px;color:var(--text);font-size:1.1rem;font-weight:750;text-decoration:none;white-space:nowrap}.customer-brand span{background:var(--action);color:#fff;border-radius:10px;display:grid;place-items:center;width:38px;height:38px}.customer-footer nav,.customer-nav nav{display:flex;flex-wrap:wrap;gap:20px;align-items:center}.customer-footer nav>a,.customer-nav nav>a{min-height:44px;display:inline-flex;align-items:center;font-weight:600}.customer-footer a,.customer-nav nav>a:not(.btn){color:var(--text)}.customer-hero{display:grid;grid-template-columns:1.05fr 1fr;max-width:1360px;margin:auto;grid-gap:32px;gap:32px;padding:72px 5vw 56px;align-items:center}.customer-hero-copy>p:not(.customer-small){font-size:1.2rem;max-width:36rem}.customer-eyebrow{font-size:.78rem;font-weight:750;letter-spacing:.12em;color:var(--primary)}.customer-hero-photo{margin:0;position:relative;border-radius:24px;overflow:hidden;height:610px;background:#102638}.customer-hero-photo img{width:100%;height:100%;object-fit:cover}.customer-hero-photo:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#102638)}.customer-hero-photo figcaption{position:absolute;bottom:25px;left:28px;right:22px;color:#fff;font-size:.85rem;z-index:1}.customer-hero-photo figcaption span{display:block;font-size:.75rem;letter-spacing:.13em;color:#cdeb7b;font-weight:700;margin-bottom:8px}.customer-actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}.customer-text-link{display:inline-block;min-height:44px;padding:8px 0;font-weight:650}.customer-small{font-size:.85rem;line-height:1.6}.customer-section{max-width:1240px;margin:auto;padding:70px 5vw;border-top:1px solid var(--border)}.customer-intro{padding-top:80px;max-width:1240px}.customer-intro h1{max-width:960px}.customer-lead{font-size:1.15rem;max-width:800px}.customer-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:28px;gap:28px}.customer-steps article{padding:25px 0}.customer-steps h2{font-size:1.55rem}.customer-step-number{color:var(--primary);font-size:.85rem;font-weight:750;border:1px solid var(--input-border);border-radius:50%;width:42px;height:42px;display:grid;place-items:center}.customer-report,.customer-two{display:grid;grid-template-columns:1fr 1fr;grid-gap:64px;gap:64px;align-items:center}.customer-panel{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:28px;height:100%}.customer-panel h2{font-size:1.7rem}.customer-screen{background:var(--raised);border:1px solid var(--border);height:540px;max-width:310px;width:100%;overflow:hidden;border-radius:24px;box-shadow:var(--shadow-lg);margin:0 auto;position:relative}.customer-screen img{width:100%;height:auto;position:absolute;top:-36px}.customer-report>a{display:block;max-width:380px;justify-self:center;box-shadow:var(--shadow-lg);transition:transform .15s}.customer-report img{display:block;width:100%;height:auto}.customer-site ul{padding-left:22px;color:var(--text-secondary);margin:20px 0}.customer-site li{margin-bottom:12px}.customer-tags{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.customer-tags span{border:1px solid var(--input-border);padding:10px 18px;border-radius:30px;background:var(--surface)}.customer-final{text-align:center}.customer-final .customer-actions{justify-content:center}.customer-faq details{padding:22px 0;border-bottom:1px solid var(--border)}.customer-faq summary{cursor:pointer;font-weight:650;min-height:44px;font-size:1.1rem}.customer-footer{max-width:1240px;margin:auto;padding:50px 5vw 110px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:28px;border-top:1px solid var(--border)}.customer-footer>p{flex-basis:100%;max-width:740px}.customer-site a:not(.btn):hover{text-decoration:underline}.customer-site .btn{align-items:center;text-align:center;display:inline-flex;justify-content:center}.customer-site .btn-primary{color:#fff}.customer-site img{max-width:100%}@media(max-width:800px){.customer-nav{flex-wrap:wrap;padding:20px 6vw;gap:18px}.customer-nav nav{gap:14px;font-size:.9rem}.customer-hero{grid-template-columns:1fr;padding:42px 6vw;gap:28px}.customer-hero-photo{height:360px}.customer-section{padding:42px 6vw}.customer-report,.customer-two{grid-template-columns:1fr;gap:30px}.customer-steps{grid-template-columns:1fr}.customer-steps article{padding:10px 0}.customer-screen{height:535px;max-width:300px}.customer-report>a{max-width:330px}.survey-meta-grid{grid-template-columns:1fr}.resume-work{align-items:flex-start;flex-direction:column;gap:12px}.customer-footer{padding:40px 6vw 120px}.customer-actions>.btn{flex-grow:1}.customer-site h1{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){.customer-site *{transition:none!important}}.customer-footer .public-appearance{position:static;box-shadow:none;align-self:flex-start;margin:0}.customer-demo-video{width:100%;height:auto;display:block;border-radius:18px;background:#102638;margin-top:28px}:root{--color-primary:var(--primary);--color-primary-dark:#173DAA;--color-accent:#9A3412;--color-error:var(--error);--color-success:var(--success);--color-warning:var(--warning);--color-info:var(--primary);--color-critical:#B91C1C;--color-high:#9A3412;--color-medium:#854D0E;--color-low:#166534;--radius-sm:6px;--radius-md:10px;--radius-lg:18px;--radius-xl:22px;--shadow-sm:0 2px 6px #10243a05;--shadow-md:0 8px 24px #10243a09;--shadow-lg:0 14px 42px #10243a12}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:-.01em}h1,h2,h3{letter-spacing:-.035em;text-wrap:balance}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--primary);outline-offset:4px}input,select,textarea{background:var(--surface);color:var(--text);border-color:var(--input-border)}input::placeholder,textarea::placeholder{color:var(--text-secondary);opacity:1}button,select{min-height:44px}button:disabled{opacity:.65;cursor:not-allowed}.sidebar{background:#10243A;color:#fff;width:var(--sidebar-width);padding:12px}.sidebar-brand{padding:20px 12px 24px;border-color:#354861}.sidebar-brand h1 span.brand-icon{width:38px;height:38px;background:#1D4ED8;border-radius:12px}.sidebar-brand p,.sidebar-user .role{color:#B7C6D9;font-size:.8125rem}.sidebar-nav{gap:8px}.sidebar-nav a{margin:0;border:0;border-radius:12px;padding:14px 16px;color:#B7C6D9;font-size:.9375rem}.sidebar-nav a.active{background:#234775;box-shadow:inset 3px 0 #9AB8FF}.sidebar-nav a:hover{background:#1D3457}.sidebar-user{padding:14px 8px 4px;border-color:#354861}.sidebar-user .avatar{background:#1D4ED8}.main-content{padding:42px 40px;width:calc(100% - var(--sidebar-width))}.page-header h2{font-size:clamp(1.75rem,3vw,2.25rem);line-height:1.2}.page-header p{margin-top:10px;font-size:1rem}.breadcrumb{flex-wrap:wrap;line-height:2}.card,.project-card,.stat-card,.table-container{border-color:var(--border)}.stat-card{padding:24px;box-shadow:none}.stat-card .stat-value{font-size:2.125rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-card .stat-icon{background:var(--primary-soft)!important;color:var(--primary)!important;border-radius:12px}.project-card-header .project-icon{background:var(--primary-soft);color:var(--primary);border-radius:12px;width:48px;height:48px}.project-card-header{align-items:flex-start;padding:24px}.project-card .project-title{font-size:1.0625rem}.project-card-stats{border-top:1px solid var(--border);padding-top:16px}.project-card .mini-stat{align-items:flex-start}.project-card:hover{border-color:var(--input-border)}.btn,.btn-sm{min-height:46px;height:auto;padding:11px 18px;border-radius:12px;line-height:1.4;white-space:normal}.btn-primary{background:var(--action);color:#fff;box-shadow:0 3px 6px #1d4ed818}.btn-primary:hover{background:#173DAA}.btn-secondary{border-color:var(--input-border)}.btn-ghost:hover,.btn-secondary:hover{background:var(--raised)}.btn-accent{background:#9A3412;color:#fff}.auth-form input,.form-input,.form-select,.form-textarea,.search-input{border:1px solid var(--input-border);border-radius:12px;min-height:48px;background:var(--surface);color:var(--text)}.table-container th{background:var(--raised);color:var(--text-secondary)}.table-container td{border-color:var(--border)}.table-container tr:hover td{background:var(--raised)}.badge{padding:5px 10px;font-size:.8125rem;letter-spacing:0}.badge-critical{background:#FEE2E2;color:#991B1B}.badge-high{background:#FFEDD5;color:#9A3412}.badge-in_progress,.badge-medium{background:#FEF3C7;color:#713F12}.badge-completed,.badge-low,.badge-resolved{background:#DCFCE7;color:#14532D}.badge-open{background:#DBEAFE;color:#1E40AF}.badge-archived,.badge-closed,.badge-draft,.badge-wont_fix{background:var(--raised);color:var(--text-secondary)}.toggle-switch{min-height:28px;outline:1px solid var(--input-border)}.toggle-switch.active{background:var(--action)}.appearance-control{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.8125rem;padding:12px;color:#B7C6D9}.appearance-control select{background:#152238;border:1px solid #7890ae;border-radius:9px;color:#F4F7FC;padding:6px 9px;min-height:44px}.public-appearance{position:fixed;bottom:16px;left:16px;z-index:101;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md);background:var(--surface);color:var(--text-secondary);padding:6px 10px}.public-appearance select{border-color:var(--input-border)}.public-appearance select,.skip-link{background:var(--surface);color:var(--text)}.skip-link{position:fixed;top:-100px;left:20px;z-index:300;padding:12px 18px}.skip-link:focus{top:12px}.auth-page{background:var(--bg)}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow-lg);padding:40px}.auth-card h2,.auth-header h2{color:var(--text);font-size:1.875rem}.auth-form label{color:var(--text)}.auth-footer,.auth-header p{color:var(--text-secondary)}.auth-logo .brand-icon{background:var(--action);color:white}.marketing-nav{background:var(--surface);border-bottom-color:var(--border)}.marketing-hero{background:var(--bg);padding-top:150px}.legal-content h1,.legal-content h2,.legal-content h3,.marketing-feature-card h3,.marketing-hero h1,.marketing-pricing-card h3,.marketing-section-header h2,.marketing-step h3{color:var(--text)}.marketing-feature-card p,.marketing-footer p,.marketing-hero p,.marketing-pricing-desc,.marketing-pricing-period,.marketing-section-header p,.marketing-step p{color:var(--text-secondary)}.marketing-feature-card,.marketing-pricing-card{background:var(--surface);border:1px solid var(--border);border-radius:20px}.marketing-compare,.marketing-how{background:var(--raised)}.marketing-compare-table{background:var(--surface)}.marketing-compare-label{color:var(--text)}.marketing-compare-them,.marketing-compare-us{color:var(--text-secondary)}.marketing-compare-win{color:var(--success)}.marketing-compare-header{background:#10243A}.marketing-pricing-badge,.marketing-step-num{background:var(--action);color:#fff}.marketing-pricing-banner{background:#FEF3C7;border-color:#854D0E}.marketing-pricing-banner-badge{background:#854D0E;color:#fff}.marketing-pricing-banner-sub{color:#78350F}.legal-table th,.marketing-pricing-features li{color:var(--text)}.legal-table th{background:var(--raised)}.empty-state p,.loading,.text-muted{color:var(--text-secondary)}.error-banner,[role=alert]{border-radius:12px}@media (max-width:1024px){.main-content{padding:28px 20px;width:100%}}@media (max-width:768px){.main-content{margin-left:0;padding-top:88px}.page-header-row>div{flex-wrap:wrap}.project-grid{grid-template-columns:minmax(0,1fr)}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat-card{padding:16px}.stat-card .stat-value{font-size:1.75rem}.mobile-menu-bar{background:#10243A;color:#fff;min-height:64px}.mobile-menu-bar a,.mobile-menu-bar button{color:#fff}.auth-card{padding:28px 22px}.table-container{overflow-x:auto}.appearance-control{font-size:.75rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--color-text-secondary:var(--text-secondary)}.marketing,.marketing-brand-text,.marketing-footer-brand,.marketing-section-inner h2{color:var(--text)}.marketing-nav-links a:not(.btn),.marketing-section-sub,.marketing-trust-bar{color:var(--text-secondary)}.marketing-feature-icon,.marketing-hero-badge{background:var(--primary-soft);color:var(--primary)}.marketing-steps{background:var(--raised)}.marketing-compare-header>div{color:#fff}.marketing-pricing-regular{opacity:1!important;color:var(--text-secondary)}.settings-section{background:var(--surface);border-color:var(--border);border-radius:18px}.settings-section .settings-row{border-color:var(--border)}.auth-password-toggle{color:var(--primary)!important}.sidebar-brand h1,.sidebar-user .name{color:#fff}.sidebar-brand p,.sidebar-nav a,.sidebar-user .role{color:#B7C6D9}.sidebar-nav a.active{color:#fff}.brand-icon,.marketing-brand-icon,.marketing-pricing-badge,.marketing-step-num{background:var(--action);color:#fff}.project-grid{align-items:stretch}.project-card{display:flex;flex-direction:column}.project-card-body{flex:1 1}@media(max-width:1024px){.main-content{padding-top:28px}}.marketing-download{background:var(--raised)}