.customer-app{--copper:#b97850;--line:#363635;--paper:#eeeae2;--bg:#101010;background:#101010;color:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:15px;min-height:100svh;color-scheme:dark}
.customer-app *{box-sizing:border-box}.customer-app a{color:inherit;text-decoration:none}.customer-app h1,.customer-app h2,.customer-app h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.025em;line-height:1.15}.customer-app h1{font-size:36px;margin:22px 0}.customer-app h2{font-size:24px;margin:0 0 12px}.customer-app h3{font-size:22px;margin:0 0 5px}.customer-app p{line-height:1.5}.customer-app svg{width:25px;height:25px;flex:none}.customer-app .muted,.customer-app .project-card p{color:#9b9b98}.customer-app .text-link{color:#d59a72}.customer-app .panel,.customer-app .app-card{border:1px solid var(--line);background:rgba(18,18,18,.87);border-radius:9px;padding:15px;box-shadow:none}.customer-app .panel{margin-bottom:16px}.customer-app button,.customer-app .button{background:#a76946;color:#fff;border-radius:5px;border:1px solid #ad764f;font-family:inherit;min-height:44px}.customer-app .ghost{background:transparent}.customer-app input,.customer-app textarea,.customer-app select{background:#191919;border:1px solid #4a4845;border-radius:6px;color:#f4eee5;font-size:16px;min-height:44px}.customer-app label{color:#c7c1b9}.customer-app .notice{position:relative;z-index:2;background:#2c2923;color:#f4eee5;border:1px solid #956345}.customer-app .notice.error{border-color:#d56a60}.customer-app .form-grid{gap:16px}.customer-app .date-chip,.customer-app .eyebrow{display:none}.customer-app .badge{background:#25201c;border:1px solid #6b4b36;color:#e4bc98}.customer-app .calendar-nav h2{font-size:24px}.customer-app .event{color:#e6c4aa;background:#34281f}.customer-app .day{background:#171717;border-color:#333}.customer-app table{color:#ddd}.customer-app th{color:#b2a79d;background:#202020}.customer-app .section-head{margin-bottom:10px}
.customer-shell{position:relative;max-width:720px;margin:auto;padding:0 13px 105px}.customer-main{padding:0;min-width:0}.customer-header{height:110px;padding:24px 10px 0;display:flex;align-items:flex-start;justify-content:space-between;position:relative;z-index:1}.customer-logo{display:inline-flex;flex-direction:column;color:#f1eee7;text-align:center}.customer-logo strong{font-family:'Times New Roman',serif;font-stretch:condensed;font-size:34px;line-height:1.05;font-weight:400;letter-spacing:6px;transform:scaleX(.85);transform-origin:left center}.customer-logo span{font-size:12px;letter-spacing:7px;text-align:left;color:#c17b50;margin-top:4px}.bell{position:relative;display:grid;place-items:center;min-width:44px;min-height:44px}.bell svg{width:26px;height:26px}.bell.has-notice:after{content:'';position:absolute;background:#b97850;width:8px;height:8px;border-radius:50%;right:7px;top:3px}.app-hero-image{position:absolute;top:0;left:0;width:100%;height:380px;object-fit:cover;object-position:57% top;opacity:.68;mask-image:linear-gradient(#000 70%,transparent);pointer-events:none}.customer-hero{height:245px;padding:79px 10px 20px;position:relative}.customer-hero h1{font-size:clamp(37px,9.6vw,64px);line-height:1;letter-spacing:-2px;margin:0 0 18px;text-shadow:0 2px 12px #000}.copper-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:#a66a48;color:#fff!important;border:1px solid #ad7854;border-radius:5px;padding:9px 15px;min-height:44px;font-family:Georgia,serif;font-size:20px}.copper-button svg{width:21px;height:21px}.outline-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;border:1px solid #aa754f;border-radius:5px;font-size:13px;white-space:nowrap}.next-appointment{margin:0 0 17px!important;padding:10px 12px 12px!important}.next-appointment h2{font-size:22px;padding-bottom:10px;margin:0;border-bottom:1px solid #343434}.appointment-row{display:flex;gap:17px;align-items:center;padding-top:0;min-height:70px}.date-tile{width:59px;min-width:59px;height:60px;border:1px solid #454543;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:0;background:linear-gradient(130deg,#191919,#212120)}.date-tile strong{font-family:Georgia,serif;font-size:32px;font-weight:400;line-height:1}.date-tile span{font-size:12px;letter-spacing:1px;margin-top:2px}.appointment-copy{flex:1;min-width:0}.appointment-copy h3{font-size:19px;overflow-wrap:anywhere}.appointment-copy p{color:#969694;font-size:13px;margin:0}.appointment-row .outline-button{padding:7px 18px;min-height:34px;font-size:12px}.app-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:17px 6px 8px}.app-section-heading h2{font-size:24px;margin:0}.app-section-heading a{color:#c68c62;font-size:13px;white-space:nowrap}.project-card{display:flex;align-items:center;gap:16px;padding:10px!important;min-height:89px}.project-card img,.project-placeholder{width:122px;height:70px;object-fit:cover;border-radius:7px;flex:none;border:1px solid #383836}.project-placeholder{display:grid;place-items:center;background:#211f1b;color:#ae805b}.project-placeholder svg{height:34px;width:34px}.project-card h3{font-size:19px}.project-card p{font-size:12px;margin:3px 0}.copper-dot{display:inline-block;width:8px;height:8px;background:#e29b60;border-radius:50%;margin-right:8px}.chevron{margin-left:auto;font-size:29px}.design-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.design-card{position:relative;border-radius:7px;background:#e7dcc8;overflow:hidden;aspect-ratio:1/1.07;border:1px solid #77756c;color:#25231f}.design-card>a{display:block;height:100%}.design-card img{display:block;width:100%;height:100%;object-fit:cover}.design-caption{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:5px 11px;background:linear-gradient(transparent,rgba(235,223,201,.9));font-size:12px;pointer-events:none}.design-caption form{display:block;pointer-events:auto}.favorite{background:transparent!important;border:0!important;color:#272521!important;padding:8px!important;min-height:44px}.favorite svg{height:21px;width:21px}.favorite.selected svg{fill:#b97850;stroke:#6a4028}.customer-bottom{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:720px;display:flex;justify-content:space-around;padding:10px 6px calc(12px + env(safe-area-inset-bottom));background:rgba(17,17,17,.97);border-top:1px solid #363635;z-index:20;backdrop-filter:blur(18px)}.customer-bottom a{display:flex;align-items:center;flex-direction:column;gap:5px;min-height:46px;min-width:56px;font-size:11px;color:#c7c7c5}.customer-bottom svg{width:24px;height:24px}.customer-bottom .active{color:#d08b5d}.design-detail{width:100%;max-height:65vh;object-fit:contain;background:#ded3c1;border-radius:8px;margin:15px 0}.project-detail{max-width:100%;max-height:350px;object-fit:contain;border-radius:6px}.cost-row{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #333;padding:12px 0}.cost-row:last-of-type{margin-bottom:16px}.app-quicklinks{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.studio-reply{border-left:2px solid #ba8057;padding:10px 14px;background:#221e19}.notice-card{display:block;margin:12px 0}.customer-main>.app-card{margin-bottom:14px}.customer-main .table-wrap{max-width:100%;overflow:auto}.customer-main .page-heading h1{font-size:32px}.customer-main .two-col{grid-template-columns:1fr}.customer-main .original-scroll{max-width:100%;color-scheme:light}.customer-main .original-sheet input{min-height:0;color:#111}.customer-app .signature-pad{background:white}.customer-app .profile-links{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.customer-app .install-note{color:#a9a199;font-size:13px}
.customer-login{position:relative;max-width:440px;margin:auto;padding:32px 22px 40px}.customer-login>h1{font-size:48px;line-height:1.05;margin:90px 0 35px}.customer-login .app-card{backdrop-filter:blur(12px);padding:22px}.customer-login h2{font-size:26px}.customer-login .form-grid{grid-template-columns:1fr}.customer-login .forgot{display:block;margin-top:18px;color:#c4916c}.login-hint{color:#c0b7ac;text-align:center;font-size:13px}.login-screen .app-hero-image{height:75vh;opacity:.5}.login-screen .customer-logo strong{font-size:40px}.customer-app .original-sheet .of{color:#111}
@media(min-width:700px){.customer-shell{max-width:1060px;padding:0 34px 120px}.customer-header{height:145px;padding-top:38px}.customer-logo strong{font-size:46px}.customer-logo span{font-size:15px;letter-spacing:10px}.customer-hero{height:360px;padding-top:90px}.customer-hero h1{font-size:74px}.app-hero-image{height:580px}.next-appointment{padding:22px!important}.next-appointment h2{font-size:29px}.appointment-row{padding-top:15px}.date-tile{width:76px;height:78px}.date-tile strong{font-size:42px}.appointment-copy h3{font-size:28px}.appointment-copy p{font-size:16px}.app-section-heading{margin-top:26px}.app-section-heading h2{font-size:30px}.project-card{min-height:130px;padding:14px!important}.project-card img,.project-placeholder{width:170px;height:100px}.project-card h3{font-size:28px}.project-card p{font-size:16px}.design-grid{gap:20px}.design-caption{font-size:17px;padding:12px 22px}.customer-bottom{max-width:1060px;padding-top:16px}.customer-bottom a{font-size:14px}.customer-bottom svg{height:28px;width:28px}.customer-main .two-col{grid-template-columns:1fr 1fr}}
@media(max-width:370px){.appointment-row{gap:8px}.appointment-copy h3{font-size:16px}.appointment-copy p{font-size:11px}.appointment-row .outline-button{padding:7px}.project-card{gap:10px}.project-card img,.project-placeholder{width:92px}.customer-hero h1{font-size:35px}.customer-bottom a{font-size:10px}}
@media print{.customer-header,.customer-bottom,.app-hero-image{display:none!important}.customer-shell{padding:0;max-width:none}.customer-app{background:white;color:black}}
.customer-app [hidden]{display:none!important}.customer-app .original-sheet input[type=radio]{min-height:0}.customer-app .original-sheet .of{font-family:Arial,sans-serif}.customer-app .original-sheet .f-signature{max-width:none}
.login-logo{display:block;width:190px;height:190px;margin:0 auto 18px}.login-logo img{display:block;width:100%;height:100%;object-fit:contain}.customer-login:has(.login-logo)>h1{font-size:43px;margin:20px 0 28px;text-align:center}.customer-login:has(.login-logo){padding-top:max(18px,env(safe-area-inset-top))}
@media(min-width:700px){.login-logo{width:220px;height:220px}.customer-login:has(.login-logo){max-width:480px}.customer-login:has(.login-logo)>h1{font-size:48px}}
/* The same app shell applies to all roles; administration lives in the centre tab. */
.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-tile{position:relative;display:block;min-height:152px;padding:18px!important;margin:0!important}.admin-tile h2{font-size:22px;margin:12px 0 8px}.admin-tile p{font-size:13px;color:#a49d94;margin:0;padding-right:9px}.admin-tile-icon{color:#cd966f}.tile-arrow{position:absolute;right:14px;top:16px;color:#b97850}.admin-back{display:block;color:#cd966f!important;font-size:14px;margin:0 0 20px}.design-open{pointer-events:auto;padding:8px;display:block}.customer-app .stat{background:#191816;border-color:#37332e}.customer-app .stat>span,.customer-app .stat small{color:#aba399}.customer-app .big-link{background:#1d1b18;border-color:#39322d}.customer-app .big-link small{color:#a9a29a}.customer-app .timeline-item,.customer-app .empty{border-color:#37332e;background:#181715}.customer-app .finance-note{background:#211e19;color:#c7bcae;border-color:#66513c}.customer-app .page-heading{display:block}.customer-app .page-heading h1{font-size:34px;letter-spacing:-1px}.customer-app .page-heading p{color:#aaa39b}.customer-app .chart{max-width:100%;overflow:auto}.customer-app .actions{flex-wrap:wrap}.customer-app .is-interior{background:#101010}.customer-app .customer-main{overflow-wrap:anywhere}.customer-app .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.customer-app .stat strong{font-size:28px}.customer-app .detail-body{padding:16px 0}.customer-app .customer-main .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-app .customer-main .form-grid>label{min-width:0}.customer-app .customer-main .form-grid input{max-width:100%}
@media(max-width:540px){.customer-app .customer-main .form-grid{grid-template-columns:1fr}.customer-app .customer-main .form-grid .wide{grid-column:1}.customer-app .stat strong{font-size:24px}.admin-tile h2{font-size:20px}.customer-app .table-wrap{font-size:14px}.customer-app .table-wrap th,.customer-app .table-wrap td{padding:10px}.customer-header{height:109px}.customer-hero{height:241px;padding-top:81px}.next-appointment h2{font-size:21px;padding-bottom:8px}.appointment-row{min-height:59px;gap:14px}.date-tile{width:57px;min-width:57px;height:56px}.next-appointment{padding:9px 12px 10px!important}.app-section-heading{margin:16px 6px 8px}.project-card{min-height:87px}.app-hero-image{height:367px;object-position:57% top}.customer-bottom{padding-top:10px}.customer-shell{padding-bottom:100px}}
@media(min-width:900px){.admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.customer-app .stats{grid-template-columns:repeat(4,minmax(0,1fr))}.customer-app.is-interior .customer-shell{max-width:1280px}.customer-app.is-interior .customer-bottom{max-width:1280px}}
.project-tabs{display:flex;gap:8px;overflow:auto;padding:0 0 10px;margin:0 0 18px;scrollbar-width:thin}.project-tabs a{flex:none;padding:10px 14px;border:1px solid #484037;border-radius:7px;font-size:13px;min-height:44px}.project-tabs .active{background:#a66a48;color:white;border-color:#a66a48}.payment-overview{background:linear-gradient(135deg,#2c231c,#171614)!important}.payment-total{display:block;font:48px/1.2 Georgia,serif;color:#e7c5aa;margin:14px 0 20px}.payment-entry{padding:17px 0;border-bottom:1px solid #37322c}.payment-entry:first-child{padding-top:0}.payment-entry:last-child{border-bottom:0;padding-bottom:0}.payment-entry-main{display:flex;align-items:center;gap:11px}.payment-entry-main>div{flex:1;min-width:0}.payment-entry-main h3{font-size:21px}.payment-entry-main p{margin:0;font-size:13px;color:#aaa199}.payment-entry-main small{font-size:11px;color:#aaa199}.payment-entry-main>strong{font-size:15px;white-space:nowrap}.payment-symbol{display:grid;place-items:center;color:#dba87a;background:#292119;border:1px solid #554231;border-radius:50%;height:36px;width:36px;flex:none}.payment-reference{font-size:12px;color:#968c81;margin:8px 0 0 47px;overflow-wrap:anywhere}
/* Mouse/trackpad desktop: classic workspace. Touch tablets retain the app layout. */
.desktop-sidebar,.desktop-topbar,.desktop-dashboard{display:none}
@media(min-width:1100px) and (hover:hover) and (pointer:fine){
 .responsive-workspace{--workspace-sidebar:248px;background:#111418;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}
 .desktop-sidebar{display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;width:var(--workspace-sidebar);padding:20px 16px;background:#171a1e;border-right:1px solid #333940;overflow:auto;z-index:40}
 .desktop-brand{display:flex;align-items:center;flex-direction:column;margin-bottom:18px}.desktop-brand img{width:124px;height:124px;object-fit:contain}.desktop-brand>span{color:#bfa48d;font-size:10px;letter-spacing:3px;margin-top:5px}
 .desktop-sidebar nav{display:grid;gap:3px}.desktop-sidebar nav a{display:flex;gap:12px;align-items:center;padding:10px 13px;border-radius:8px;font-size:14px;line-height:1.35;color:#b3b7bd}.desktop-sidebar nav a>span{width:23px;text-align:center;font-size:18px;color:#bfa48d}.desktop-sidebar nav a:hover,.desktop-sidebar nav a.active{background:#2b2926;color:#f1ddd0}.desktop-sidebar nav a.active{box-shadow:inset 3px 0 #ba8057}
 .desktop-user{margin-top:auto;padding:22px 12px 4px;border-top:1px solid #30353c;display:flex;flex-direction:column}.desktop-user strong{font-size:14px;font-weight:500}.desktop-user small{color:#939aa4;font-size:12px}
 .desktop-topbar{display:flex;align-items:center;justify-content:space-between;position:fixed;left:var(--workspace-sidebar);right:0;top:0;height:72px;padding:0 32px;background:#171a1e;border-bottom:1px solid #333940;z-index:30}.desktop-topbar>span{color:#b0b4bc;font-size:14px}.desktop-topbar>div{display:flex;align-items:center;gap:20px}.desktop-topbar form{display:block;margin:0}.desktop-topbar a{color:#dca47d;font-size:14px}
 .responsive-workspace .customer-header,.responsive-workspace .customer-bottom,.staff-workspace.is-home>.app-hero-image,.staff-workspace .mobile-home{display:none!important}
 .responsive-workspace .customer-shell,.responsive-workspace.is-interior .customer-shell{width:auto;max-width:none;margin:0 0 0 var(--workspace-sidebar);padding:100px 36px 40px;min-height:100vh}
 .responsive-workspace .customer-main{width:100%;max-width:1800px;margin:auto}.responsive-workspace .customer-main>.app-section-heading{margin-top:0}.responsive-workspace .admin-back{display:none}
 .responsive-workspace .admin-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.responsive-workspace .admin-tile{min-height:160px;padding:23px!important;background:#1b1f25}.responsive-workspace .admin-tile h2{font:600 20px/1.3 system-ui,sans-serif;letter-spacing:0}.responsive-workspace .admin-tile p{font-size:14px;color:#aeb3bc;line-height:1.5}
 .staff-workspace .desktop-dashboard{display:block}.staff-workspace .customer-main h1{font:600 34px/1.2 system-ui,sans-serif;letter-spacing:-1px;margin:0 0 14px}.staff-workspace .customer-main h2{font:600 21px/1.3 system-ui,sans-serif;letter-spacing:0}.staff-workspace .customer-main h3{font:600 18px/1.35 system-ui,sans-serif;letter-spacing:0}
 .responsive-workspace .panel,.responsive-workspace .app-card,.responsive-workspace .stat{background:#1b1f25;border-color:#333940;border-radius:12px;padding:24px}.responsive-workspace .stat strong{font-size:32px}.responsive-workspace .customer-main .two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.responsive-workspace .customer-main .form-grid{gap:20px}.responsive-workspace .customer-main .form-grid label{font-size:14px}.responsive-workspace input,.responsive-workspace select,.responsive-workspace textarea{background:#15191e;border-color:#3b424c}.responsive-workspace .customer-main .table-wrap{font-size:15px}.responsive-workspace th,.responsive-workspace td{padding:14px 16px}.responsive-workspace .page-heading{margin-bottom:26px}.responsive-workspace .stats{margin-bottom:24px;gap:18px}
 .client-workspace.is-home>.app-hero-image{left:var(--workspace-sidebar);width:calc(100% - var(--workspace-sidebar));top:72px;height:510px}.client-workspace.is-home .customer-main{max-width:1180px}.client-workspace .customer-hero{height:380px;padding-top:135px}.client-workspace .design-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-workspace.is-home .design-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1100px) and (max-width:1399px) and (hover:hover) and (pointer:fine){.responsive-workspace{--workspace-sidebar:222px}.responsive-workspace .customer-shell,.responsive-workspace.is-interior .customer-shell{padding:94px 24px 32px}.responsive-workspace .admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.responsive-workspace .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{.desktop-sidebar,.desktop-topbar{display:none!important}.responsive-workspace .customer-shell{margin:0!important;padding:0!important}.desktop-dashboard{display:block}.staff-workspace .mobile-home{display:none}}
