:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17202a;background:#f4f6f8;line-height:1.5}*{box-sizing:border-box}body{margin:0}a{color:inherit}.installer-body{min-height:100vh;background:linear-gradient(180deg,#f8fafb 0,#f2f5f7 100%)}.installer-shell{width:min(920px,calc(100% - 32px));margin:0 auto;padding:34px 0 48px}.installer-shell.narrow{width:min(720px,calc(100% - 32px));padding-top:72px}.installer-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.installer-header>div{display:flex;align-items:center;gap:12px}.installer-header strong,.installer-header span{display:block}.installer-header strong{font-size:17px}.installer-header>div>div span{color:#75808b;font-size:13px}.brand-mark{display:grid!important;place-items:center;width:42px;height:42px;border-radius:13px;background:#171f29;color:#fff;font-weight:900;font-size:19px}.version-pill,.badge,.mock{border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;letter-spacing:.06em;background:#e9edf0;color:#5c6670}.progress-card{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;background:#fff;border:1px solid #e2e7eb;border-radius:18px;padding:18px;margin-bottom:18px;box-shadow:0 10px 30px rgba(20,31,44,.04)}.progress-step{display:flex;flex-direction:column;align-items:center;gap:7px;color:#9aa3ad;text-align:center}.progress-step>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eef1f3;font-size:12px;font-weight:800}.progress-step small{font-size:11px;font-weight:700}.progress-step.current{color:#17202a}.progress-step.current>span{background:#17202a;color:#fff}.progress-step.done{color:#237146}.progress-step.done>span{background:#e5f6ec;color:#237146}.installer-card{background:#fff;border:1px solid #e2e7eb;border-radius:20px;padding:32px;box-shadow:0 14px 38px rgba(20,31,44,.05)}.installer-card h1{font-size:clamp(30px,5vw,46px);line-height:1.05;letter-spacing:-.04em;margin:8px 0 14px}.installer-card>p{color:#697581;max-width:720px;font-size:16px;line-height:1.7}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.16em;color:#6f7984}.feature-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:26px 0}.feature-list>div{padding:16px;border:1px solid #e8ebee;border-radius:14px;background:#fafbfc}.feature-list strong,.feature-list span{display:block}.feature-list span{margin-top:5px;color:#737d87;font-size:13px}.actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:28px}.actions.split{justify-content:space-between}.button-group{display:flex;gap:10px}.button{appearance:none;border:1px solid transparent;border-radius:11px;padding:11px 16px;text-decoration:none;font:inherit;font-weight:800;font-size:14px;cursor:pointer}.button.primary{background:#17202a;color:#fff}.button.primary:hover{background:#26323f}.button.ghost{background:#fff;border-color:#dce2e7;color:#26313c}.notice{padding:14px 16px;border-radius:13px;margin-bottom:16px;font-size:14px}.notice.error{background:#fff0f0;color:#8d2929;border:1px solid #f3d1d1}.notice.success{background:#eaf8ef;color:#216740;border:1px solid #cfead9}.notice.info{background:#eef5fb;color:#315b79;border:1px solid #d8e7f2;margin-top:22px}.requirement-list,.review-list{border:1px solid #e6eaed;border-radius:14px;overflow:hidden;margin-top:24px}.requirement-list>div,.review-list>div{display:flex;justify-content:space-between;gap:20px;padding:13px 15px;border-bottom:1px solid #edf0f2}.requirement-list>div:last-child,.review-list>div:last-child{border-bottom:0}.requirement-list span,.review-list span{color:#68737e}.requirement-list strong,.review-list strong{text-align:right}.pass{color:#207244}.fail{color:#a72f2f}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:26px}.form-grid label{display:block}.form-grid label.wide,.form-grid .wide{grid-column:1/-1}.form-grid label>span{display:block;font-size:13px;font-weight:800;margin-bottom:7px}.form-grid input,.form-grid select{width:100%;border:1px solid #d8dee3;border-radius:10px;background:#fff;padding:12px 13px;font:inherit;color:#17202a;outline:none}.form-grid input:focus,.form-grid select:focus{border-color:#8492a0;box-shadow:0 0 0 3px rgba(80,98,116,.08)}.form-grid small{display:block;color:#7b858f;margin-top:6px;font-size:12px}.success-card{text-align:center}.success-mark{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;margin:0 auto 22px;background:#e5f6ec;color:#227047;font-size:28px;font-weight:900}.success-card p{margin-left:auto;margin-right:auto}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:26px;text-align:left}.summary-grid>div{background:#f8fafb;border:1px solid #e6eaed;border-radius:12px;padding:14px}.summary-grid span,.summary-grid strong{display:block}.summary-grid span{color:#7a858f;font-size:12px}.summary-grid strong{margin-top:4px;font-size:14px;overflow-wrap:anywhere}.installer-footer{text-align:center;color:#89939d;font-size:12px;margin-top:18px}@media(max-width:720px){.installer-shell{padding-top:22px}.progress-card{grid-template-columns:repeat(3,1fr)}.feature-list{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid label.wide,.form-grid .wide{grid-column:auto}.actions.split{align-items:stretch}.button-group{display:grid}.summary-grid{grid-template-columns:1fr}.review-list>div{display:block}.review-list strong{display:block;text-align:left;margin-top:4px;overflow-wrap:anywhere}}@media(max-width:480px){.installer-card{padding:23px}.actions.split{display:grid}.actions.split>.button,.actions.split>.button-group{width:100%}.button{text-align:center}.progress-step small{font-size:10px}}

