:root{--bg:#f6f7f4;--surface:#ffffff;--surface-2:#eef1ed;--ink:#17211d;--muted:#68736d;--line:#dfe5df;--primary:#176b5c;--primary-dark:#0f4c43;--accent:#bd7b2f;--danger:#b85042;--success:#2e7a4f;--shadow:0 18px 55px rgba(21,35,30,0.1)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:Tahoma,Arial,Helvetica,sans-serif;text-align:right}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:var(--primary);font-weight:700;text-decoration:none}img{display:block;max-width:100%}.auth-shell{align-items:center;display:grid;grid-gap:36px;gap:36px;grid-template-columns:minmax(0,1.1fr) 420px;min-height:100vh;padding:48px;background:radial-gradient(circle at 20% 10%,rgba(23,107,92,.14),transparent 32%),linear-gradient(135deg,#f6f7f4,#eef2ed)}.auth-panel{background:url(/sample-report-1.svg);background-size:cover;border-radius:8px;color:#fff;min-height:560px;overflow:hidden;padding:44px;position:relative}.auth-overlay{background:linear-gradient(140deg,rgba(23,107,92,.97),rgba(24,48,44,.92));inset:0;position:absolute}.auth-panel>:not(.auth-overlay){position:relative;z-index:1}.brand-lockup,.brand-row{align-items:center;display:flex;gap:14px}.brand-mark{align-items:center;background:var(--primary);border-radius:8px;color:#fff;display:inline-flex;height:48px;justify-content:center;width:48px}.auth-panel .brand-mark{background:rgba(255,255,255,.18)}.eyebrow{color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:0;margin:0 0 6px;text-transform:uppercase}.auth-panel .eyebrow{color:#f3c27e}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.4rem,5vw,4.8rem);line-height:1;margin:0}h2{font-size:1.7rem;margin-bottom:0}h3{font-size:1.05rem;margin-bottom:10px}.auth-copy{font-size:1.18rem;line-height:1.7;margin:120px 0 32px;max-width:700px}.demo-grid{display:flex;flex-wrap:wrap;gap:12px}.demo-grid button,.panel-heading button,.segmented button{background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--ink);font-weight:800;min-height:42px;padding:0 16px}.asset-card,.auth-card,.metric-card,.panel,.table-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.auth-card{display:grid;grid-gap:18px;gap:18px;padding:30px}.auth-card h2{line-height:1.25}.segmented{background:var(--surface-2);border-radius:8px;display:grid;grid-gap:4px;gap:4px;grid-template-columns:1fr 1fr;padding:4px}.segmented button{background:transparent;border:0}.segmented button.active{background:#fff;color:var(--primary)}.field{display:grid;grid-gap:7px;gap:7px}.field span{color:var(--muted);font-size:.85rem;font-weight:800}.field input,.field select,.field textarea,.search-box,.toolbar select{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:44px;padding:10px 12px;width:100%}.field textarea{min-height:110px;resize:vertical}.primary-button{align-items:center;background:var(--primary);border:0;border-radius:8px;color:#fff;display:inline-flex;font-weight:900;gap:9px;justify-content:center;min-height:48px;padding:0 18px}.primary-button:disabled{opacity:.65}.form-error{background:#fff0ee;border:1px solid #f1c3bd;border-radius:8px;color:var(--danger);font-weight:800;margin:0;padding:12px}.auth-hint{color:var(--muted);font-size:.85rem;line-height:1.7;margin:0}.app-shell{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}.sidebar{background:#17211d;color:#fff;display:flex;flex-direction:column;gap:26px;padding:24px}.brand-row span{color:#b9c4be;display:block;font-size:.82rem;margin-top:3px}.sidebar nav{display:grid;grid-gap:8px;gap:8px}.logout,.sidebar nav button{align-items:center;background:transparent;border:0;border-radius:8px;color:#dce5df;display:flex;gap:10px;min-height:44px;padding:0 12px;text-align:right}.sidebar nav button.active,.sidebar nav button:hover{background:rgba(255,255,255,.1);color:#fff}.logout{margin-top:auto}.workspace{min-width:0;padding:28px}.topbar{justify-content:space-between;margin-bottom:24px}.topbar,.user-chip{align-items:center;display:flex}.user-chip{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);gap:10px;min-height:44px;padding:0 14px}.user-chip:hover{border-color:rgba(23,107,92,.45);box-shadow:0 10px 24px rgba(21,35,30,.08)}.user-chip span{align-items:center;background:var(--accent);border-radius:999px;color:#fff;display:inline-flex;font-size:.75rem;font-weight:900;height:22px;justify-content:center;min-width:22px}.screen-stack{display:grid;grid-gap:22px;gap:22px}.metric-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card{display:grid;grid-gap:8px;gap:8px;padding:18px}.metric-card svg{color:var(--primary)}.asset-card small,.compact-item span,.info-cell span,.metric-card small,.metric-card span,.timeline-item small,.warranty-row p{color:var(--muted)}.metric-card strong{font-size:1.4rem}.content-grid,.dashboard-grid{align-items:start;display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(0,1fr) 360px}.content-grid .card-grid,.content-grid .table-panel,.content-grid .timeline,.dashboard-grid .wide{grid-column:span 1}.panel{padding:20px}.panel-heading,.progress-row,.timeline-head,.warranty-row{align-items:center;display:flex;justify-content:space-between;gap:14px}.progress-track{background:var(--surface-2);border-radius:999px;height:12px;overflow:hidden}.progress-track div{background:var(--primary);height:100%}.info-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.info-cell{background:var(--surface-2);border-radius:8px;padding:14px}.info-cell span,.info-cell strong{display:block}.compact-item{align-items:center;border-top:1px solid var(--line);display:flex;gap:12px;padding:14px 0}.compact-item>div{display:grid;grid-gap:4px;gap:4px;min-width:0}.compact-item span,.compact-item strong{line-height:1.45}.compact-item:first-of-type{border-top:0}.compact-summary{align-items:center;background:var(--surface-2);border-radius:8px;color:var(--muted);display:flex;gap:10px;margin-top:8px;padding:12px}.project-status-list{display:grid;grid-gap:12px;gap:12px}.project-status{align-items:center;background:var(--surface-2);border-radius:8px;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr) 220px;padding:14px}.project-status span,.project-status strong{display:block}.project-status span{color:var(--muted);font-size:.88rem;margin-top:5px}.project-status-progress span{color:var(--ink);font-weight:900;margin-bottom:8px}.project-hero{align-items:flex-end;background:linear-gradient(120deg,rgba(23,107,92,.95),rgba(189,123,47,.72)),url(/sample-report-2.svg);background-size:cover;border-radius:8px;color:#fff;display:flex;justify-content:space-between;min-height:290px;padding:28px}.project-hero h3{font-size:clamp(2rem,4vw,3.6rem);line-height:1}.completion-ring{align-items:center;background:rgba(255,255,255,.16);border:8px solid rgba(255,255,255,.72);border-radius:999px;display:flex;font-size:1.5rem;font-weight:900;height:118px;justify-content:center;width:118px}.form-panel{display:grid;grid-gap:14px;gap:14px}.timeline{display:grid;grid-gap:16px;gap:16px}.timeline-item{display:grid;grid-gap:12px;gap:12px;grid-template-columns:18px minmax(0,1fr)}.timeline-dot{background:var(--primary);border:4px solid #c8e4db;border-radius:999px;height:18px;margin-top:22px;width:18px}.media-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:16px 0}.asset-card img,.empty-thumb,.media-grid img{aspect-ratio:16/10;border-radius:8px;object-fit:cover;width:100%}.toolbar{display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1fr) 220px}.projects-toolbar{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:18px}.projects-toolbar h3{margin:0}.count-pill{background:#e6f2ee;border-radius:999px;color:var(--primary-dark);display:inline-flex;font-size:.85rem;font-weight:900;justify-content:center;padding:8px 12px}.search-box{align-items:center;display:flex;gap:10px}.search-box input{border:0;min-width:0;outline:0;width:100%}.card-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.projects-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.project-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);color:var(--ink);display:grid;grid-gap:14px;gap:14px;padding:20px;text-align:right;transition:border-color .18s ease,transform .18s ease}.project-card:hover{border-color:rgba(23,107,92,.45);transform:translateY(-2px)}.project-card-head{align-items:center;display:flex;justify-content:space-between}.project-card h3,.project-card p{margin:0}.project-cover{aspect-ratio:16/9;border-radius:8px;object-fit:cover;width:100%}.project-meta{border-top:1px solid var(--line);display:grid;grid-gap:9px;gap:9px;padding-top:12px}.project-meta span{align-items:center;color:var(--muted);display:flex;gap:8px}.details-hero{min-height:230px}.ghost-button{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.45);border-radius:8px;color:#fff;font-weight:900;min-height:44px;padding:0 16px}.detail-layout{align-items:start;display:grid;grid-gap:18px;gap:18px;grid-template-columns:250px minmax(0,1fr)}.detail-tabs{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:8px;gap:8px;padding:12px}.detail-tabs button{align-items:center;background:transparent;border:0;border-radius:8px;color:var(--muted);display:flex;gap:10px;min-height:44px;padding:0 12px;text-align:right}.detail-tabs button.active,.detail-tabs button:hover{background:#e6f2ee;color:var(--primary-dark)}.detail-content{min-width:0}.detail-content .content-grid{grid-template-columns:1fr}.asset-card{overflow:hidden}.work-card .media-grid{margin:0;padding:12px 12px 0}.work-card .media-grid img{min-height:170px}.asset-card>div{padding:16px}.empty-thumb{align-items:center;background:var(--surface-2);color:var(--muted);display:flex;justify-content:center}.pill,.status{border-radius:999px;display:inline-flex;font-size:.76rem;font-weight:900;margin-bottom:10px;padding:5px 10px}.pill{background:#e6f2ee;color:var(--primary-dark)}.table-panel{display:grid;grid-gap:10px;gap:10px;padding:12px}.warranty-row{background:var(--surface-2);border-radius:8px;padding:16px}.warranty-row>div:first-child{min-width:0}.warranty-row>div:nth-child(2){min-width:145px;text-align:right}.status{margin:8px 0 0}.status.warning{background:#fff0df;color:#9c5418}.status.success{background:#e5f3e9;color:var(--success)}.notification,.notification-list{display:grid;grid-gap:14px;gap:14px}.notification{align-items:flex-start;grid-template-columns:24px minmax(0,1fr)}.notification.warning svg{color:var(--accent)}.notification.info svg{color:var(--primary)}.notification.success svg{color:var(--success)}@media (max-width:1020px){.app-shell,.auth-shell,.content-grid,.dashboard-grid{grid-template-columns:1fr}.sidebar{position:static}.sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.logout{margin-top:0}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.auth-shell,.sidebar,.workspace{padding:18px}.auth-panel{min-height:auto;padding:24px}.auth-copy{margin-top:52px}.panel-heading,.project-hero,.project-status,.topbar,.warranty-row{align-items:flex-start;flex-direction:column}.detail-layout,.detail-tabs,.info-grid,.metric-grid,.project-status,.sidebar nav,.toolbar{grid-template-columns:1fr}.completion-ring{height:92px;width:92px}.warranty-row>div:nth-child(2){text-align:right}}