@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color-scheme:light;--bg: #f4efe6;--bg-strong: #ece2d2;--surface: rgba(255, 251, 244, .9);--surface-solid: #fffaf2;--surface-strong: #f8f1e6;--line: rgba(30, 41, 59, .12);--line-strong: rgba(30, 41, 59, .2);--text: #1d2430;--muted: #617085;--accent: #0f766e;--accent-2: #c77d32;--accent-3: #31455b;--success: #166534;--error: #9f1239;--shadow: 0 24px 80px rgba(35, 27, 14, .1);--radius-lg: 28px;--radius-md: 18px;--radius-sm: 14px;--max-width: 1440px;font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:500;color:var(--text);background:radial-gradient(circle at top left,rgba(15,118,110,.14),transparent 34%),radial-gradient(circle at top right,rgba(199,125,50,.14),transparent 28%),linear-gradient(180deg,#f8f3ea,#f4efe6 45%,#efe7da)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{min-height:100vh;color:var(--text);background:radial-gradient(circle at 20% 10%,rgba(15,118,110,.08),transparent 22%),radial-gradient(circle at 80% 0%,rgba(199,125,50,.1),transparent 28%),linear-gradient(180deg,#faf6ef,#f4efe6 45%,#f0e6d7)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(circle at center,black,transparent 85%);mask-image:radial-gradient(circle at center,black,transparent 85%);opacity:.18}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,h4,.brand-lockup h1,.auth-story h1{font-family:Fraunces,Georgia,serif;letter-spacing:-.03em;line-height:1.02}h1,h2,h3,p{margin:0}.eyebrow{margin-bottom:.35rem;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2)}.landing-shell,.auth-shell,.app-shell,.callback-shell{width:min(100%,var(--max-width));margin:0 auto;padding:1.25rem}.landing-shell{min-height:100vh;display:flex;flex-direction:column;gap:1.75rem}.landing-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0 0}.landing-actions{display:flex;align-items:center;gap:.75rem}.brand-lockup{display:flex;align-items:center;gap:.9rem}.brand-mark{width:3rem;height:3rem;display:grid;place-items:center;border-radius:16px;color:#fffdf8;font-weight:800;letter-spacing:.08em;background:linear-gradient(135deg,var(--accent),#1b4d63 45%,var(--accent-2));box-shadow:0 16px 32px #0f766e3d}.brand-lockup h1{font-size:1.25rem}.sidebar-copy,.auth-story-copy,.hero-copy p,.feature-card p,.preview-item span,.item-card p,.muted-copy,.field-hint,.landing-footer,.note-card strong,.note-card .note-label,.detail-label,.metric-card span,.stat-card span{color:var(--muted)}.landing-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:1.5rem;align-items:stretch;flex:1}.hero-copy,.preview-stack,.auth-story,.auth-card,.panel,.workspace-sidebar,.workspace-main,.home-card,.empty-state,.metric-card,.stat-card,.feature-card,.note-card,.item-card,.success-banner,.form-error,.topbar-pill,.meta-pill,.user-chip,.loading-state,.home-detail{background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);box-shadow:var(--shadow)}.hero-copy,.preview-stack,.auth-story,.auth-card{border-radius:var(--radius-lg);padding:2rem}.hero-copy{display:flex;flex-direction:column;justify-content:center;min-height:100%;gap:1.45rem;position:relative;overflow:hidden}.hero-copy:after{content:"";position:absolute;inset:auto -40px -60px auto;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(15,118,110,.12),transparent 68%)}.hero-tag{width:fit-content;padding:.5rem .9rem;border-radius:999px;border:1px solid rgba(15,118,110,.18);background:#0f766e14;color:var(--accent);font-weight:800;letter-spacing:.02em}.hero-copy h2{max-width:14ch;font-size:clamp(2.8rem,5vw,5.4rem)}.hero-copy p{max-width:58ch;font-size:1.04rem}.hero-actions,.hero-metrics,.feature-grid,.preview-list,.auth-story-notes,.workspace-grid,.split-panels,.two-col,.home-detail,.overview-row{display:grid;gap:1rem}.hero-actions{grid-auto-flow:column;width:fit-content}.hero-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card,.stat-card,.feature-card,.note-card,.home-detail,.home-card,.item-card,.empty-state,.panel{border-radius:var(--radius-md)}.metric-card,.stat-card,.feature-card,.note-card{padding:1rem 1.1rem}.metric-card strong,.stat-card strong{display:block;margin-top:.35rem;font-size:1rem}.stat-card small{display:block;margin-top:.2rem;color:var(--muted);font-size:.83rem;font-weight:700}.preview-stack{display:grid;gap:1rem;align-content:start}.preview-list{gap:.75rem}.preview-item{padding:1rem;border-radius:18px;background:var(--surface-strong);border:1px solid var(--line)}.preview-item strong{display:block;margin-bottom:.2rem}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-card h3{margin-bottom:.5rem;font-size:1.05rem}.landing-footer{display:flex;justify-content:space-between;align-items:center;padding-bottom:.5rem}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr .88fr;align-items:center;gap:1.5rem}.auth-story{position:relative;overflow:hidden;min-height:640px;display:flex;flex-direction:column;justify-content:flex-end;gap:1rem;background:radial-gradient(circle at 20% 20%,rgba(15,118,110,.16),transparent 28%),radial-gradient(circle at 88% 18%,rgba(199,125,50,.15),transparent 24%),linear-gradient(145deg,#fffaf3f5,#f8f1e6eb)}.auth-story:before,.auth-story:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.auth-story:before{width:260px;height:260px;right:-80px;top:-70px;background:radial-gradient(circle,rgba(15,118,110,.18),transparent 68%)}.auth-story:after{width:360px;height:360px;right:40px;bottom:-140px;background:radial-gradient(circle,rgba(199,125,50,.12),transparent 65%)}.auth-story h1{max-width:10ch;font-size:clamp(3rem,5vw,5.6rem)}.auth-story-copy{max-width:45ch;font-size:1.08rem}.auth-story-badge{width:fit-content;margin-bottom:auto;padding:.55rem .85rem;border-radius:999px;background:#31455b14;color:var(--accent-3);border:1px solid rgba(49,69,91,.12);font-weight:800}.auth-story-notes{grid-template-columns:repeat(2,minmax(0,1fr))}.note-label{display:block;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.35rem}.auth-card{display:flex;flex-direction:column;gap:1rem}.auth-card h2{font-size:2rem}.auth-form,.stacked-form{display:flex;flex-direction:column;gap:1rem}.auth-footer{padding-top:.4rem;color:var(--muted)}.field{display:flex;flex-direction:column;gap:.45rem}.field-label{font-size:.85rem;font-weight:800;letter-spacing:.02em}.input,.textarea{width:100%;border-radius:15px;border:1px solid rgba(30,41,59,.14);background:#ffffffe6;color:var(--text);padding:.9rem 1rem;outline:none;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.textarea{resize:vertical}.input:focus,.textarea:focus{border-color:#0f766e80;box-shadow:0 0 0 4px #0f766e1f}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3rem;padding:.85rem 1.15rem;border-radius:999px;border:1px solid transparent;font-weight:800;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.65;cursor:wait}.btn-primary{color:#fffdf8;background:linear-gradient(135deg,var(--accent),#0d5d65);box-shadow:0 16px 32px #0f766e3d}.btn-secondary{color:var(--text);border-color:#1e293b1f;background:#ffffffb8}.btn-ghost{color:var(--accent-3);background:transparent;border-color:transparent}.btn-accent{color:#fffdf8;background:linear-gradient(135deg,var(--accent-2),#a85f1d)}.form-error,.success-banner{padding:.9rem 1rem;border-radius:16px;font-weight:700}.form-error{border:1px solid rgba(159,18,57,.2);background:#9f123914;color:var(--error)}.success-banner{border:1px solid rgba(22,101,52,.18);background:#16653414;color:var(--success)}.field-error{color:var(--error);font-size:.86rem}.field-hint{font-size:.86rem}.form-links{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.92rem}.auth-divider{display:grid;place-items:center;color:var(--muted);font-size:.88rem;position:relative;padding:.35rem 0}.auth-divider:before,.auth-divider:after{content:"";position:absolute;top:50%;width:36%;height:1px;background:#1e293b1f}.auth-divider:before{left:0}.auth-divider:after{right:0}.callback-shell{min-height:100vh;display:grid;place-items:center}.app-shell{min-height:100vh;display:grid;grid-template-columns:300px 1fr;gap:1rem}.sidebar{position:sticky;top:1.25rem;align-self:start;min-height:calc(100vh - 2.5rem);display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem;border-radius:var(--radius-lg);background:#fffbf4eb;border:1px solid var(--line);box-shadow:var(--shadow)}.sidebar-nav{display:flex;flex-direction:column;gap:.5rem}.nav-link{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-radius:16px;border:1px solid transparent;font-weight:700}.nav-link.active{background:#0f766e14;border-color:#0f766e24;color:var(--accent)}.nav-link-muted{color:#1d24307a;background:#fff6;border:1px dashed rgba(30,41,59,.14)}.nav-link-muted span{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:.9rem}.user-chip{display:flex;gap:.85rem;align-items:center;padding:.9rem;border-radius:18px}.avatar{width:2.7rem;height:2.7rem;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--accent-3),var(--accent));color:#fffdf8;font-weight:800}.user-chip span{display:block;font-size:.86rem;color:var(--muted)}.app-workspace{display:flex;flex-direction:column;gap:1rem}.workspace-topbar{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding:1rem 1rem 0}.workspace-topbar h2{font-size:clamp(1.9rem,3vw,3.2rem)}.topbar-pill,.meta-pill{width:fit-content;padding:.5rem .85rem;border-radius:999px;font-size:.86rem;font-weight:800;background:#31455b14;border:1px solid rgba(49,69,91,.1)}.workspace-body{flex:1;padding:0 0 1rem}.homes-page{display:flex;flex-direction:column;gap:1rem}.overview-row{grid-template-columns:repeat(3,minmax(0,1fr))}.spending-overview{grid-template-columns:repeat(5,minmax(0,1fr))}.schedule-overview{grid-template-columns:repeat(4,minmax(0,1fr))}.workspace-grid{grid-template-columns:360px minmax(0,1fr);align-items:start}.workspace-sidebar,.workspace-main{display:flex;flex-direction:column;gap:1rem}.workspace-sidebar,.workspace-main{padding:0;border:none;background:transparent;box-shadow:none}.split-panels{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:1.25rem}.panel-head{display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.panel-head h2{font-size:1.45rem}.panel-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.home-list,.item-list{display:flex;flex-direction:column;gap:.75rem}.home-card{width:100%;padding:1rem;text-align:left;display:flex;flex-direction:column;gap:.35rem}.home-card-body{display:flex;flex-direction:column;gap:.35rem;padding:0;border:0;background:transparent;text-align:left;color:inherit}.home-card-body strong{display:block}.home-card.active{border-color:#0f766e47;box-shadow:0 18px 40px #0f766e24;transform:translateY(-1px)}.home-card em{font-style:normal;color:var(--muted)}.home-actions,.item-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.3rem}.home-actions button,.item-actions button{border:none;background:transparent;color:var(--accent);font-weight:800;padding:0}.home-detail{grid-template-columns:repeat(2,minmax(0,1fr));padding:1rem}.detail-label{margin-bottom:.25rem;font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.item-card{display:flex;justify-content:space-between;gap:1rem;padding:1rem}.item-card strong{display:block;margin-bottom:.15rem}.schedule-list{display:flex;flex-direction:column;gap:.9rem}.schedule-card{display:flex;justify-content:space-between;gap:1rem;padding:1.1rem;border-radius:var(--radius-md);border:1px solid var(--line);background:linear-gradient(180deg,#ffffffe6,#f8f1e6db);box-shadow:0 18px 40px #231b0e14}.schedule-card-main{display:flex;flex-direction:column;gap:.95rem;min-width:0}.schedule-card-head{display:flex;justify-content:space-between;gap:1rem;align-items:start}.schedule-card-head strong{display:block;margin-bottom:.18rem;font-size:1.02rem}.schedule-card-head p{color:var(--muted)}.schedule-tags{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.45rem}.schedule-tag{display:inline-flex;align-items:center;border-radius:999px;padding:.35rem .7rem;font-size:.76rem;font-weight:800;letter-spacing:.02em;background:#31455b14;color:var(--accent-3);border:1px solid rgba(49,69,91,.12)}.schedule-tag.active{color:var(--accent);background:#0f766e14;border-color:#0f766e24}.schedule-tag.muted{color:#1d24309e}.schedule-tag.soon{color:#8f4d00;background:#c77d321f;border-color:#c77d3233}.schedule-tag.overdue{color:var(--error);background:#9f123914;border-color:#9f123929}.schedule-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.schedule-meta strong{display:block;margin-top:.12rem}.schedule-actions{align-items:flex-start}.documents-overview,.dashboard-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:1rem;padding:1rem;border-radius:24px;background:radial-gradient(circle at top right,rgba(199,125,50,.12),transparent 28%),radial-gradient(circle at bottom left,rgba(15,118,110,.12),transparent 32%),linear-gradient(145deg,#fffaf3f5,#f8f1e6e6);border:1px solid rgba(30,41,59,.08)}.dashboard-hero h2{max-width:14ch;margin-bottom:.6rem;font-size:clamp(2rem,3vw,3.4rem)}.dashboard-hero-stats{display:grid;gap:.75rem;align-content:start}.hero-metric{padding:1rem 1.05rem;border-radius:20px;border:1px solid rgba(30,41,59,.1);background:#ffffffb8}.hero-metric span{display:block;margin-bottom:.3rem;color:var(--muted);font-size:.84rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.hero-metric strong{font-size:1.25rem}.dashboard-focus{grid-template-columns:repeat(2,minmax(0,1fr))}.warranties-overview{grid-template-columns:repeat(4,minmax(0,1fr))}.warranty-list{display:flex;flex-direction:column;gap:.9rem}.warranty-card{display:flex;justify-content:space-between;gap:1rem;padding:1.1rem;border-radius:var(--radius-md);border:1px solid var(--line);background:linear-gradient(180deg,#ffffffeb,#f7f0e2e6);box-shadow:0 18px 40px #231b0e14}.warranty-card-main{display:flex;flex-direction:column;gap:.95rem;min-width:0}.warranty-card-head{display:flex;justify-content:space-between;gap:1rem;align-items:start}.warranty-card-head strong{display:block;margin-bottom:.18rem;font-size:1.02rem}.warranty-card-head p{color:var(--muted)}.warranty-tags{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.45rem}.warranty-tag{display:inline-flex;align-items:center;border-radius:999px;padding:.35rem .7rem;font-size:.76rem;font-weight:800;letter-spacing:.02em;background:#31455b14;color:var(--accent-3);border:1px solid rgba(49,69,91,.12)}.warranty-tag.active{color:var(--accent);background:#0f766e14;border-color:#0f766e24}.warranty-tag.muted{color:#1d24309e}.warranty-tag.soon{color:#8f4d00;background:#c77d321f;border-color:#c77d3233}.warranty-tag.overdue{color:var(--error);background:#9f123914;border-color:#9f123929}.warranty-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.warranty-meta strong{display:block;margin-top:.12rem}.warranty-actions{align-items:flex-start}.warranty-doc{display:inline-flex;align-items:center;width:fit-content;padding:.45rem .75rem;border-radius:999px;background:#0f766e14;color:var(--accent);font-weight:800}.dashboard-schedule-card{background:linear-gradient(180deg,#ffffffeb,#f7f0e2eb)}.dashboard-activity-card,.dashboard-alert-card{align-items:flex-start}.dashboard-health-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.dashboard-health-card{padding:1rem;border-radius:var(--radius-md);border:1px solid var(--line);background:linear-gradient(180deg,#ffffffe0,#f8f1e6e0);box-shadow:0 14px 32px #231b0e0f}.dashboard-health-head{display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.dashboard-health-head strong{display:block;margin-bottom:.18rem}.dashboard-health-head p{color:var(--muted)}.dashboard-health-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.dashboard-health-grid strong{display:block;margin-top:.12rem}.dashboard-spending{display:flex;flex-direction:column;gap:1rem}.dashboard-spending-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.dashboard-trend-panel{padding:1rem;border-radius:var(--radius-md);border:1px solid var(--line);background:#ffffffb8}.dashboard-trend-panel h3{margin-bottom:.9rem;font-size:1.05rem}.dashboard-trend-list,.dashboard-category-list{display:flex;flex-direction:column;gap:.85rem}.scope-stack{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.trend-list,.breakdown-list{display:flex;flex-direction:column;gap:.85rem}.trend-row,.breakdown-row{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:.85rem;align-items:center}.trend-labels,.breakdown-head{display:flex;flex-direction:column;gap:.18rem}.trend-labels span,.breakdown-head span{color:var(--muted);font-size:.88rem}.trend-track,.breakdown-track{height:.8rem;border-radius:999px;overflow:hidden;border:1px solid rgba(30,41,59,.08);background:#31455b14}.trend-fill,.breakdown-fill{height:100%;border-radius:inherit;background:linear-gradient(135deg,var(--accent),#114d67)}.breakdown-fill.accent{background:linear-gradient(135deg,var(--accent-2),#b86d24)}.trend-value{min-width:6.5rem;text-align:right}.document-dropzone{display:flex;flex-direction:column;gap:.35rem;padding:1rem;border-radius:var(--radius-md);border:1px dashed rgba(15,118,110,.28);background:#0f766e0f}.document-dropzone.empty{color:var(--muted)}.document-card{display:flex;justify-content:space-between;gap:1rem;padding:1rem}.document-record.active{border-color:#0f766e47;box-shadow:0 18px 40px #0f766e24}.document-main{display:flex;flex-direction:column;gap:.8rem;min-width:0}.document-main strong{display:block;margin-bottom:.15rem}.document-main p{color:var(--muted)}.document-link{width:fit-content;color:var(--accent);font-weight:800}.asset-toolbar{display:flex;justify-content:flex-end}.loading-state{display:grid;place-items:center;gap:.8rem;padding:2rem}.loading-state.compact{padding:1.2rem}.spinner{width:1.7rem;height:1.7rem;border-radius:50%;border:3px solid rgba(15,118,110,.16);border-top-color:var(--accent);animation:spin 1s linear infinite}.empty-state{position:relative;overflow:hidden;padding:1.4rem}.empty-state.compact{padding:1rem}.empty-state h3{font-size:1.35rem;margin-bottom:.35rem}.empty-orb{position:absolute;inset:auto -40px -50px auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(15,118,110,.12),transparent 68%)}.empty-action{margin-top:1rem}.muted-copy{font-size:.92rem}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1180px){.landing-grid,.auth-shell,.app-shell,.workspace-grid,.split-panels{grid-template-columns:1fr}.schedule-overview{grid-template-columns:1fr 1fr}.sidebar{position:static;min-height:auto}.feature-grid,.hero-metrics,.overview-row,.auth-story-notes{grid-template-columns:1fr 1fr}.documents-overview,.dashboard-overview,.warranties-overview,.spending-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-meta{grid-template-columns:1fr 1fr}.workspace-topbar{align-items:start;flex-direction:column}}@media(max-width:760px){.landing-topbar,.landing-footer,.hero-actions,.panel-head,.home-detail{grid-template-columns:1fr;flex-direction:column;align-items:start}.hero-metrics,.feature-grid,.overview-row,.dashboard-overview,.auth-story-notes,.documents-overview,.spending-overview,.home-detail,.schedule-overview,.two-col{grid-template-columns:1fr}.workspace-grid{gap:1rem}.item-card,.schedule-card,.schedule-card-head{flex-direction:column}.trend-row,.breakdown-row,.dashboard-health-grid{grid-template-columns:1fr}.document-card{flex-direction:column}.dashboard-hero,.dashboard-health-list,.dashboard-spending-summary,.dashboard-focus{grid-template-columns:1fr}.warranty-card,.warranty-card-head{flex-direction:column}.trend-value{text-align:left;min-width:0}.schedule-tags{justify-content:flex-start}.schedule-meta,.warranty-meta{grid-template-columns:1fr}.dashboard-health-grid{grid-template-columns:1fr 1fr}.auth-shell{padding:.9rem}}