/* Milestone 2 — Authentication + application shell */
.auth-body{min-height:100vh;background:#0e0f10;color:#f5f7f9;overflow-x:hidden}.auth-stage{position:relative;min-height:100vh;display:grid;place-items:center;padding:34px 20px 58px;background:radial-gradient(circle at 50% -10%,rgba(127,105,66,.16),transparent 38%),linear-gradient(180deg,#121313 0%,#0c0d0e 100%);isolation:isolate}.auth-ambient{position:fixed;border-radius:50%;filter:blur(80px);opacity:.15;pointer-events:none;z-index:-1}.auth-ambient-one{width:340px;height:340px;background:#8b774f;top:-110px;left:16%}.auth-ambient-two{width:260px;height:260px;background:#ffffff;bottom:-160px;right:18%;opacity:.05}.auth-card-wrap{position:relative;width:min(680px,100%);padding:28px 0}.auth-layer{position:absolute;left:50%;transform:translateX(-50%);border:1px solid rgba(255,255,255,.11);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));border-radius:28px;pointer-events:none}.auth-layer-back{width:92%;height:96%;top:8px;opacity:.55}.auth-layer-mid{width:86%;height:98%;top:20px;opacity:.72}.auth-card{position:relative;z-index:2;width:80%;margin:0 auto;padding:54px 58px 42px;border:1px solid rgba(255,255,255,.12);border-radius:26px;background:linear-gradient(180deg,rgba(31,32,33,.97),rgba(18,19,20,.98));box-shadow:0 30px 90px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.025)}.auth-brand{display:flex;align-items:center;justify-content:center;gap:11px;margin-bottom:38px}.platinum-symbol{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.5);border-radius:12px;color:#fff;font-weight:900;font-size:21px;letter-spacing:-.04em}.platinum-symbol.small{width:35px;height:35px;border-color:#2b3440;background:#141a21;font-size:17px}.platinum-word{font-size:19px;font-weight:900;letter-spacing:.16em}.auth-heading{text-align:center;margin-bottom:30px}.auth-kicker{display:block;margin-bottom:12px;font-size:10px;font-weight:800;letter-spacing:.19em;color:#8d9297}.auth-heading h1{margin:0;font-size:clamp(31px,4vw,42px);letter-spacing:-.045em;line-height:1.05;font-weight:650}.auth-heading p{margin:12px 0 0;color:#a7adb3;font-size:14px}.auth-error{margin-bottom:18px;padding:12px 14px;border:1px solid rgba(222,92,92,.28);border-radius:12px;background:rgba(161,46,46,.13);color:#f0b3b3;font-size:13px}.auth-form{display:grid;gap:14px}.auth-field{display:block}.auth-field>span{display:block;margin:0 0 8px 2px;color:#d8dce0;font-size:12px;font-weight:700}.auth-field input{width:100%;height:56px;padding:0 17px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:#252627;color:#f7f8f9;font:inherit;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.auth-field input::placeholder{color:#757a7f}.auth-field input:focus{border-color:rgba(255,255,255,.3);box-shadow:0 0 0 4px rgba(255,255,255,.04);background:#292a2b}.password-control{position:relative}.password-control input{padding-right:52px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:9px;background:transparent;color:#8e9499;cursor:pointer}.password-toggle:hover,.password-toggle.is-visible{background:rgba(255,255,255,.055);color:#fff}.password-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7}.auth-submit{margin-top:9px;height:54px;border:1px solid #fff;border-radius:13px;background:#f5f5f3;color:#111;font:inherit;font-weight:850;cursor:pointer;transition:transform .16s ease,background .16s ease}.auth-submit:hover{background:#fff;transform:translateY(-1px)}.auth-submit:active{transform:translateY(0)}.auth-help{text-align:center;margin:22px 0 0;color:#8f959a;font-size:12px}.auth-security{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.07);color:#737a80;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.auth-security span{width:6px;height:6px;border-radius:50%;background:#71b487;box-shadow:0 0 0 4px rgba(113,180,135,.08)}.auth-footer{position:absolute;bottom:18px;color:#595f64;font-size:11px}

.app-body{min-height:100vh;background:#f5f6f7;color:#161b22}.app-layout{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}.app-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:22px 16px 16px;background:#0f1114;color:#f4f5f6;border-right:1px solid #1c2025;overflow:hidden}.app-logo{display:flex;align-items:center;gap:11px;padding:3px 7px 23px;text-decoration:none;font-size:14px;font-weight:900;letter-spacing:.12em}.app-nav{display:grid;gap:5px;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#2d333a transparent;padding-right:2px}.app-nav>a,.nav-disabled{min-height:44px;display:flex;align-items:center;gap:11px;padding:0 12px;border-radius:11px;color:#9ba2aa;text-decoration:none;font-size:13px;font-weight:650}.app-nav>a svg,.nav-disabled svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.65}.app-nav>a.active{background:#f3f4f4;color:#11161b}.app-nav>a.active svg{stroke:#11161b}.nav-section{padding:22px 12px 8px;color:#555c64;font-size:9px;font-weight:900;letter-spacing:.18em}.nav-disabled{opacity:.7}.nav-disabled em{margin-left:auto;padding:3px 6px;border:1px solid #2a2f35;border-radius:6px;color:#555d65;font-size:8px;font-style:normal;text-transform:uppercase;letter-spacing:.09em}.sidebar-user{margin-top:auto;display:flex;align-items:center;gap:10px;padding:12px 8px 2px;border-top:1px solid #20242a}.user-avatar{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:#242a31;font-size:12px;font-weight:900}.sidebar-user div{min-width:0}.sidebar-user strong,.sidebar-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user strong{font-size:11px}.sidebar-user small{margin-top:3px;color:#68717a;font-size:9px}.app-main{min-width:0}.app-topbar{height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 30px;background:rgba(255,255,255,.85);border-bottom:1px solid #e5e8eb;backdrop-filter:blur(14px)}.app-topbar>div{min-width:0}.topbar-eyebrow{display:block;color:#8a929a;font-size:9px;font-weight:900;letter-spacing:.16em}.app-topbar strong{display:block;margin-top:3px;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-button{border:1px solid #dce0e4;border-radius:10px;background:#fff;padding:9px 13px;color:#252b31;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.logout-button:hover{background:#f4f5f6}.app-content{padding:34px 30px 50px}.welcome-panel{position:relative;overflow:hidden;padding:34px;border-radius:22px;background:#12161b;color:#f7f8f9;box-shadow:0 16px 40px rgba(16,23,31,.08)}.welcome-panel:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-120px;top:-160px;background:radial-gradient(circle,rgba(255,255,255,.1),transparent 67%)}.panel-kicker{position:relative;z-index:1;color:#777f88;font-size:9px;font-weight:900;letter-spacing:.19em}.welcome-panel h1{position:relative;z-index:1;margin:10px 0 10px;font-size:clamp(28px,4vw,42px);line-height:1.08;letter-spacing:-.04em}.welcome-panel p{position:relative;z-index:1;max-width:760px;margin:0;color:#9ca4ac;font-size:14px;line-height:1.7}.foundation-status{position:relative;z-index:1;display:flex;align-items:center;gap:9px;width:max-content;max-width:100%;margin-top:26px;padding:10px 12px;border:1px solid #2a3037;border-radius:11px;background:#181d23}.foundation-status strong{font-size:11px}.foundation-status small{color:#6e7780;font-size:10px}.status-dot{width:7px;height:7px;border-radius:50%;background:#64ad7d;box-shadow:0 0 0 5px rgba(100,173,125,.09)}.shell-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.shell-card{padding:21px;border:1px solid #e1e5e8;border-radius:16px;background:#fff}.shell-card>span{display:block;color:#8c949c;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.11em}.shell-card strong{display:block;margin-top:8px;font-size:16px;letter-spacing:-.02em}.shell-card p{margin:8px 0 0;color:#7a838c;font-size:12px;line-height:1.55}

@media(max-width:900px){.auth-card{width:88%;padding-left:44px;padding-right:44px}.app-layout{grid-template-columns:78px minmax(0,1fr)}.app-logo>span:last-child,.app-nav span:not(.nav-section),.nav-disabled em,.sidebar-user div{display:none}.app-logo{justify-content:center;padding-left:0;padding-right:0}.app-nav>a,.nav-disabled{justify-content:center;padding:0}.nav-section{font-size:0;text-align:center;padding-left:0;padding-right:0}.nav-section:after{content:"•••";font-size:10px;letter-spacing:.08em;color:#3e454c}.sidebar-user{justify-content:center;padding-left:0;padding-right:0}.shell-grid{grid-template-columns:1fr 1fr}.shell-card:last-child{grid-column:1/-1}}
@media(max-width:640px){.auth-stage{padding:20px 14px 50px}.auth-card-wrap{padding:0}.auth-layer{display:none}.auth-card{width:100%;padding:38px 24px 32px;border-radius:20px}.auth-brand{margin-bottom:30px}.auth-heading{margin-bottom:25px}.auth-field input{height:54px}.app-layout{display:block}.app-sidebar{position:relative;height:auto;min-height:64px;display:flex;flex-direction:row;align-items:center;padding:11px 15px}.app-logo{padding:0;margin-right:auto}.app-logo>span:last-child{display:inline}.app-nav{display:none}.sidebar-user{margin:0;padding:0;border:0}.user-avatar{width:36px;height:36px}.app-topbar{height:auto;min-height:67px;padding:13px 17px}.app-content{padding:20px 16px 36px}.welcome-panel{padding:26px 22px}.foundation-status{align-items:flex-start;flex-wrap:wrap}.shell-grid{grid-template-columns:1fr}.shell-card:last-child{grid-column:auto}}

/* v0.3.1 — Master Owner updater */
.link-button{text-decoration:none}.update-content{max-width:1040px}.update-hero{position:relative;overflow:hidden;padding:32px;border-radius:22px;background:#12161b;color:#f7f8f9}.update-hero h1{margin:10px 0 9px;font-size:34px;letter-spacing:-.035em}.update-hero p{max-width:760px;margin:0;color:#9ba3ab;line-height:1.65;font-size:14px}.version-current{display:flex;align-items:center;gap:12px;width:max-content;margin-top:24px;padding:10px 13px;border:1px solid #2a3037;border-radius:11px;background:#191e24}.version-current span{color:#838b94;font-size:11px}.version-current strong{font-size:12px}.update-notice{margin-top:16px;padding:13px 15px;border-radius:12px;font-size:13px;font-weight:700}.update-notice.success{border:1px solid #cce8d6;background:#effaf3;color:#267247}.update-notice.error{border:1px solid #efcccc;background:#fff2f2;color:#9e3535}.update-card{margin-top:16px;padding:25px;border:1px solid #e1e5e8;border-radius:17px;background:#fff}.update-card h2{margin:0;font-size:18px}.update-card>p{margin:8px 0 0;color:#77808a;font-size:13px;line-height:1.6}.update-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:20px}.update-drop{display:block;padding:14px 15px;border:1px dashed #cfd5da;border-radius:13px;background:#fafbfb}.update-drop span,.update-drop small{display:block}.update-drop span{margin-bottom:9px;font-size:12px;font-weight:800}.update-drop input{display:block;width:100%;font-size:12px}.update-drop small{margin-top:7px;color:#929aa2;font-size:10px}.update-submit{width:auto;min-width:205px;margin:0;padding:0 20px}.empty-state{padding:18px 0 4px;color:#8a929a!important}.update-history{margin-top:15px;border-top:1px solid #edf0f2}.update-history>div{display:flex;justify-content:space-between;gap:20px;padding:13px 2px;border-bottom:1px solid #edf0f2}.update-history span{font-size:12px;font-weight:800}.update-history small{color:#8b939b;font-size:11px}.simple-message{max-width:520px;margin:15vh auto;padding:30px;border:1px solid #e1e5e8;border-radius:18px;background:#fff}.simple-message h1{margin:0 0 10px}.simple-message p{color:#737d86;line-height:1.6}.simple-message a{color:#111;font-weight:800}@media(max-width:700px){.update-form{grid-template-columns:1fr}.update-submit{width:100%}}

/* v0.4.0 — Holding + Companies */
.companies-content{max-width:1240px}.companies-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:31px 32px;border-radius:22px;background:#12161b;color:#f7f8f9}.companies-hero>div:first-child{max-width:720px}.companies-hero h1{margin:10px 0 9px;font-size:36px;letter-spacing:-.04em}.companies-hero p{margin:0;color:#9ba3ab;font-size:13px;line-height:1.7}.company-stats{display:flex;gap:8px}.company-stats>div{min-width:90px;padding:13px 14px;border:1px solid #2b3137;border-radius:12px;background:#181d22}.company-stats strong,.company-stats span{display:block}.company-stats strong{font-size:15px}.company-stats span{margin-top:4px;color:#767f87;font-size:9px;text-transform:uppercase;letter-spacing:.09em}.holding-card,.company-list-panel,.company-form-panel{margin-top:16px;border:1px solid #e1e5e8;border-radius:17px;background:#fff}.holding-card{padding:22px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-heading h2,.company-form-panel h2{margin:4px 0 0;font-size:18px;letter-spacing:-.02em}.section-eyebrow{display:block;color:#929aa2;font-size:9px;font-weight:900;letter-spacing:.14em}.status-chip{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:9px;font-weight:850;white-space:nowrap}.status-chip.active{background:#eaf7ee;color:#247044}.status-chip.inactive{background:#f0f1f2;color:#737b83}.settings-form{display:grid;grid-template-columns:minmax(220px,1.5fr) 120px minmax(200px,1fr) auto;gap:11px;align-items:end;margin-top:18px}.settings-form label,.company-form label{display:block}.settings-form label>span,.company-form label>span{display:block;margin:0 0 6px;color:#6f7881;font-size:10px;font-weight:800}.settings-form input,.company-form input{width:100%;height:43px;padding:0 12px;border:1px solid #dce1e5;border-radius:10px;background:#fafbfb;color:#171c22;font:inherit;font-size:12px;outline:none}.settings-form input:focus,.company-form input:focus{border-color:#9ba3aa;box-shadow:0 0 0 3px rgba(18,22,27,.05);background:#fff}.secondary-button,.text-button,.icon-action{font:inherit;cursor:pointer}.secondary-button{height:43px;padding:0 15px;border:1px solid #1b2026;border-radius:10px;background:#171c22;color:#fff;font-size:11px;font-weight:800}.text-button{border:0;background:transparent;color:#20262d;font-size:10px;font-weight:850}.company-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,.75fr);gap:16px;align-items:start}.company-list-panel{padding:22px}.company-list{display:grid;gap:9px;margin-top:16px}.company-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px;border:1px solid #e9ecef;border-radius:13px;background:#fbfcfc}.company-row.inactive{opacity:.7;background:#f5f6f6}.company-monogram{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#171c22;color:#fff;font-size:13px;font-weight:900}.company-main{min-width:0}.company-main>div{display:flex;align-items:center;gap:8px;min-width:0}.company-main strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-code{padding:3px 6px;border-radius:6px;background:#eef1f3;color:#7c858d;font-size:8px;font-weight:850;letter-spacing:.06em}.company-main p{margin:4px 0 0;color:#838c94;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-actions{display:flex;align-items:center;gap:5px}.company-actions form{margin:0}.icon-action{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 9px;border:1px solid #dde2e5;border-radius:8px;background:#fff;color:#555e66;text-decoration:none;font-size:9px;font-weight:800}.icon-action:hover{background:#f2f4f5;color:#171c22}.company-form-panel{position:sticky;top:90px;padding:22px}.company-form-panel>p{margin:8px 0 0;color:#838b94;font-size:11px;line-height:1.55}.company-form{display:grid;gap:11px;margin-top:18px}.form-pair{display:grid;grid-template-columns:110px minmax(0,1fr);gap:9px}.company-save{height:45px;margin-top:5px}.cancel-edit{display:block;text-align:center;color:#7b848c;font-size:10px;font-weight:750;text-decoration:none}.company-empty{padding:44px 20px 30px;text-align:center}.company-empty-icon{display:grid;place-items:center;width:46px;height:46px;margin:0 auto 13px;border-radius:13px;background:#171c22;color:#fff;font-weight:900}.company-empty h3{margin:0;font-size:15px}.company-empty p{max-width:430px;margin:7px auto 0;color:#8a929a;font-size:11px;line-height:1.6}

/* 13-inch / lower-height login fit: keep the same design, reduce only vertical pressure. */
@media(max-height:850px) and (min-width:641px){.auth-stage{padding:16px 20px 28px;overflow:hidden}.auth-card-wrap{padding:12px 0}.auth-card{padding-top:30px;padding-bottom:24px}.auth-brand{margin-bottom:22px}.auth-heading{margin-bottom:20px}.auth-kicker{margin-bottom:7px}.auth-heading p{margin-top:8px}.auth-form{gap:10px}.auth-field>span{margin-bottom:5px}.auth-field input{height:48px}.auth-submit{height:48px;margin-top:5px}.auth-help{margin-top:14px}.auth-security{margin-top:16px;padding-top:14px}.auth-footer{bottom:7px}}
@media(max-width:1050px){.company-workspace{grid-template-columns:1fr}.company-form-panel{position:static}.settings-form{grid-template-columns:1.4fr 100px 1fr}.settings-form .secondary-button{grid-column:1/-1;width:max-content}.companies-hero{align-items:flex-start;flex-direction:column}.company-stats{width:100%}.company-stats>div{flex:1}}
@media(max-width:760px){.settings-form{grid-template-columns:1fr}.settings-form .secondary-button{width:100%}.company-row{grid-template-columns:40px minmax(0,1fr) auto}.company-actions{grid-column:2/-1}.company-stats{flex-wrap:wrap}.company-stats>div{min-width:100px}.form-pair{grid-template-columns:1fr}}

/* v0.5.0 — Users, roles & shared navigation */
.users-content{max-width:1240px}.users-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:31px 32px;border-radius:22px;background:#12161b;color:#f7f8f9}.users-hero>div:first-child{max-width:740px}.users-hero h1{margin:10px 0 9px;font-size:36px;letter-spacing:-.04em}.users-hero p{margin:0;color:#9ba3ab;font-size:13px;line-height:1.7}.user-workspace{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.8fr);gap:16px;align-items:start}.user-list-panel,.user-form-panel,.permissions-panel{margin-top:16px;border:1px solid #e1e5e8;border-radius:17px;background:#fff}.user-list-panel,.permissions-panel{padding:22px}.user-form-panel{position:sticky;top:90px;padding:22px}.user-form-panel h2{margin:4px 0 0;font-size:18px}.user-form-panel>p{margin:8px 0 0;color:#838b94;font-size:11px;line-height:1.55}.user-list{display:grid;gap:9px;margin-top:16px}.user-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px;border:1px solid #e9ecef;border-radius:13px;background:#fbfcfc}.user-row.inactive{opacity:.65;background:#f5f6f6}.user-monogram{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#171c22;color:#fff;font-size:13px;font-weight:900}.user-main{min-width:0}.user-main>div{display:flex;align-items:center;gap:8px;min-width:0}.user-main strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-main p{margin:4px 0 0;color:#838c94;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.user-tags span{padding:4px 6px;border-radius:6px;background:#eef1f3;color:#727b84;font-size:8px;font-weight:800}.form-label{display:block;margin:0 0 7px;color:#6f7881;font-size:10px;font-weight:800}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.check-tile{display:flex!important;align-items:center;gap:8px;padding:9px;border:1px solid #e1e5e8;border-radius:10px;background:#fafbfb;cursor:pointer}.check-tile input{width:auto!important;height:auto!important;margin:0}.check-tile>span{min-width:0}.check-tile strong,.check-tile small{display:block}.check-tile strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.check-tile small{margin-top:2px;color:#939aa1;font-size:8px}.check-tile.disabled{opacity:.55}.companies-check-grid{max-height:210px;overflow:auto;padding-right:3px}.inline-empty{margin:0;color:#8b939b;font-size:10px}.permissions-panel{margin-bottom:30px}.permission-legend{color:#8a929a;font-size:10px;font-weight:700}.permissions-intro{margin:8px 0 0;color:#838b94;font-size:11px;line-height:1.6}.role-permission-list{display:grid;gap:8px;margin-top:16px}.role-permission-card{border:1px solid #e6e9ec;border-radius:12px;background:#fbfcfc}.role-permission-card summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;cursor:pointer;list-style:none}.role-permission-card summary::-webkit-details-marker{display:none}.role-permission-card summary strong,.role-permission-card summary small{display:block}.role-permission-card summary strong{font-size:11px}.role-permission-card summary small{margin-top:3px;color:#949ba2;font-size:8px}.role-permission-card summary>span{color:#737c84;font-size:9px;font-weight:800}.role-permission-card[open] summary{border-bottom:1px solid #e6e9ec;background:#fff}.permission-table-wrap{overflow-x:auto;padding:12px}.permission-table{width:100%;min-width:760px;border-collapse:collapse}.permission-table th,.permission-table td{padding:8px;border-bottom:1px solid #edf0f2;text-align:center;font-size:9px}.permission-table th:first-child,.permission-table td:first-child{text-align:left;font-weight:800}.permission-table th{color:#7d868e;text-transform:uppercase;letter-spacing:.04em}.permission-table input{width:14px;height:14px}.permission-actions{display:flex;justify-content:flex-end;padding:0 12px 12px}.permission-actions .secondary-button{height:38px}.app-nav>a.active{background:#f4f4f3;color:#171c22}.app-nav>a.active svg{stroke:#171c22}
@media(max-width:1100px){.user-workspace{grid-template-columns:1fr}.user-form-panel{position:static}.users-hero{align-items:flex-start;flex-direction:column}.users-hero .company-stats{width:100%}}
@media(max-width:760px){.user-row{grid-template-columns:40px minmax(0,1fr) auto}.user-row .company-actions{grid-column:2/-1}.check-grid{grid-template-columns:1fr}.permission-legend{display:none}}

/* Milestone 5 — company context and subtle login-layer fade */
.auth-layer{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 48%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 48%,transparent 100%)}
.topbar-context{display:flex;align-items:center;min-width:0}
.context-switcher{margin:0}
.context-switcher label,.context-static{display:block;min-width:220px}
.context-switcher label>span,.context-static>span{display:block;margin-bottom:3px;color:#8a929a;font-size:9px;font-weight:900;letter-spacing:.16em}
.context-switcher select{width:min(320px,42vw);max-width:100%;border:0;background:transparent;color:#171c22;font:inherit;font-size:14px;font-weight:800;outline:none;cursor:pointer;padding:0 24px 0 0}
.context-static strong{display:block;margin-top:0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.context-empty{color:#8a929a;font-size:12px;font-weight:700}
@media(max-width:640px){.context-switcher label,.context-static{min-width:0}.context-switcher select{width:min(210px,52vw);font-size:12px}.context-static strong{font-size:12px}}

/* Milestone 6 — Master Dashboard Foundation */
.master-dashboard{max-width:1440px;margin:0 auto}.master-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:32px 34px;border-radius:22px;background:#12161b;color:#f7f8f9;box-shadow:0 16px 40px rgba(16,23,31,.07)}.master-hero>div:first-child{max-width:820px}.master-hero h1{margin:10px 0 10px;font-size:clamp(30px,4vw,44px);line-height:1.05;letter-spacing:-.045em}.master-hero p{margin:0;color:#9ca4ac;font-size:13px;line-height:1.7}.master-scope-badge{min-width:220px;padding:15px 16px;border:1px solid #2b3138;border-radius:13px;background:#181d23}.master-scope-badge span,.master-scope-badge strong,.master-scope-badge small{display:block}.master-scope-badge span{color:#68717a;font-size:8px;font-weight:900;letter-spacing:.16em}.master-scope-badge strong{margin-top:7px;font-size:13px}.master-scope-badge small{margin-top:4px;color:#7c858e;font-size:9px}.master-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.master-kpi-card{min-width:0;padding:19px 20px;border:1px solid #e1e5e8;border-radius:15px;background:#fff}.master-kpi-head{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.master-kpi-head span{color:#707982;font-size:10px;font-weight:800}.master-kpi-head em{padding:4px 6px;border-radius:6px;background:#f1f3f4;color:#9199a0;font-size:7px;font-style:normal;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.master-kpi-value{display:block;margin-top:18px;font-size:29px;line-height:1;letter-spacing:-.04em}.master-kpi-card p{margin:9px 0 0;color:#9aa1a8;font-size:9px}.master-section{margin-top:16px;padding:22px;border:1px solid #e1e5e8;border-radius:17px;background:#fff}.master-section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.master-section-heading h2,.master-data-panel h2{margin:4px 0 0;font-size:18px;letter-spacing:-.025em}.performance-list{display:grid;gap:8px;margin-top:16px}.performance-row{display:grid;grid-template-columns:38px minmax(180px,1.5fr) repeat(3,minmax(120px,.8fr));gap:13px;align-items:center;padding:12px;border:1px solid #e9ecef;border-radius:12px;background:#fbfcfc}.performance-monogram{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#171c22;color:#fff;font-size:12px;font-weight:900}.performance-company,.performance-meta{min-width:0}.performance-company strong,.performance-company span,.performance-meta span,.performance-meta strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.performance-company strong{font-size:11px}.performance-company span,.performance-meta span{margin-top:3px;color:#9299a0;font-size:8px}.performance-meta strong{margin-top:4px;color:#4d555d;font-size:10px}.master-empty{margin-top:16px;padding:24px;border:1px dashed #d7dde1;border-radius:12px;background:#fafbfb;text-align:center}.master-empty strong,.master-empty span{display:block}.master-empty strong{font-size:12px}.master-empty span{margin-top:6px;color:#8b939a;font-size:10px}.master-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.master-data-panel{min-width:0;padding:21px;border:1px solid #e1e5e8;border-radius:16px;background:#fff}.master-data-panel p{margin:14px 0 0;color:#8a9299;font-size:10px;line-height:1.55}.master-chart-placeholder{height:105px;display:flex;align-items:flex-end;gap:8px;margin-top:18px;padding:12px 8px 4px;border-bottom:1px solid #e6eaed;background:linear-gradient(to bottom,rgba(246,247,248,.35),rgba(246,247,248,.85))}.master-chart-placeholder span{flex:1;min-width:5px;border-radius:5px 5px 2px 2px;background:#d9dee2}.master-chart-placeholder span:nth-child(1){height:34%}.master-chart-placeholder span:nth-child(2){height:51%}.master-chart-placeholder span:nth-child(3){height:43%}.master-chart-placeholder span:nth-child(4){height:68%}.master-chart-placeholder span:nth-child(5){height:58%}.master-chart-placeholder span:nth-child(6){height:76%}
@media(max-width:1100px){.master-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.master-panel-grid{grid-template-columns:1fr 1fr}.master-data-panel:last-child{grid-column:1/-1}.performance-row{grid-template-columns:38px minmax(160px,1.4fr) repeat(2,minmax(110px,.8fr))}.performance-row .performance-meta:last-child{grid-column:2/-1}.master-hero{align-items:flex-start;flex-direction:column}.master-scope-badge{width:100%;min-width:0}}
@media(max-width:700px){.master-kpi-grid,.master-panel-grid{grid-template-columns:1fr}.master-data-panel:last-child{grid-column:auto}.performance-row{grid-template-columns:38px minmax(0,1fr)}.performance-meta{grid-column:2}.master-hero{padding:26px 22px}.master-section{padding:18px}.master-scope-badge{padding:12px 13px}}

/* Milestone 7 — Zoho Books connection engine */
.zoho-content{display:grid;gap:20px}.zoho-hero{background:#11161c;color:#fff;border-radius:28px;padding:38px;display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.zoho-hero h1{font-size:clamp(32px,4vw,54px);margin:10px 0 8px;letter-spacing:-.045em}.zoho-hero p{max-width:760px;color:#aeb6bf;font-size:16px;line-height:1.65;margin:0}.zoho-stats{display:grid;grid-template-columns:repeat(3,110px);gap:10px}.zoho-stats>div{border:1px solid #2b333c;border-radius:16px;padding:16px;background:#171d23}.zoho-stats strong{display:block;font-size:22px}.zoho-stats span{display:block;margin-top:6px;color:#7f8994;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.zoho-company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.zoho-company-card{background:#fff;border:1px solid #e0e5e9;border-radius:22px;padding:22px;box-shadow:0 10px 28px rgba(20,28,36,.04)}.zoho-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.zoho-card-head>div{display:flex;align-items:center;gap:12px}.zoho-card-head strong{display:block;font-size:16px}.zoho-card-head span span,.zoho-card-head div>span{display:block}.zoho-card-head>div>div>span{font-size:12px;color:#84909b;margin-top:3px}.zoho-status{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:#eef1f3;color:#64707b}.zoho-status.connected,.zoho-status.success{background:#e6f6ec;color:#238050}.zoho-status.error,.zoho-status.failed{background:#fdebec;color:#b33b42}.zoho-status.disconnected{background:#f0f1f2;color:#727b84}.zoho-connection-meta{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:10px;margin-bottom:18px}.zoho-connection-meta>div{background:#f7f8f9;border:1px solid #e7eaed;border-radius:14px;padding:12px}.zoho-connection-meta span,.zoho-connection-meta small{display:block;color:#8b949d;font-size:10px}.zoho-connection-meta strong{display:block;margin:5px 0;font-size:12px;overflow-wrap:anywhere}.zoho-config-form{display:grid;gap:12px;border-top:1px solid #edf0f2;padding-top:18px}.zoho-config-form label{display:grid;gap:7px}.zoho-config-form label>span{font-size:11px;font-weight:700;color:#59636d}.zoho-config-form label em{font-style:normal;color:#9ba3aa;font-weight:500}.zoho-config-form input,.zoho-config-form select{width:100%;border:1px solid #dce1e5;border-radius:12px;background:#fbfcfc;padding:12px 13px;font:inherit;color:#151b21;outline:none}.zoho-config-form input:focus,.zoho-config-form select:focus{border-color:#8e98a2;box-shadow:0 0 0 3px rgba(17,22,28,.06)}.zoho-config-form .form-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.zoho-live-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.zoho-live-fields label:first-child{grid-column:1/-1}.zoho-sync-settings{display:flex;align-items:end;justify-content:space-between;gap:12px;background:#f7f8f9;border-radius:14px;padding:12px}.zoho-sync-settings .check-row{display:flex;align-items:center;gap:8px}.zoho-sync-settings .check-row input{width:auto}.zoho-save{width:100%;border-radius:12px}.zoho-card-actions{display:flex;gap:10px;margin-top:12px}.zoho-card-actions form{flex:1}.zoho-card-actions button{width:100%}.button.ghost-danger{background:transparent;border:1px solid #ecd7d9;color:#a83f47}.zoho-error-text{margin:12px 0 0;color:#a83f47;font-size:12px}.zoho-history{background:#fff;border:1px solid #e0e5e9;border-radius:22px;padding:24px}.zoho-history-list{display:grid;gap:9px}.zoho-history-row{display:grid;grid-template-columns:minmax(190px,1fr) auto minmax(260px,1.4fr);align-items:center;gap:14px;border:1px solid #edf0f2;border-radius:14px;padding:14px}.zoho-history-row>div:first-child strong,.zoho-history-row>div:first-child span{display:block}.zoho-history-row>div:first-child span{font-size:11px;color:#8a949e;margin-top:3px}.zoho-counts{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:7px}.zoho-counts span{background:#f4f6f7;border-radius:999px;padding:6px 9px;color:#6d7780;font-size:10px}.zoho-counts strong{color:#20262c}.zoho-architecture-note{background:#11161c;color:#fff;border-radius:22px;padding:26px;display:grid;grid-template-columns:minmax(240px,.7fr) 1.3fr;gap:28px;align-items:center}.zoho-architecture-note h2{margin:5px 0 0}.zoho-architecture-note p{margin:0;color:#aeb6bf;line-height:1.7}.app-nav a svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1100px){.zoho-company-grid{grid-template-columns:1fr}.zoho-hero{align-items:flex-start}.zoho-stats{grid-template-columns:repeat(3,90px)}.zoho-history-row{grid-template-columns:1fr auto}.zoho-counts{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:760px){.zoho-hero{padding:26px;display:grid}.zoho-stats{width:100%;grid-template-columns:repeat(3,1fr)}.zoho-connection-meta,.zoho-config-form .form-pair,.zoho-live-fields,.zoho-architecture-note{grid-template-columns:1fr}.zoho-live-fields label:first-child{grid-column:auto}.zoho-sync-settings{align-items:stretch;display:grid}.zoho-card-actions{flex-direction:column}}

/* Milestone 8 — Customers & contacts synchronization */
.customer-content{display:grid;gap:18px}.customer-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:34px 36px;border-radius:24px;background:#11161c;color:#fff}.customer-hero h1{margin:9px 0 8px;font-size:clamp(32px,4vw,50px);line-height:1.04;letter-spacing:-.045em}.customer-hero p{max-width:760px;margin:0;color:#aeb6bf;font-size:14px;line-height:1.65}.customer-stats{display:grid;grid-template-columns:repeat(3,104px);gap:9px}.customer-stats>div{padding:14px;border:1px solid #2a323a;border-radius:14px;background:#171d23}.customer-stats strong,.customer-stats span{display:block}.customer-stats strong{font-size:20px}.customer-stats span{margin-top:5px;color:#7f8994;font-size:9px;text-transform:uppercase;letter-spacing:.11em}.customer-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid #e1e5e8;border-radius:16px;background:#fff}.customer-search{display:flex;align-items:center;gap:8px;flex:1}.customer-search input{width:min(520px,100%);height:42px;border:1px solid #dce2e6;border-radius:11px;padding:0 13px;font:inherit;outline:none}.customer-search input:focus{border-color:#8f99a2;box-shadow:0 0 0 3px rgba(17,22,28,.05)}.customer-sync-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.customer-sync-grid article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;border:1px solid #e1e5e8;border-radius:15px;background:#fff}.customer-sync-grid article>div{display:flex;align-items:center;gap:11px;min-width:0}.customer-sync-grid article>div>div{min-width:0}.customer-sync-grid strong,.customer-sync-grid span{display:block}.customer-sync-grid article>div>div strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.customer-sync-grid article>div>div span{margin-top:3px;color:#8a939b;font-size:9px}.customer-table-card{padding:22px;border:1px solid #e1e5e8;border-radius:18px;background:#fff}.customer-count-label{color:#8a939b;font-size:10px}.customer-table-wrap{overflow:auto;margin-top:16px}.customer-table{width:100%;border-collapse:collapse;min-width:980px}.customer-table th{text-align:left;padding:10px 12px;border-bottom:1px solid #e6eaed;color:#899199;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.customer-table td{padding:13px 12px;border-bottom:1px solid #edf0f2;color:#4f5962;font-size:11px;vertical-align:middle}.customer-table tbody tr:last-child td{border-bottom:0}.customer-table td strong,.customer-table td span,.customer-table td small{display:block}.customer-table td>strong{color:#1f252b;font-size:11px}.customer-table td>span,.customer-table td>small{margin-top:3px;color:#9098a0;font-size:9px}.currency-pill{display:inline-flex!important;width:max-content;margin:0!important;padding:4px 7px;border-radius:999px;background:#eef1f3;color:#4d5862!important;font-weight:800}.zoho-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#2a3239!important;font-size:9px!important}
@media(max-width:1100px){.customer-sync-grid{grid-template-columns:1fr}.customer-hero{align-items:flex-start;flex-direction:column}.customer-stats{grid-template-columns:repeat(3,90px)}}
@media(max-width:700px){.customer-hero{padding:26px 22px}.customer-stats{width:100%;grid-template-columns:repeat(3,1fr)}.customer-tools,.customer-search{align-items:stretch;flex-direction:column}.customer-search input{width:100%}.customer-sync-grid article{align-items:stretch;flex-direction:column}.customer-sync-grid article form,.customer-sync-grid article .button{width:100%}.customer-sync-grid article .button{text-align:center}.customer-table-card{padding:18px}}

/* Milestone 10 — Estimates & quotations */
.quote-content{display:grid;gap:18px}.quote-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:34px 36px;border-radius:24px;background:#11161c;color:#fff}.quote-hero h1{margin:9px 0 8px;font-size:clamp(32px,4vw,50px);line-height:1.04;letter-spacing:-.045em}.quote-hero p{max-width:780px;margin:0;color:#aeb6bf;font-size:14px;line-height:1.65}.quote-stats{display:grid;grid-template-columns:repeat(3,104px);gap:9px}.quote-stats>div{padding:14px;border:1px solid #2a323a;border-radius:14px;background:#171d23}.quote-stats strong,.quote-stats span{display:block}.quote-stats strong{font-size:20px}.quote-stats span{margin-top:5px;color:#7f8994;font-size:9px;text-transform:uppercase;letter-spacing:.11em}.quote-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid #e1e5e8;border-radius:16px;background:#fff}.quote-search{display:flex;gap:8px;flex:1}.quote-search input{width:min(520px,100%);height:42px;border:1px solid #dce2e6;border-radius:11px;padding:0 13px;font:inherit}.quote-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(390px,.75fr);gap:18px;align-items:start}.quote-list-card,.quote-create-card,.quote-detail-card{background:#fff;border:1px solid #e1e5e8;border-radius:20px;padding:22px}.quote-list{display:grid;gap:10px;margin-top:16px}.quote-row{border:1px solid #e8ecef;border-radius:15px;padding:14px 15px}.quote-row-main,.quote-row-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.quote-row-main>div strong,.quote-row-main>div span{display:block}.quote-row-main>div span{margin-top:3px;color:#818b94;font-size:10px}.quote-row-meta{margin-top:12px;padding-top:11px;border-top:1px solid #eef1f3;color:#5f6972;font-size:10px}.quote-row-meta span small{display:block;color:#9aa2a9;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.quote-status{display:inline-flex;border-radius:999px;padding:6px 9px;background:#eef1f3;color:#59636c;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.quote-status.sent{background:#eef5fb;color:#376987}.quote-status.accepted{background:#e6f6ec;color:#23784b}.quote-status.declined{background:#fdebec;color:#ad3f46}.quote-status.converted{background:#ece8fb;color:#6551a3}.quote-create-card>h2{margin:5px 0}.quote-create-card>p{color:#7c8790;font-size:12px;line-height:1.55}.quote-company-picker,.quote-form{display:grid;gap:13px;margin-top:16px}.quote-company-picker label,.quote-form label{display:grid;gap:6px}.quote-company-picker span,.quote-form label>span{font-size:10px;font-weight:800;color:#5d6770}.quote-company-picker select,.quote-form select,.quote-form input,.quote-form textarea{width:100%;border:1px solid #dce2e6;border-radius:11px;background:#fbfcfc;padding:11px 12px;font:inherit;color:#1a2128}.quote-form textarea{resize:vertical}.quote-lines{display:grid;gap:9px;padding:12px;border-radius:14px;background:#f7f8f9}.quote-lines-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.quote-lines-head span{color:#8d969e;font-size:9px}.quote-line{display:grid;gap:9px;padding:11px;border:1px solid #e4e8eb;border-radius:12px;background:#fff}.quote-line-main{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(220px,1.1fr);gap:9px}.quote-line-fields{display:grid;grid-template-columns:minmax(90px,.55fr) minmax(150px,1fr) minmax(105px,.65fr) minmax(95px,.6fr);gap:9px}.quote-line-field{display:grid;gap:5px;min-width:0}.quote-line-field>span{font-size:8px!important;font-weight:850!important;letter-spacing:.04em;color:#7d8790!important;text-transform:uppercase}.quote-line select,.quote-line input{min-width:0;height:42px;padding:0 11px;font-size:11px}.quote-line-amount input{font-weight:800;background:#fff}.quote-create{width:100%}.quote-detail-card{display:grid;gap:18px}.quote-detail-card .section-heading p{margin:4px 0 0;color:#818b94;font-size:11px}.quote-detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.quote-detail-grid>div{padding:13px;border-radius:13px;background:#f7f8f9}.quote-detail-grid span,.quote-detail-grid strong{display:block}.quote-detail-grid span{color:#8b949c;font-size:9px;text-transform:uppercase}.quote-detail-grid strong{margin-top:5px;font-size:13px}.quote-detail-lines{display:grid;border:1px solid #e9edf0;border-radius:14px;overflow:hidden}.quote-detail-lines>div{display:grid;grid-template-columns:1fr auto auto;gap:14px;padding:11px 13px;border-bottom:1px solid #edf0f2;font-size:10px}.quote-detail-lines>div:last-child{border-bottom:0}.quote-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.zoho-map-chip{padding:8px 10px;border-radius:999px;background:#e6f6ec;color:#23784b;font-size:10px;font-weight:800}
@media(max-width:1150px){.quote-workspace{grid-template-columns:1fr}.quote-create-card{order:-1}.quote-hero{align-items:flex-start;flex-direction:column}.quote-stats{grid-template-columns:repeat(3,90px)}}
@media(max-width:760px){.quote-hero{padding:26px 22px}.quote-stats,.quote-detail-grid{width:100%;grid-template-columns:repeat(2,1fr)}.quote-toolbar,.quote-search{align-items:stretch;flex-direction:column}.quote-search input{width:100%}.quote-line-main,.quote-line-fields{grid-template-columns:1fr 1fr}.quote-line select,.quote-line input{font-size:12px}.quote-row-meta{align-items:flex-start;flex-wrap:wrap}.quote-detail-lines>div{grid-template-columns:1fr}.quote-actions form,.quote-actions .button{width:100%}}

@media(max-width:1280px){.quote-workspace{grid-template-columns:1fr}.quote-create-card{order:-1}.quote-line-main{grid-template-columns:minmax(180px,.85fr) minmax(260px,1.15fr)}.quote-line-fields{grid-template-columns:minmax(100px,.55fr) minmax(180px,1fr) minmax(120px,.7fr) minmax(110px,.65fr)}}

/* v0.11.2 quotation document workspace */
.quote-document-workspace{display:grid;grid-template-columns:1fr;gap:18px;min-width:0}.quote-register-card{padding:20px 22px}.quote-register-card .company-empty.compact{min-height:150px}.quote-document-card{padding:24px;min-width:0}.quote-document-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid #e9edf0}.quote-document-heading h2{margin:5px 0 4px;font-size:24px}.quote-document-heading p{margin:0;color:#7b858e;font-size:12px}.compact-picker{margin:0;min-width:270px}.quote-document-form{margin-top:20px}.quote-document-meta{display:grid;grid-template-columns:minmax(240px,1.6fr) minmax(110px,.55fr) minmax(150px,.75fr) minmax(150px,.75fr);gap:12px}.quote-document-form label{display:grid;gap:6px}.quote-document-form label>span{font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.045em;color:#707a83}.quote-document-form select,.quote-document-form input,.quote-document-form textarea{width:100%;min-width:0;border:1px solid #dce2e6;border-radius:12px;background:#fff;padding:11px 12px;font:inherit;color:#1a2128;box-sizing:border-box}.quote-document-form input,.quote-document-form select{height:44px}.quote-table{margin-top:18px;padding:0;border:1px solid #e2e7ea;border-radius:16px;background:#fff;overflow:hidden}.quote-table .quote-lines-head{padding:15px 16px;background:#f7f8f9;border-bottom:1px solid #e6eaed}.quote-table .quote-lines-head>div strong,.quote-table .quote-lines-head>div span{display:block}.quote-table .quote-lines-head>div span{margin-top:3px}.button.small{padding:8px 11px;font-size:10px}.quote-line-list{display:grid}.quote-line-grid{position:relative;display:grid;grid-template-columns:minmax(170px,1.45fr) minmax(190px,1.65fr) minmax(72px,.5fr) minmax(125px,.85fr) minmax(90px,.6fr) minmax(80px,.55fr) 34px;gap:10px;align-items:end;padding:14px 16px;border:0;border-bottom:1px solid #edf0f2;border-radius:0;background:#fff;min-width:0}.quote-line-grid:last-child{border-bottom:0}.quote-line-grid .quote-line-field{min-width:0}.quote-line-grid select,.quote-line-grid input{height:42px;padding:0 10px;font-size:12px;background:#fbfcfc}.quote-line-grid input:focus,.quote-line-grid select:focus{outline:0;border-color:#8b949c;box-shadow:0 0 0 3px rgba(17,22,28,.07);background:#fff}.quote-line-amount input{font-size:13px;font-weight:800;color:#11161c}.quote-remove-line{width:34px;height:42px;border:1px solid #e1e5e8;border-radius:10px;background:#fff;color:#7d8790;font-size:20px;line-height:1;cursor:pointer}.quote-remove-line:hover{background:#fff1f1;color:#9d3238;border-color:#f1cfd1}.quote-document-footer{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;margin-top:18px}.quote-notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quote-notes-grid textarea{min-height:118px;resize:vertical}.quote-total-card{align-self:start;border:1px solid #e1e5e8;border-radius:15px;background:#f8f9fa;padding:14px}.quote-total-card>div{display:flex;justify-content:space-between;gap:16px;padding:9px 4px;color:#69737c;font-size:11px}.quote-total-card>div strong{color:#1a2128}.quote-total-card .grand{margin-top:7px;padding:14px 4px 5px;border-top:1px solid #dfe4e7;color:#11161c;font-weight:800}.quote-total-card .grand strong{font-size:18px}.quote-total-card em{font-style:normal;font-size:10px;color:#67717a;margin-right:3px}.quote-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:18px;padding-top:18px;border-top:1px solid #edf0f2}.quote-form-help{margin-right:auto;color:#8a949d;font-size:10px}.quote-form-actions .quote-create{width:auto;min-width:220px;padding-inline:22px}.quote-line.is-empty .quote-remove-line{opacity:.45}
@media(max-width:1180px){.quote-document-meta{grid-template-columns:1fr 1fr}.quote-line-grid{grid-template-columns:1.2fr 1.4fr .55fr .8fr}.quote-line-product,.quote-line-description{grid-column:span 2}.quote-line-tax{grid-column:auto}.quote-remove-line{position:absolute;right:12px;top:12px}.quote-document-footer{grid-template-columns:1fr}.quote-total-card{width:100%;max-width:420px;margin-left:auto}}
@media(max-width:760px){.quote-document-heading{align-items:stretch;flex-direction:column}.compact-picker{min-width:0}.quote-document-meta,.quote-notes-grid{grid-template-columns:1fr}.quote-line-grid{grid-template-columns:1fr 1fr;padding:14px}.quote-line-product,.quote-line-description{grid-column:1/-1}.quote-remove-line{top:12px;right:12px}.quote-form-actions{align-items:stretch;flex-direction:column}.quote-form-actions .quote-create{width:100%}.quote-form-help{margin:0}.quote-total-card{max-width:none}}

/* Milestone 11 — Sales Orders */
.sales-order-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:18px;align-items:start}.sales-order-convert-card{background:#fff;border:1px solid #e1e5e8;border-radius:20px;padding:22px;display:grid;gap:16px}.sales-order-convert-card h2{margin:5px 0}.sales-order-convert-card p{margin:0;color:#7c8790;font-size:12px;line-height:1.55}.sales-order-ready-list{display:grid;gap:9px}.sales-order-ready-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px;border:1px solid #e5e9ec;border-radius:13px;background:#fbfcfc}.sales-order-ready-list article div strong,.sales-order-ready-list article div span{display:block}.sales-order-ready-list article div span{margin-top:4px;color:#7b858e;font-size:10px}.quote-status.confirmed{background:#eef5fb;color:#376987}.quote-status.fulfilled{background:#e6f6ec;color:#23784b}.quote-status.cancelled{background:#fdebec;color:#ad3f46}@media(max-width:1180px){.sales-order-grid{grid-template-columns:1fr}.sales-order-convert-card{order:-1}}@media(max-width:760px){.sales-order-ready-list article{align-items:stretch;flex-direction:column}.sales-order-ready-list article form,.sales-order-ready-list article .button{width:100%}}

/* Milestone 12 — invoice/payment foundation */
.payment-entry-card,
.payment-history-card {
  margin-top: 24px;
  padding: 24px;
  border: 1px solid #e2e7eb;
  border-radius: 22px;
  background: #f9fafb;
}
.payment-entry-card h3,
.payment-history-card h3 { margin: 6px 0 4px; font-size: 22px; }
.payment-entry-card p { margin: 0; color: #77818c; }
.payment-entry-form {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  align-items: end;
}
.payment-entry-form label { display: grid; gap: 7px; min-width: 0; }
.payment-entry-form label span { font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; color: #6f7a84; }
.payment-entry-form input,
.payment-entry-form select {
  width: 100%; min-width: 0; box-sizing: border-box;
  border: 1px solid #d9dfe4; border-radius: 14px; background: #fff;
  padding: 13px 14px; font: inherit; color: #151b22;
}
.payment-entry-form .button { min-height: 48px; }
@media (max-width: 1180px) {
  .payment-entry-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .payment-entry-form { grid-template-columns: 1fr; }
  .payment-entry-card, .payment-history-card { padding: 18px; border-radius: 18px; }
}

/* v0.15.1 — sidebar viewport fix: keep identity visible while long navigation scrolls */
@media (min-width: 761px){
  .app-sidebar{overflow:hidden;min-height:0}
  .app-nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;align-content:start;padding-right:3px;padding-bottom:14px;scrollbar-width:thin;scrollbar-color:#2b3036 transparent}
  .app-nav::-webkit-scrollbar{width:5px}
  .app-nav::-webkit-scrollbar-track{background:transparent}
  .app-nav::-webkit-scrollbar-thumb{background:#2b3036;border-radius:999px}
  .sidebar-user{flex:0 0 auto;margin-top:0;background:#0f1114;position:relative;z-index:2}
}

.stock-inline{display:block;margin-top:5px;font-size:12px;color:#66717d;font-weight:600}.quote-detail-lines>div>span:first-child{min-width:0}

/* v0.20.0 — Jobs & Work Orders */
.jobs-content{display:grid;gap:18px}.jobs-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.65fr);gap:18px;align-items:start}.jobs-register,.job-create,.job-detail{background:#fff;border:1px solid #e1e5e8;border-radius:20px;padding:22px}.jobs-register h2,.job-create h2{margin:5px 0 16px}.job-row{display:flex;justify-content:space-between;gap:16px;padding:15px 4px;border-bottom:1px solid #edf0f2;text-decoration:none;color:#151b22}.job-row>div{display:grid;gap:5px}.job-row span,.job-row small{color:#77818c}.job-row .quote-status{justify-self:end}.job-form{display:grid;gap:12px}.job-form label{display:grid;gap:6px}.job-form label>span{font-size:10px;font-weight:800;color:#68737d;text-transform:uppercase}.job-form input,.job-form select,.job-form textarea{width:100%;box-sizing:border-box;border:1px solid #dce2e6;border-radius:12px;background:#fff;padding:11px 12px;font:inherit}.job-form textarea{min-height:90px}.job-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.job-detail{display:grid;gap:18px}.job-detail .section-heading p{margin:5px 0;color:#7c8790}.job-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.job-meta>div{padding:14px;border-radius:14px;background:#f7f8f9}.job-meta span,.job-meta strong{display:block}.job-meta span{font-size:9px;color:#818b94;text-transform:uppercase}.job-meta strong{margin-top:5px}.job-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.task-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #edf0f2}.task-row button{border:0;background:#f0f3f5;border-radius:50%;width:30px;height:30px;cursor:pointer}.task-row .done{text-decoration:line-through;color:#87919a}.job-actions{display:flex;gap:8px;flex-wrap:wrap}.history-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #edf0f2}.history-row span{color:#7c8790;font-size:10px}.quote-status.new{background:#f0f2f4;color:#59636d}.quote-status.assigned{background:#eef5fb;color:#376987}.quote-status.in_progress{background:#fff4d8;color:#8b6514}.quote-status.waiting{background:#f4effb;color:#70539a}.quote-status.completed,.quote-status.closed{background:#e6f6ec;color:#23784b}@media(max-width:1180px){.jobs-grid,.job-detail-grid{grid-template-columns:1fr}.job-create{order:-1}}@media(max-width:760px){.job-pair,.job-meta{grid-template-columns:1fr}.job-row,.history-row{flex-direction:column}.job-row .quote-status{justify-self:start}}


/* v0.21.0 — Field Operations mobile workspace */
.field-body{margin:0;background:#f2f4f5;color:#151b22;font-family:inherit;min-height:100vh}.field-shell{min-height:100vh}.field-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px max(18px,calc((100vw - 1120px)/2));background:#0f1114;border-bottom:1px solid #242a30;color:#fff}.field-brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none}.field-brand>div{display:grid;gap:1px}.field-brand strong{font-size:14px;letter-spacing:.14em}.field-brand span:last-child{font-size:9px;letter-spacing:.14em;color:#8d959d}.field-user{display:flex;align-items:center;gap:12px;font-size:11px;color:#b6bdc4}.field-back-link{display:inline-flex;align-items:center;gap:6px;border:1px solid #343b42;border-radius:10px;background:#171b20;color:#fff;padding:8px 11px;text-decoration:none;font-weight:800;white-space:nowrap}.field-back-link:hover{background:#20262c;border-color:#4a535c}.field-user form{margin:0}.field-user button{border:1px solid #343b42;border-radius:10px;background:#171b20;color:#fff;padding:8px 11px;font:inherit;cursor:pointer}.field-main{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:22px 0 42px;display:grid;gap:16px}.field-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:24px;border-radius:24px;background:#11161c;color:#fff}.field-hero h1{margin:7px 0 5px;font-size:34px}.field-hero p{margin:0;max-width:610px;color:#aeb7c0;font-size:12px;line-height:1.55}.field-stats{display:grid;grid-template-columns:repeat(3,minmax(82px,1fr));gap:8px}.field-stats>div{min-width:82px;padding:13px;border:1px solid #30373e;border-radius:14px;background:#171c22}.field-stats strong,.field-stats span{display:block}.field-stats strong{font-size:20px}.field-stats span{margin-top:4px;font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:#8f99a2}.field-search{background:#fff;border:1px solid #dfe4e8;border-radius:16px;padding:11px}.field-search form{display:grid;grid-template-columns:1fr auto;gap:9px}.field-search input{min-width:0;border:0;background:#f5f6f7;border-radius:11px;padding:12px 14px;font:inherit}.field-search button{border:0;border-radius:11px;background:#171d24;color:#fff;padding:0 18px;font-weight:800;cursor:pointer}.field-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:16px;align-items:start}.field-queue,.field-detail{background:#fff;border:1px solid #dfe4e8;border-radius:20px;padding:18px}.field-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:12px}.field-section-head span{display:block;font-size:8px;font-weight:850;letter-spacing:.13em;color:#89939c}.field-section-head h2,.field-section-head h3{margin:4px 0 0}.field-section-head>strong{font-size:12px;color:#6f7a84}.field-job-card{display:grid;gap:7px;padding:14px;border:1px solid #e8ecef;border-radius:15px;color:#151b22;text-decoration:none;margin-top:9px;background:#fff}.field-job-card:hover,.field-job-card.selected{border-color:#b8c0c7;background:#f8f9fa}.field-job-card>strong{font-size:15px}.field-job-card>span,.field-job-card>em{font-size:10px;color:#77818b;font-style:normal}.field-job-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.field-job-top small{font-size:9px;color:#7b858f}.field-empty,.field-detail-empty{display:grid;gap:6px;padding:28px 12px;text-align:center;color:#7b858e}.field-empty strong,.field-detail-empty h2{color:#1a2128}.field-detail-empty span{font-size:9px;font-weight:850;letter-spacing:.12em}.field-detail-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.field-detail-head>div>span{font-size:9px;font-weight:850;color:#808a94;letter-spacing:.08em}.field-detail-head h2{margin:5px 0;font-size:25px}.field-detail-head p{margin:0;color:#7b858e;font-size:11px}.field-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:16px}.field-meta>div{padding:12px;border-radius:13px;background:#f5f7f8}.field-meta span,.field-meta strong{display:block}.field-meta span{font-size:8px;color:#8a949d;text-transform:uppercase;letter-spacing:.08em}.field-meta strong{margin-top:5px;font-size:12px}.field-location{display:grid;gap:4px;margin-top:12px;padding:13px;border:1px solid #dfe5e9;border-radius:13px;color:#151b22;text-decoration:none}.field-location>span,.field-notes>span,.field-actions>span{font-size:8px;font-weight:850;color:#87919a;letter-spacing:.12em}.field-location small{color:#64717c}.field-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:16px;padding:14px 0;border-top:1px solid #edf0f2;border-bottom:1px solid #edf0f2}.field-actions>span{width:100%;margin-bottom:2px}.field-actions form{margin:0;flex:1}.field-actions button{width:100%;min-height:46px;border:1px solid #dce2e6;border-radius:12px;background:#f4f5f6;color:#171d24;font-weight:850;cursor:pointer}.field-actions button.finish{background:#171d24;color:#fff;border-color:#171d24}.field-checklist,.field-history,.field-notes{margin-top:18px}.field-task{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #edf0f2}.field-task button{flex:0 0 34px;width:34px;height:34px;border:0;border-radius:50%;background:#edf1f3;font-size:17px;cursor:pointer}.field-task span{font-size:12px}.field-task.done span{text-decoration:line-through;color:#89939c}.field-notes{padding:13px;border-radius:13px;background:#f7f8f9}.field-notes p{margin:6px 0 0;font-size:11px;line-height:1.6}.field-history>div:not(.field-section-head){display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #edf0f2}.field-history strong{font-size:11px}.field-history span{font-size:9px;color:#7d8790}
@media(max-width:760px){.field-top{padding:12px 14px}.field-user-name{display:none}.field-back-link span{display:none}.field-back-link{padding:8px 10px}.field-main{width:min(100% - 20px,720px);padding-top:10px}.field-hero{display:grid;padding:18px;border-radius:18px}.field-hero h1{font-size:28px}.field-stats{grid-template-columns:repeat(3,1fr)}.field-layout{grid-template-columns:1fr}.field-queue,.field-detail{padding:14px;border-radius:17px}.field-detail{order:-1}.field-detail:has(.field-detail-empty){order:2}.field-meta{grid-template-columns:1fr 1fr}.field-meta>div:last-child{grid-column:1/-1}.field-detail-head h2{font-size:21px}.field-actions{position:sticky;bottom:0;background:#fff;padding-bottom:10px;z-index:5}.field-job-card{padding:13px}.field-search form{grid-template-columns:1fr auto}}

/* v0.22.0 — Calendar & Scheduling */
.calendar-shell{display:grid;gap:18px}.calendar-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:30px 32px;border-radius:22px;background:#11161c;color:#fff}.calendar-hero h1{margin:7px 0 6px;font-size:clamp(30px,4vw,46px);letter-spacing:-.04em}.calendar-hero p{margin:0;color:#aeb6bf}.calendar-toolbar{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;background:#fff;border:1px solid #e1e5e8;border-radius:16px;padding:13px}.calendar-nav{display:flex;align-items:center;gap:7px}.calendar-nav strong{margin-left:8px;white-space:nowrap}.calendar-filters{display:flex;justify-content:flex-end;gap:8px;min-width:0}.calendar-filters select{min-width:0;border:1px solid #dce2e6;border-radius:10px;background:#fff;padding:9px 10px;font:inherit}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:1px;background:#dfe4e8;border:1px solid #dfe4e8;border-radius:18px;overflow:auto}.calendar-grid.week{grid-template-columns:repeat(7,minmax(160px,1fr))}.calendar-grid.day{grid-template-columns:minmax(0,1fr)}.calendar-day{min-height:145px;background:#fff;padding:10px}.calendar-grid.day .calendar-day{min-height:420px}.calendar-day.today{background:#fafbfb;box-shadow:inset 0 3px #171d24}.calendar-day>header{display:flex;align-items:center;justify-content:space-between;color:#7d8790;font-size:9px;text-transform:uppercase}.calendar-day>header strong{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-size:12px;color:#20262c}.calendar-day.today>header strong{background:#171d24;color:#fff}.calendar-events{display:grid;gap:7px;margin-top:8px}.calendar-event{border:1px solid #e2e7ea;border-left:3px solid #78838d;border-radius:10px;padding:8px;background:#f8f9fa;min-width:0}.calendar-event.in_progress{border-left-color:#b48828}.calendar-event.waiting{border-left-color:#76579c}.calendar-event.completed,.calendar-event.closed{border-left-color:#3d875d}.calendar-event.appointment{border-left-color:#467594;background:#f4f8fb}.calendar-event>a{display:grid;gap:3px;color:#151b22;text-decoration:none}.calendar-event small{font-size:8px;color:#7f8993;letter-spacing:.04em}.calendar-event strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event span{font-size:8px;color:#7d8790;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-reschedule{display:flex;gap:4px;margin-top:7px}.calendar-reschedule input{min-width:0;width:100%;border:1px solid #dce2e6;border-radius:7px;padding:5px;font-size:9px}.calendar-reschedule button{border:0;border-radius:7px;background:#252c33;color:#fff;padding:0 7px;font-size:8px;cursor:pointer}.calendar-create{display:grid;grid-template-columns:minmax(220px,.55fr) 1.45fr;gap:24px;background:#fff;border:1px solid #e1e5e8;border-radius:20px;padding:22px}.calendar-create h2{margin:5px 0}.calendar-create p{color:#77818b;line-height:1.5}.calendar-form{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.calendar-form label{display:grid;gap:5px}.calendar-form label>span{font-size:9px;font-weight:800;color:#6f7983;text-transform:uppercase}.calendar-form input,.calendar-form select,.calendar-form textarea{width:100%;box-sizing:border-box;border:1px solid #dce2e6;border-radius:10px;padding:10px;font:inherit}.calendar-form .wide{grid-column:1/-1}.calendar-form textarea{min-height:70px}.calendar-form>.button{align-self:end}
@media(max-width:1180px){.calendar-toolbar{grid-template-columns:1fr}.calendar-filters{justify-content:flex-start;flex-wrap:wrap}.calendar-create{grid-template-columns:1fr}.calendar-grid{grid-template-columns:repeat(7,minmax(120px,1fr))}}
@media(max-width:760px){.calendar-hero{align-items:stretch;display:grid;padding:22px}.calendar-nav{flex-wrap:wrap}.calendar-nav strong{width:100%;margin:4px 0 0}.calendar-filters{display:grid;grid-template-columns:1fr 1fr}.calendar-filters .button{grid-column:1/-1}.calendar-grid.month,.calendar-grid.week{grid-template-columns:repeat(7,minmax(150px,1fr));overflow-x:auto}.calendar-form{grid-template-columns:1fr}.calendar-form .wide{grid-column:auto}.calendar-create{padding:17px}}

/* v0.23.0 — Dispatch Board & Work Assignment */
.dispatch-shell{display:grid;gap:16px}.dispatch-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:28px 30px;border-radius:22px;background:#11161c;color:#fff}.dispatch-hero h1{margin:7px 0 5px;font-size:clamp(30px,4vw,44px);letter-spacing:-.04em}.dispatch-hero p{margin:0;color:#aeb7c0}.dispatch-filters{display:flex;gap:8px;flex-wrap:wrap;padding:12px;background:#fff;border:1px solid #e0e5e8;border-radius:15px}.dispatch-filters select{min-width:150px;border:1px solid #dce2e6;border-radius:10px;background:#fff;padding:9px 10px;font:inherit}.dispatch-board{display:grid;grid-template-columns:repeat(6,minmax(245px,1fr));gap:12px;align-items:start;overflow-x:auto;padding-bottom:10px}.dispatch-column{min-width:245px;border:1px solid #e0e5e8;border-radius:16px;background:#f4f6f7;overflow:hidden}.dispatch-column>header{padding:13px 14px;border-bottom:1px solid #e0e5e8;background:#fff}.dispatch-column>header>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.dispatch-column>header span{font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.dispatch-column>header strong{display:grid;place-items:center;min-width:25px;height:25px;border-radius:50%;background:#edf0f2;font-size:10px}.dispatch-stack{display:grid;gap:9px;padding:9px;min-height:160px}.dispatch-empty{padding:24px 8px;text-align:center;color:#9aa3ab;font-size:10px}.dispatch-card{display:grid;gap:9px;padding:12px;border:1px solid #e0e5e8;border-radius:13px;background:#fff;box-shadow:0 1px 2px rgba(20,27,34,.03)}.dispatch-card.overdue{border-color:#d7a5a5}.dispatch-card>a{display:grid;gap:4px;color:#171d24;text-decoration:none}.dispatch-card>a small{font-size:8px;color:#7c8790}.dispatch-card>a strong{font-size:13px}.dispatch-card>a span{font-size:9px;color:#747f89}.dispatch-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.dispatch-meta>span{font-size:8px;color:#737e87}.dispatch-meta .priority{padding:4px 6px;border-radius:6px;background:#eef1f3;font-weight:850}.dispatch-meta .priority.urgent,.dispatch-meta .dispatch-overdue{color:#a33232}.dispatch-meta .priority.high{color:#8a5d12}.dispatch-assign,.dispatch-status{display:grid;grid-template-columns:1fr auto;gap:5px}.dispatch-assign select,.dispatch-status select{min-width:0;border:1px solid #dce2e6;border-radius:8px;background:#fff;padding:7px;font-size:9px}.dispatch-assign button,.dispatch-status button{border:0;border-radius:8px;background:#20272e;color:#fff;padding:0 9px;font-size:9px;font-weight:800;cursor:pointer}.dispatch-status{padding-top:8px;border-top:1px solid #edf0f2}
@media(max-width:760px){.dispatch-hero{display:grid;padding:21px}.dispatch-filters{display:grid;grid-template-columns:1fr 1fr}.dispatch-filters select{min-width:0;width:100%}.dispatch-board{grid-template-columns:repeat(6,minmax(270px,82vw));scroll-snap-type:x proximity}.dispatch-column{scroll-snap-align:start}}

/* Milestone 24 — Tasks & Work Management */
.tasks-content{display:flex;flex-direction:column;gap:22px}.tasks-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:28px;border:1px solid var(--border);border-radius:22px;background:var(--surface)}.tasks-hero h1{margin:5px 0 8px}.tasks-hero p{margin:0;max-width:760px;color:var(--muted)}.task-buckets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.task-buckets a{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border:1px solid var(--border);border-radius:16px;background:var(--surface);text-decoration:none;color:inherit}.task-buckets a.active{box-shadow:inset 0 0 0 2px currentColor}.task-buckets strong{font-size:22px}.task-toolbar form{display:flex;gap:10px;flex-wrap:wrap}.task-toolbar input{flex:1;min-width:240px}.tasks-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:20px;align-items:start}.task-list,.task-detail,.task-create{border:1px solid var(--border);border-radius:20px;background:var(--surface);padding:20px}.task-list{display:flex;flex-direction:column;gap:10px}.task-card{display:block;padding:16px;border:1px solid var(--border);border-radius:16px;text-decoration:none;color:inherit}.task-card:hover,.task-card.selected{border-color:currentColor}.task-card.overdue{box-shadow:inset 3px 0 0 #b42318}.task-card-top,.task-card-meta{display:flex;justify-content:space-between;gap:12px;align-items:center}.task-card>strong{display:block;margin:10px 0 4px}.task-card>span,.task-card small,.task-card-meta{color:var(--muted)}.task-progress{height:7px;border-radius:999px;background:var(--surface-soft,#eee);overflow:hidden;margin:12px 0 6px}.task-progress i{display:block;height:100%;background:currentColor}.task-detail h3{margin:24px 0 10px}.task-detail-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.task-detail-meta div,.task-linked span,.task-linked a{padding:12px;border:1px solid var(--border);border-radius:12px}.task-detail-meta span{display:block;color:var(--muted);font-size:12px}.task-linked{display:grid;gap:8px;margin-top:16px}.task-assignees{display:flex;gap:8px;flex-wrap:wrap}.task-assignees span{padding:7px 10px;border-radius:999px;background:var(--surface-soft,#f3f4f6)}.task-status-form,.task-attachment-form{display:grid;grid-template-columns:1fr 100px auto;gap:8px}.task-comment-form{display:grid;gap:8px}.task-comments>div{padding:12px 0;border-bottom:1px solid var(--border)}.task-comments span{float:right;color:var(--muted);font-size:12px}.task-comments p{margin:6px 0 0}.task-files{display:grid;gap:6px;margin-top:10px}.task-create{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px}.task-create-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.task-create-form label{display:grid;gap:6px}.task-create-form .wide{grid-column:span 3}.task-create-form select[multiple]{min-height:110px}.task-create-form .button{align-self:end}.task-empty,.task-detail-empty{padding:40px 20px;text-align:center;color:var(--muted)}.calendar-event.task{border-style:dashed}.calendar-event.task a{text-decoration:none;color:inherit;display:grid}
@media(max-width:1100px){.task-buckets{grid-template-columns:repeat(3,1fr)}.tasks-layout{grid-template-columns:1fr}.task-create{grid-template-columns:1fr}.task-create-form{grid-template-columns:repeat(2,1fr)}.task-create-form .wide{grid-column:span 2}}
@media(max-width:700px){.tasks-hero{flex-direction:column}.task-buckets{grid-template-columns:1fr 1fr}.task-detail-meta{grid-template-columns:1fr 1fr}.task-create-form{grid-template-columns:1fr}.task-create-form .wide{grid-column:span 1}.task-status-form,.task-attachment-form{grid-template-columns:1fr}}
.task-team-label{color:var(--muted)}.task-team-create{grid-column:1/-1;border-top:1px solid var(--border);padding-top:20px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px}.task-team-create form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}
@media(max-width:700px){.task-team-create{grid-template-columns:1fr}.task-team-create form{grid-template-columns:1fr}}

/* v0.24.1 — Task Composer UI refresh */
.task-composer{border:1px solid var(--border);border-radius:24px;background:var(--surface);overflow:hidden}.task-composer-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 26px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#fff,#fbfcfc)}.task-composer-head h2{margin:5px 0 4px;font-size:26px;letter-spacing:-.025em}.task-composer-head p{margin:0;color:var(--muted);font-size:13px}.task-composer-badge{padding:8px 11px;border:1px solid #dfe4e7;border-radius:999px;background:#f5f7f8;color:#68737d;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.task-composer-form{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.65fr);gap:0}.task-composer-main,.task-composer-side{display:grid;align-content:start;gap:16px;padding:22px}.task-composer-main{border-right:1px solid var(--border);background:#f8fafb}.task-form-card{display:grid;gap:16px;padding:19px;border:1px solid #e1e6e9;border-radius:18px;background:#fff;box-shadow:0 1px 2px rgba(18,25,31,.025)}.task-form-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.task-form-card-head>div{display:flex;align-items:center;gap:10px}.task-form-card-head strong,.task-form-card-head small{display:block}.task-form-card-head strong{font-size:14px}.task-form-card-head small{margin-top:2px;color:#89939c;font-size:10px}.task-form-step{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#151b22;color:#fff;font-size:9px;font-weight:900;letter-spacing:.04em}.task-field{display:grid;gap:7px;min-width:0}.task-field>span{display:flex;justify-content:space-between;gap:8px;color:#65717b;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.task-field>span em{font-style:normal;color:#a0a8af;font-weight:650;text-transform:none;letter-spacing:0}.task-field input:not([type=checkbox]):not([type=range]),.task-field select,.task-field textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid #dce2e6;border-radius:12px;background:#fff;padding:11px 12px;color:#182028;font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.task-field input:not([type=checkbox]):not([type=range]),.task-field select{height:44px}.task-field textarea{min-height:105px;resize:vertical}.task-field input:focus,.task-field select:focus,.task-field textarea:focus{outline:0;border-color:#919ba4;box-shadow:0 0 0 3px rgba(17,22,28,.07)}.task-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.task-inline-action{border:0;background:transparent;color:#3f4b55;font:inherit;font-size:10px;font-weight:850;cursor:pointer}.task-checklist-builder{display:grid;gap:8px}.task-checklist-input{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;border:1px solid #e2e7ea;border-radius:12px;background:#fbfcfc}.task-checklist-input>span{color:#89949d}.task-checklist-input input{width:100%;border:0!important;box-shadow:none!important;background:transparent!important;padding:3px 0!important;height:auto!important}.task-checklist-input button{border:0;background:transparent;color:#8c969f;font-size:18px;cursor:pointer}.task-people-picker{overflow:hidden;border:1px solid #dfe4e7;border-radius:13px;background:#fff}.task-people-search{display:flex;align-items:center;gap:8px;padding:8px 11px;border-bottom:1px solid #edf0f2}.task-people-search span{color:#89939c}.task-people-search input{height:auto!important;border:0!important;padding:4px 0!important;box-shadow:none!important;background:transparent!important}.task-people-list{max-height:220px;overflow:auto;padding:6px}.task-person{display:grid;grid-template-columns:34px minmax(0,1fr) 24px;align-items:center;gap:9px;padding:8px;border-radius:10px;cursor:pointer}.task-person:hover{background:#f6f8f9}.task-person input{position:absolute;opacity:0;pointer-events:none}.task-person-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#eef1f3;color:#4a555f;font-size:9px;font-weight:900}.task-person-copy strong,.task-person-copy small{display:block}.task-person-copy strong{font-size:11px}.task-person-copy small{margin-top:2px;color:#98a1a9;font-size:9px}.task-person-check{display:grid;place-items:center;width:20px;height:20px;border:1px solid #d7dde1;border-radius:6px;color:transparent;font-size:10px}.task-person:has(input:checked){background:#f1f4f6}.task-person input:checked~.task-person-check{background:#182028;border-color:#182028;color:#fff}.task-progress-field input[type=range]{width:100%;accent-color:#182028}.task-range-labels{display:flex;justify-content:space-between;color:#909aa3}.task-composer-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px}.task-composer-actions>span{color:#8b959e;font-size:9px}.task-composer-actions .button{min-width:150px}.task-team-create-modern{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;padding:22px 26px;border-top:1px solid var(--border);background:#fbfcfc}.task-team-create-modern h3{margin:5px 0}.task-team-create-modern p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.task-team-create-modern form{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(300px,1.3fr) auto;gap:12px;align-items:end}.task-team-member-grid{display:flex;gap:6px;flex-wrap:wrap;min-height:44px;padding:7px;border:1px solid #dce2e6;border-radius:12px;background:#fff}.task-team-member-grid label{position:relative;cursor:pointer}.task-team-member-grid input{position:absolute;opacity:0}.task-team-member-grid span{display:block;padding:6px 9px;border:1px solid #e3e7ea;border-radius:999px;background:#f7f8f9;color:#59656f;font-size:9px;font-weight:750}.task-team-member-grid input:checked+span{background:#182028;border-color:#182028;color:#fff}
@media(max-width:1180px){.task-composer-form{grid-template-columns:1fr}.task-composer-main{border-right:0;border-bottom:1px solid var(--border)}.task-composer-side{grid-template-columns:1fr 1fr}.task-composer-actions{grid-column:1/-1}.task-team-create-modern{grid-template-columns:1fr}.task-team-create-modern form{grid-template-columns:1fr 1fr auto}}
@media(max-width:760px){.task-composer-head{align-items:flex-start;flex-direction:column;padding:20px}.task-composer-main,.task-composer-side{padding:14px}.task-composer-side{grid-template-columns:1fr}.task-form-card{padding:15px}.task-field-grid{grid-template-columns:1fr}.task-composer-actions{align-items:stretch;flex-direction:column}.task-composer-actions .button{width:100%}.task-team-create-modern{padding:18px}.task-team-create-modern form{grid-template-columns:1fr}.task-team-create-modern form .button{width:100%}}


/* Milestone 25 — Kanban & workflow engine */
.kanban-content{max-width:none}.kanban-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px}.kanban-hero h1{margin:5px 0 7px;font-size:32px}.kanban-hero p{margin:0;color:var(--muted,#667085);max-width:760px}.kanban-toolbar{background:#fff;border:1px solid #e7e9ee;border-radius:16px;padding:12px;margin-bottom:18px}.kanban-toolbar form{display:grid;grid-template-columns:minmax(220px,1fr) 190px 160px auto auto;gap:10px}.kanban-toolbar input,.kanban-toolbar select,.workflow-config input{border:1px solid #dfe3e8;border-radius:10px;padding:10px 12px;background:#fff;min-width:0}.kanban-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(270px,1fr);gap:14px;overflow-x:auto;padding:2px 2px 18px;scrollbar-width:thin}.kanban-column{background:#f6f7f9;border:1px solid #e5e7eb;border-radius:16px;min-height:520px}.kanban-column>header{display:flex;align-items:center;justify-content:space-between;padding:14px 15px;border-bottom:1px solid #e5e7eb}.kanban-column>header>div{display:flex;align-items:center;gap:8px}.kanban-column>header b{font-size:12px;background:#fff;border:1px solid #e0e3e8;border-radius:999px;padding:3px 8px}.kanban-dot{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.55}.kanban-dropzone{padding:10px;min-height:460px;transition:.15s}.kanban-dropzone.drag-over{background:rgba(15,23,42,.05);outline:2px dashed #aab2c0;outline-offset:-5px;border-radius:12px}.kanban-card{background:#fff;border:1px solid #e1e4e9;border-radius:13px;padding:13px;margin-bottom:10px;box-shadow:0 1px 2px rgba(16,24,40,.03);cursor:grab}.kanban-card:hover{border-color:#c9ced8;box-shadow:0 5px 16px rgba(16,24,40,.07)}.kanban-card.dragging{opacity:.4}.kanban-card.overdue{border-left:3px solid #b42318}.kanban-card-top,.kanban-card footer,.kanban-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.kanban-card-top a,.kanban-card footer a{color:#667085;text-decoration:none}.kanban-card h3{font-size:14px;margin:11px 0 4px;line-height:1.35}.kanban-card p{font-size:12px;color:#667085;margin:0 0 10px}.kanban-card-meta{align-items:flex-start;flex-direction:column;font-size:11px;color:#7b8494;margin:9px 0}.kanban-card footer{font-size:11px;color:#667085;margin-top:8px}.workflow-config,.kanban-history{margin-top:18px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:16px}.workflow-config summary{font-weight:700;cursor:pointer}.workflow-config form{margin-top:16px}.workflow-config-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.workflow-config-grid label{display:grid;grid-template-columns:1fr 72px;gap:7px}.workflow-config-grid label span{grid-column:1/-1;font-size:10px;text-transform:uppercase;color:#7b8494}.kanban-history>div:not(.section-heading){display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid #edf0f3}.kanban-history span{font-size:12px;color:#667085}@media(max-width:1000px){.kanban-toolbar form{grid-template-columns:1fr 1fr}.kanban-board{grid-auto-columns:280px}.workflow-config-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.kanban-hero{flex-direction:column}.kanban-toolbar form{grid-template-columns:1fr}.workflow-config-grid{grid-template-columns:1fr}.kanban-column{min-height:440px}.kanban-dropzone{min-height:380px}}

/* v0.25.1 — Kanban board settings UX */
.kanban-hero-actions{display:flex;align-items:center;gap:10px}.workflow-settings-shell[hidden]{display:none}.workflow-settings-shell{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;opacity:0;transition:opacity .16s ease}.workflow-settings-shell.open{opacity:1}.workflow-settings-backdrop{position:absolute;inset:0;border:0;background:rgba(15,23,42,.46);backdrop-filter:blur(2px);cursor:default}.workflow-settings-panel{position:relative;width:min(720px,100%);max-height:min(760px,calc(100vh - 48px));overflow:auto;background:#fff;border:1px solid #e4e7ec;border-radius:22px;box-shadow:0 24px 70px rgba(15,23,42,.22);padding:24px;transform:translateY(8px) scale(.99);transition:transform .16s ease}.workflow-settings-shell.open .workflow-settings-panel{transform:none}.workflow-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #edf0f3}.workflow-settings-head h2{margin:4px 0 5px;font-size:23px}.workflow-settings-head p{margin:0;color:#667085;font-size:13px}.workflow-settings-close{border:0;background:#f4f5f7;width:36px;height:36px;border-radius:10px;font-size:24px;line-height:1;color:#475467;cursor:pointer}.workflow-column-list{display:grid;gap:9px;padding:18px 0}.workflow-column-row{display:grid;grid-template-columns:34px minmax(130px,.7fr) minmax(200px,1fr);align-items:center;gap:12px;border:1px solid #e4e7ec;border-radius:13px;padding:10px 12px;background:#fff;transition:border-color .15s,box-shadow .15s,transform .15s}.workflow-column-row:hover{border-color:#cfd4dc}.workflow-column-row.dragging{opacity:.48;transform:scale(.99)}.workflow-column-row.drag-target{border-color:#98a2b3;box-shadow:0 0 0 3px rgba(152,162,179,.12)}.workflow-drag-handle{display:grid;grid-template-columns:repeat(2,4px);gap:3px;place-content:center;width:30px;height:34px;border:0;background:transparent;cursor:grab}.workflow-drag-handle:active{cursor:grabbing}.workflow-drag-handle span{width:4px;height:4px;border-radius:50%;background:#98a2b3}.workflow-column-copy{display:flex;flex-direction:column;min-width:0}.workflow-column-copy strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workflow-column-copy small{font-size:10px;color:#98a2b3;margin-top:2px}.workflow-column-name input{width:100%;border:1px solid #dfe3e8;border-radius:10px;padding:10px 11px;background:#fff;font:inherit}.workflow-column-name input:focus{outline:0;border-color:#98a2b3;box-shadow:0 0 0 3px rgba(152,162,179,.12)}.workflow-settings-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:16px;border-top:1px solid #edf0f3}.workflow-settings-open{overflow:hidden}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:700px){.kanban-hero-actions{width:100%;flex-wrap:wrap}.workflow-settings-shell{padding:12px}.workflow-settings-panel{padding:18px;border-radius:18px;max-height:calc(100vh - 24px)}.workflow-column-row{grid-template-columns:30px 1fr}.workflow-column-name{grid-column:2}.workflow-settings-actions{position:sticky;bottom:-18px;background:#fff;padding-bottom:4px}}

/* Milestone 26 — Leads & Opportunities CRM */
.crm-content{max-width:1680px}.crm-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.crm-hero h1{font-size:32px;margin:5px 0 7px}.crm-hero p{margin:0;max-width:760px;color:#687386}.crm-hero-actions{display:flex;gap:10px;flex-wrap:wrap}.crm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.crm-kpis>div{background:#fff;border:1px solid #e4e8ee;border-radius:16px;padding:16px 18px;min-width:0}.crm-kpis span{display:block;font-size:12px;color:#748095;margin-bottom:8px}.crm-kpis strong{display:block;font-size:25px;line-height:1.15;color:#161c24;overflow-wrap:anywhere}.crm-kpis strong.crm-money{font-size:16px;line-height:1.4}.crm-kpis small{display:block;margin-top:7px;color:#98a2b3}.crm-workspace{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(360px,.72fr);gap:16px;align-items:start}.crm-main,.crm-detail,.crm-create-card{background:#fff;border:1px solid #e4e8ee;border-radius:18px}.crm-main{overflow:hidden}.crm-tabs{display:flex;gap:5px;padding:10px 12px 0;border-bottom:1px solid #edf0f3}.crm-tabs a{padding:11px 14px;text-decoration:none;color:#667085;font-weight:700;border-bottom:2px solid transparent}.crm-tabs a.active{color:#17212b;border-color:#17212b}.crm-tabs span{display:inline-flex;min-width:22px;height:22px;align-items:center;justify-content:center;border-radius:999px;background:#f0f2f5;font-size:11px;margin-left:5px}.crm-toolbar{display:grid;grid-template-columns:minmax(200px,1fr) 165px 175px auto;gap:9px;padding:12px;border-bottom:1px solid #edf0f3}.crm-toolbar input,.crm-toolbar select,.crm-inline-form input,.crm-inline-form select,.crm-stage-form input,.crm-stage-form select,.crm-action-grid input,.crm-note-form textarea,.crm-form-grid input,.crm-form-grid select,.crm-form-grid textarea{width:100%;border:1px solid #dfe4ea;border-radius:10px;background:#fff;padding:10px 11px;font:inherit;box-sizing:border-box}.crm-list{padding:8px}.crm-row{display:flex;gap:12px;padding:13px;text-decoration:none;color:inherit;border:1px solid transparent;border-radius:13px;transition:.15s}.crm-row:hover{background:#f8f9fb}.crm-row.selected{background:#f5f7fa;border-color:#d9dee7}.crm-row-avatar{width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:#eceff3;display:flex;align-items:center;justify-content:center;font-weight:800}.crm-row-body{min-width:0;flex:1}.crm-row-body>div{display:flex;justify-content:space-between;gap:10px;align-items:center}.crm-row-body>div strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-row-body p{margin:4px 0 9px;color:#697586;font-size:12px}.crm-row-body footer{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#8993a2}.crm-due{color:#b42318!important;font-weight:700}.crm-empty{padding:38px 24px;text-align:center;color:#748095}.crm-empty strong,.crm-empty span{display:block}.crm-empty strong{color:#1d2733;margin-bottom:5px}.crm-side{min-width:0}.crm-detail{padding:18px;position:sticky;top:16px}.crm-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.crm-detail-head h2{margin:4px 0 4px;font-size:21px}.crm-detail-head p{margin:0;color:#7b8494;font-size:12px}.crm-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.crm-contact-grid>div{background:#f7f8fa;border-radius:11px;padding:10px}.crm-contact-grid span{display:block;font-size:10px;text-transform:uppercase;color:#8993a2;margin-bottom:3px}.crm-contact-grid strong{font-size:12px;overflow-wrap:anywhere}.crm-linked-customer{display:block;padding:11px 12px;border-radius:11px;background:#f4f6f8;text-decoration:none;color:#344054;margin-bottom:12px}.crm-inline-form{display:grid;grid-template-columns:1fr 150px auto;gap:8px;margin:12px 0}.crm-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.crm-action-grid form>.button{width:100%}.crm-action-grid details{border:1px solid #e4e8ee;border-radius:11px;padding:9px 10px}.crm-action-grid summary{font-size:12px;font-weight:700;cursor:pointer}.crm-action-grid details form{display:grid;gap:7px;margin-top:9px}.crm-detail h3{font-size:13px;margin:18px 0 9px}.crm-mini-list{display:grid;gap:7px}.crm-mini-list>a{display:flex;justify-content:space-between;gap:8px;padding:9px 10px;border:1px solid #e8ebef;border-radius:10px;text-decoration:none;color:#344054;font-size:12px}.crm-mini-list>a span{color:#7b8494}.crm-timeline{border-left:1px solid #e2e6eb;margin-left:6px;padding-left:16px}.crm-timeline-item{position:relative;padding:0 0 14px}.crm-timeline-dot{position:absolute;left:-21px;top:5px;width:9px;height:9px;border-radius:50%;background:#8b95a5;border:2px solid #fff;box-shadow:0 0 0 1px #dfe4ea}.crm-timeline-item strong{font-size:11px}.crm-timeline-item p{font-size:12px;margin:3px 0;color:#4e5968}.crm-timeline-item small{color:#98a2b3;font-size:10px}.crm-timeline-empty{font-size:12px;color:#98a2b3;padding-bottom:8px}.crm-note-form{display:grid;gap:7px;margin-top:10px}.crm-note-form textarea{min-height:70px;resize:vertical}.crm-opportunity-value{margin:16px 0;padding:15px;border-radius:13px;background:#f6f8fa}.crm-opportunity-value span,.crm-opportunity-value small{display:block;color:#7b8494}.crm-opportunity-value strong{display:block;font-size:24px;margin:3px 0}.crm-stage-form{display:grid;grid-template-columns:1fr 100px 1fr;gap:8px;margin-bottom:12px}.crm-stage-form label span,.crm-form-grid label span{display:block;font-size:11px;font-weight:700;color:#697586;margin-bottom:5px}.crm-stage-form .wide{grid-column:1/-1}.crm-stage-form>button{grid-column:1/-1}.crm-quote-action{display:inline-flex;margin:4px 0 8px}.crm-help{font-size:12px;color:#7b8494}.crm-detail-empty{text-align:center;padding:48px 24px}.crm-detail-empty span{font-size:10px;letter-spacing:.12em;color:#98a2b3}.crm-detail-empty h2{margin:7px 0}.crm-detail-empty p{color:#748095}.crm-create-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.crm-create-card{padding:0;overflow:hidden}.crm-create-card>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;cursor:pointer;list-style:none}.crm-create-card>summary::-webkit-details-marker{display:none}.crm-create-card>summary>span{display:flex;align-items:center;gap:9px}.crm-create-card>summary b{width:27px;height:27px;border-radius:8px;background:#17212b;color:#fff;display:flex;align-items:center;justify-content:center}.crm-create-card>summary small{color:#8791a1}.crm-create-card>form{padding:0 17px 17px;border-top:1px solid #edf0f3}.crm-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:15px 0}.crm-form-grid .wide{grid-column:1/-1}.crm-form-grid textarea{min-height:80px;resize:vertical}
@media(max-width:1180px){.crm-kpis{grid-template-columns:repeat(2,1fr)}.crm-workspace{grid-template-columns:minmax(0,1fr) 350px}.crm-toolbar{grid-template-columns:1fr 1fr}.crm-create-grid{grid-template-columns:1fr}}
@media(max-width:900px){.crm-workspace{grid-template-columns:1fr}.crm-detail{position:static}.crm-side{order:-1}.crm-hero{flex-direction:column}.crm-toolbar{grid-template-columns:1fr 1fr}.crm-action-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.crm-kpis{grid-template-columns:1fr 1fr}.crm-toolbar,.crm-form-grid,.crm-stage-form,.crm-inline-form{grid-template-columns:1fr}.crm-action-grid{grid-template-columns:1fr}.crm-contact-grid{grid-template-columns:1fr}.crm-row-body footer{flex-direction:column;gap:3px}.crm-create-card>summary small{display:none}.crm-kpis strong{font-size:20px}}

/* Milestone 27 — Sales Pipeline */
.pipeline-content{max-width:none}.pipeline-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px}.pipeline-hero h1{margin:6px 0 6px;font-size:32px;letter-spacing:-.03em}.pipeline-hero p{max-width:760px;margin:0;color:var(--muted)}.pipeline-hero-actions{display:flex;gap:10px;flex-wrap:wrap}.pipeline-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.pipeline-kpis article{background:#fff;border:1px solid #e7e9ee;border-radius:18px;padding:17px 18px;box-shadow:0 8px 24px rgba(31,35,48,.04)}.pipeline-kpis span,.pipeline-kpis small{display:block;color:#73798a}.pipeline-kpis strong{display:block;font-size:24px;margin:6px 0;letter-spacing:-.02em}.pipeline-kpis small{font-size:12px;line-height:1.45}.pipeline-toolbar{background:#fff;border:1px solid #e7e9ee;border-radius:16px;padding:12px;margin-bottom:16px}.pipeline-toolbar form{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(150px,.7fr) minmax(130px,.5fr) minmax(130px,.6fr) auto auto;gap:9px;align-items:center}.pipeline-toolbar input,.pipeline-toolbar select{width:100%;min-height:42px;border:1px solid #dfe3ea;border-radius:10px;padding:0 12px;background:#fff}.sales-pipeline-board{display:flex;gap:14px;overflow-x:auto;padding:2px 2px 18px;scrollbar-width:thin}.pipeline-column{flex:0 0 292px;min-width:292px;background:#f5f6f8;border:1px solid #e5e8ed;border-radius:18px;padding:10px}.pipeline-column>header{display:flex;align-items:center;justify-content:space-between;padding:8px 7px 12px}.pipeline-column>header>div{display:flex;align-items:center;gap:8px}.pipeline-column>header b{display:grid;place-items:center;min-width:26px;height:26px;border-radius:999px;background:#e8ebf0;font-size:12px}.pipeline-dot{width:8px;height:8px;border-radius:50%;background:#323846}.pipeline-dropzone{min-height:170px;display:flex;flex-direction:column;gap:10px;border-radius:13px;transition:.15s ease}.pipeline-dropzone.drag-over{background:#e9edf5;outline:2px dashed #9aa5b8;outline-offset:-3px}.pipeline-card{background:#fff;border:1px solid #e5e8ed;border-radius:14px;padding:14px;box-shadow:0 6px 16px rgba(20,28,45,.045);cursor:grab}.pipeline-card.dragging{opacity:.45}.pipeline-card.saving{pointer-events:none;opacity:.55}.pipeline-card.overdue{border-color:#eab7b7}.pipeline-card-top,.pipeline-card footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.pipeline-value{font-size:12px;font-weight:800;background:#f0f2f6;border-radius:999px;padding:6px 8px}.pipeline-card h3{font-size:15px;margin:12px 0 4px}.pipeline-card>p{margin:0 0 12px;color:#73798a;font-size:13px}.pipeline-card-top a,.pipeline-card footer a,.pipeline-quote a{color:#30394b;text-decoration:none;font-weight:700}.pipeline-probability{display:grid;grid-template-columns:1fr auto;gap:6px 10px;font-size:11px;color:#72798b;margin-bottom:12px}.pipeline-probability i{grid-column:1/-1;height:5px;background:#eceff3;border-radius:20px;overflow:hidden}.pipeline-probability i b{display:block;height:100%;background:#535d70;border-radius:20px}.pipeline-card-meta{display:grid;gap:7px;border-top:1px solid #eef0f3;padding-top:10px}.pipeline-card-meta span{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#7a8190}.pipeline-card-meta strong{color:#3c4350;font-weight:700;text-align:right}.pipeline-quote{margin-top:10px;padding:9px 10px;border-radius:10px;background:#f7f8fa;font-size:11px;display:grid;gap:3px}.pipeline-quote span{color:#818795}.pipeline-card footer{margin-top:11px;padding-top:10px;border-top:1px solid #eef0f3;font-size:11px;color:#7c8290}.pipeline-history{margin-top:18px;background:#fff;border:1px solid #e5e8ed;border-radius:18px;padding:18px}.pipeline-history>.section-heading{margin-bottom:8px}.pipeline-history>div:not(.section-heading){display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-top:1px solid #eef0f3}.pipeline-history span{color:#777e8d;font-size:12px}
@media(max-width:1100px){.pipeline-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.pipeline-toolbar form{grid-template-columns:1fr 1fr 1fr}.pipeline-toolbar .button{width:100%}}@media(max-width:720px){.pipeline-hero{flex-direction:column}.pipeline-hero-actions{width:100%}.pipeline-hero-actions .button{flex:1}.pipeline-kpis{grid-template-columns:1fr}.pipeline-toolbar form{grid-template-columns:1fr}.pipeline-column{flex-basis:270px;min-width:270px}}


/* Milestone 28 — Sales Workspace / Sales Desk */
.sales-desk{display:grid;gap:20px;max-width:1680px;margin:0 auto;width:100%}.sales-desk-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:6px 2px}.sales-desk-hero h1{margin:4px 0 6px;font-size:32px;letter-spacing:-.04em}.sales-desk-hero p{margin:0;color:var(--muted,#667085)}.sales-desk-actions{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.sales-desk-actions form label{display:grid;gap:5px;font-size:12px;color:var(--muted,#667085)}.sales-desk-actions select{min-width:190px}.sales-scope-chip{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;border-radius:999px;border:1px solid #e4e7ec;background:#fff;font-weight:700}.sales-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.sales-kpi-grid article,.sales-panel{background:#fff;border:1px solid #eaecf0;border-radius:18px;box-shadow:0 8px 24px rgba(16,24,40,.04)}.sales-kpi-grid article{padding:18px;min-width:0}.sales-kpi-grid article>span{display:block;color:#667085;font-size:12px;font-weight:700}.sales-kpi-grid article>strong{display:block;margin:8px 0 5px;font-size:30px;letter-spacing:-.04em}.sales-kpi-grid article a,.sales-kpi-grid article small{font-size:12px;color:#667085;text-decoration:none}.sales-desk-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.75fr);gap:16px}.sales-panel{padding:20px;min-width:0}.sales-day-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.sales-day-grid>div{border:1px solid #eef0f3;border-radius:14px;padding:14px;min-width:0}.sales-day-grid h3{display:flex;justify-content:space-between;gap:10px;margin:0 0 10px;font-size:14px}.sales-day-grid h3 b{display:inline-flex;min-width:24px;height:24px;align-items:center;justify-content:center;border-radius:999px;background:#f2f4f7}.sales-work-row,.sales-recent-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #f2f4f7;text-decoration:none;color:inherit;min-width:0}.sales-work-row:first-of-type,.sales-recent-row:first-of-type{border-top:0}.sales-work-row span,.sales-recent-row span{display:grid;gap:3px;min-width:0}.sales-work-row strong,.sales-recent-row strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sales-work-row small,.sales-recent-row small{color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sales-work-row em,.sales-recent-row em{font-style:normal;font-size:12px;font-weight:700;white-space:nowrap}.sales-empty{color:#98a2b3;font-size:13px;margin:6px 0}.sales-performance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sales-performance-grid div{padding:14px;border-radius:12px;background:#f8fafc}.sales-performance-grid span{display:block;font-size:11px;color:#667085}.sales-performance-grid strong{display:block;margin-top:4px;font-size:23px}.sales-won-values{margin-top:14px;padding-top:14px;border-top:1px solid #eef0f3;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.sales-won-values span{color:#667085;font-size:12px;margin-right:auto}.sales-pipeline-snapshot .section-heading{margin-bottom:14px}.sales-pipeline-snapshot .section-heading>a{font-size:13px;text-decoration:none}.sales-stage-grid{display:grid;grid-template-columns:repeat(6,minmax(160px,1fr));gap:10px;overflow-x:auto;padding-bottom:3px}.sales-stage-grid article{border:1px solid #eef0f3;border-radius:14px;padding:14px;min-width:160px}.sales-stage-grid article header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.sales-stage-grid article header b{display:inline-flex;min-width:26px;height:26px;align-items:center;justify-content:center;border-radius:999px;background:#f2f4f7}.sales-stage-grid article div{display:grid;gap:2px;margin-top:8px}.sales-stage-grid article small{color:#667085}.sales-recent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sales-recent-grid .section-heading{margin-bottom:8px}.sales-recent-grid .section-heading>a{font-size:12px;text-decoration:none}
@media(max-width:1280px){.sales-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sales-desk-grid{grid-template-columns:1fr}.sales-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.sales-desk-hero{align-items:flex-start;flex-direction:column}.sales-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-day-grid,.sales-recent-grid{grid-template-columns:1fr}.sales-stage-grid{grid-template-columns:repeat(6,180px)}}
@media(max-width:560px){.sales-kpi-grid{grid-template-columns:1fr}.sales-panel{padding:15px}.sales-desk-actions{width:100%}.sales-desk-actions form,.sales-desk-actions label,.sales-desk-actions select{width:100%}.sales-desk-actions .button{flex:1;text-align:center}.sales-day-grid{gap:10px}}

/* Milestone 29 — Appointments & Scheduling Operations */
.appointment-ops-shell{max-width:1600px}.appointment-detail{background:#fff;border:1px solid #e7eaf0;border-radius:22px;padding:22px;box-shadow:0 12px 34px rgba(20,28,45,.06);margin-bottom:22px}.appointment-detail-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.appointment-detail-head h2{margin:4px 0 5px;font-size:25px}.appointment-detail-head p{margin:0;color:#687386}.appointment-status{display:inline-flex;padding:7px 11px;border-radius:999px;background:#eef2f7;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.appointment-status.confirmed,.appointment-status.completed{background:#e9f8ef}.appointment-status.on_the_way,.appointment-status.arrived,.appointment-status.in_progress{background:#eef3ff}.appointment-status.cancelled{background:#fff0f0}.appointment-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.appointment-detail-grid article,.appointment-lower article{border:1px solid #edf0f4;border-radius:16px;padding:16px;background:#fbfcfe}.appointment-detail-grid h3,.appointment-lower h3{margin:0 0 12px}.appointment-detail-grid p{margin:8px 0;color:#536074}.appointment-detail-grid p strong{display:block;color:#8993a4;font-size:11px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.appointment-detail-grid h4{margin:16px 0 4px}.appointment-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.appointment-actions form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;padding:14px;border:1px solid #edf0f4;border-radius:16px}.appointment-actions label,.appointment-composer label{display:grid;gap:6px}.appointment-actions label span,.appointment-composer label span{font-size:12px;font-weight:700;color:#596578}.appointment-actions input,.appointment-actions select,.appointment-composer input,.appointment-composer select,.appointment-composer textarea{width:100%;border:1px solid #dfe4eb;border-radius:10px;padding:10px 11px;background:#fff;font:inherit}.appointment-lower{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-top:14px}.appointment-history-row{display:grid;grid-template-columns:10px 1fr;gap:10px;padding:9px 0;border-bottom:1px solid #edf0f4}.appointment-history-row>span{width:8px;height:8px;border-radius:50%;background:currentColor;margin-top:6px}.appointment-history-row p,.appointment-history-row small{margin:2px 0;color:#737f91}.appointment-file{padding:8px 0;border-bottom:1px solid #edf0f4}.appointment-upload{display:flex;gap:8px;align-items:center;margin-top:10px}.appointment-composer .calendar-form{grid-template-columns:repeat(4,minmax(0,1fr))}.appointment-composer .wide{grid-column:span 2}.checkline{display:flex!important;align-items:center!important;gap:8px!important}.checkline input{width:auto!important}.calendar-event.appointment{display:block;text-decoration:none}.calendar-event.appointment.cancelled{opacity:.55}.calendar-event.appointment.completed{border-left-color:#2d9d5b}.calendar-event.appointment.urgent{box-shadow:inset 0 0 0 1px #ef4444}@media(max-width:1100px){.appointment-detail-grid{grid-template-columns:1fr 1fr}.appointment-actions{grid-template-columns:1fr}.appointment-composer .calendar-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.appointment-detail-head{flex-direction:column}.appointment-detail-grid,.appointment-lower{grid-template-columns:1fr}.appointment-actions form{grid-template-columns:1fr}.appointment-composer .calendar-form{grid-template-columns:1fr}.appointment-composer .wide{grid-column:auto}.appointment-upload{align-items:stretch;flex-direction:column}}

/* v0.29.1 — Appointment Composer UI Refresh */
.appointment-composer{grid-template-columns:minmax(220px,.42fr) minmax(0,1.58fr);align-items:start;gap:28px;padding:28px}.appointment-composer-intro{position:sticky;top:18px;padding:4px 4px 4px 2px}.appointment-composer-intro h2{margin:7px 0 9px;font-size:29px;letter-spacing:-.035em}.appointment-composer-intro>p{margin:0;max-width:330px;color:#707b88;line-height:1.55}.appointment-composer-hint{display:grid;gap:4px;margin-top:22px;padding:14px 15px;border:1px solid #e7ebef;border-radius:14px;background:#f8fafb}.appointment-composer-hint strong{font-size:12px;color:#1c2630}.appointment-composer-hint span{font-size:11px;color:#7b8591;line-height:1.45}.appointment-composer-form{min-width:0;display:grid;gap:16px}.appointment-composer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.appointment-section-card{min-width:0;border:1px solid #e5e9ee;border-radius:18px;background:#fbfcfd;padding:17px}.appointment-section-card.appointment-details-card,.appointment-section-card.appointment-notes-card{grid-column:1/-1}.appointment-section-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:15px}.appointment-section-head>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:9px;background:#171d24;color:#fff;font-size:10px;font-weight:800}.appointment-section-head h3{margin:1px 0 3px;font-size:15px;letter-spacing:-.01em}.appointment-section-head p{margin:0;color:#89929e;font-size:10px;line-height:1.4}.appointment-fields{display:grid;gap:11px}.appointment-fields.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-fields .span-2{grid-column:1/-1}.appointment-fields label{display:grid;gap:6px;min-width:0}.appointment-fields label>span{font-size:10px;font-weight:800;color:#647082;text-transform:uppercase;letter-spacing:.035em}.appointment-fields input,.appointment-fields select,.appointment-fields textarea{min-width:0;width:100%;box-sizing:border-box;border:1px solid #dfe4eb;border-radius:11px;padding:11px 12px;background:#fff;font:inherit;color:#121922;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.appointment-fields input:focus,.appointment-fields select:focus,.appointment-fields textarea:focus{border-color:#8e9aa8;box-shadow:0 0 0 3px rgba(112,126,143,.12)}.appointment-fields textarea{min-height:96px;resize:vertical;line-height:1.5}.appointment-fields.notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-location-card{align-self:start}.appointment-form-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid #e5e9ee;border-radius:16px;background:#fff}.appointment-form-actions>div{display:grid;gap:3px}.appointment-form-actions strong{font-size:12px}.appointment-form-actions span{font-size:10px;color:#7d8792}.appointment-conflict-card{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:18px;border:1px solid #ead59c;border-radius:18px;background:#fffaf0;box-shadow:0 12px 30px rgba(91,69,18,.07)}.appointment-conflict-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#b17b11;color:#fff;font-weight:900}.appointment-conflict-card h3{margin:3px 0 5px;font-size:17px}.appointment-conflict-card p{margin:0;color:#6f674f;font-size:11px;line-height:1.5}.appointment-conflict-list{display:grid;gap:6px;margin-top:12px}.appointment-conflict-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid #eedfac;border-radius:10px;background:#fff}.appointment-conflict-list strong{font-size:11px}.appointment-conflict-list span{font-size:10px;color:#7b7158;white-space:nowrap}.appointment-conflict-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
@media(max-width:1220px){.appointment-composer{grid-template-columns:1fr}.appointment-composer-intro{position:static;display:grid;grid-template-columns:1fr auto;gap:4px 18px}.appointment-composer-intro .section-eyebrow,.appointment-composer-intro h2,.appointment-composer-intro>p{grid-column:1}.appointment-composer-hint{grid-column:2;grid-row:1/4;margin:0;max-width:270px}.appointment-composer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:840px){.appointment-composer{padding:19px}.appointment-composer-intro{display:block}.appointment-composer-hint{margin-top:16px;max-width:none}.appointment-composer-grid{grid-template-columns:1fr}.appointment-section-card.appointment-details-card,.appointment-section-card.appointment-notes-card{grid-column:auto}.appointment-fields.two-col,.appointment-fields.notes-grid{grid-template-columns:1fr}.appointment-fields .span-2{grid-column:auto}.appointment-form-actions{align-items:stretch;flex-direction:column}.appointment-form-actions .button{width:100%}.appointment-conflict-list>div{align-items:flex-start;flex-direction:column;gap:2px}.appointment-conflict-list span{white-space:normal}}

/* Milestone 30 — Driver & Field Completion */
.field-hero-v30{align-items:flex-end}.field-layout-v30{align-items:start}.field-upcoming-head{margin-top:28px}.field-source-chip{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef2f5;color:#526171;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.field-mobile-actions{margin:18px 0}.field-mobile-actions form{display:grid;gap:8px}.field-primary-action,.field-complete-button{width:100%;min-height:58px;border:0;border-radius:16px;background:#111b25;color:#fff;font:inherit;font-weight:800;font-size:17px;cursor:pointer}.field-mobile-actions small{color:#7d8994}.field-proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.field-proof-card,.field-completion-card{background:#fff;border:1px solid #e5e9ed;border-radius:18px;padding:18px}.field-proof-card h3,.field-completion-card h3{margin:6px 0 8px}.field-photo-picker{display:block;border:1px dashed #b9c3cc;border-radius:14px;padding:18px;text-align:center;margin:12px 0;cursor:pointer}.field-photo-picker input{position:absolute;opacity:0;pointer-events:none}.field-photo-picker span{font-weight:750}.field-issue-actions{display:grid;gap:10px;margin-top:14px}.field-issue-actions button{min-height:44px;border:1px solid #d8dee4;background:#f8fafb;border-radius:12px;font-weight:700;cursor:pointer}.field-completion-card{margin-top:16px}.field-completion-card>p{color:#73808c}.field-completion-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-completion-fields label{display:grid;gap:6px;font-weight:700;color:#536172}.field-completion-fields input,.field-completion-fields textarea,.field-dialog textarea{width:100%;box-sizing:border-box;border:1px solid #dce2e7;border-radius:12px;padding:12px;font:inherit;background:#fff}.field-wide{grid-column:1/-1}.field-signature{margin:14px 0;display:grid;gap:8px}.field-signature>div{display:flex;justify-content:space-between;align-items:center}.field-signature button{border:0;background:transparent;text-decoration:underline;cursor:pointer}.signature-pad{display:block;width:100%;height:150px;border:1px dashed #aeb9c3;border-radius:14px;background:#fbfcfd;touch-action:none}.field-dialog{width:min(520px,calc(100vw - 28px));border:0;border-radius:18px;padding:0;box-shadow:0 24px 80px rgba(0,0,0,.22)}.field-dialog::backdrop{background:rgba(11,18,24,.5)}.field-dialog form{padding:20px;display:grid;gap:14px}.field-dialog label{display:grid;gap:8px;font-weight:700}.field-dialog form>div{display:flex;justify-content:flex-end;gap:10px}.field-event-row{display:grid;gap:3px;padding:12px 0;border-bottom:1px solid #edf0f2}.field-event-row span,.field-event-row small{color:#74818d}.field-event-row small{line-height:1.45}.field-complete-button{margin-top:8px}.field-job-card em{font-style:normal;color:#73808c}
@media(max-width:900px){.field-proof-grid{grid-template-columns:1fr}.field-completion-fields{grid-template-columns:1fr}.field-wide{grid-column:auto}}
@media(max-width:700px){.field-top{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.field-user-name{display:none}.field-main{padding:16px}.field-hero-v30{display:block}.field-stats{margin-top:14px;width:100%;justify-content:stretch}.field-stats>div{flex:1}.field-layout-v30{display:block}.field-queue{margin-bottom:16px}.field-detail{min-width:0}.field-detail-head{align-items:flex-start}.field-proof-card,.field-completion-card{padding:15px}.field-primary-action,.field-complete-button{position:relative;font-size:16px}}

/* v0.30.1 — Job Composer responsive UI refresh */
.job-composer-shell{background:#fff;border:1px solid #e1e5e8;border-radius:22px;padding:24px;min-width:0;overflow:hidden}.job-composer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.job-composer-head h2{margin:5px 0 6px}.job-composer-head p{margin:0;color:#74808b;max-width:650px}.job-composer-form{gap:18px}.job-composer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;min-width:0}.job-composer-card{display:grid;align-content:start;gap:14px;padding:18px;border:1px solid #e4e8eb;border-radius:18px;background:#fbfcfd;min-width:0}.job-composer-wide{grid-column:1/-1}.job-card-head{display:flex;align-items:flex-start;gap:11px;margin-bottom:2px}.job-card-head>div{display:grid;gap:2px}.job-card-head strong{font-size:12px;letter-spacing:.04em}.job-card-head small{color:#87919b;font-size:11px;line-height:1.4}.job-card-step{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:10px;background:#eef2f5;color:#43505c;font-size:10px;font-weight:900}.job-card-head-action{justify-content:space-between;align-items:center}.job-card-head-action>div{display:flex;align-items:flex-start;gap:11px}.job-composer-card label{display:grid;gap:6px;min-width:0}.job-composer-card label>span{font-size:10px;font-weight:800;color:#68737d;text-transform:uppercase}.job-composer-card label>span em{font-style:normal;font-weight:600;color:#9aa3ab;text-transform:none}.job-composer-card input,.job-composer-card select,.job-composer-card textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid #dce2e6;border-radius:12px;background:#fff;padding:12px 13px;font:inherit}.job-composer-card textarea{min-height:105px;resize:vertical}.job-checklist-builder{display:grid;gap:9px}.job-checklist-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px}.job-checklist-row input{min-width:0}.job-checklist-dot{color:#8a959f;font-size:18px}.job-checklist-row button{width:34px;height:34px;border:0;border-radius:10px;background:#eef2f4;color:#5f6a74;font-size:20px;cursor:pointer}.job-composer-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:2px}.job-composer-actions>span{font-size:11px;color:#8a949e}.job-composer-actions .button{min-width:150px}.jobs-grid{grid-template-columns:minmax(0,1fr)}.jobs-register{min-width:0}.job-create{display:none}@media(max-width:900px){.job-composer-grid{grid-template-columns:1fr}.job-composer-wide{grid-column:auto}.job-composer-head{flex-direction:column}.job-composer-actions{align-items:stretch;flex-direction:column}.job-composer-actions .button{width:100%}}@media(max-width:620px){.job-composer-shell{padding:16px;border-radius:18px}.job-pair{grid-template-columns:1fr}.job-card-head-action{align-items:flex-start;gap:12px;flex-direction:column}.job-card-head-action .task-inline-action{width:100%}}


/* v0.33.1 — collapsible navigation + company branding */
.sidebar-brand-row{display:flex;align-items:center;gap:8px}.sidebar-brand-row .app-logo{flex:1;min-width:0;padding-bottom:23px}.sidebar-toggle{flex:0 0 30px;width:30px;height:30px;margin:-18px 0 5px;border:1px solid #2b3138;border-radius:9px;background:#171b20;color:#aeb5bc;font:700 20px/1 inherit;cursor:pointer}.sidebar-toggle:hover{background:#20262d;color:#fff}.brand-full-logo{max-width:138px;max-height:34px;object-fit:contain}.brand-compact-logo{width:34px;height:34px;border-radius:10px;object-fit:contain}.brand-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar .platinum-symbol.small{background:var(--company-brand-primary,#f3f4f4);color:var(--company-brand-accent,#11161b)}.app-nav>a.active{box-shadow:inset 3px 0 0 var(--company-brand-primary,#f3f4f4)}
.app-layout.sidebar-collapsed{grid-template-columns:78px minmax(0,1fr)}.sidebar-collapsed .app-sidebar{padding-left:12px;padding-right:12px}.sidebar-collapsed .sidebar-brand-row{justify-content:center;flex-direction:column}.sidebar-collapsed .sidebar-brand-row .app-logo{justify-content:center;padding:0}.sidebar-collapsed .brand-full-logo,.sidebar-collapsed .brand-name,.sidebar-collapsed .app-nav a span,.sidebar-collapsed .nav-disabled span,.sidebar-collapsed .nav-disabled em,.sidebar-collapsed .sidebar-user div{display:none}.sidebar-collapsed .app-nav>a,.sidebar-collapsed .nav-disabled{justify-content:center;padding:0}.sidebar-collapsed .nav-section{font-size:0;text-align:center;padding-left:0;padding-right:0}.sidebar-collapsed .nav-section:after{content:"•••";font-size:10px;letter-spacing:.08em}.sidebar-collapsed .sidebar-user{justify-content:center;padding-left:0;padding-right:0}.sidebar-collapsed .sidebar-toggle{margin:2px 0 8px}.branding-kit-card{margin-top:18px;padding:24px;border:1px solid #e0e5e9;border-radius:20px;background:#fff}.branding-kit-card .section-heading p{margin:6px 0 0;color:#7a838c;font-size:12px}.branding-kit-form{margin-top:18px}.branding-fields{display:grid;grid-template-columns:minmax(0,1.8fr) 160px 160px;gap:12px}.branding-assets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.branding-kit-form label{display:grid;gap:7px}.branding-kit-form label>span{font-size:10px;font-weight:800;color:#59636e;text-transform:uppercase;letter-spacing:.06em}.branding-kit-form input[type=text],.branding-kit-form input:not([type]){height:46px;border:1px solid #dce2e7;border-radius:12px;padding:0 13px}.branding-kit-form input[type=color]{width:100%;height:46px;padding:4px;border:1px solid #dce2e7;border-radius:12px;background:#fff}.branding-assets label{padding:14px;border:1px dashed #d6dde3;border-radius:14px}.branding-assets small{color:#8b949d;overflow-wrap:anywhere}.branding-actions{display:flex;align-items:center;gap:10px;margin-top:18px}.branding-actions form{margin:0}@media(max-width:900px){.branding-fields,.branding-assets{grid-template-columns:1fr}.app-layout.sidebar-collapsed{grid-template-columns:78px minmax(0,1fr)}}@media(max-width:640px){.sidebar-toggle{display:none}.app-layout.sidebar-collapsed{display:block}}


/* v0.34 — Cash & Petty Cash */
.cash-shell{max-width:1500px;margin:0 auto}.cash-hero{display:flex;justify-content:space-between;gap:24px;padding:30px;border-radius:22px;background:#12161b;color:#fff}.cash-hero h1{margin:8px 0;font-size:36px;letter-spacing:-.04em}.cash-hero p{margin:0;color:#9ea6ae}.cash-balance-stack{display:flex;gap:10px;align-items:stretch}.cash-balance-stack>div{min-width:130px;padding:14px 16px;border:1px solid #2b3138;border-radius:14px;background:#181d23}.cash-balance-stack span,.cash-balance-stack strong{display:block}.cash-balance-stack span{font-size:9px;color:#7d858e;font-weight:900}.cash-balance-stack strong{margin-top:6px;font-size:18px}.cash-account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:16px}.cash-account-grid article{padding:18px;border:1px solid #e0e5e9;border-radius:16px;background:#fff}.cash-account-grid article>span{font-size:9px;font-weight:900;color:#8a939b}.cash-account-grid h3{margin:6px 0}.cash-account-grid strong{display:block;font-size:24px}.cash-account-grid small{display:block;margin-top:8px;color:#7c858e}.cash-workspace-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.cash-workspace-grid.cash-lower{grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr)}.cash-panel{padding:22px;border:1px solid #e0e5e9;border-radius:18px;background:#fff;min-width:0}.cash-form{display:grid;gap:12px;margin-top:16px}.cash-form label{display:grid;gap:6px}.cash-form label>span{font-size:10px;font-weight:800;color:#5d6771;text-transform:uppercase}.cash-form input,.cash-form select,.cash-form textarea{width:100%;min-width:0;border:1px solid #dbe1e6;border-radius:11px;background:#fff;padding:11px 12px;font:inherit}.cash-form textarea{min-height:84px;resize:vertical}.cash-recon-list article{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(180px,.8fr);gap:14px;align-items:center;padding:13px 0;border-top:1px solid #edf0f2}.cash-recon-list article:first-of-type{border-top:0}.cash-recon-list small,.cash-recon-list span{display:block;color:#7f8891;font-size:10px}.cash-recon-list form{display:flex;gap:6px}.cash-recon-list form input{min-width:0;border:1px solid #dbe1e6;border-radius:9px;padding:8px}.cash-empty{color:#8b949d}.cash-ledger{margin-top:16px}.cash-table{overflow-x:auto}.cash-table-head,.cash-table-row{display:grid;grid-template-columns:110px 1fr 1fr 1.4fr 150px;gap:12px;align-items:center;min-width:760px;padding:11px 0}.cash-table-head{font-size:9px;font-weight:900;color:#8a939b;text-transform:uppercase}.cash-table-row{border-top:1px solid #edf0f2;font-size:12px}.cash-table-row strong{text-align:right}@media(max-width:1100px){.cash-workspace-grid{grid-template-columns:1fr 1fr}.cash-workspace-grid>section:last-child{grid-column:1/-1}}@media(max-width:760px){.cash-hero{display:block}.cash-balance-stack{margin-top:18px;flex-wrap:wrap}.cash-workspace-grid,.cash-workspace-grid.cash-lower{grid-template-columns:1fr}.cash-workspace-grid>section:last-child{grid-column:auto}.cash-recon-list article{grid-template-columns:1fr}.cash-recon-list form{display:grid}.cash-hero h1{font-size:30px}}

/* Milestone 34.2 — Cash account first-run setup */
.cash-hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end}.cash-create-cta{background:#fff;color:#12161b;border-color:#fff;text-decoration:none}.cash-first-run{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;margin-top:16px;padding:22px 24px;border:1px solid #dce3e8;border-radius:18px;background:#fff}.cash-first-run-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#12161b;color:#fff;font-size:28px;font-weight:500}.cash-first-run h2{margin:5px 0 7px;font-size:24px}.cash-first-run p{margin:0;max-width:720px;color:#68737d}.cash-operations-notice{display:flex;gap:10px;align-items:center;margin-top:16px;padding:13px 16px;border:1px solid #e3e7ea;border-radius:13px;background:#f7f8f9;color:#66717b}.cash-operations-notice strong{color:#20262d}.cash-operations-disabled .cash-panel{background:#f9fafb}.cash-form fieldset{display:grid;gap:12px;margin:0;padding:0;border:0;min-width:0}.cash-form fieldset:disabled{opacity:.5}.cash-form fieldset:disabled input,.cash-form fieldset:disabled select,.cash-form fieldset:disabled textarea,.cash-form fieldset:disabled button{cursor:not-allowed}.cash-account-setup{margin-top:16px;scroll-margin-top:88px;padding:26px}.cash-setup-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.cash-setup-heading h2{margin:5px 0 6px}.cash-setup-heading p{margin:0;color:#737e88}.cash-setup-badge{padding:7px 10px;border-radius:999px;background:#f1f3f5;color:#56616b;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.cash-setup-form{max-width:980px}.cash-active-toggle .cash-toggle-line{display:flex;align-items:center;gap:9px;min-height:45px;padding:10px 12px;border:1px solid #dbe1e6;border-radius:11px;background:#fff}.cash-active-toggle input{width:auto}.cash-active-toggle b{font-size:13px;color:#27313a}.cash-setup-actions{display:flex;justify-content:flex-end;padding-top:4px}.cash-account-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.cash-account-card-top>span{font-size:9px;font-weight:900;color:#8a939b}.cash-account-card-top em{font-style:normal;font-size:9px;font-weight:800;color:#68737c;background:#f3f5f6;border-radius:999px;padding:5px 7px}.cash-account-grid article.inactive{opacity:.62}.cash-workspace-grid.cash-lower{grid-template-columns:1fr}
@media(max-width:760px){.cash-first-run{grid-template-columns:1fr}.cash-first-run .button{width:100%;justify-content:center}.cash-hero-actions{justify-content:flex-start;margin-top:18px}.cash-setup-heading{display:block}.cash-setup-badge{display:inline-block;margin-top:10px}.cash-setup-actions .button{width:100%;justify-content:center}}

/* Milestone 34.3 — Cash setup responsive polish */
.cash-setup-form{width:100%;max-width:none}
.cash-setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;margin-top:18px}
.cash-setup-field{display:grid;gap:7px;min-width:0}
.cash-setup-field>span:first-child{font-size:10px;font-weight:800;color:#5d6771;text-transform:uppercase;letter-spacing:.01em}
.cash-setup-field input,.cash-setup-field select{width:100%;min-width:0;max-width:100%;height:48px;border:1px solid #dbe1e6;border-radius:12px;background:#fff;padding:0 14px;font:inherit;box-sizing:border-box}
.cash-setup-field input:disabled{color:#4a5560;background:#f7f8f9;opacity:1}
.cash-setup-status .cash-toggle-line{display:flex;align-items:center;gap:10px;width:100%;min-width:0;min-height:48px;padding:11px 14px;border:1px solid #dbe1e6;border-radius:12px;background:#fff;box-sizing:border-box}
.cash-setup-status .cash-toggle-line input{width:auto;height:auto;min-width:auto;margin:0}
.cash-setup-status .cash-toggle-line b{min-width:0;overflow-wrap:anywhere}
@media(max-width:980px){.cash-setup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:760px){.cash-setup-grid{grid-template-columns:1fr}.cash-account-setup{padding:20px}.cash-first-run{padding:20px}}

/* Milestone 35 — Finance Desk */
.finance-desk{display:grid;gap:20px}
.finance-desk-hero{background:#11161d;color:#fff;border-radius:28px;padding:30px 34px;display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.finance-desk-hero h1{font-size:clamp(2rem,4vw,3.2rem);margin:8px 0}
.finance-desk-hero p{color:#aeb7c2;max-width:760px;margin:0;line-height:1.6}
.finance-scope-pill{border:1px solid #303844;background:#181e26;border-radius:14px;padding:12px 16px;font-weight:800;white-space:nowrap}
.finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.finance-kpis article{background:#fff;border:1px solid #dfe4ea;border-radius:22px;padding:22px;min-width:0}
.finance-kpis article>span:first-child{display:block;color:#697586;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}
.finance-money-line{display:block;font-size:1.15rem;margin:5px 0;white-space:nowrap}
.finance-money-line strong{font-size:.72rem;letter-spacing:.06em;color:#697586;margin-right:5px}
.finance-empty-value{font-size:1.4rem;color:#a0a8b2}
.finance-desk-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:18px}
.finance-attention a{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid #edf0f3;color:inherit;text-decoration:none}
.finance-attention a:last-child{border-bottom:0}.finance-attention a strong{background:#111923;color:#fff;min-width:36px;text-align:center;padding:7px 10px;border-radius:12px}
.finance-open-row{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #edf0f3}.finance-open-row>span{font-weight:750}
.finance-open-row>div{text-align:right}.finance-quick-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.finance-quick-links a{padding:9px 12px;border:1px solid #dfe4ea;border-radius:12px;text-decoration:none;color:inherit;font-weight:750}
.finance-activity-list>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid #edf0f3}.finance-activity-list>div:last-child{border-bottom:0}.finance-activity-list small{display:block;color:#778392;margin-top:4px}.finance-direction{font-size:.7rem;font-weight:900;padding:6px 8px;border-radius:9px;background:#eef2f5}.finance-direction.in{background:#e9f7ef}.finance-direction.out{background:#f9eeee}
@media(max-width:1100px){.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-desk-grid{grid-template-columns:1fr}}
@media(max-width:680px){.finance-desk-hero{padding:24px;display:block}.finance-scope-pill{display:inline-block;margin-top:18px}.finance-kpis{grid-template-columns:1fr}.finance-activity-list>div{grid-template-columns:auto minmax(0,1fr)}.finance-activity-list>div>strong:last-child{grid-column:2}}

/* v0.36 Finance Reports */
.finrep-page{display:grid;gap:18px;min-width:0}.finrep-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.finrep-hero h1{margin:4px 0 6px;font-size:34px;letter-spacing:-.035em}.finrep-hero p{margin:0;color:#718091;max-width:760px}.finrep-filter{display:flex;align-items:end;justify-content:space-between;gap:18px;padding:16px 18px}.finrep-filter form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.finrep-filter label span{display:block;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#6f7d8d;margin-bottom:6px}.finrep-filter input{border:1px solid #d8e0e6;border-radius:10px;padding:10px 12px;background:#fff}.finrep-filter small{color:#7a8795}.finrep-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;min-width:0}.finrep-grid>.panel{min-width:0}.finrep-aging .panel{overflow:hidden}.finrep-table-wrap{overflow:auto;margin-top:12px}.finrep-table{border-collapse:collapse;width:100%;min-width:650px}.finrep-table th,.finrep-table td{padding:11px 10px;border-bottom:1px solid #e8edf0;text-align:right;white-space:nowrap}.finrep-table th:first-child,.finrep-table td:first-child{text-align:left}.finrep-table th{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#778491}.finrep-empty{color:#8a949e}.finrep-cashflow,.finrep-recon{display:grid;gap:12px;margin-top:14px}.finrep-cashflow>div{display:grid;grid-template-columns:70px repeat(3,minmax(0,1fr));gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #e8edf0}.finrep-cashflow span{display:grid;gap:2px}.finrep-cashflow small,.finrep-recon small{color:#798695}.finrep-recon>div{display:grid;gap:7px}.finrep-recon header{display:flex;justify-content:space-between;gap:10px}.finrep-recon progress{width:100%;height:9px}.finrep-expenses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:12px}.finrep-expenses>div{border:1px solid #e3e8ec;border-radius:14px;padding:14px}.finrep-expenses h3{margin:0 0 8px}.finrep-exp-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #edf0f2}.finrep-exp-row span{display:grid;gap:2px}.finrep-exp-row small{color:#84909b}.finrep-section-head{display:flex;justify-content:space-between;align-items:start;gap:12px}.finrep-section-head a{font-weight:800;text-decoration:none}.finrep-list{display:grid;margin-top:10px}.finrep-list>a{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid #e8edf0;text-decoration:none;color:inherit}.finrep-list>a span{display:grid;gap:3px;min-width:0}.finrep-list>a small{color:#7c8996}.finrep-list>a b{white-space:nowrap}@media(max-width:1120px){.finrep-grid{grid-template-columns:1fr}.finrep-expenses{grid-template-columns:1fr 1fr}}@media(max-width:720px){.finrep-hero,.finrep-filter{flex-direction:column;align-items:stretch}.finrep-filter form{display:grid;grid-template-columns:1fr 1fr}.finrep-filter form .button{grid-column:1/-1}.finrep-expenses{grid-template-columns:1fr}.finrep-cashflow>div{grid-template-columns:1fr 1fr}.finrep-list>a{align-items:flex-start;flex-direction:column}.finrep-hero h1{font-size:29px}}
