@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";
:root{--primary-blue:#062b57;--primary-blue-100:#e6f0fb;--accent-yellow:#ffc400;--ink:#0b1220;--navy:var(--ink);--slate:#4b5563;--muted-gray:#6b7280;--page-bg:#dfe8f6;--panel-bg:#f8fafc;--card-bg:#fff;--border:#062b572e;--border-soft:#062b571a;--max-width:1180px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--shadow-soft:0 6px 18px #0206170d}*{box-sizing:border-box}html,body,#__next{min-height:100%}html{scroll-behavior:smooth}body{color:var(--slate);background:var(--page-bg);margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}body:before{content:"";pointer-events:none;z-index:-1;opacity:.055;background-image:url(/images/bg/residential-site-plan.svg);background-position:top;background-repeat:repeat;background-size:1200px;position:fixed;inset:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.muted{color:var(--muted-gray)}.container{max-width:var(--max-width);margin:0 auto;padding:0 20px}.site-main{padding-top:32px;padding-bottom:48px}.section{padding:72px 0}.section-header{text-align:center;max-width:720px;margin:0 auto 40px}.section-header h2{color:var(--navy);margin:0;font-size:36px}.section-header p{color:var(--muted-gray);margin-top:12px;font-size:18px;line-height:1.5}.card,.homepage-carousel,.capabilities-panel,.cta-section,.feature-band{background:var(--panel-bg);border:1px solid var(--border);border-top:5px solid var(--primary-blue);border-radius:var(--radius-md);box-shadow:none}.card{padding:24px}.site-nav{z-index:100;border-bottom:1px solid var(--border-soft);background:#fff;position:sticky;top:0;box-shadow:0 4px 14px #0206170a}.nav-inner{justify-content:space-between;align-items:center;gap:32px;min-height:92px;display:flex}.brand-link{flex-shrink:0;align-items:center;display:flex}.brand-logo{object-fit:contain;width:320px;height:auto;display:block}.nav-links{justify-content:flex-end;align-items:center;gap:28px;display:flex}.nav-links a{color:var(--navy);font-size:16px;font-weight:700}.nav-links a:hover{color:var(--primary-blue)}.nav-toggle{cursor:pointer;background:0 0;border:0;display:none}.hamburger{background:var(--slate);width:20px;height:2px;display:block;position:relative}.hamburger:before,.hamburger:after{content:"";background:var(--slate);width:20px;height:2px;position:absolute;left:0}.hamburger:before{top:-6px}.hamburger:after{top:6px}.btn{border-radius:var(--radius-sm);cursor:pointer;text-align:center;justify-content:center;align-items:center;min-width:156px;min-height:52px;padding:14px 22px;font-size:17px;font-weight:800;line-height:1;transition:all .18s;display:inline-flex}.btn.primary,.btn.accent{background:var(--accent-yellow);color:var(--navy);border:1px solid #d9aa00}.btn.secondary{color:var(--primary-blue);border:1px solid var(--border);background:#fff}.btn:hover{box-shadow:var(--shadow-soft);transform:translateY(-1px)}.hero{padding:18px 0 20px}.hero-layout{grid-template-columns:minmax(0,1fr) minmax(520px,1.02fr);align-items:start;gap:40px;display:grid}.hero-copy{text-align:left;max-width:640px;padding-top:8px}.hero-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--primary-blue);margin-bottom:12px;font-size:12px;font-weight:800;display:inline-block}.hero h1{letter-spacing:-.05em;max-width:620px;color:var(--navy);margin:0;font-size:clamp(64px,7vw,92px);line-height:.92}.hero p{max-width:560px;color:var(--muted-gray);margin-top:18px;font-size:17px;line-height:1.55}.hero-actions{justify-content:center;margin-top:24px;display:flex}.hero-visual{justify-content:flex-end;align-items:flex-start;display:flex}.hero-image-card{aspect-ratio:1.16;border-radius:var(--radius-md);border:1px solid var(--border);background:#dfe7f5;width:100%;max-width:700px;overflow:hidden}.hero-image{object-fit:cover;width:100%;height:100%}.homepage-carousel-section{padding:20px 0 36px}.homepage-carousel{width:100%;max-width:var(--max-width);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:stretch;gap:30px;margin:0 auto;padding:26px;display:grid;position:relative;overflow:hidden}.homepage-carousel:before,.capabilities-panel:before,.cta-section:before{content:"";background:var(--primary-blue);height:5px;position:absolute;inset:0 0 auto}.carousel-media{border-radius:var(--radius-sm);background:#edf2f7;min-height:460px;padding:4px;overflow:hidden}.carousel-image{object-fit:contain;width:100%;height:100%}.carousel-content{border-radius:var(--radius-sm);background:#fff;flex-direction:column;justify-content:space-between;min-height:460px;padding:26px 22px;display:flex}.carousel-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--primary-blue);font-size:13px;font-weight:800}.homepage-carousel h2{color:var(--navy);margin:14px 0 0;font-size:44px;line-height:1.08}.homepage-carousel p{color:var(--muted-gray);margin-top:18px;font-size:18px;line-height:1.65}.carousel-controls{justify-content:center;align-items:center;gap:14px;display:flex}.carousel-dots{gap:10px;display:flex}.carousel-dot{cursor:pointer;background:#cbd5e1;border:0;border-radius:999px;width:11px;height:11px}.carousel-dot.active{background:var(--primary-blue);width:34px}.carousel-arrow{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;background:#fff;width:40px;height:40px}.capabilities-section{padding:56px 0}.capabilities-panel{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:36px;padding:32px;display:grid;position:relative;overflow:hidden}.capabilities-tabs{flex-wrap:wrap;gap:10px;margin-bottom:22px;display:flex}.capabilities-tab{border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--navy);cursor:pointer;background:0 0;padding:8px 12px;font-weight:700}.capabilities-tab.active{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}.capabilities-copy h2{color:var(--navy);margin:0;font-size:34px;line-height:1.12}.capabilities-copy p{font-size:17px;line-height:1.6}.capabilities-persona-image{border-radius:var(--radius-sm);aspect-ratio:16/9;object-fit:cover;width:100%;margin-top:22px}.capabilities-list{gap:14px;display:grid}.capability-item{border-radius:var(--radius-sm);border:1px solid var(--border);border-left:4px solid var(--primary-blue);min-height:82px;color:var(--navy);background:#fff;grid-template-columns:42px 1fr auto;align-items:center;gap:16px;padding:16px 18px;font-weight:800;display:grid}.capability-icon{border-radius:var(--radius-sm);background:var(--primary-blue-100);width:42px;height:42px;color:var(--primary-blue);place-items:center;font-weight:900;display:grid}.capability-item small{color:var(--muted-gray);margin-top:4px;font-weight:500;display:block}.cta-section{margin-top:32px;padding:28px;position:relative;overflow:hidden}.cta-form{flex-direction:column;gap:12px;display:flex}.form-row{gap:12px;display:flex}.form-row.full{flex-direction:column}.form-row input,.form-row textarea{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:12px;font-family:inherit}.form-success{color:green}.form-error{color:#b0443b}.features-page-hero{padding:48px 0 28px}.features-page-hero-inner{max-width:860px;margin:0 auto}.features-page-hero-inner h1{letter-spacing:-.05em;color:var(--navy);margin:0;font-size:clamp(58px,7vw,92px);line-height:.95}.features-page-hero-inner p{max-width:640px;margin-top:18px;font-size:18px;line-height:1.6}.features-flow-section{padding:28px 0 96px}.features-flow{flex-direction:column;gap:28px;max-width:1080px;margin:0 auto;display:flex}.feature-band{grid-template-columns:1.05fr .95fr;gap:28px;padding:24px;display:grid}.feature-video-frame{aspect-ratio:16/10;width:100%;max-width:520px;margin:0 auto;overflow:hidden}.feature-video{object-fit:contain;width:100%;height:100%;display:block}.feature-band-visual,.feature-video-frame{justify-content:center;align-items:center;display:flex}.feature-band.reverse .feature-band-content{order:2}.feature-band.reverse .feature-band-visual{order:1}.feature-step{border-radius:var(--radius-sm);background:var(--primary-blue-100);width:42px;height:42px;color:var(--primary-blue);justify-content:center;align-items:center;margin-bottom:16px;font-weight:800;display:inline-flex}.feature-band h2{color:var(--navy);margin:0 0 18px;font-size:34px;line-height:1.15}.feature-band-block+.feature-band-block{margin-top:18px}.feature-band-block h4{color:var(--navy);margin:0 0 8px}.feature-band-placeholder{border-radius:var(--radius-sm);border:1px solid var(--border);min-height:320px;color:var(--muted-gray);text-align:center;background:#eef2f7;justify-content:center;align-items:center;padding:24px;font-weight:700;display:flex}.footer{background:var(--navy);color:#fff;margin-top:80px;padding:40px 0 20px}.footer .container{grid-template-columns:1fr 1fr 1fr;gap:24px;display:grid}.footer a{color:#ffffffd9}.copyright{text-align:center;border-top:1px solid #ffffff14;margin-top:20px;padding-top:16px}@media (max-width:1100px){.hero-layout,.homepage-carousel{grid-template-columns:1fr 1fr}.homepage-carousel h2{font-size:36px}}@media (max-width:900px){.hero-layout,.homepage-carousel,.capabilities-panel,.feature-band,.footer .container{grid-template-columns:1fr}.hero-copy,.carousel-content,.capabilities-copy,.features-page-hero-inner{text-align:center}.hero-actions,.carousel-controls,.capabilities-tabs{justify-content:center}.feature-band.reverse .feature-band-content,.feature-band.reverse .feature-band-visual{order:initial}.carousel-media,.carousel-content{min-height:320px}}@media (max-width:740px){.nav-inner{gap:16px;min-height:76px}.brand-logo{width:190px;max-height:64px}.nav-toggle{display:block}.nav-links{border-radius:var(--radius-sm);border:1px solid var(--border);background:#fff;flex-direction:column;align-items:flex-start;padding:16px;display:none;position:absolute;top:78px;right:20px}.nav-links.open{display:flex}}@media (max-width:480px){.hero h1{font-size:46px}.homepage-carousel,.capabilities-panel,.feature-band{padding:18px}.homepage-carousel h2,.feature-band h2,.capabilities-copy h2{font-size:26px}.form-row{flex-direction:column}}.app-subnav{scrollbar-width:none;justify-content:flex-end;align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.app-subnav::-webkit-scrollbar{display:none}.app-subnav a,.app-subnav .disabled,.app-subnav button{white-space:nowrap;border-radius:6px;flex:none;min-width:0;min-height:34px;padding:7px 9px;font-size:13px;font-weight:650}.app-topbar{background:#fff}.app-shell{background:var(--page-bg)}.app-topbar .nav-inner{background:#fff;gap:18px;min-height:76px}.app-topbar .brand-logo{width:205px;height:auto}.app-topbar .brand-link{flex:none}.app-shell .btn{border-radius:7px;min-width:0;min-height:38px;padding:9px 13px;font-size:14px;font-weight:700}.project-action-bar{border:1px solid var(--border-soft);background:#f8fafcb8;border-radius:9px;align-items:center;padding:8px}.project-action-bar .btn{background:0 0;border-color:#0000;min-height:36px;padding:8px 11px;font-size:13px}.project-action-bar .btn:hover{border-color:var(--border);box-shadow:none;background:#fff;transform:none}@media (max-width:900px){.app-topbar .nav-inner{flex-direction:column;align-items:flex-start;gap:4px;padding-top:10px;padding-bottom:8px}.app-topbar .brand-logo{width:180px}.app-subnav{justify-content:flex-start;width:100%}.project-action-bar>div[style*="flex: 1"]{display:none}}.btn.ghost{color:var(--primary-blue);border:1px solid var(--border);background:#fff}.weather-panel{background:#f8fbff}.weather-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.weather-day{border:1px solid var(--border-soft);border-radius:var(--radius-md);color:var(--slate);background:#fff;padding:12px}.weather-day strong{color:var(--navy)}.weather-explorer{background:#f8fbff;padding:18px}.weather-featured{color:#fff;background:linear-gradient(125deg,#072f5c,#175e93);border-radius:10px;grid-template-columns:minmax(180px,1fr) auto auto minmax(110px,.55fr);align-items:center;gap:22px;padding:18px 20px;display:grid}.weather-featured-label{color:#b9d9f0;letter-spacing:.09em;text-transform:uppercase;font-size:11px;font-weight:800}.weather-featured h3{color:#fff;margin:4px 0;font-size:24px}.weather-location{color:#d8e8f5;font-size:12px}.weather-featured-temp,.weather-featured-stat{gap:3px;display:grid}.weather-featured-temp strong{font-size:36px}.weather-featured-temp span,.weather-featured-stat span{color:#c7ddec;font-size:11px}.weather-featured-stat{border-left:1px solid #ffffff40;padding-left:18px}.weather-featured-stat strong{font-size:22px}.weather-forecast-grid{grid-template-columns:repeat(6,minmax(100px,1fr));gap:8px;margin-top:10px;display:grid}.weather-forecast-day{color:#475569;text-align:left;cursor:pointer;background:#fff;border:1px solid #d8e2ee;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:2px 6px;padding:10px;display:grid}.weather-forecast-day>span,.weather-forecast-day small{grid-column:1}.weather-forecast-day svg{grid-area:1/2/4}.weather-forecast-day>span{text-transform:uppercase;font-size:10px;font-weight:800}.weather-forecast-day>strong{font-size:18px}.weather-forecast-day small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.weather-forecast-day.is-selected{color:var(--primary-blue);border-color:var(--primary-blue);box-shadow:inset 0 -3px 0 var(--primary-blue);background:#eaf3ff}.project-dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:12px;margin-top:12px;display:grid}.project-dashboard-grid .project-overview-grid{display:contents!important}.project-snapshot-card{grid-area:1/1/span 2;margin-top:0!important}.project-overview-grid>.card{grid-area:1/2}.project-weather-area{grid-area:3/1/auto/-1}.critical-path-more{min-height:32px;color:var(--primary-blue);border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750}.milestone-header{color:#64748b;letter-spacing:.06em;text-transform:uppercase;background:#edf2f8;grid-template-columns:minmax(150px,.8fr) minmax(280px,1.6fr) minmax(210px,.8fr);gap:24px;padding:8px;font-size:10px;font-weight:800;display:grid}.milestone-row{color:inherit;text-decoration:none}.milestone-row:hover{background:#eef6ff}.schedule-summary-panel{background:#f8fbff}.schedule-summary-panel h2{color:var(--navy)}.schedule-summary-panel>div:last-child>div{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.schedule-summary-panel>div:last-child>div>div{border:1px solid var(--border-soft);border-radius:var(--radius-md);background:#fff;padding:12px}.schedule-summary-card{margin-bottom:12px;padding:18px}.schedule-summary-top,.schedule-progress-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.schedule-progress-main{flex:1;min-width:260px}.schedule-progress-label{justify-content:space-between;margin-bottom:8px;display:flex}.schedule-progress-track{background:#e6edf7;border-radius:999px;height:12px;overflow:hidden}.schedule-progress-fill{background:var(--primary-blue);border-radius:999px;height:100%}.schedule-meta-pill,.critical-path-step{border:1px solid var(--border);background:#fff;border-radius:999px;padding:8px 12px;font-size:13px}.critical-path-card{border:1px solid var(--border-soft);border-radius:var(--radius-md);background:#fff;margin-top:16px;padding:14px}.critical-path-chain{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.schedule-workspace,.schedule-builder-workspace{--scheduler-border:#cdd8e6;--scheduler-soft:#f3f6fa}.schedule-workspace .btn,.schedule-builder-workspace .btn{border-radius:7px;min-width:0;min-height:38px;padding:9px 14px;font-size:14px;font-weight:700}.schedule-workspace .card,.schedule-builder-workspace .card{border-top-width:3px;border-radius:9px}.schedule-impact-card{background:#fff;padding:20px!important}.schedule-impact-card textarea{font-size:15px;border-color:var(--scheduler-border)!important;border-radius:7px!important;min-height:118px!important}.schedule-section-kicker{color:var(--primary-blue);letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:800}.schedule-data-card{padding:18px 20px;overflow:hidden}.schedule-data-table thead{background:#edf2f8}.schedule-data-table th{color:#31445b;letter-spacing:.025em;text-transform:uppercase;font-size:12px}.schedule-data-table tbody tr:nth-child(2n){background:#f8fafc}.schedule-data-table tbody tr:hover{background:#edf5ff}.schedule-data-table th:first-child{width:28%}.schedule-data-table td{vertical-align:middle}.schedule-status{color:#475569;text-transform:capitalize;background:#eef2f6;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:750;display:inline-flex}.schedule-status.status-complete{color:#166534;background:#dcfce7}.schedule-status.status-in_progress{color:#1d4ed8;background:#dbeafe}.schedule-status.status-blocked{color:#991b1b;background:#fee2e2}.critical-task-mark{color:#9a3412;text-transform:uppercase;background:#ffedd5;border-radius:999px;margin-left:8px;padding:2px 6px;font-size:10px;font-weight:800;display:inline-flex}.task-progress-cell{align-items:center;gap:8px;min-width:110px;display:flex}.task-progress-cell>span{background:#e2e8f0;border-radius:999px;width:68px;height:6px;overflow:hidden}.task-progress-cell i{background:var(--primary-blue);border-radius:inherit;height:100%;display:block}.task-progress-cell strong,.schedule-date-range{color:#475569;white-space:nowrap;font-size:12px}.milestone-list{border-top:1px solid var(--border-soft);display:grid}.milestone-row{border-bottom:1px solid var(--border-soft);grid-template-columns:minmax(150px,.8fr) minmax(280px,1.6fr) minmax(210px,.8fr);align-items:center;gap:24px;padding:16px 8px;display:grid}.milestone-row:last-child{border-bottom:0}.milestone-phase,.milestone-progress{gap:6px;display:grid}.milestone-phase strong{color:var(--navy)}.milestone-phase span,.milestone-progress-label,.milestone-stats{color:#64748b;font-size:12px}.milestone-progress-label,.milestone-stats{justify-content:space-between;align-items:center;gap:12px;display:flex}.milestone-progress-label strong,.milestone-stats strong{color:#334155}.milestone-progress-track{background:#e2e8f0;border-radius:999px;height:9px;overflow:hidden}.milestone-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#0b3a6d,#2f6fa9);height:100%;display:block}.milestone-stats{justify-content:flex-end}.milestone-stats>span{background:#f1f5f9;border-radius:6px;padding:5px 7px}.milestone-stats .is-blocked{color:#991b1b;background:#fee2e2}.schedule-option{color:#44546a;text-align:left;border:1px solid var(--scheduler-border);cursor:pointer;background:#fff;border-radius:7px;gap:3px;min-width:118px;padding:10px 12px;display:grid}.schedule-option span{color:#6b7280;font-size:11px}.schedule-option.is-active{color:var(--primary-blue);border-color:var(--primary-blue);box-shadow:inset 3px 0 0 var(--primary-blue);background:#eaf3ff}.builder-completion-card{background:#fff}.builder-completion-layout{grid-template-columns:minmax(360px,1.1fr) minmax(300px,.9fr);gap:28px;display:grid}.builder-phase-progress-list{gap:5px;margin-top:14px;display:grid}.builder-phase-progress-row{color:inherit;grid-template-columns:170px minmax(100px,1fr) 42px 58px;align-items:center;gap:10px;padding:3px 0;font-size:12px;display:grid}.builder-phase-progress-row>span{color:#334155;font-weight:650}.builder-phase-progress-row>i,.builder-phase-summary-progress i{background:#e2e8f0;border-radius:999px;height:6px;overflow:hidden}.builder-phase-progress-row b,.builder-phase-summary-progress b{background:var(--primary-blue);border-radius:inherit;height:100%;display:block}.builder-phase-progress-row small{color:#64748b}.builder-critical-summary{border:1px solid var(--border-soft);background:#f8fafc;border-radius:9px;padding:18px}.builder-critical-heading{color:#991b1b;letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid #e2e8f0;justify-content:space-between;gap:12px;padding-bottom:12px;font-size:12px;font-weight:800;display:flex}.builder-critical-heading strong{color:#475569;font-size:11px}.builder-critical-summary>p{color:#64748b;font-size:13px}.builder-critical-chain{gap:0;padding-top:10px;display:grid}.builder-critical-chain>div{grid-template-columns:26px 1fr;gap:10px;min-height:44px;display:grid;position:relative}.builder-critical-chain>div:not(:last-of-type):after{content:"";background:#fca5a5;width:2px;position:absolute;top:25px;bottom:-1px;left:12px}.builder-critical-chain i{color:#991b1b;background:#fee2e2;border-radius:50%;place-items:center;width:26px;height:26px;font-size:10px;font-style:normal;font-weight:800;display:grid}.builder-critical-chain span{gap:2px;display:grid}.builder-critical-chain span strong{color:#334155;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.builder-critical-chain span small,.builder-critical-chain>small{color:#64748b;font-size:10px}.builder-task-card{overflow:hidden;padding:0!important}.builder-task-card>div:first-child{padding:16px 18px 6px}.builder-task-card>div:nth-child(2){overflow:visible}.builder-task-table{min-width:1680px}.builder-task-table thead{z-index:4;background:#eaf0f7;position:sticky;top:0;box-shadow:0 1px #cbd5e1}.builder-task-table th{color:#334155;letter-spacing:.02em;text-transform:uppercase;font-size:12px}.builder-task-table tbody tr:nth-child(2n){background:#f8fafc}.builder-task-table tbody tr:hover{background:#eef6ff}.builder-task-table input,.builder-task-table select,.builder-task-table textarea{background:#fff;border-color:#cbd5e1!important;border-radius:6px!important}.builder-task-table .btn{min-height:32px;padding:6px 9px;font-size:12px}.builder-task-list{background:#edf2f7;gap:10px;padding:12px;display:grid}.builder-phase-group{background:#fff;border:1px solid #d7e0ea;border-radius:8px;overflow:hidden}.builder-phase-group>summary{color:var(--navy);cursor:pointer;background:#f8fafc;justify-content:space-between;align-items:center;gap:20px;padding:13px 16px;list-style:none;display:flex}.builder-phase-group>summary::-webkit-details-marker{display:none}.builder-phase-group>summary:before{content:"+";width:20px;height:20px;color:var(--primary-blue);background:#eaf3ff;border-radius:50%;flex:none;place-items:center;font-size:14px;font-weight:800;display:grid}.builder-phase-group[open]>summary:before{content:"−"}.builder-phase-group>summary>span:first-of-type{flex:1;align-items:baseline;gap:10px;display:flex}.builder-phase-group>summary small{color:#64748b;font-size:11px;font-weight:500}.builder-phase-summary-progress{grid-template-columns:110px 42px;align-items:center;gap:8px;font-size:11px;display:grid}.builder-phase-task-list .builder-task-row:first-child{border-top:1px solid var(--border-soft)}.builder-task-row{border-top:1px solid var(--border-soft);background:#fff;grid-template-columns:22px 18px minmax(210px,1.7fr) minmax(130px,1fr) minmax(125px,.9fr) 84px minmax(135px,1fr) 68px minmax(135px,1fr);align-items:end;gap:12px;padding:16px 18px;display:grid}.builder-task-row:nth-child(2n){background:#f8fafc}.builder-task-row.has-error{box-shadow:inset 3px 0 #dc2626}.builder-task-row.is-dragging{opacity:.42}.builder-task-row.is-drop-target{background:#eaf3ff;position:relative}.builder-task-row.is-drop-target:before{content:"";z-index:3;background:#1473c9;border-radius:999px;height:4px;position:absolute;top:-3px;left:10px;right:10px;box-shadow:0 0 0 2px #fff}.builder-drag-preview{z-index:9999;color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#123f6c;border:1px solid #5d86ad;border-radius:7px;max-width:280px;padding:9px 13px;font-size:12px;font-weight:750;position:fixed;top:-1000px;left:-1000px;overflow:hidden;box-shadow:0 8px 20px #0f172a33}.builder-task-select,.builder-drag-handle{align-self:center}.builder-drag-handle{color:#64748b;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;font-size:17px}.builder-drag-handle:active{cursor:grabbing}.builder-drag-handle:focus-visible{outline:2px solid var(--primary-blue);outline-offset:3px;border-radius:4px}.builder-icon-button{justify-content:center;align-items:center;gap:7px;display:inline-flex}.builder-task-main,.builder-task-field,.builder-detail-field{gap:5px;min-width:0;display:grid}.builder-task-main label,.builder-task-field label,.builder-detail-field label{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:800}.builder-task-row input,.builder-task-row select,.builder-task-row textarea{color:#1e293b;width:100%;min-width:0;min-height:38px;font:inherit;background:#ffffffb8;border:1px solid #0000;border-radius:6px;padding:8px 9px}.builder-task-row:hover input,.builder-task-row:hover select,.builder-task-row:hover textarea,.builder-task-row input:focus,.builder-task-row select:focus,.builder-task-row textarea:focus{background:#fff;border-color:#cbd5e1;outline:none}.builder-task-name{font-weight:700!important}.builder-field-error{color:#b91c1c;font-size:10px}.builder-task-details{grid-column:3/-1;margin-top:2px}.builder-task-details summary{width:max-content;color:var(--primary-blue);cursor:pointer;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.builder-task-details-grid{background:#f1f5f9;border-radius:8px;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px;padding:14px;display:grid}.builder-detail-wide,.builder-task-id,.builder-row-actions{grid-column:1/-1}.builder-task-row textarea{resize:vertical;min-height:72px}.builder-predecessor-control,.builder-task-id,.builder-row-actions,.builder-critical-toggle{align-items:center;gap:8px;display:flex}.builder-predecessor-control input{flex:1}.builder-predecessor-control .btn,.builder-task-id button,.builder-row-actions button{color:#334155;cursor:pointer;min-height:32px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:6px 9px;font-size:12px;font-weight:700}.builder-critical-toggle input{width:auto;min-height:0}.builder-task-id{color:#64748b;font-size:11px}.builder-row-actions{justify-content:flex-end}.builder-row-actions .is-danger{color:#b91c1c;border-color:#fecaca}@media (max-width:1050px){.builder-completion-layout{grid-template-columns:1fr}.builder-task-row{grid-template-columns:22px 18px minmax(220px,1.5fr) repeat(3,minmax(120px,1fr))}.builder-task-field:nth-of-type(n+4){grid-column:auto}.builder-task-details{grid-column:3/-1}.milestone-row,.milestone-header{grid-template-columns:minmax(140px,.7fr) minmax(260px,1.4fr)}.milestone-header span:last-child{display:none}.milestone-stats{grid-column:2;justify-content:flex-start}}@media (max-width:720px){.project-dashboard-grid{grid-template-columns:1fr}.project-snapshot-card,.project-overview-grid>.card:first-child,.project-overview-grid>.card:last-child,.project-weather-area{grid-area:auto/1}.weather-featured{grid-template-columns:1fr auto}.weather-featured-temp,.weather-featured-stat{grid-column:auto}.weather-featured-stat{border-left:0;padding-left:0}.weather-forecast-grid{display:flex;overflow-x:auto}.weather-forecast-day{min-width:135px}.builder-phase-progress-row{grid-template-columns:120px 1fr 38px}.builder-phase-progress-row small{display:none}.builder-task-row{grid-template-columns:24px 34px minmax(0,1fr) minmax(0,1fr);align-items:end;gap:10px 8px;padding:12px 10px}.builder-task-main,.builder-task-details{grid-column:3/-1}.builder-task-select{grid-area:1/1}.builder-drag-handle{color:#334155;background:#e7eef7;border:1px solid #cbd5e1;border-radius:7px;grid-area:1/2;place-items:center;width:34px;height:38px;font-size:19px;display:grid}.builder-task-main{grid-row:1}.builder-phase-field,.builder-progress-field,.builder-start-field{grid-column:3}.builder-status-field,.builder-duration-field,.builder-finish-field{grid-column:4}.builder-task-row input,.builder-task-row select{min-height:36px;padding:7px;font-size:13px}.builder-task-details{margin-top:0}.builder-task-details>summary{color:#334155;background:#e7eef7;border:1px solid #cbd5e1;border-radius:7px;place-items:center;width:36px;height:36px;font-size:16px;display:grid}.builder-task-details-grid{grid-template-columns:1fr;gap:11px;margin-left:-58px;margin-right:-2px;padding:11px}.builder-predecessor-control{align-items:stretch}.builder-predecessor-control .btn,.builder-task-id button,.builder-row-actions button{justify-content:center;width:36px;min-width:36px;min-height:36px;padding:0;font-size:17px}.builder-task-id{flex-wrap:wrap}.builder-task-id>span{text-overflow:ellipsis;white-space:nowrap;width:100%;overflow:hidden}.builder-row-actions{justify-content:flex-start}.builder-action-label{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.schedule-builder-workspace .builder-icon-button{width:40px;min-width:40px;padding-left:0;padding-right:0;font-size:17px}.schedule-builder-workspace .builder-icon-button>span[aria-hidden=true]{line-height:1}.builder-phase-group>summary{gap:8px;padding:11px 10px}.builder-phase-summary-progress{grid-template-columns:54px 34px}.builder-task-list{gap:8px;padding:7px}.milestone-row{grid-template-columns:1fr;gap:12px}.milestone-stats{grid-column:1}.milestone-header{display:none}}@media (max-width:760px){.schedule-workspace .btn,.schedule-builder-workspace .btn{min-height:40px}.schedule-data-card{padding:14px}}.projects-empty-state{text-align:center;background:#fff;flex-direction:column;justify-content:center;align-items:center;min-height:420px;padding:48px 24px;display:flex}.projects-empty-icon{width:54px;height:54px;color:var(--primary-blue);background:#eaf3ff;border:1px solid #c8dcf3;border-radius:50%;place-items:center;margin-bottom:18px;font-size:30px;font-weight:500;display:grid}.projects-empty-kicker,.project-create-kicker{color:var(--primary-blue);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:800}.projects-empty-state h2{color:var(--navy);margin:7px 0 8px;font-size:28px}.projects-empty-state p{max-width:540px;color:var(--muted-gray);margin:0 0 22px;line-height:1.55}.project-create-layout{grid-template-columns:minmax(240px,.72fr) minmax(0,1.35fr);align-items:start;gap:22px;display:grid}.project-create-intro{padding:30px 22px}.project-create-intro h2{color:var(--navy);margin:8px 0 12px;font-size:30px;line-height:1.15}.project-create-intro>p{color:var(--muted-gray);margin:0;line-height:1.6}.project-create-intro ol{counter-reset:project-step;gap:18px;margin:28px 0 0;padding:0;list-style:none;display:grid}.project-create-intro li{counter-increment:project-step;gap:3px;padding-left:42px;display:grid;position:relative}.project-create-intro li:before{content:counter(project-step);width:28px;height:28px;color:var(--primary-blue);background:#fff;border:1px solid #c8d4e2;border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid;position:absolute;top:0;left:0}.project-create-intro li strong{color:var(--navy)}.project-create-intro li span{color:var(--muted-gray);font-size:13px;line-height:1.45}.project-create-card{background:#fff;padding:26px}.project-create-card-header{border-bottom:1px solid var(--border-soft);justify-content:space-between;gap:20px;padding-bottom:20px;display:flex}.project-create-card-header h2{color:var(--navy);margin:0 0 6px}.project-create-card-header p{max-width:560px;color:var(--muted-gray);margin:0;font-size:13px;line-height:1.45}.project-create-cancel{color:var(--muted-gray);font-size:13px;font-weight:700}.project-create-form{grid-template-columns:minmax(0,1fr) 100px 130px;gap:18px 14px;padding-top:22px;display:grid}.project-form-field{gap:7px;display:grid}.project-form-wide{grid-column:1/-1}.project-form-field label{color:#334155;font-size:13px;font-weight:700}.project-form-field input{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:7px;padding:10px 12px}.project-form-field input:focus{border-color:var(--primary-blue);outline:3px solid #062b571a}.project-create-error{color:#991b1b;background:#fff1f2;border:1px solid #fecdd3;border-radius:7px;grid-column:1/-1;padding:10px 12px;font-size:13px}.project-create-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.project-create-actions .btn{min-width:0;min-height:42px;padding:10px 16px;font-size:14px}@media (max-width:820px){.project-create-layout{grid-template-columns:1fr}.project-create-intro{padding:12px 4px}}@media (max-width:560px){.project-create-form{grid-template-columns:1fr 1fr}.project-form-city{grid-column:1/-1}.project-create-card{padding:18px}}.document-manager-select{box-sizing:border-box;inline-size:100%;text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;max-width:100%;display:block;overflow:hidden}.document-manager-select option{white-space:normal;overflow-wrap:anywhere;max-width:100%}@media (max-width:640px){.document-manager-select{inline-size:100%;width:100%;min-width:0;max-width:min(100%,100vw - 40px);font-size:16px}}@media (max-width:700px){html,body,#__next,.app-shell{max-width:100%;overflow-x:hidden}.app-topbar .nav-inner{box-sizing:border-box;flex-direction:column;align-items:stretch;gap:10px;width:100%;max-width:100%;padding-left:16px;padding-right:16px}.app-topbar .brand{width:100%}.app-topbar .brand-link{max-width:100%;display:inline-flex}.app-topbar .brand-logo{max-width:min(260px,100%);height:auto}.app-subnav{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;max-width:100%;padding-bottom:0;display:grid;overflow:visible}.app-subnav a,.app-subnav button,.app-subnav .disabled{box-sizing:border-box;white-space:normal;text-align:center;justify-content:center;width:100%;min-width:0}.app-content{box-sizing:border-box;width:100%;max-width:100%}.document-upload-grid{grid-template-columns:minmax(0,1fr)!important}.document-upload-grid label,.document-upload-grid input[type=file],.document-upload-grid select{box-sizing:border-box;width:100%;min-width:0;max-width:100%;display:block}.document-table-wrap{width:100%;max-width:100%;overflow-x:visible!important}.document-table,.document-table tbody,.document-table tr,.document-table td{box-sizing:border-box;width:100%;max-width:100%;display:block}.document-table thead{display:none}.document-table tr{border-bottom:1px solid #e4e7ec;padding:14px 0}.document-table tr:last-child{border-bottom:0}.document-table td{overflow-wrap:anywhere;word-break:break-word;white-space:normal;border:0!important;padding:5px 0!important}.document-table td:first-child{font-size:1rem;padding-bottom:9px!important}.document-table td:nth-child(2):before{content:"Category: ";font-weight:700}.document-table td:nth-child(3):before{content:"Uploaded: ";font-weight:700}.document-table td:nth-child(4):before{content:"Size: ";font-weight:700}.document-table td:nth-child(5){padding-top:10px!important}}
