/* State Home Improvement Inc. Contractor Manager · scoped modern operations UI */
#shim-app,#shim-app *{box-sizing:border-box}#shim-app{--navy:#112d48;--navydeep:#0d2236;--teal:#B78B26;--teallight:#eaf8f6;--paper:#f6f8fa;--border:#e3e9ef;--muted:#738499;--ink:#183046;--white:#fff;font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif;color:var(--ink);background:#f7f9fc;border-radius:14px;overflow:hidden;min-height:720px;text-align:left}#shim-app button,#shim-app input,#shim-app select,#shim-app textarea{font-family:inherit}#shim-app button{cursor:pointer}#shim-app h1,#shim-app h2,#shim-app h3,#shim-app p{margin:0}#shim-app .shim-shell{display:grid;grid-template-columns:252px minmax(0,1fr);min-height:750px}#shim-app .shim-sidebar{background:linear-gradient(180deg,#132f48,#0c253b 85%);padding:26px 15px;color:#fff;display:flex;flex-direction:column;min-height:750px}#shim-app .shim-brand{display:flex;gap:10px;align-items:center;margin:0 8px 49px}#shim-app .shim-brand-icon{background:#fbfdfc;color:#123049;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:25px;font-weight:900;letter-spacing:-3px;box-shadow:0 8px 22px #0002}#shim-app .shim-brand-icon span{color:#D4B04C;font-size:20px}#shim-app .shim-brand strong{font-size:14px;letter-spacing:1.7px;display:block;white-space:nowrap;line-height:1.25}#shim-app .shim-brand span{font-size:9px;color:#afcbda;letter-spacing:1.4px;white-space:nowrap}#shim-app .shim-nav-label{font-size:10px;letter-spacing:2.4px;color:#718da2;padding:0 14px;margin:0 0 12px}#shim-app .shim-sidebar nav{display:flex;flex-direction:column;gap:4px}#shim-app .shim-navitem{background:transparent;border:1px solid transparent;border-radius:9px;min-height:42px;display:flex;align-items:center;gap:11px;padding:9px 12px;color:#b7ccd9;text-align:left;font-size:12.5px;font-weight:600;transition:background .15s,color .15s}#shim-app .shim-navitem:hover{background:#ffffff12;color:white}#shim-app .shim-navitem.active{background:#ffffff19;color:#fff;border-color:#ffffff17;box-shadow:inset 3px 0 0 #D4B04C}#shim-app .shim-nav-icon{font-size:18px;width:21px;line-height:1;text-align:center;font-weight:400}#shim-app .shim-sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff17;padding:23px 7px 5px;display:flex;gap:10px;align-items:center}#shim-app .shim-avatar{background:#B78B26;border-radius:9px;height:34px;width:34px;display:grid;place-items:center;font-weight:800;color:white}#shim-app .shim-sidebar-bottom strong{font-size:12px;display:block}#shim-app .shim-sidebar-bottom div span{font-size:10px;color:#95b1c2}#shim-app .shim-main{min-width:0;display:flex;flex-direction:column}#shim-app .shim-topbar{height:67px;min-height:67px;background:white;border-bottom:1px solid var(--border);padding:0 31px;display:flex;align-items:center;justify-content:space-between;font-size:12px}#shim-app .shim-topbar>div{display:flex;align-items:center;gap:13px}#shim-app .shim-topbar strong{font-size:12px}#shim-app .shim-top-welcome{letter-spacing:1.2px;font-size:10px;color:#71869b;font-weight:700}#shim-app .shim-separator{color:#bac7d1}#shim-app .shim-topright{font-size:9px;letter-spacing:1px;color:#7890a1;font-weight:700}#shim-app .shim-live-dot{background:#25b79c;width:7px;height:7px;border-radius:50%}#shim-app .shim-topdate{border-left:1px solid var(--border);padding-left:14px;font-size:11px;letter-spacing:0;color:#3a5168}#shim-app .shim-content{padding:31px 30px 38px;flex:1;min-width:0}#shim-app .shim-eyebrow{font-weight:800;letter-spacing:2.1px;font-size:10px;color:#178e94;margin-bottom:9px}#shim-app h1{font-size:27px;line-height:1.2;font-weight:750;color:#112d48;letter-spacing:-.75px}#shim-app h2{font-size:15px;font-weight:750;color:#15334f}#shim-app .shim-intro,#shim-app .shim-page-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:25px}#shim-app .shim-intro p,#shim-app .shim-page-head p{color:var(--muted);font-size:12px;margin-top:10px}#shim-app .shim-head-buttons{display:flex;gap:8px}#shim-app .shim-btn{border:1px solid #d8e2e8;border-radius:8px;background:white;color:#25425b;font-size:11px;font-weight:750;letter-spacing:.1px;padding:11px 15px;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;white-space:nowrap;line-height:1.2;min-height:36px}#shim-app .shim-btn:hover{background:#f0f7f9}#shim-app .shim-btn.primary{background:#148f92;border-color:#148f92;color:white;box-shadow:0 5px 12px #1d99961c}#shim-app .shim-btn.primary:hover{background:#087e82}#shim-app .shim-btn.subtle{background:#f9fbfd;border-color:#e1e8ed}#shim-app .shim-btn.ghost{background:#f4f8fb}#shim-app .shim-btn.full{width:100%}#shim-app .shim-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 20px}#shim-app .shim-kpi{background:white;border:1px solid var(--border);border-radius:12px;padding:18px 17px;box-shadow:0 4px 12px #183e5c04;min-width:0}#shim-app .shim-kpi-top{display:flex;justify-content:space-between;align-items:center;gap:5px;color:#74889a;font-size:10px;font-weight:700}#shim-app .shim-kpi-symbol{border-radius:8px;background:#f0f5f9;padding:5px 8px;font-size:17px;font-weight:400;color:#52738b}#shim-app .shim-kpi.green .shim-kpi-symbol{background:#e8f7f1;color:#168b64}#shim-app .shim-kpi.amber .shim-kpi-symbol{background:#fff6e9;color:#d99b36}#shim-app .shim-kpi.blue .shim-kpi-symbol{background:#eaf3fc;color:#517db2}#shim-app .shim-kpi-number{font-size:25px;line-height:1.2;font-weight:750;letter-spacing:-.9px;margin:12px 0 5px;white-space:nowrap}#shim-app .shim-kpi small{display:block;font-size:10px;color:#8a9aaa}#shim-app .shim-two-col{display:grid;grid-template-columns:1.25fr 1fr;gap:19px;margin-bottom:20px;align-items:start}#shim-app .shim-panel{background:#fff;border:1px solid #e4eaf0;border-radius:13px;padding:21px;min-width:0;margin-bottom:0;box-shadow:0 4px 16px #1c375405}#shim-app .shim-panel>h2{margin-bottom:11px}#shim-app .shim-panel-header{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:15px}#shim-app .shim-panel-header p{font-size:11px;color:#8b9aaa;margin-top:4px}#shim-app .shim-chart{height:212px;display:flex;margin-top:23px;gap:10px}#shim-app .shim-gridlines{height:177px;display:flex;flex-direction:column;justify-content:space-between;font-size:9px;color:#9eabba;min-width:58px}#shim-app .shim-bar-area{flex:1;border-bottom:1px solid #e4ecf0;background:repeating-linear-gradient(to top,#edf1f4 0px,#edf1f4 1px,transparent 1px,transparent 87px);display:grid;grid-template-columns:repeat(6,1fr);align-items:end;gap:7px;height:177px}#shim-app .shim-bar-col{height:100%;display:flex;justify-content:flex-end;align-items:center;flex-direction:column;position:relative}#shim-app .shim-bars{display:flex;justify-content:center;align-items:flex-end;height:100%;width:100%;gap:4px;padding:0 4px}#shim-app .shim-bars i{display:block;width:18px;min-width:4px;max-width:24px;border-radius:4px 4px 0 0}#shim-app .shim-bars .paid,#shim-app .shim-legend .paid{background:#178f90}#shim-app .shim-bars .cost,#shim-app .shim-legend .cost{background:#bbdce0}#shim-app .shim-bar-col small{position:absolute;top:184px;font-size:9px;color:#92a2b0}#shim-app .shim-legend{display:flex;gap:17px;justify-content:center;color:#8a9daa;font-size:10px;margin:23px 0 0}#shim-app .shim-legend span{display:flex;align-items:center;gap:7px}#shim-app .shim-legend i{width:9px;height:9px;display:inline-block;border-radius:2px}#shim-app .shim-brief{display:flex;flex-direction:column;gap:0;margin:0 0 11px}#shim-app .shim-brief>div{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid #edf1f4;font-size:12px;color:#6d8396}#shim-app .shim-brief b{font-size:17px;color:#1b3e5b}#shim-app .shim-tablewrap{overflow-x:auto;margin:0 -1px}#shim-app .shim-table{border-collapse:collapse;width:100%;min-width:520px}#shim-app .shim-table th{font-size:10px;letter-spacing:.1px;color:#7990a2;font-weight:750;padding:11px 10px;text-align:left;background:#f7f9fb;white-space:nowrap;border-bottom:1px solid #e6edf2}#shim-app .shim-table td{padding:13px 10px;border-bottom:1px solid #edf1f4;font-size:11px;color:#3b5067;vertical-align:middle}#shim-app .shim-table td strong{font-size:11px;color:#17334e;display:block}#shim-app .shim-table td small{font-size:10px;color:#8da0ad;display:block;max-width:240px;overflow-wrap:anywhere}#shim-app .shim-table tbody tr:last-child td{border-bottom:0}#shim-app .shim-pill{border-radius:20px;padding:5px 10px;font-size:10px;background:#eaf3fb;color:#47769b;font-weight:650;display:inline-block;white-space:nowrap}#shim-app .shim-pill-new,#shim-app .shim-pill-scheduled,#shim-app .shim-pill-open{background:#edf4fc;color:#497aac}#shim-app .shim-pill-won,#shim-app .shim-pill-completed,#shim-app .shim-pill-accepted,#shim-app .shim-pill-paid{background:#eaf8ef;color:#27875b}#shim-app .shim-pill-lost,#shim-app .shim-pill-void,#shim-app .shim-pill-cancelled{background:#f8eded;color:#b96869}#shim-app .shim-pill-in-progress,#shim-app .shim-pill-sent{background:#fff4e5;color:#a77a37}#shim-app .shim-muted{color:#7a8da0;font-size:12px;margin:7px 0 17px!important}#shim-app .shim-fineprint{font-size:10px;color:#93a3b1;margin:13px 0 0!important;line-height:1.7}#shim-app .shim-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e8edf1;padding:15px 30px;background:white;color:#90a0ae;font-size:9px;letter-spacing:.3px}#shim-app .shim-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 20px}#shim-app .shim-toolbar input{flex:1;max-width:420px;padding:11px 13px;border:1px solid #e0e7ef;border-radius:7px;font-size:12px;outline:none;min-width:0;background:white;color:#15334f}#shim-app input:focus,#shim-app select:focus,#shim-app textarea:focus{outline:2px solid #b1e8e2;outline-offset:1px}#shim-app .shim-actions{display:flex;gap:5px;white-space:nowrap}#shim-app .shim-iconbutton{background:#f3f7fa;border:1px solid #e3e9ed;color:#365a70;padding:5px 8px;min-width:29px;min-height:27px;border-radius:6px;font-size:11px;font-weight:800}#shim-app .shim-iconbutton:hover{background:#e2f0f2}#shim-app .shim-iconbutton.danger{color:#bd7272}#shim-app .shim-positive{color:#168a65!important}#shim-app .shim-empty{text-align:center;padding:56px 15px;color:#607789}#shim-app .shim-empty>div{font-size:38px;color:#a3b7c1;margin-bottom:6px}#shim-app .shim-empty strong{display:block;font-size:14px}#shim-app .shim-empty p{font-size:12px;margin-top:7px}#shim-app .shim-modalback{position:fixed;inset:0;background:rgba(11,25,42,.65);z-index:999999;display:flex;align-items:center;justify-content:center;padding:18px}#shim-app .shim-modal{width:min(770px,100%);max-height:min(90vh,950px);background:#fff;border-radius:14px;box-shadow:0 30px 75px #07182780;display:flex;flex-direction:column;overflow:hidden}#shim-app .shim-modal-head{background:#132f48;color:white;padding:23px 26px;display:flex;justify-content:space-between;align-items:center;gap:15px}#shim-app .shim-modal-head h2{font-size:21px;color:#fff;text-transform:capitalize}#shim-app .shim-modal-head small{display:block;color:#8ec5c9;letter-spacing:1.6px;font-size:9px;margin-bottom:5px}#shim-app .shim-close{background:none;border:0;color:#fff;font-size:29px;line-height:1;min-width:30px}#shim-app .shim-modal-body{overflow:auto;padding:24px 26px}#shim-app .shim-formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#shim-app .shim-field{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:#496178;min-width:0}#shim-app .shim-field span{display:block}#shim-app .shim-field input,#shim-app .shim-field select,#shim-app .shim-field textarea{width:100%;padding:11px 12px;border-radius:7px;border:1px solid #dfe6eb;background:#fff;color:#1e3951;font-size:12px;min-height:39px;box-shadow:none}#shim-app .shim-field textarea{resize:vertical}#shim-app .shim-span{grid-column:1/-1}#shim-app .shim-modalfoot{display:flex;justify-content:flex-end;align-items:center;gap:9px;border-top:1px solid #e6edf1;padding-top:17px;margin-top:20px}#shim-app .shim-formsection{display:flex;justify-content:space-between;align-items:center;margin:5px 0 12px}#shim-app .shim-line{display:grid;grid-template-columns:minmax(140px,1fr) 65px 80px 85px 30px;gap:6px;align-items:center;margin-bottom:7px}#shim-app .shim-line input{border-radius:6px;padding:8px;border:1px solid #dfe7eb;min-width:0;width:100%;font-size:11px}#shim-app .shim-line strong{font-size:11px;text-align:right}#shim-app .shim-doc-totals{display:flex;flex-direction:column;align-items:flex-end;gap:6px;border-top:1px solid #e3eaf0;padding-top:15px}#shim-app .shim-doc-totals div{width:240px;display:flex;justify-content:space-between;color:#567087;font-size:12px}#shim-app .shim-doc-totals .shim-total-final{color:#15334f;font-size:15px;font-weight:800;padding-top:9px;border-top:1px solid #d6e2ea;margin-top:6px}#shim-app .shim-calc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:15px}#shim-app .shim-calc-hero{background:#12314b;color:#fff;border-radius:10px;padding:25px;margin:12px 0 17px;display:flex;flex-direction:column;gap:8px}#shim-app .shim-calc-hero small{color:#D4B04C;font-size:10px;letter-spacing:1.8px;font-weight:800}#shim-app .shim-calc-hero strong{font-size:33px;line-height:1.2;letter-spacing:-1.3px}#shim-app .shim-calc-hero span{font-size:11px;color:#b3cbd7}#shim-app .shim-result-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #edf1f4;color:#697d8f;font-size:11px}#shim-app .shim-result-row b{font-size:12px;color:#1d4059}#shim-app .shim-calc-output .full{margin-top:20px}#shim-app .shim-settings-panel{max-width:850px}#shim-app .shim-settings-panel .shim-formgrid{margin-bottom:5px}#shim-app .shim-checkbox{display:flex;flex-direction:row;align-items:center;gap:10px}#shim-app .shim-checkbox input{width:auto;min-height:unset}#shim-app .shim-toast{position:fixed;z-index:1000001;bottom:22px;right:22px;background:#113c40;color:white;padding:14px 19px;border-radius:10px;box-shadow:0 15px 25px #14394330;font-size:13px}#shim-app .shim-loading,#shim-app .shim-error{padding:50px;text-align:center}#shim-app .shim-error{color:#a33434}
@media(max-width:1150px){#shim-app .shim-shell{grid-template-columns:210px minmax(0,1fr)}#shim-app .shim-content{padding:24px 21px}#shim-app .shim-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#shim-app .shim-kpi-number{font-size:22px}#shim-app .shim-sidebar{padding:22px 10px}#shim-app .shim-two-col{grid-template-columns:1fr}#shim-app .shim-brand strong{font-size:12px}#shim-app .shim-brand span{font-size:8px}}
@media(max-width:760px){#shim-app{border-radius:10px}#shim-app .shim-shell{display:block}#shim-app .shim-sidebar{min-height:unset;padding:12px 12px 8px;display:block;position:relative}#shim-app .shim-brand{margin:2px 3px 13px}#shim-app .shim-nav-label,#shim-app .shim-sidebar-bottom{display:none}#shim-app .shim-sidebar nav{display:flex;flex-direction:row;overflow-x:auto;padding:1px 0 9px;gap:7px;scrollbar-width:thin}#shim-app .shim-navitem{flex:0 0 auto;border:1px solid #ffffff19;padding:8px 11px;min-height:38px;font-size:11px}#shim-app .shim-nav-icon{font-size:14px;width:auto}#shim-app .shim-topbar{height:49px;min-height:49px;padding:0 17px}#shim-app .shim-top-welcome,#shim-app .shim-topright{display:none!important}#shim-app .shim-content{padding:20px 13px 28px}#shim-app .shim-intro,#shim-app .shim-page-head{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:18px}#shim-app h1{font-size:22px}#shim-app .shim-kpi-grid{gap:9px}#shim-app .shim-kpi{padding:12px}#shim-app .shim-kpi-number{font-size:19px}#shim-app .shim-kpi-top{font-size:9px}#shim-app .shim-panel{padding:15px}#shim-app .shim-head-buttons{width:100%}#shim-app .shim-head-buttons button{flex:1}#shim-app .shim-chart{height:190px}#shim-app .shim-footer{padding:12px;font-size:8px}#shim-app .shim-footer span{display:none}#shim-app .shim-modalback{padding:10px}#shim-app .shim-modal-head{padding:18px}#shim-app .shim-modal-body{padding:17px}#shim-app .shim-line{grid-template-columns:minmax(90px,1fr) 48px 60px 75px 28px;gap:4px}#shim-app .shim-line input{padding:7px 4px;font-size:10px}#shim-app .shim-line strong{font-size:10px}#shim-app .shim-formgrid{gap:11px}}
@media(max-width:435px){#shim-app .shim-kpi-number{font-size:17px}#shim-app .shim-kpi-symbol{padding:3px 5px}#shim-app .shim-toolbar{flex-direction:column;align-items:stretch}#shim-app .shim-toolbar input{max-width:none}#shim-app .shim-field{grid-column:1/-1}#shim-app .shim-formgrid{grid-template-columns:1fr}#shim-app .shim-calc-grid{grid-template-columns:1fr}#shim-app .shim-calculated{max-width:100%}}

@media(max-width:760px){#shim-app .shim-separator{display:none}#shim-app .shim-bars{gap:2px;padding:0 1px}#shim-app .shim-bars i{width:9px;min-width:3px}#shim-app .shim-chart{gap:5px}#shim-app .shim-gridlines{min-width:55px}}

@media(max-width:760px){#shim-app .shim-bar-area,#shim-app .shim-bar-col,#shim-app .shim-bars{min-width:0}#shim-app .shim-bar-area{gap:2px}#shim-app #shim-lines{overflow-x:auto;padding-bottom:6px}#shim-app .shim-line{min-width:340px}}

/* Version 1.2 — immersive, private frontend workspace and business branding */
body.shim-standalone{margin:0!important;background:#f5f8fb!important;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
body.shim-standalone .shim-fullscreen{min-height:100vh;width:100%;margin:0;padding:0}
body.shim-standalone #shim-app{border-radius:0;min-height:100vh}
body.shim-standalone #shim-app .shim-shell{min-height:100vh}
body.shim-standalone #shim-app .shim-sidebar{min-height:100vh}
#shim-app .shim-sidebar-logo{object-fit:contain;width:70px;max-height:52px;background:white;padding:5px;border-radius:9px;flex:none}
#shim-app .shim-logout{font-size:10px!important;text-decoration:none;color:#adddd6!important;display:block;white-space:nowrap;padding-top:2px}
#shim-app .shim-signout-top{font-weight:750;font-size:11px;color:#B20B19;text-decoration:none;border:1px solid #d5eaec;border-radius:7px;padding:8px 12px;white-space:nowrap;margin-left:18px}
#shim-app .shim-logo-form{display:flex;align-items:center;gap:22px;border:1px solid #e4eaf0;border-radius:12px;padding:17px;margin:0 0 26px;background:#f9fbfd}
#shim-app .shim-logo-preview{width:190px;height:108px;flex:none;display:flex;align-items:center;justify-content:center;border:1px solid #e1e8ef;border-radius:10px;background:white;overflow:hidden;padding:8px}
#shim-app .shim-logo-preview img{width:100%;height:100%;object-fit:contain}
#shim-app .shim-logo-placeholder{font-size:15px;font-weight:800;letter-spacing:1px;color:#123149}
#shim-app .shim-logo-details{flex:1;min-width:0;display:flex;flex-direction:column;gap:9px}
#shim-app .shim-logo-details h2{margin:0}
#shim-app .shim-logo-details .shim-muted{margin:0!important}
#shim-app .shim-logo-details input[type=file]{background:#fff;max-width:100%;border:1px solid #dbe5ec;border-radius:8px;padding:9px;font-size:12px}
#shim-app .shim-logo-details .shim-btn{align-self:flex-start}
#shim-app .shim-logo-details small{color:#8b9bab;font-size:10px}
.shim-auth-wrap{min-height:100vh;display:grid;grid-template-columns:minmax(440px,1fr) minmax(350px,.82fr);background:#fff}
.shim-auth-card{width:min(100%,520px);padding:65px 44px 65px;align-self:center;justify-self:center;color:#1c354c}
.shim-auth-brand{display:flex;align-items:center;gap:13px;margin-bottom:64px}
.shim-auth-brand img{width:90px;height:60px;object-fit:contain;border-radius:7px;background:white}
.shim-auth-mark{width:55px;height:55px;display:grid;place-items:center;background:#132d47;border-radius:13px;color:white;font-size:33px;font-weight:900;letter-spacing:-5px;box-shadow:0 7px 18px #18375117}
.shim-auth-mark span{color:#D4B04C}
.shim-auth-brand strong,.shim-auth-brand small{display:block;letter-spacing:1px}
.shim-auth-brand strong{font-size:15px;color:#132e48}
.shim-auth-brand small{font-size:9px;color:#7b92a7;margin-top:2px;letter-spacing:1.7px}
.shim-auth-heading .shim-auth-eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:800;color:#B20B19}
.shim-auth-heading h1{font-size:37px;letter-spacing:-1.3px;color:#132e48;margin:8px 0 9px;line-height:1.13}
.shim-auth-heading p{font-size:13px;line-height:1.7;color:#788a9b;margin:0 0 27px}
.shim-auth-error{padding:13px 15px;border-radius:8px;color:#983232;background:#fff1f1;font-size:12px;border:1px solid #f8d7d7}
.shim-auth-form{display:flex;flex-direction:column;gap:17px}
.shim-auth-form label:not(.shim-auth-remember){display:flex;flex-direction:column;gap:7px;color:#36536b;font-size:12px;font-weight:700}
.shim-auth-form input[type=text],.shim-auth-form input[type=password]{height:48px;border:1px solid #dce5ed;border-radius:8px;padding:0 14px;font-size:14px;background:white;color:#153047;width:100%;box-sizing:border-box}
.shim-auth-form input:focus{outline:2px solid #9cddd9;outline-offset:0}
.shim-auth-remember{display:flex;align-items:center;gap:8px;color:#6d8193;font-size:12px}
.shim-auth-form button{padding:15px 21px;background:#B20B19;border:0;border-radius:8px;color:white;display:flex;justify-content:space-between;cursor:pointer;font-size:14px;font-weight:750}
.shim-auth-form button:hover{background:#970814}
.shim-auth-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:11px;margin-top:26px;color:#8b9bab}
.shim-auth-links a{color:#B20B19;text-decoration:none;font-weight:750}
.shim-auth-aside{background:radial-gradient(ellipse at 70% 18%,#1e5573 0,#112d49 47%,#0a2037 100%);color:white;display:flex;align-items:center;justify-content:center;padding:60px}
.shim-auth-aside-content{max-width:410px}
.shim-auth-aside-eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:700;color:#D4B04C}
.shim-auth-aside h2{font-size:clamp(39px,4.8vw,67px);line-height:1.1;letter-spacing:-2px;margin:35px 0 24px;color:white}
.shim-auth-aside p{font-size:17px;color:#b3cedd;line-height:1.6;margin-bottom:85px}
.shim-auth-aside-content>span:last-child{font-size:11px;letter-spacing:1.5px;color:#81aabd}
@media(max-width:900px){.shim-auth-wrap{grid-template-columns:1fr}.shim-auth-aside{display:none}.shim-auth-card{width:min(100%,570px);padding:60px 30px}.shim-auth-brand{margin-bottom:45px}}
@media(max-width:760px){body.shim-standalone #shim-app .shim-sidebar{min-height:auto}#shim-app .shim-logo-form{flex-direction:column;align-items:flex-start}#shim-app .shim-logo-preview{width:100%;max-width:290px}#shim-app .shim-signout-top{font-size:10px;margin-left:auto;padding:7px 9px}#shim-app .shim-sidebar-logo{width:54px;max-height:40px}#shim-app .shim-brand{margin-bottom:14px}}
@media(max-width:480px){.shim-auth-card{padding:35px 23px}.shim-auth-heading h1{font-size:30px}.shim-auth-brand strong{font-size:12px}.shim-auth-brand small{font-size:8px}.shim-auth-links{flex-direction:column}#shim-app .shim-topbar{padding:0 10px}#shim-app .shim-signout-top{font-size:10px}}

.shim-auth-success{background:#e8f9f1;color:#0f6b4a;border:1px solid #b6e6d0;border-radius:9px;padding:13px 16px;font-size:13px}
.shim-password-panel{margin-top:26px;padding:24px;border-radius:16px;background:#f2f7fa;border:1px solid #dce9f0}
.shim-password-panel h2{margin:0 0 9px;font-size:19px}
.shim-password-panel p{margin:0 0 17px}
.shim-password-panel>.shim-btn{margin-top:17px}
@media(max-width:600px){.shim-password-panel{padding:17px}}

/* Official State Home Improvement Inc. orange/navy branding (v1.3). Preserve status colors. */
#shim-app{--teal:#B5121A;--teallight:#fff3e5;--navy:#1c3b59}
#shim-app .shim-btn.primary{background:#D7A027;border-color:#D7A027;box-shadow:0 5px 14px #D7A02726}
#shim-app .shim-btn.primary:hover{background:#d87300}
#shim-app .shim-sidebar{background:linear-gradient(180deg,#1d425f,#112d48 85%)}
#shim-app .shim-navitem.active{box-shadow:inset 3px 0 0 #D7A027}
#shim-app .shim-eyebrow{color:#e47b03}
#shim-app .shim-avatar{background:#D7A027}
#shim-app .shim-kpi.green .shim-kpi-symbol{background:#e8f7f1;color:#168b64}
#shim-app .shim-bars .paid,#shim-app .shim-legend .paid{background:#ef8a19}
#shim-app .shim-logo-form button{background:#D7A027;border-color:#D7A027}
.shim-auth-aside{background:radial-gradient(ellipse at 70% 18%,#28516d 0,#193952 47%,#0a2037 100%)}
.shim-auth-aside-eyebrow{color:#ffae56}
.shim-auth-form button{background:#D7A027!important}
.shim-auth-form button:hover{background:#d87300!important}
.shim-auth-heading .shim-auth-eyebrow{color:#ec8410!important}
.shim-auth-brand img{object-fit:contain}
@media(min-width:900px){.shim-auth-aside{min-height:600px}}

/* Keep unrelated public-facing chat/pop-up widgets from covering the private workspace on mobile. */
body.shim-standalone #tidio-chat,body.shim-standalone #tidio-chat-iframe,body.shim-standalone .chaty-widget,body.shim-standalone #chaty-widget-0,body.shim-standalone .joinchat,body.shim-standalone .tawk-min-container,body.shim-standalone .fb_dialog{display:none!important}

/* Quick pipeline actions added in v1.5. */
.shim-lead-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:195px}
.shim-lead-actions .shim-btn{font-size:11px;padding:7px 8px;white-space:nowrap}
.shim-lead-actions .shim-iconbutton{min-width:30px}
@media(max-width:780px){.shim-lead-actions{min-width:0}.shim-lead-actions .shim-btn{font-size:12px}}

/* State Home Improvement Inc. v1.7 — private notification center (desktop / tablet / mobile) */
#shim-app .shim-topbar{position:relative;z-index:100;gap:10px}
#shim-app .shim-topbar .shim-topright{margin-left:auto}
#shim-app .shim-alerts-wrap{position:relative;flex:0 0 auto;display:block}
#shim-app .shim-alert-bell{position:relative;display:grid;place-items:center;width:43px;height:43px;border:1px solid #dae3ee;background:#f7fafc;color:#173b59;border-radius:12px;cursor:pointer;box-shadow:0 1px 3px #1535500d}
#shim-app .shim-alert-bell:hover,#shim-app .shim-alert-bell.is-open{background:#fff3e5;border-color:#f5b76b;color:#dc7600}
#shim-app .shim-alert-bell svg{height:21px;width:21px}
#shim-app .shim-alert-badge{position:absolute;top:-6px;right:-7px;min-width:21px;height:21px;border-radius:12px;padding:0 5px;display:grid;place-items:center;background:#df3341;color:#fff;border:2px solid #fff;font-size:10px;font-weight:900;line-height:1}
#shim-app .shim-alert-badge[hidden]{display:none}
#shim-app .shim-alert-menu{position:absolute;top:calc(100% + 12px);right:-50px;width:min(430px,calc(100vw - 24px));max-height:min(580px,80vh);display:flex;flex-direction:column;background:white;border-radius:15px;border:1px solid #e1e8ed;box-shadow:0 22px 65px #0b2b4450;z-index:1005;overflow:hidden;color:#183a55}
#shim-app .shim-alert-menuhead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 18px;border-bottom:1px solid #e7edf2;background:#fbfcfd}
#shim-app .shim-alert-menuhead>div{display:flex;flex-direction:column;gap:3px}
#shim-app .shim-alert-menuhead strong{font-size:16px;color:#193953}
#shim-app .shim-alert-menuhead small{font-size:11px;color:#73889b}
#shim-app .shim-alert-markall{font-size:11px;font-weight:750;color:#d27600;background:#fff3e7;border:1px solid #ffdfbb;border-radius:8px;padding:8px 9px;cursor:pointer;white-space:nowrap}
#shim-app .shim-alert-markall:disabled{opacity:.5;cursor:default}
#shim-app .shim-alert-items{overflow-y:auto;overscroll-behavior:contain;min-height:75px}
#shim-app .shim-alert-row{display:flex;align-items:center;gap:4px;border-bottom:1px solid #eef1f4;background:#fff;position:relative}
#shim-app .shim-alert-row.unread{background:#fffaf4}
#shim-app .shim-alert-jump{width:100%;min-width:0;display:flex;align-items:flex-start;gap:12px;text-align:left;background:transparent;border:0;padding:14px 10px 14px 15px;cursor:pointer;color:inherit}
#shim-app .shim-alert-jump:hover{background:#f7fafc}
#shim-app .shim-alert-symbol{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;background:#ebf3f9;color:#173c59;border-radius:10px;font-size:16px;font-weight:800}
#shim-app .shim-alert-symbol.kind-lead,#shim-app .shim-alert-symbol.kind-visit{background:#fff1de;color:#de7d00}
#shim-app .shim-alert-symbol.kind-invoice{background:#fff0f0;color:#a64745}
#shim-app .shim-alert-symbol.kind-payment{background:#e6f7ec;color:#118a55}
#shim-app .shim-alert-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
#shim-app .shim-alert-copy b{font-size:12px;line-height:1.45;color:#193953;white-space:normal}
#shim-app .shim-alert-copy>span{font-size:11px;line-height:1.5;color:#5e7586;overflow-wrap:anywhere}
#shim-app .shim-alert-copy small{font-size:10px;color:#94a4b0}
#shim-app .shim-alert-unread{width:7px;height:7px;flex:0 0 7px;background:#db313f;border-radius:50%;margin:5px 0}
#shim-app .shim-alert-read{flex:0 0 27px;align-self:start;margin:16px 8px 0 0;border:1px solid #d8e1e8;border-radius:7px;background:#fff;color:#317988;font-size:12px;cursor:pointer;padding:5px 0}
#shim-app .shim-alert-read:hover{background:#e6f6f1}
#shim-app .shim-alert-empty{text-align:center;padding:30px 18px;color:#5e7586}
#shim-app .shim-alert-empty strong{font-size:13px;color:#193953}
#shim-app .shim-alert-empty p{font-size:11px;line-height:1.6;margin-top:6px}
#shim-app .shim-alert-foot{padding:11px 16px;color:#8799a6;background:#fafbfd;font-size:10px;border-top:1px solid #e7edf2;text-align:center}
@media(max-width:760px){#shim-app .shim-topbar{justify-content:flex-end;gap:8px}#shim-app .shim-topbar>div:first-child{margin-right:auto;min-width:0}#shim-app .shim-topbar>div:first-child strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#shim-app .shim-alert-bell{height:36px;width:36px;border-radius:9px}#shim-app .shim-alert-bell svg{height:18px;width:18px}#shim-app .shim-alert-menu{right:-73px;max-height:75vh}#shim-app .shim-signout-top{margin:0!important}}
@media(max-width:420px){#shim-app .shim-alert-menu{right:-68px;width:calc(100vw - 19px)}#shim-app .shim-topbar{padding:0 10px}#shim-app .shim-signout-top{padding:6px 7px;font-size:9px}#shim-app .shim-alert-menuhead{padding:13px}#shim-app .shim-alert-jump{padding:12px 6px 12px 11px;gap:9px}}

/* State Home Improvement Inc. identity */
#shim-app .shim-sidebar{background:linear-gradient(180deg,#0c2746,#061b30 85%)}
#shim-app .shim-brand strong{letter-spacing:.8px}
#shim-app .shim-sidebar-logo{width:78px;max-height:59px}
#shim-app .shim-navitem.active{box-shadow:inset 3px 0 0 #dcb044}
#shim-app .shim-avatar{background:#b20b19}
#shim-app .shim-btn.primary{background:#b20b19}
#shim-app .shim-btn.primary:hover{background:#930916}
.shim-auth-form button{background:#b20b19}
.shim-auth-form button:hover{background:#8c0712}
.shim-auth-aside-eyebrow{color:#f4c65a}

@media (max-width:760px){#shim-app .shim-sidebar-logo{width:64px;max-height:45px}#shim-app .shim-brand{gap:9px}}

/* State Home Improvement Inc. v1.0 — high-contrast, readable typography */
#shim-app{--navy:#161719;--navydeep:#080808;--teal:#B5121A;--teallight:#fff1f2;--paper:#f8f9fb;--border:#d5dae1;--muted:#475569;--ink:#1b2430;color:#1b2430;background:#f7f8fa;font-size:15px;line-height:1.6}
#shim-app .shim-sidebar{background:linear-gradient(165deg,#121212,#24272b 92%);color:white}
#shim-app .shim-brand strong{color:#fff;font-size:14px;white-space:normal;letter-spacing:.25px;line-height:1.35}
#shim-app .shim-brand span{color:#e2e6eb;font-size:11px;white-space:normal;letter-spacing:.7px}
#shim-app .shim-nav-label{color:#cad0d8;font-size:11px}
#shim-app .shim-navitem{font-size:14px;font-weight:650;color:#ecf0f5;min-height:46px}
#shim-app .shim-navitem.active{background:#b5121a;color:#fff;border-color:#e63e45;box-shadow:inset 3px 0 0 #fff}
#shim-app .shim-navitem:hover{color:white;background:#383a3e}
#shim-app .shim-sidebar-bottom strong{font-size:13px;color:white}
#shim-app .shim-sidebar-bottom span,#shim-app .shim-logout{font-size:13px;color:#e6eaf0}
#shim-app .shim-avatar{background:#b5121a}
#shim-app .shim-topbar{height:auto;min-height:73px;padding:10px 21px;gap:10px;flex-wrap:wrap}
#shim-app .shim-top-welcome,#shim-app .shim-topbar strong{font-size:12px;color:#344054}
#shim-app .shim-topright{color:#384152;font-size:11px}
#shim-app h1{color:#18181b;font-size:clamp(24px,2.5vw,31px)}
#shim-app h2{color:#17191c;font-size:17px}
#shim-app .shim-eyebrow{color:#a00b14;font-size:12px}
#shim-app .shim-intro p,#shim-app .shim-page-head p{font-size:14px;color:#475569}
#shim-app .shim-btn{font-size:13px;min-height:41px;color:#232d39;border-color:#cfd7e0}
#shim-app .shim-btn.primary{background:#a80912!important;border-color:#a80912!important;color:#fff!important}
#shim-app .shim-btn.primary:hover{background:#84060c!important;border-color:#84060c!important}
#shim-app .shim-kpi{border-color:#d8dee7}
#shim-app .shim-kpi-top,#shim-app .shim-kpi small{font-size:12px;color:#4b5563}
#shim-app .shim-kpi-number{font-size:clamp(21px,2.1vw,28px);color:#101828;overflow-wrap:anywhere;white-space:normal}
#shim-app .shim-panel-header p,#shim-app .shim-muted,#shim-app .shim-fineprint{font-size:13px;color:#4a5565}
#shim-app .shim-panel{border-color:#d7dee7}
#shim-app .shim-brief>div{font-size:14px;color:#334155}
#shim-app .shim-table th{font-size:12px;color:#334155;background:#eef1f5}
#shim-app .shim-table td,#shim-app .shim-table td strong{font-size:13px;color:#283445}
#shim-app .shim-table td small{font-size:12px;color:#475569}
#shim-app .shim-pill{font-size:12px;color:#28456c}
#shim-app .shim-toolbar input{font-size:14px}
#shim-app .shim-field,#shim-app .shim-field>span{font-size:14px!important;color:#202b37!important;font-weight:700!important}
#shim-app .shim-field input,#shim-app .shim-field textarea,#shim-app .shim-field select{font-size:15px!important;min-height:43px!important;color:#101828!important;background:#fff!important;border:1px solid #aab5c4!important}
#shim-app .shim-field input::placeholder,#shim-app .shim-field textarea::placeholder{color:#5b6675!important}
#shim-app .shim-modal h2{font-size:22px!important;color:#171717!important}
#shim-app .shim-formsection strong{font-size:15px;color:#171717}
#shim-app .shim-iconbutton{min-height:35px;min-width:35px;font-size:14px}
#shim-app .shim-alert-copy b{font-size:14px!important;color:#17212e}
#shim-app .shim-alert-copy>span{font-size:13px!important;color:#354155}
#shim-app .shim-footer{font-size:11px;color:#4b5563}
#shim-app .shim-logo-preview img{max-width:140px;object-fit:contain}
.shim-auth-wrap{color:#1b2430}
.shim-auth-heading h1{color:#18181b!important}
.shim-auth-heading p{color:#475569!important;font-size:16px!important}
.shim-auth-brand strong{font-size:16px!important;letter-spacing:.5px!important;color:#151515!important}
.shim-auth-brand small{color:#4d596b!important;font-size:11px!important}
.shim-auth-form label{color:#1e293b!important;font-size:15px!important}
.shim-auth-form input[type=password]{color:#111827!important;border:1px solid #9ba8b8!important;font-size:17px!important}
.shim-auth-form button{background:#a80c14!important;color:#fff!important;font-size:16px!important}
.shim-auth-aside{background:linear-gradient(145deg,#151515,#3d1216 85%)!important}
.shim-auth-aside h2{color:#fff!important}
.shim-auth-aside p{color:#edf0f3!important}
.shim-auth-aside-eyebrow{color:#ffbfc4!important}
.shim-public-form-wrap{--shim-navy:#18191b;--shim-orange:#b5121a;--shim-ink:#18212b;--shim-muted:#475569;border-color:#ccd3dc}
.shim-public-form-wrap .shim-form-hero{background:linear-gradient(145deg,#171717,#3b171b);border-top-color:#b5121a}
.shim-public-form-wrap .shim-form-hero p{color:#f3f4f6!important;font-size:15px!important}
.shim-public-form-wrap .shim-form-kicker{color:#ffe1e3}
.shim-public-form-wrap .shim-form-section-heading{font-size:17px!important;color:#161b22}
.shim-public-form-wrap .shim-form-section-heading span{background:#fff0f1;color:#a80c14}
.shim-public-form-wrap .shim-public-field{font-size:15px!important;color:#18212b!important}
.shim-public-form-wrap .shim-public-field input,.shim-public-form-wrap .shim-public-field select,.shim-public-form-wrap .shim-public-field textarea{font-size:16px!important;border-color:#aeb8c5!important;background:white!important;color:#111827!important}
.shim-public-form-wrap .shim-public-field input::placeholder,.shim-public-form-wrap .shim-public-field textarea::placeholder{color:#566172!important}
.shim-public-form-wrap .shim-public-services legend{font-size:15px!important}
.shim-public-form-wrap .shim-public-service{font-size:14px!important;color:#1e293b!important}
.shim-public-form-wrap .shim-public-service:has(input:checked){background:#fff0f1;border-color:#c9151c}
.shim-public-form-wrap .shim-public-submit{background:#a80c14!important;color:white!important;font-size:16px!important}
.shim-public-form-wrap .shim-public-submit:hover{background:#800810!important}
.shim-public-form-wrap .shim-public-foot,.shim-public-form-wrap .shim-public-hint,.shim-public-form-wrap .shim-public-consent{font-size:13px!important;color:#475569!important}
.shim-language-switch{margin-left:auto;display:flex!important;align-items:center;gap:3px;border:1px solid #ccd3df;background:#fff;border-radius:10px;padding:3px;flex:0 0 auto;box-shadow:0 1px 5px #00000011;z-index:10}
.shim-language-switch button{min-width:40px;min-height:34px;cursor:pointer;border:0!important;border-radius:7px;background:#fff!important;color:#26303e!important;font:800 13px/1.25 Arial,sans-serif!important;padding:7px!important}
.shim-language-switch button.is-active{background:#a60c14!important;color:#fff!important}
.shim-auth-brand{flex-wrap:wrap}
.shim-auth-brand .shim-language-switch{margin-left:auto}
.shim-form-hero .shim-language-switch{margin-left:auto}
.shim-info-button{display:inline-grid!important;place-items:center;vertical-align:middle;margin:0 0 0 6px!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;padding:0!important;border-radius:50%!important;border:1px solid #a40c15!important;background:#fff4f5!important;color:#880b12!important;font:800 14px/1 Arial,sans-serif!important;cursor:pointer!important}
.shim-info-button:hover,.shim-info-button:focus{outline:2px solid #ca4b54;outline-offset:2px}
.shim-info-text{display:block!important;margin-top:7px!important;padding:9px 11px!important;border-radius:8px!important;background:#16181b!important;color:#fff!important;border:1px solid #515761!important;font:500 13px/1.5 Arial,sans-serif!important;white-space:normal!important}
.shim-info-text[hidden]{display:none!important}
#shim-app .shim-planner-warning{font-size:14px;background:#fff3f3;color:#8a0710;padding:12px;border:1px solid #e9bdc1;border-radius:10px}
#shim-app .shim-planner-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px}
#shim-app .shim-planner-head h2{font-size:20px}
#shim-app .shim-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
#shim-app .shim-calendar-weekday{text-align:center;font-size:12px;font-weight:800;color:#344054;padding:5px 0}
#shim-app .shim-calendar-day{min-height:100px;background:#fff;border:1px solid #d3dae3;border-radius:9px;color:#202b39;text-align:left;display:flex;align-items:flex-start;flex-direction:column;gap:6px;padding:9px 7px;overflow:hidden}
#shim-app .shim-calendar-day.empty{border:0;background:#f4f5f8}
#shim-app button.shim-calendar-day:hover{background:#fff1f2;border-color:#a80c14}
#shim-app .shim-calendar-day strong{font-size:15px}
#shim-app .shim-calendar-day small{display:block;font-size:11px;line-height:1.3;font-weight:650;background:#f2eff0;color:#750d12;border-radius:5px;padding:4px;max-width:100%;overflow-wrap:anywhere}
@media(max-width:760px){#shim-app .shim-content{padding:20px 15px 30px}#shim-app .shim-calendar-grid{gap:3px}#shim-app .shim-calendar-day{min-height:60px;padding:5px 3px}#shim-app .shim-calendar-day small{font-size:9px}#shim-app .shim-calendar-weekday{font-size:10px}#shim-app .shim-topbar .shim-language-switch{margin-left:0}#shim-app .shim-topbar{gap:7px}#shim-app .shim-btn{white-space:normal}#shim-app .shim-sidebar{padding:14px 12px}#shim-app .shim-navitem{font-size:14px}}
@media(max-width:500px){.shim-public-form-wrap .shim-form-hero .shim-language-switch{position:absolute;right:12px;top:12px}.shim-public-form-wrap .shim-form-hero{position:relative;padding-top:50px}#shim-app .shim-calendar-day small{display:none}#shim-app .shim-calendar-day:has(small){background:#ffe7e9;border-color:#bc1d26}}


/* State Home Improvement Inc. 1.0.1: reliable notification bell, no SVG/icon-font dependencies. */
#shim-app .shim-alerts-wrap{position:relative!important;flex:0 0 auto!important;z-index:120!important}
#shim-app .shim-alert-bell{display:inline-flex!important;position:relative!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:auto!important;min-width:46px!important;height:45px!important;padding:0 13px!important;border:1.5px solid #d0d6df!important;background:#fff!important;color:#17202e!important;border-radius:11px!important;overflow:visible!important;box-shadow:0 2px 7px #00000010!important;opacity:1!important;visibility:visible!important}
#shim-app .shim-alert-bell:hover,#shim-app .shim-alert-bell.is-open{background:#fff2f2!important;border-color:#b90a16!important}
#shim-app .shim-bell-icon{position:relative!important;display:block!important;width:26px!important;height:27px!important;flex:0 0 26px!important;color:#19222e!important;opacity:1!important;visibility:visible!important}
#shim-app .shim-bell-dome{position:absolute!important;display:block!important;top:4px!important;left:5px!important;width:16px!important;height:16px!important;border:2.4px solid currentColor!important;border-bottom:0!important;border-radius:10px 10px 3px 3px!important;box-sizing:border-box!important;transform:none!important}
#shim-app .shim-bell-dome:before{content:''!important;position:absolute!important;left:4px!important;top:-5px!important;width:4px!important;height:4px!important;background:currentColor!important;border-radius:3px!important}
#shim-app .shim-bell-dome:after{content:''!important;position:absolute!important;left:-5px!important;bottom:-3px!important;width:21px!important;height:3px!important;background:currentColor!important;border:0!important;border-radius:3px!important}
#shim-app .shim-bell-clapper{position:absolute!important;display:block!important;left:10px!important;bottom:1px!important;width:6px!important;height:4px!important;background:currentColor!important;border-radius:0 0 6px 6px!important}
#shim-app .shim-bell-label{display:inline!important;font-size:13px!important;font-weight:800!important;line-height:1!important;color:#1a2432!important;letter-spacing:.1px!important;white-space:nowrap!important}
#shim-app .shim-alert-badge{display:grid!important;place-items:center!important;top:-8px!important;right:-7px!important;min-width:23px!important;height:23px!important;background:#bf0b18!important;color:white!important;font-size:12px!important;border-radius:100px!important;font-weight:800!important;border:2px solid #fff!important;z-index:4!important}
#shim-app .shim-alert-badge[hidden]{display:none!important}
#shim-app .shim-alert-bell:focus-visible{outline:3px solid #b90b15!important;outline-offset:2px!important}
@media(max-width:1160px){#shim-app .shim-bell-label{display:none!important}}
@media(max-width:760px){#shim-app .shim-alert-bell{height:41px!important;min-width:41px!important;width:41px!important;padding:0!important}#shim-app .shim-alert-menu{right:-67px;max-width:calc(100vw - 20px)}}
@media(max-width:390px){#shim-app .shim-alert-bell{height:38px!important;min-width:38px!important;width:38px!important}}

/* 2.0: installable app and private client photo archive */
#shim-app .shim-install-button{background:#191919;color:#fff;border:1px solid #191919;border-radius:9px;padding:10px 12px;font-weight:800;font-size:13px;cursor:pointer;white-space:nowrap;min-height:39px}
#shim-app .shim-install-button:hover{background:#b10d17;border-color:#b10d17}
#shim-app .shim-photo-panel{padding:24px}
#shim-app .shim-photo-panel .shim-field{min-width:0}
#shim-app .shim-photo-panel .shim-field select,#shim-app .shim-photo-panel .shim-field input{background:#fff;color:#171717;border:1px solid #aab2ba;min-height:45px;font-size:15px}
#shim-app .shim-photo-panel .shim-field span{font-size:14px;font-weight:750;color:#16191c}
#shim-app .shim-photo-uploadrow{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(210px,1.3fr) auto;gap:14px;align-items:end;margin:18px 0}
#shim-app .shim-photo-uploadrow>.shim-btn{min-height:45px;font-size:14px}
#shim-app .shim-photo-stage{display:flex;gap:12px;justify-content:space-between;border-top:1px solid #e2e4e7;padding-top:20px;margin:22px 0 15px;font-size:14px;color:#1a1d21}
#shim-app .shim-photo-stage span{color:#5a626a}
#shim-app .shim-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
#shim-app .shim-photo-card{background:#fff;border:1px solid #d8dce0;border-radius:12px;overflow:hidden;min-width:0;box-shadow:0 4px 12px #1212120a}
#shim-app .shim-photo-picture{height:180px;display:flex;align-items:center;justify-content:center;background:#e9edf0;color:#3e474f;font-size:13px;font-weight:600}
#shim-app .shim-photo-picture img{width:100%;height:100%;object-fit:cover;display:block}
#shim-app .shim-photo-caption{padding:12px;display:flex;flex-direction:column;gap:6px;font-size:13px}
#shim-app .shim-photo-caption strong{color:#161616;text-transform:capitalize}
#shim-app .shim-photo-caption small{color:#4b5560;overflow-wrap:anywhere}
#shim-app .shim-photo-delete{color:#a00c13;background:#fff;border:1px solid #d6a0a3;border-radius:6px;align-self:flex-start;font-size:12px;font-weight:700;padding:7px 11px;cursor:pointer}
#shim-app .shim-why{border-radius:50%;border:1px solid #8b929b;background:#fff;color:#23272c;cursor:help;min-height:20px;min-width:20px}
@media(max-width:980px){#shim-app .shim-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#shim-app .shim-photo-uploadrow{grid-template-columns:1fr 1fr}#shim-app .shim-photo-uploadrow>.shim-btn{grid-column:1/-1}}
@media(max-width:650px){#shim-app .shim-photo-panel{padding:15px}#shim-app .shim-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}#shim-app .shim-photo-picture{height:135px}#shim-app .shim-photo-uploadrow{grid-template-columns:1fr}#shim-app .shim-photo-uploadrow>.shim-btn{grid-column:auto}#shim-app .shim-install-button{padding:8px;font-size:11px;min-height:35px}}
@media(max-width:380px){#shim-app .shim-photo-grid{grid-template-columns:1fr}#shim-app .shim-install-button{font-size:10px}}

/* 2.0 readability improvements: strong foreground contrast on white panels. */
#shim-app{font-size:15px;color:#20252b}
#shim-app .shim-navitem{font-size:14px;min-height:45px}
#shim-app .shim-btn{font-size:13px;min-height:39px}
#shim-app .shim-table td,#shim-app .shim-table td strong{font-size:13px;color:#222831}
#shim-app .shim-table td small{font-size:12px;color:#525d67}
#shim-app .shim-table th{font-size:12px;color:#38414a}
#shim-app .shim-muted,#shim-app .shim-intro p,#shim-app .shim-page-head p{color:#505b66;font-size:13px}
#shim-app .shim-kpi-top{font-size:12px;color:#424d58}
#shim-app .shim-field input,#shim-app .shim-field select,#shim-app .shim-field textarea{font-size:14px;color:#192028;background:#fff}
#shim-app button:focus-visible,#shim-app a:focus-visible{outline:3px solid #d11922;outline-offset:2px}

/* v2.0.1 – Mobile contact action tools, maps, QR dialog. Accessible contrast. */
#shim-app .shim-contact-actions,#shim-app .shim-route-links{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:8px 0}
#shim-app .shim-contact-actions .shim-btn,#shim-app .shim-route-links .shim-btn{white-space:normal;min-height:38px;font-size:13px;color:#142b41;font-weight:750;background:#f4f7fb;border:1px solid #b8c9d5}
#shim-app .shim-contact-actions .shim-btn:hover{background:#e7edf4}
#shim-app .shim-map-btn{font-size:14px;display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:11px 15px;min-height:44px;background:#b21121;color:#fff!important;border-radius:9px;text-decoration:none;font-weight:750;letter-spacing:0;box-shadow:0 3px 8px #122b4016}
#shim-app .shim-map-btn:hover{background:#8f0615}
#shim-app .shim-location-card{border:1px solid #cad8e4;background:#f6f9fc;border-radius:13px;padding:16px 18px;margin:8px 0 12px;color:#173449;font-size:14px;line-height:1.6}
#shim-app .shim-location-card strong{font-size:15px;display:block;color:#122e46}
#shim-app .shim-location-card p{font-size:13px;color:#38556c;margin:6px 0 10px;line-height:1.55}
#shim-app .shim-location-note{font-size:12px;color:#405a70;line-height:1.5}
#shim-app .shim-estimate-map{grid-column:1/-1}
.shim-private-card-backdrop{position:fixed;z-index:210000;inset:0;display:grid;place-items:center;padding:14px;background:#081b2dc9;overflow:auto}
.shim-private-card{background:#fff;width:min(480px,100%);border-radius:18px;padding:23px;color:#162f46;box-shadow:0 18px 70px #0004}
.shim-private-card h2{font-size:24px!important;line-height:1.2;color:#152b41!important;margin:15px 0 8px!important}
.shim-private-card p{font-size:14px;line-height:1.6;overflow-wrap:anywhere;color:#38546a}
.shim-private-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#132f46;font-size:15px}
.shim-private-card .shim-contact-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.shim-private-card .shim-btn{padding:10px 13px;min-height:44px;font-size:13px;cursor:pointer;white-space:normal}
.shim-private-qr{background:#fff;display:flex;justify-content:center;margin:14px 0}
.shim-private-qr svg{background:#fff;border:9px solid #fff;max-width:220px;max-height:220px;width:100%;height:auto}
@media(max-width:780px){#shim-app .shim-route-links{flex-direction:column;align-items:stretch}#shim-app .shim-map-btn{width:100%}#shim-app .shim-contact-actions .shim-btn{font-size:13px;min-height:42px}}

/* Lazy map preview; only activated by pressing Preview map. */
#shim-app .shim-map-preview{flex-basis:100%;width:100%;margin-top:9px;border:1px solid #cbd7e0;border-radius:12px;overflow:hidden;background:#f8fafc;min-height:260px}
#shim-app .shim-map-preview iframe{display:block;width:100%;height:260px;border:0}


/* v2.0.2: high-contrast private system readiness checks */
#shim-app .shim-readiness{background:#fff;border:1px solid #cdd4dc;border-radius:15px;margin-top:20px;padding:24px;color:#171717;box-shadow:0 4px 15px #0000000b}
#shim-app .shim-readiness-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
#shim-app .shim-readiness h2{font-size:20px;line-height:1.3;color:#141414}
#shim-app .shim-readiness-heading p{font-size:14px;color:#344052;line-height:1.65;margin-top:6px}
#shim-app .shim-readiness-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
#shim-app .shim-readiness-row{display:flex;align-items:flex-start;gap:10px;background:#f7f8fa;border:1px solid #dde3e8;border-radius:9px;padding:13px;min-width:0}
#shim-app .shim-readiness-row strong{display:block;font-size:13.5px;color:#19232c}
#shim-app .shim-readiness-row small{display:block;font-size:12px;color:#35485b;line-height:1.5;margin-top:4px;overflow-wrap:anywhere}
#shim-app .shim-readiness-symbol{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;flex:0 0 26px;font-size:17px;font-weight:800}
#shim-app .shim-readiness-symbol.good{background:#e1f4e7;color:#155a30}
#shim-app .shim-readiness-symbol.warning{background:#fff0d8;color:#8a4600}
#shim-app .shim-readiness-actions{display:flex;align-items:center;gap:13px;margin-top:17px;flex-wrap:wrap}
#shim-app .shim-readiness-actions>span{font-size:13px;color:#344052;overflow-wrap:anywhere}
#shim-app .shim-readiness-empty{font-size:14px;line-height:1.6;color:#35485b}
@media(max-width:820px){#shim-app .shim-readiness-rows{grid-template-columns:1fr}#shim-app .shim-readiness{padding:17px}}
@media(max-width:480px){#shim-app .shim-readiness-heading{flex-direction:column}#shim-app .shim-readiness-heading .shim-btn{width:100%}}

/* v2.1.0: Mobile-first site visit calendar, high contrast and touch sized controls. */
#shim-app .shim-visit-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}
#shim-app .shim-visit-kpis>div{background:#fff;border:1px solid #d8dee5;border-radius:12px;padding:15px 18px;min-width:0}
#shim-app .shim-visit-kpis small{display:block;font-size:13px;color:#425466;font-weight:650}
#shim-app .shim-visit-kpis strong{display:block;font-size:30px;color:#151b24;margin-top:4px;line-height:1.2}
#shim-app .shim-visits-calendar,#shim-app .shim-visits-list{margin-bottom:16px}
#shim-app .shim-visits-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
#shim-app .shim-visits-toolbar h2{font-size:21px;color:#161b22}
#shim-app .shim-visits-toolbar small{display:block;font-size:13px;color:#516174}
#shim-app .shim-visits-toolbar>div:last-child{display:flex;gap:6px}
#shim-app .shim-visits-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;min-width:0}
#shim-app .shim-visit-weekday{font-size:12px;font-weight:800;text-align:center;color:#405065;padding:7px 0}
#shim-app .shim-visit-day{position:relative;min-height:83px;border:1px solid #d8e0e8;background:#fff;border-radius:9px;display:flex;flex-direction:column;gap:4px;align-items:flex-start;padding:8px;cursor:pointer;text-align:left;color:#151f2a}
#shim-app .shim-visit-day.filler{background:#f5f7fa;opacity:.5}
#shim-app .shim-visit-day strong{font-size:16px}
#shim-app .shim-visit-day.today{border-color:#323c48}
#shim-app .shim-visit-day.chosen{outline:2px solid #bd182b;outline-offset:-2px;background:#fff7f8}
#shim-app .shim-visit-day:hover{background:#f2f5f8}
#shim-app .shim-visit-count{font-size:11px;font-weight:750;color:#7c1320;overflow-wrap:anywhere;line-height:1.3}
#shim-app .shim-visit-dot{position:absolute;top:9px;right:7px;width:7px;height:7px;background:#d6810a;border-radius:50%}
#shim-app .shim-visit-item{border-top:1px solid #e1e6ec;padding:15px 0;display:grid;grid-template-columns:92px minmax(0,1fr);column-gap:16px;row-gap:10px;color:#172838}
#shim-app .shim-visit-item:first-of-type{margin-top:12px}
#shim-app .shim-visit-when b{display:block;font-size:17px}
#shim-app .shim-visit-when span{font-size:12px;color:#415166}
#shim-app .shim-visit-info{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
#shim-app .shim-visit-info strong{display:block;flex:0 0 100%;font-size:16px;color:#111b26}
#shim-app .shim-visit-info>span:not(.shim-pill){font-size:13px;flex:0 0 100%}
#shim-app .shim-visit-info small{font-size:12px;color:#415166;flex:0 0 100%}
#shim-app .shim-visit-actions{grid-column:2;display:flex;flex-wrap:wrap;gap:6px}
#shim-app .shim-visit-actions .shim-btn{min-height:38px;font-size:12px;white-space:normal;text-align:center}
@media(max-width:760px){#shim-app .shim-visit-day{min-height:61px;padding:5px}#shim-app .shim-visit-day strong{font-size:14px}#shim-app .shim-visit-kpis{gap:6px}#shim-app .shim-visit-kpis>div{padding:10px}#shim-app .shim-visit-kpis small{font-size:11px}#shim-app .shim-visit-kpis strong{font-size:22px}#shim-app .shim-visit-count{font-size:9px}#shim-app .shim-visits-grid{gap:3px}}
@media(max-width:440px){#shim-app .shim-visit-day{min-height:49px}#shim-app .shim-visit-dot{top:6px;right:5px;width:5px;height:5px}#shim-app .shim-visit-item{grid-template-columns:1fr}#shim-app .shim-visit-actions{grid-column:1}#shim-app .shim-visits-toolbar h2{font-size:19px}#shim-app .shim-visit-day .shim-visit-count{display:none}}


/* v2.1.1 mobile refinement: clearer module access and cleaner phone layout */
#shim-app .shim-mobile-modules-btn{display:none;border:1px solid #ead8dc;background:#fff;color:#8f111f;border-radius:10px;padding:9px 12px;font-size:12px;font-weight:800;line-height:1;min-height:40px;box-shadow:0 2px 6px rgba(17,45,72,.06)}
#shim-app .shim-mobile-module-backdrop{position:fixed;inset:0;background:rgba(6,18,30,.45);z-index:1300;padding:18px;display:flex;align-items:flex-end;justify-content:center}
#shim-app .shim-mobile-module-sheet{width:min(100%,640px);background:#fff;border-radius:20px 20px 12px 12px;box-shadow:0 24px 70px rgba(6,18,30,.32);padding:16px 16px 14px;border:1px solid #e6ecf1}
#shim-app .shim-mobile-module-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #edf2f6;margin-bottom:14px}
#shim-app .shim-mobile-module-head strong{display:block;font-size:18px;color:#112d48}
#shim-app .shim-mobile-module-head small{display:block;margin-top:4px;color:#708494;font-size:12px;line-height:1.4}
#shim-app .shim-mobile-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#shim-app .shim-mobile-module-item{display:flex;align-items:center;gap:10px;border:1px solid #e2e8ee;background:#fff;padding:14px 12px;border-radius:14px;text-align:left;color:#17334f;font-size:13px;font-weight:700;min-height:64px}
#shim-app .shim-mobile-module-item span{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:10px;background:#f4f7fb;color:#991321;font-size:18px}
#shim-app .shim-mobile-module-item b{font-size:13px;line-height:1.35;font-weight:800}
#shim-app .shim-mobile-module-item.active{border-color:#C39D38;background:#fff5f6;box-shadow:0 0 0 1px rgba(184,16,32,.08)}
#shim-app .shim-mobile-module-item:active{transform:translateY(1px)}
@media(max-width:760px){
  #shim-app .shim-mobile-modules-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px}
  #shim-app .shim-sidebar nav{display:none!important}
  #shim-app .shim-sidebar{padding:10px 12px 6px;border-bottom:1px solid rgba(255,255,255,.08)}
  #shim-app .shim-brand{margin:0;align-items:center}
  #shim-app .shim-topbar{position:sticky;top:0;z-index:1100;background:rgba(255,255,255,.98);backdrop-filter:saturate(180%) blur(8px);-webkit-backdrop-filter:saturate(180%) blur(8px);height:58px;min-height:58px;padding:0 12px;border-bottom:1px solid #e8edf1}
  #shim-app .shim-topbar>div:first-child{display:flex;align-items:center;gap:8px;min-width:0}
  #shim-app .shim-topbar>div:first-child strong{font-size:13px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42vw}
  #shim-app .shim-content{padding:16px 12px 82px}
  #shim-app .shim-panel{padding:14px;border-radius:16px}
  #shim-app .shim-intro,#shim-app .shim-page-head{gap:10px;margin-bottom:16px}
  #shim-app h1{font-size:21px;line-height:1.2}
  #shim-app .shim-intro p,#shim-app .shim-page-head p,#shim-app .shim-muted{font-size:13px;line-height:1.5}
  #shim-app .shim-btn{min-height:42px;font-size:13px;padding:11px 13px;border-radius:10px}
  #shim-app .shim-head-buttons{display:grid;grid-template-columns:1fr;gap:8px;width:100%}
  #shim-app .shim-head-buttons .shim-btn{width:100%}
  #shim-app .shim-kpi-grid{grid-template-columns:1fr 1fr;gap:8px}
  #shim-app .shim-kpi{padding:13px 12px;border-radius:14px}
  #shim-app .shim-table{min-width:480px}
  #shim-app .shim-tablewrap{margin:0 -4px;padding-bottom:4px}
  #shim-app .shim-toolbar{gap:10px;margin-bottom:14px}
  #shim-app .shim-toolbar input{min-height:42px;font-size:13px;border-radius:10px}
}
@media(max-width:520px){
  #shim-app .shim-mobile-module-grid{grid-template-columns:1fr}
  #shim-app .shim-topbar>div:first-child strong{max-width:34vw}
  #shim-app .shim-kpi-grid{grid-template-columns:1fr}
  #shim-app .shim-content{padding:14px 10px 78px}
  #shim-app .shim-sidebar-logo{width:58px;max-height:42px}
}

/* v2.1.2 — Full-screen mobile / tablet workspace and accessible notifications */
#shim-app .shim-mobile-modules-btn{display:none;align-items:center;justify-content:center;gap:8px;border:1px solid #B38A20;background:#aa1120;color:#fff;border-radius:11px;padding:9px 12px;min-height:43px;font-size:14px;font-weight:800;white-space:nowrap;cursor:pointer}
#shim-app .shim-mobile-modules-btn svg{height:19px;width:19px;flex:0 0 19px}
#shim-app .shim-mobile-module-backdrop,#shim-app .shim-alert-overlay{position:fixed!important;inset:0!important;z-index:2147482000!important;background:rgba(10,18,27,.64);display:flex;justify-content:center;align-items:center;margin:0!important;padding:14px!important;box-sizing:border-box;overflow:hidden}
#shim-app .shim-mobile-module-sheet,#shim-app .shim-alert-modal{position:relative!important;background:#fff!important;color:#172b3c!important;width:min(100%,760px)!important;max-width:100%!important;max-height:min(740px,calc(100dvh - 28px));display:flex;flex-direction:column;overflow:hidden;border-radius:18px;border:1px solid #dfe6ed;box-shadow:0 30px 80px rgba(0,0,0,.29)}
#shim-app .shim-mobile-module-head,#shim-app .shim-alert-modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:19px 20px 16px;border-bottom:1px solid #e8edf1;background:#fff;flex:0 0 auto}
#shim-app .shim-mobile-module-head strong,#shim-app .shim-alert-modal-head strong{display:block;font-size:21px;line-height:1.2;color:#142f45}
#shim-app .shim-mobile-module-head small,#shim-app .shim-alert-modal-head small{display:block;font-size:13px;line-height:1.4;color:#52687b;margin-top:5px}
#shim-app .shim-mobile-menu-close,#shim-app .shim-alert-close{width:42px;height:42px;min-width:42px;border-radius:10px;background:#f1f4f7;border:1px solid #dfe4ea;color:#293d4b;font-size:19px;font-weight:700;cursor:pointer}
#shim-app .shim-mobile-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:18px;overflow:auto;overscroll-behavior:contain;align-content:start}
#shim-app .shim-mobile-module-item{display:flex;align-items:center;gap:11px;width:100%;min-height:72px;padding:12px;background:#fff;color:#183246;border:1px solid #dce4ec;border-radius:13px;text-align:left;cursor:pointer;box-shadow:none}
#shim-app .shim-mobile-module-item.active{background:#fff3f4;border-color:#C39D38}
#shim-app .shim-mobile-module-item b{font-size:13px;font-weight:750;line-height:1.32;overflow-wrap:anywhere;flex:1}
#shim-app .shim-module-icon{flex:0 0 42px;display:grid;place-items:center;width:42px;height:42px;background:#fff0f1;border-radius:11px;color:#991321}
#shim-app .shim-module-icon svg{width:23px;height:23px;display:block}
#shim-app .shim-module-chevron{font-size:20px;color:#9babb6}
#shim-app .shim-mobile-menu-foot{padding:13px 16px;font-size:12px;color:#637486;border-top:1px solid #e8edf1;text-align:center;background:#fafbfd;flex:0 0 auto}
#shim-app .shim-alert-modal{width:min(100%,600px)!important}
#shim-app .shim-alert-modal-actions{display:flex;justify-content:flex-end;flex:0 0 auto;padding:10px 16px;background:#f7f9fb;border-bottom:1px solid #e2e9ef}
#shim-app .shim-alert-markall{min-height:39px;padding:9px 12px;color:#8c111e!important;background:#fff!important;border:1px solid #d8b8bf!important;border-radius:10px;font-size:12px;font-weight:800}
#shim-app .shim-alert-items{min-width:0;min-height:0;flex:1;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
#shim-app .shim-alert-row{min-width:0;width:100%;display:flex;align-items:stretch;border-bottom:1px solid #edf0f3}
#shim-app .shim-alert-jump{min-width:0;flex:1;display:flex;align-items:flex-start;gap:12px;text-align:left;padding:15px;overflow:hidden;white-space:normal}
#shim-app .shim-alert-copy{min-width:0;flex:1;overflow-wrap:anywhere;word-break:break-word}
#shim-app .shim-alert-copy b{display:block;font-size:14px;line-height:1.4;color:#17334a;overflow-wrap:anywhere}
#shim-app .shim-alert-copy>span{display:block;font-size:12px;line-height:1.45;overflow-wrap:anywhere;word-break:break-word;color:#465d70}
#shim-app .shim-alert-copy small{font-size:11px;color:#6a7f8e;overflow-wrap:anywhere}
#shim-app .shim-alert-read{flex:0 0 36px;align-self:flex-start;min-width:36px;min-height:36px;margin:14px 12px 0 0;border-radius:10px}
#shim-app .shim-alert-foot{flex:0 0 auto;padding:12px 14px;background:#fafbfd;font-size:12px;color:#526779;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
#shim-app .shim-overview-focus{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:17px;align-items:start;margin-bottom:19px}
#shim-app .shim-overview-finance{min-width:0}
#shim-app .shim-overview-finance>h2{font-size:17px;margin:0 0 12px;color:#172f45}
#shim-app .shim-overview-finance .shim-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
#shim-app .shim-overview-finance .shim-kpi{padding:14px}
#shim-app .shim-overview-finance .shim-kpi-number{font-size:20px}
#shim-app .shim-quick-actions{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:20px}
#shim-app .shim-quick-actions svg{display:block;width:17px;height:17px;flex:0 0 17px}
#shim-app .shim-priority-panel{min-width:0}
#shim-app .shim-priority-list{display:flex;flex-direction:column}
#shim-app .shim-priority-action{display:flex;align-items:center;gap:11px;padding:13px 4px;border:0;border-bottom:1px solid #e9eef2;background:#fff;text-align:left;color:#173249;width:100%;cursor:pointer}
#shim-app .shim-priority-action:last-child{border-bottom:0}
#shim-app .shim-priority-action:hover{background:#f9fafc}
#shim-app .shim-priority-icon{flex:0 0 39px;width:39px;height:39px;display:grid;place-items:center;border-radius:10px;background:#fff0f2;color:#a20c1d}
#shim-app .shim-priority-icon svg{width:21px;height:21px}
#shim-app .shim-priority-content{min-width:0;flex:1;display:flex;flex-direction:column;gap:5px}
#shim-app .shim-priority-content b{font-size:14px;line-height:1.32;overflow-wrap:anywhere;color:#142f45}
#shim-app .shim-priority-content small{font-size:12px;line-height:1.35;color:#52687b;overflow-wrap:anywhere}
#shim-app .shim-priority-arrow{flex:0 0 auto;font-size:22px;color:#9babb7;padding-right:5px}
#shim-app .shim-priority-empty{padding:17px 4px;display:flex;flex-direction:column;gap:7px;font-size:13px;color:#53697b}
#shim-app .shim-priority-empty b{color:#183449;font-size:14px}
@media(max-width:1024px){
 #shim-app .shim-shell{display:block!important}
 #shim-app .shim-sidebar{display:block;min-height:unset;padding:10px 16px;background:#16191e}
 #shim-app .shim-sidebar nav,#shim-app .shim-nav-label,#shim-app .shim-sidebar-bottom{display:none!important}
 #shim-app .shim-brand{margin:0;gap:10px;align-items:center}
 #shim-app .shim-mobile-modules-btn{display:inline-flex!important}
 #shim-app .shim-topbar{height:60px;min-height:60px;padding:0 15px;gap:12px;position:relative;z-index:100;display:flex;flex-wrap:nowrap;background:white}
 #shim-app .shim-topbar-leading{display:flex;align-items:center;gap:10px;min-width:0;flex:1;margin:0}
 #shim-app .shim-current-section{font-size:13px!important;color:#263c4d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
 #shim-app .shim-top-welcome,#shim-app .shim-separator,#shim-app .shim-topright{display:none!important}
 #shim-app .shim-content{padding:22px 18px 45px}
 #shim-app .shim-overview-focus{grid-template-columns:minmax(0,1fr)}
 #shim-app .shim-overview-finance .shim-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 #shim-app .shim-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:760px){
 #shim-app .shim-sidebar{padding:9px 12px}
 #shim-app .shim-topbar{padding:0 11px!important;gap:8px;height:57px;min-height:57px;position:relative}
 #shim-app .shim-topbar-leading{gap:9px;min-width:0;flex:1}
 #shim-app .shim-mobile-modules-btn{height:43px;min-width:94px;padding:8px 11px;font-size:14px}
 #shim-app .shim-topbar .shim-install-button{display:none!important}
 #shim-app .shim-topbar .shim-signout-top{font-size:12px;padding:8px 9px;min-height:38px;white-space:nowrap;margin:0!important}
 #shim-app .shim-topbar .shim-alert-bell{min-width:41px;width:41px;height:41px;padding:0;flex:0 0 41px}
 #shim-app .shim-current-section{display:none!important}
 #shim-app .shim-overview-focus{grid-template-columns:1fr;gap:18px}
 #shim-app .shim-overview-finance .shim-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #shim-app .shim-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 #shim-app .shim-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #shim-app .shim-quick-actions .shim-btn{width:100%;min-width:0;white-space:normal;font-size:13px}
 #shim-app .shim-content{padding:18px 12px 72px}
 #shim-app .shim-panel{border-radius:14px}
 #shim-app .shim-alert-modal{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);border-radius:14px}
 #shim-app .shim-alert-overlay{padding:10px!important;align-items:stretch}
 #shim-app .shim-mobile-module-backdrop{padding:0!important;align-items:stretch}
 #shim-app .shim-mobile-module-sheet{height:100dvh;max-height:100dvh;border-radius:0;border:0}
 #shim-app .shim-mobile-module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;flex:1;overflow-y:auto;max-height:none;padding:14px}
 #shim-app .shim-mobile-module-item{min-height:83px;padding:11px;gap:9px;flex-wrap:wrap;align-content:center}
 #shim-app .shim-module-chevron{display:none}
 #shim-app .shim-mobile-menu-foot{padding-bottom:calc(13px + env(safe-area-inset-bottom))}
 #shim-app .shim-mobile-module-head{padding-top:calc(16px + env(safe-area-inset-top))}
}
@media(max-width:420px){
 #shim-app .shim-topbar .shim-signout-top{padding:7px 8px;font-size:11px}
 #shim-app .shim-mobile-modules-btn{min-width:87px;padding:8px 9px}
 #shim-app .shim-overview-finance .shim-kpi-grid{grid-template-columns:1fr}
 #shim-app .shim-mobile-module-grid{grid-template-columns:1fr;gap:8px}
 #shim-app .shim-mobile-module-item{min-height:63px;flex-wrap:nowrap}
}
#shim-app .shim-mobile-menu-foot{display:flex;flex-direction:column;align-items:center;gap:6px}
#shim-app .shim-mobile-install-link{background:#191e25;color:#fff;border:0;border-radius:10px;min-height:43px;padding:9px 19px;font-size:13px;font-weight:800;cursor:pointer}
@media(max-width:760px){#shim-app .shim-mobile-menu-foot{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}
#shim-app .shim-nav-icon svg{display:block;width:19px;height:19px;max-width:100%}
#shim-app .shim-kpi-link{display:block;width:100%;text-align:left;cursor:pointer;appearance:none;-webkit-appearance:none}
#shim-app .shim-kpi-link:hover{border-color:#c1a5ac;box-shadow:0 7px 20px rgba(40,33,40,.06)}
#shim-app .shim-kpi-link:focus-visible,#shim-app .shim-mobile-module-item:focus-visible,#shim-app .shim-mobile-modules-btn:focus-visible,#shim-app .shim-priority-action:focus-visible{outline:3px solid #bf3a48;outline-offset:2px}

/* v2.1.5 protected brand identity, legible contact-only settings */
#shim-app .shim-locked-brand{display:grid;grid-template-columns:145px minmax(0,1fr);gap:23px;align-items:center;padding:21px;border:1px solid #eadadd;border-radius:18px;background:#fcfafb;margin:0 0 26px}
#shim-app .shim-locked-logo{display:flex;align-items:center;justify-content:center;background:white;border:1px solid #e7e9ed;border-radius:16px;padding:18px;min-height:140px}
#shim-app .shim-locked-logo img{max-width:110px;width:100%;max-height:110px;object-fit:contain}
#shim-app .shim-locked-info{color:#283542;min-width:0;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
#shim-app .shim-locked-info h2{font-size:20px;margin:7px 0;color:#15171b}
#shim-app .shim-locked-info p{margin:9px 0 0;color:#606b77;font-size:13px}
#shim-app .shim-locked-tag{display:inline-block;border-radius:20px;padding:5px 10px;background:#f8e9ec;color:#931421;font-size:12px;font-weight:800}
#shim-app .shim-settings-panel #shim-settings-form>h2{font-size:20px;margin:0 0 5px}
#shim-app .shim-settings-panel #shim-settings-form .shim-field input{font-size:16px;min-height:48px}
@media(max-width:680px){#shim-app .shim-locked-brand{grid-template-columns:1fr;gap:14px;padding:16px}#shim-app .shim-locked-logo{min-height:108px}#shim-app .shim-locked-logo img{max-height:88px}#shim-app .shim-locked-info h2{font-size:18px}}

/* v2.1.6: device-alert opt-in in Settings; never obstructs mobile navigation */
#shim-app .shim-phone-alert-settings{border:1px solid #e3e7ec;background:#f9fafc;border-radius:16px;margin:22px 0;padding:22px}
#shim-app .shim-phone-alert-settings h2{font-size:20px;color:#161d2b;margin-bottom:8px}
#shim-app .shim-phone-alert-settings .shim-muted{font-size:14px;line-height:1.65;color:#435266}
#shim-app .shim-phone-alert-actions{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0}
#shim-app .shim-phone-alert-actions button{font-size:14px;min-height:44px}
#shim-app .shim-alert-privacy{color:#5e6f80;font-size:12px;line-height:1.5}
@media(max-width:620px){#shim-app .shim-phone-alert-settings{padding:17px}#shim-app .shim-phone-alert-actions{display:grid;grid-template-columns:1fr}#shim-app .shim-phone-alert-actions button{width:100%}}
/* State Home Improvement Inc. Simple CRM v2.2 — readable, spacious, mobile-first workspace */
#shim-app .shim-simple-actions,#shim-app .shim-card-actions,#shim-app .shim-work-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
#shim-app .shim-simple-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 22px}
#shim-app .shim-simple-kpi{appearance:none;background:#fff;border:1px solid #dfe4e9;border-radius:16px;padding:22px;text-align:left;display:flex;flex-direction:column;gap:7px;min-height:145px;cursor:pointer;box-shadow:0 6px 18px rgba(14,24,36,.045)}
#shim-app .shim-simple-kpi b{font-size:clamp(31px,3vw,43px);font-weight:850;color:#C39D38;line-height:1}
#shim-app .shim-simple-kpi span{font-size:16px;font-weight:760;color:#1c2630}
#shim-app .shim-simple-kpi small{font-size:13px;color:#576372}
#shim-app .shim-simple-list-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:center;width:100%;background:#fff;border:1px solid #e2e7ed;border-radius:12px;padding:16px;text-align:left;margin:10px 0;cursor:pointer;font-size:15px;color:#202a36}
#shim-app .shim-simple-list-item strong{font-size:16px;grid-column:1}
#shim-app .shim-simple-list-item span{grid-column:1;font-size:14px;color:#566272;min-width:0;overflow-wrap:anywhere}
#shim-app .shim-simple-list-item b{grid-column:2;grid-row:1/3;color:#9c1520;white-space:nowrap}
#shim-app .shim-simple-contacts{display:grid;gap:10px}
#shim-app .shim-simple-contact{border:1px solid #e3e6ea;border-radius:14px;background:#fff;color:#172130;display:flex;align-items:center;gap:13px;padding:16px;text-align:left;cursor:pointer;min-height:82px}
#shim-app .shim-simple-contact:hover,#shim-app .shim-simple-list-item:hover,#shim-app .shim-simple-kpi:hover{border-color:#b31925;box-shadow:0 8px 24px rgba(100,19,27,.07)}
#shim-app .shim-simple-initial{width:48px;height:48px;flex:0 0 48px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#ffeded;color:#a70d19;font-size:21px;font-weight:850}
#shim-app .shim-simple-contact-text{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}
#shim-app .shim-simple-contact-text strong{font-size:17px;line-height:1.3}
#shim-app .shim-simple-contact-text small{font-size:13px;color:#566474;overflow-wrap:anywhere}
#shim-app .shim-simple-contact>b{color:#a51622;font-size:14px;white-space:nowrap}
#shim-app .shim-workspace>.shim-btn{margin-bottom:18px}
#shim-app .shim-work-head{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid #dfe4ea;border-radius:18px;padding:20px;margin-bottom:17px}
#shim-app .shim-work-head .shim-simple-initial{height:72px;width:72px;flex-basis:72px;font-size:33px}
#shim-app .shim-work-head h1{font-size:clamp(24px,3vw,32px);margin:0 0 6px;line-height:1.2}
#shim-app .shim-work-head p{color:#596778;font-size:15px;margin:0 0 8px}
#shim-app .shim-work-tabs{display:flex;gap:7px;overflow:auto;scrollbar-width:thin;margin-bottom:17px;padding-bottom:4px}
#shim-app .shim-work-tabs button{background:#f2f4f7;color:#232c38;border:1px solid #e1e5eb;border-radius:11px;padding:13px 16px;font-size:14px;font-weight:750;cursor:pointer;white-space:nowrap;min-height:48px}
#shim-app .shim-work-tabs button.active{background:#af1420;color:#fff;border-color:#af1420}
#shim-app .shim-work-panels{display:grid;grid-template-columns:1.15fr .85fr;gap:15px}
#shim-app .shim-work-panels p{font-size:15px;line-height:1.5;overflow-wrap:anywhere}
#shim-app .shim-work-card{background:#fff;border:1px solid #e4e8ed;border-radius:13px;padding:18px;margin:12px 0;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
#shim-app .shim-work-card strong{font-size:17px;margin-right:10px;overflow-wrap:anywhere}
#shim-app .shim-work-card p{font-size:14px;color:#566474;margin:9px 0 0;overflow-wrap:anywhere}
#shim-app .shim-mini-form{display:flex;flex-direction:column;gap:13px;max-width:780px;margin:14px 0 22px}
#shim-app .shim-mini-form label{font-size:15px;font-weight:700;color:#202934;display:flex;flex-direction:column;gap:7px}
#shim-app .shim-mini-form textarea,#shim-app .shim-mini-form input,#shim-app .shim-mini-form select{width:100%;min-height:49px;background:#fff;border:1px solid #bcc5d0;border-radius:10px;font:inherit;font-size:16px;color:#17202a;padding:11px;box-sizing:border-box}
#shim-app .shim-mini-form textarea{min-height:112px;resize:vertical}
#shim-app .shim-mini-form button{align-self:flex-start;min-height:46px}
#shim-app .shim-work-activity{border-bottom:1px solid #e8ebef;padding:15px 0;color:#22303e}
#shim-app .shim-work-activity span{font-size:13px;color:#93131f;display:block}
#shim-app .shim-work-activity strong{font-size:14px}
#shim-app .shim-work-activity p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;margin:7px 0}
#shim-app .shim-email-signature-preview{border-left:4px solid #af1520;background:#f7f8fa;border-radius:5px;padding:17px;font-size:14px;line-height:1.65;margin:0 0 20px}
#shim-app .shim-email-reader{background:#fff;border:1px solid #dce3e9;border-radius:14px;padding:18px;margin:16px 0}
#shim-app .shim-mail-body{white-space:pre-wrap;overflow-wrap:anywhere;color:#202934;line-height:1.6;font-size:15px}
#shim-app .shim-corporate-settings{margin:24px 0;border:1px solid #dfe4ea;background:#f7f9fc;padding:22px;border-radius:16px}
#shim-app .shim-work-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:14px;margin-top:14px}
#shim-app .shim-work-photo{border:1px solid #e0e5eb;border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:8px;padding:9px;overflow:hidden}
#shim-app .shim-work-photo img{width:100%;height:145px;object-fit:cover;border-radius:8px}
#shim-app .shim-work-photo small{font-size:12px;overflow-wrap:anywhere}
#shim-app .shim-work-photo button{width:100%;margin-top:auto}
#shim-app .shim-panel-header{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap}
#shim-app button:focus-visible,#shim-app input:focus-visible,#shim-app textarea:focus-visible{outline:3px solid #cf7d3d;outline-offset:3px}
@media(max-width:900px){#shim-app .shim-work-panels{grid-template-columns:1fr}#shim-app .shim-simple-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#shim-app .shim-simple-grid{grid-template-columns:1fr 1fr;gap:10px}#shim-app .shim-simple-kpi{min-height:128px;padding:14px}#shim-app .shim-simple-kpi b{font-size:34px}#shim-app .shim-simple-kpi span{font-size:14px}#shim-app .shim-work-head{padding:15px;gap:12px}#shim-app .shim-work-head .shim-simple-initial{width:55px;height:55px;flex-basis:55px;font-size:25px}#shim-app .shim-work-tabs{margin:0 -4px 15px}#shim-app .shim-simple-contact{padding:12px;flex-wrap:wrap}#shim-app .shim-simple-contact .shim-pill{margin-left:auto}#shim-app .shim-simple-contact>b{display:none}#shim-app .shim-card-actions .shim-btn{flex:1 1 auto;min-height:44px}#shim-app .shim-corporate-settings{padding:14px}#shim-app .shim-simple-list-item{padding:12px}#shim-app .shim-work-photo img{height:125px}}

/* v2.2.1 – New customer email visibility. Clean, large tap targets on phones. */
.shim-mail-kpi {border:1px solid #e9bbbf;background:#fff8f8}
.shim-mail-kpi b {color:#ac1421}
.shim-home-inbox {border:1px solid #e7c4c8;box-shadow:0 8px 24px rgba(35,38,43,.045)}
.shim-home-inbox .shim-panel-header {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.shim-home-inbox h2 {display:flex;align-items:center;gap:8px;margin:0;font-size:clamp(19px,2.5vw,23px)}
.shim-email-count {min-width:30px;height:30px;border-radius:999px;background:#C39D38;color:#fff;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;font-size:14px;font-weight:800}
.shim-new-email-item {display:flex;align-items:center;gap:12px;width:100%;padding:15px 10px;min-height:65px;text-align:left;border:0;border-bottom:1px solid #e8ebef;background:transparent;cursor:pointer;color:#18202b}
.shim-new-email-item:last-child {border-bottom:none}
.shim-new-email-item:hover,.shim-new-email-item:focus-visible {background:#fff5f5;border-radius:8px}
.shim-new-email-item span:nth-child(2) {flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.shim-new-email-item strong {font-size:15px;overflow-wrap:anywhere}
.shim-new-email-item small {font-size:14px;color:#516071;white-space:normal;overflow-wrap:anywhere}
.shim-new-email-item b {font-size:13px;color:#9D751A;white-space:nowrap}
.shim-new-email-dot {width:10px;height:10px;min-width:10px;background:#bd1523;border-radius:50%;box-shadow:0 0 0 4px #fff0f2}
@media(max-width:620px){.shim-home-inbox .shim-panel-header{align-items:stretch}.shim-new-email-item{padding:14px 2px;gap:10px}}

/* 2.2.2 private mail reader and safe file attachments */
#shim-app .shim-attach-field{display:flex;flex-direction:column;gap:8px;min-width:0;background:#f5f7fa;border:1px dashed #abb9c7;border-radius:12px;padding:14px 16px;font-size:16px;font-weight:700;color:#1c2b38}
#shim-app .shim-attach-field input[type=file]{width:100%;min-height:48px;max-width:100%;font-size:15px;background:#fff;border:1px solid #ced7df;border-radius:8px;padding:11px}
#shim-app .shim-attach-field small{font-size:13px;font-weight:500;color:#5c6673;line-height:1.4}
#shim-app .shim-email-reader .shim-mail-body{white-space:pre-wrap;overflow-wrap:anywhere;background:#f8f9fc;padding:15px;border-radius:10px;min-height:70px;font-size:16px;line-height:1.6}
#shim-app .shim-reader-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
#shim-app .shim-reader-head h3{margin:0;overflow-wrap:anywhere}
#shim-app .shim-reader-head span{font-size:13px;color:#657080}
#shim-app .shim-incoming-attachments{display:flex;flex-direction:column;gap:10px;border-top:1px solid #e6e9ec;padding:16px 0}
#shim-app .shim-incoming-attachments button{max-width:100%;min-height:44px;white-space:normal;text-align:left;overflow-wrap:anywhere}
@media(max-width:600px){#shim-app .shim-email-reader{padding:15px 12px}#shim-app .shim-reader-head{align-items:flex-start}#shim-app .shim-attach-field{padding:12px}}

/* Mobile push permission panel v2.3.0 */
.shim-push-controls{margin:17px 0 20px;border:1px solid #dcdfe6;border-radius:14px;background:#fff;padding:19px;box-shadow:0 5px 20px rgba(0,0,0,.045)}
.shim-push-controls>strong{display:block;font-size:1.08rem;color:#151922;margin-bottom:9px}
.shim-push-controls [data-push-state]{font-size:.98rem;line-height:1.55;margin:8px 0 15px;color:#354254}
.shim-push-controls .shim-phone-alert-actions{display:flex;flex-wrap:wrap;gap:10px}
.shim-push-controls button{min-height:45px;font-size:.95rem}
@media(max-width:650px){.shim-push-controls{padding:16px}.shim-push-controls .shim-phone-alert-actions button{width:100%}}

/* v2.3.2 inbox mobile polish */
#shim-app .shim-email-signature-preview{border:1px solid #e5e7eb;background:linear-gradient(180deg,#fff,#fafbfc);border-radius:14px;padding:16px 18px;margin:0 0 20px}
#shim-app .shim-signature-preview-inner{display:flex;align-items:center;gap:16px}
#shim-app .shim-signature-preview-inner img{width:88px;height:auto;display:block;flex:0 0 auto}
#shim-app .shim-signature-preview-inner div{display:flex;flex-direction:column;gap:4px;color:#1f2937}
#shim-app .shim-signature-preview-inner strong{font-size:15px;letter-spacing:.02em}
#shim-app .shim-signature-preview-inner small{font-size:12px;color:#6b7280}
#shim-app .shim-signature-preview-inner span{font-size:13px;color:#374151;overflow-wrap:anywhere}

#shim-app .shim-mail-list-item{display:flex;flex-direction:column;gap:10px;width:100%;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:14px 15px;text-align:left;margin:10px 0;cursor:pointer;color:#14212e;box-shadow:0 1px 0 rgba(15,23,42,.02)}
#shim-app .shim-mail-list-item:hover,#shim-app .shim-mail-list-item:focus-visible{border-color:#b31925;box-shadow:0 10px 24px rgba(100,19,27,.08)}
#shim-app .shim-mail-list-top,#shim-app .shim-mail-list-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
#shim-app .shim-mail-list-top strong{font-size:16px;line-height:1.35;min-width:0;overflow-wrap:anywhere;flex:1}
#shim-app .shim-mail-state{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;background:#eef2f7;color:#607286;font-size:11px;font-weight:800;letter-spacing:.02em;white-space:nowrap;flex:0 0 auto}
#shim-app .shim-mail-state.new{background:#fff1e8;color:#a54a18}
#shim-app .shim-mail-from{font-size:13px;color:#516071;overflow-wrap:anywhere;min-width:0;flex:1}
#shim-app .shim-mail-date{font-size:12px;color:#76879a;white-space:nowrap;flex:0 0 auto}

#shim-app .shim-email-reader{background:#fff;border:1px solid #dce3e9;border-radius:16px;padding:18px;margin:18px 0;box-shadow:0 4px 22px rgba(15,23,42,.04)}
#shim-app .shim-reader-meta{margin:8px 0 0;color:#445363;font-size:14px;line-height:1.65}
#shim-app .shim-mail-rich{white-space:normal;background:#f8fafc;padding:16px;border-radius:14px;min-height:90px;font-size:15px;line-height:1.75;border:1px solid #e5ebf2}
#shim-app .shim-mail-rich p{margin:0 0 14px;overflow-wrap:anywhere;word-break:break-word}
#shim-app .shim-mail-rich p:last-child{margin-bottom:0}
#shim-app .shim-mail-rich .shim-mail-quote{margin-top:16px;border:1px solid #d8e0e9;border-radius:12px;background:#fff}
#shim-app .shim-mail-rich .shim-mail-quote summary{cursor:pointer;list-style:none;padding:12px 14px;font-weight:800;color:#27435a;background:#f3f7fb;border-radius:12px}
#shim-app .shim-mail-rich .shim-mail-quote[open] summary{border-bottom:1px solid #e0e6ed;border-bottom-left-radius:0;border-bottom-right-radius:0}
#shim-app .shim-mail-rich .shim-mail-quote blockquote{margin:0;padding:14px 16px;color:#4b5b6b;background:#fff;border-left:4px solid #d4dee8;white-space:pre-wrap;overflow-wrap:anywhere}

@media(max-width:640px){
  #shim-app .shim-signature-preview-inner{align-items:flex-start;gap:12px}
  #shim-app .shim-signature-preview-inner img{width:72px}
  #shim-app .shim-mail-list-top,#shim-app .shim-mail-list-bottom,#shim-app .shim-reader-head{flex-direction:column;align-items:flex-start}
  #shim-app .shim-mail-date,#shim-app .shim-mail-state{white-space:normal}
  #shim-app .shim-email-reader{padding:14px 12px}
  #shim-app .shim-mail-rich{padding:14px;font-size:14px}
}

/* State Home Improvement Inc. v2.3.4: mobile-first home, contacts and actionable documents */
#shim-app .shim-content,#shim-app .shim-panel,#shim-app .shim-simple-contacts,#shim-app .shim-home-inbox{min-width:0;max-width:100%;box-sizing:border-box}
#shim-app .shim-simple-contact{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden;gap:12px}
#shim-app .shim-simple-contact-text{min-width:0;flex:1 1 0;max-width:100%;overflow:hidden}
#shim-app .shim-simple-contact-text strong{font-size:16px;display:block;max-width:100%;overflow-wrap:anywhere;word-break:break-word;white-space:normal;line-height:1.35}
#shim-app .shim-simple-contact-text small{max-width:100%;display:block;line-height:1.5;overflow-wrap:anywhere;word-break:break-word}
#shim-app .shim-simple-contact .shim-pill{flex:0 0 auto;white-space:nowrap;font-size:12px}
#shim-app .shim-home-inbox .shim-new-email-item{background:#fff!important;color:#1c2937!important;box-sizing:border-box;border:1px solid #e2e8f0;border-radius:14px;margin-top:10px;min-width:0;min-height:75px;padding:15px;gap:12px;display:flex;align-items:center;text-align:left;box-shadow:0 2px 10px rgba(15,23,42,.025)}
#shim-app .shim-home-inbox .shim-new-email-item:hover{background:#fff9f9!important;border-color:#c8a2a6}
#shim-app .shim-home-inbox .shim-new-email-item span:nth-child(2){min-width:0;max-width:100%;flex:1 1 0;overflow:hidden}
#shim-app .shim-home-inbox .shim-new-email-item strong,#shim-app .shim-home-inbox .shim-new-email-item small{font-size:14px!important;font-weight:750;color:#253548!important;line-height:1.4;overflow-wrap:anywhere;word-break:break-word;white-space:normal;max-width:100%}
#shim-app .shim-home-inbox .shim-new-email-item small{font-weight:500!important;color:#667386!important}
#shim-app .shim-home-inbox .shim-new-email-item b{align-self:center;background:#fff4f5;border-radius:9px;padding:9px 11px;white-space:nowrap;color:#9c1520!important;font-size:13px}
#shim-app .shim-next-visits .shim-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
#shim-app .shim-next-visits .shim-panel-header h2{margin:0}
#shim-app .shim-next-visit-card{display:grid;grid-template-columns:minmax(110px,155px) minmax(0,1fr) auto;align-items:center;gap:16px;width:100%;min-width:0;max-width:100%;box-sizing:border-box;padding:16px;text-align:left;border:1px solid #e1e6ec;background:#fff;border-radius:15px;margin:10px 0;color:#182633;cursor:pointer}
#shim-app .shim-next-visit-card:hover{background:#fcfafb;border-color:#c17f87}
#shim-app .shim-next-visit-date{background:#f8f0f1;color:#8b1622;display:flex;flex-direction:column;gap:4px;min-width:0;padding:13px;border-radius:12px}
#shim-app .shim-next-visit-date b{font-size:13px;line-height:1.4;overflow-wrap:anywhere}
#shim-app .shim-next-visit-date small{font-size:16px;font-weight:800}
#shim-app .shim-next-visit-text{display:flex;flex-direction:column;min-width:0;gap:4px}
#shim-app .shim-next-visit-text strong{font-size:16px;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}
#shim-app .shim-next-visit-text small{font-size:13px;color:#627080;overflow-wrap:anywhere;word-break:break-word}
#shim-app .shim-next-visit-text em{font-size:11px;text-transform:capitalize;align-self:flex-start;font-weight:800;font-style:normal;color:#42566a;background:#eff3f8;border-radius:999px;padding:4px 9px}
#shim-app .shim-next-visit-arrow{font-size:13px;white-space:nowrap;color:#991b25;font-weight:800;align-self:center}
#shim-app .shim-balance-badge{display:inline-flex;align-items:center;margin:9px 0 0;max-width:100%;font-weight:800;font-size:13px;border-radius:999px;padding:7px 12px;line-height:1.3;white-space:normal;overflow-wrap:anywhere}
#shim-app .shim-balance-badge.unpaid{background:#fff0e4;color:#91410d}
#shim-app .shim-balance-badge.paid{background:#e9f7ef;color:#1a6b40}
#shim-app .shim-balance-badge.draft{background:#eff3f8;color:#425466}
#shim-app .shim-balance-badge.void{background:#f1f1f1;color:#646b72}
#shim-app [data-push-state],#shim-app [data-push-diagnostics]{white-space:normal;overflow-wrap:anywhere;word-break:break-word;max-width:100%;min-width:0;line-height:1.65}
@media(max-width:650px){
 #shim-app .shim-simple-contact{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:start;gap:11px;padding:15px}
 #shim-app .shim-simple-contact .shim-pill{grid-column:2;justify-self:start;margin:0!important;min-width:0}
 #shim-app .shim-simple-contact>b{display:none}
 #shim-app .shim-next-visit-card{grid-template-columns:1fr;gap:10px;padding:14px}
 #shim-app .shim-next-visit-date{flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 12px}
 #shim-app .shim-next-visit-date b{font-size:14px}
 #shim-app .shim-next-visit-text strong{font-size:16px}
 #shim-app .shim-next-visit-arrow{justify-self:start;align-self:start;background:#fff6f7;padding:9px 13px;border-radius:9px}
 #shim-app .shim-home-inbox .shim-new-email-item{align-items:flex-start;flex-wrap:wrap}
 #shim-app .shim-home-inbox .shim-new-email-item b{align-self:auto;margin-left:24px}
}

/* v2.3.5: compact customer inbox, device diagnostics and private attachment previews */
#shim-app .shim-compose-fold{border:1px solid #dce4eb;border-radius:14px;background:#fff;overflow:hidden}
#shim-app .shim-compose-fold summary{cursor:pointer;padding:15px 18px;font-weight:800;font-size:16px;color:#9c1722;background:#f9f9fb}
#shim-app .shim-compose-fold[open] summary{border-bottom:1px solid #e6e9ee}
#shim-app .shim-compose-fold>h2,#shim-app .shim-compose-fold>p,#shim-app .shim-compose-fold>form,#shim-app .shim-compose-fold>.shim-email-signature-preview{margin:14px 18px}
#shim-app .shim-incoming-file{padding:12px;border:1px solid #e1e6ee;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;overflow-wrap:anywhere}
#shim-app .shim-incoming-file>span{flex:1;min-width:0;font-size:14px;color:#283647}
#shim-app .shim-file-actions{display:flex;gap:8px;flex-wrap:wrap}
#shim-app .shim-visit-email-sent{display:inline-flex;align-items:center;background:#e8f7ee;color:#196143;padding:10px 12px;border-radius:10px;font-size:13px;font-weight:750}
#shim-app [data-push-diagnostics]{white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.65}
.shim-attachment-overlay{position:fixed;inset:0;z-index:1000000;display:flex;align-items:center;justify-content:center;background:rgba(15,23,42,.76);padding:12px}
.shim-attachment-dialog{display:flex;flex-direction:column;gap:9px;background:#fff;color:#172231;width:min(860px,100%);max-height:96dvh;border-radius:16px;padding:16px;box-shadow:0 24px 60px rgba(0,0,0,.28)}
.shim-attachment-head{display:flex;align-items:center;justify-content:space-between;gap:12px;overflow-wrap:anywhere}
.shim-attachment-head strong{font-size:15px;min-width:0;overflow-wrap:anywhere}
.shim-attachment-head button{border:0;border-radius:50%;background:#f0f2f5;width:42px;height:42px;flex:0 0 42px;font-size:25px;cursor:pointer}
.shim-attachment-visual{min-height:200px;max-height:calc(96dvh - 130px);overflow:auto;background:#f5f7fa;border-radius:10px;display:flex;align-items:center;justify-content:center}
.shim-attachment-visual img{display:block;max-width:100%;max-height:calc(96dvh - 145px);object-fit:contain}
.shim-attachment-visual iframe{border:0;display:block;width:100%;height:min(74dvh,900px);background:#fff}
.shim-attachment-dialog small{font-size:12px;color:#657080}
@media(max-width:640px){
 #shim-app .shim-work-tabs{gap:8px}
 #shim-app .shim-work-tabs button{font-size:14px;min-height:44px}
 #shim-app .shim-file-actions{width:100%;justify-content:flex-start}
 #shim-app .shim-incoming-file{flex-direction:column;align-items:stretch}
 #shim-app .shim-compose-fold>h2,#shim-app .shim-compose-fold>p,#shim-app .shim-compose-fold>form,#shim-app .shim-compose-fold>.shim-email-signature-preview{margin:14px}
}


/* v2.3.8 — Inbox rebuilt as true 2-pane desktop / full-screen mobile reading view.
   The list uses its own isolated text rows so dates and addresses never overlap. */
#shim-app .shim-inbox-page{min-width:0;padding:18px!important;overflow:visible}
#shim-app .shim-inbox-shell{display:grid;grid-template-columns:minmax(265px,330px) minmax(0,1fr);height:min(78vh,800px);min-height:490px;min-width:0;background:#fff;border:1px solid #dde5ee;border-radius:17px;overflow:hidden}
#shim-app .shim-inbox-list{display:flex;flex-direction:column;min-width:0;min-height:0;background:#f9fbfd;border-right:1px solid #e5eaf1;overflow:hidden}
#shim-app .shim-inbox-list-title{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:17px 15px;background:#fff;border-bottom:1px solid #e4e9f0}
#shim-app .shim-inbox-list-title strong{font-size:19px;color:#172434}
#shim-app .shim-inbox-list-title span{font-size:12px;color:#65758a;text-align:right;white-space:normal}
#shim-app .shim-inbox-scroll{min-width:0;min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:9px;overscroll-behavior:contain}
#shim-app .shim-inbox-scroll .shim-mail-list-item{box-sizing:border-box;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:7px!important;width:100%!important;min-width:0!important;max-width:100%!important;min-height:100px!important;margin:0 0 9px!important;padding:13px!important;border:1px solid #e0e7ef;border-radius:13px;background:#fff;text-align:left;cursor:pointer;overflow:hidden;box-shadow:none}
#shim-app .shim-inbox-scroll .shim-mail-list-item:hover,#shim-app .shim-inbox-scroll .shim-mail-list-item:focus-visible{border-color:#b71b28;background:#fff9f9}
#shim-app .shim-inbox-scroll .shim-mail-list-item.selected{border-color:#ae1422;background:#fff0f1;box-shadow:inset 3px 0 0 #b41322}
#shim-app .shim-inbox-scroll .shim-mail-list-item.unread{border-left:3px solid #b41322}
#shim-app .shim-inbox-scroll .shim-mail-list-item .shim-mail-list-subject,
#shim-app .shim-inbox-scroll .shim-mail-list-item .shim-mail-list-address,
#shim-app .shim-inbox-scroll .shim-mail-list-item .shim-mail-list-foot,
#shim-app .shim-inbox-scroll .shim-mail-list-item .shim-mail-list-time{box-sizing:border-box;position:static!important;inset:auto!important;display:block!important;float:none!important;width:auto!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;white-space:normal!important;text-align:left!important;line-height:1.35!important;overflow-wrap:anywhere!important;word-break:normal!important;letter-spacing:normal!important}
#shim-app .shim-inbox-scroll .shim-mail-list-item .shim-mail-list-subject{font-size:15px!important;font-weight:750!important;color:#172332!important}
#shim-app .shim-inbox-scroll .shim-mail-list-item .shim-mail-list-address{font-size:13px!important;color:#42576a!important}
#shim-app .shim-inbox-scroll .shim-mail-list-item .shim-mail-list-foot{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:8px!important;margin-top:4px!important}
#shim-app .shim-inbox-scroll .shim-mail-list-item .shim-mail-list-time{font-size:12px!important;color:#6b7a8d!important;flex:1 1 auto}
#shim-app .shim-inbox-scroll .shim-mail-list-item .shim-mail-list-badge{position:static!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;padding:5px 9px!important;margin:0!important;line-height:1.15!important;white-space:nowrap!important;font-size:11px!important;font-weight:800!important;color:#6a7b8c!important;background:#edf1f6;border-radius:999px}
#shim-app .shim-inbox-scroll .shim-mail-list-item .shim-mail-list-badge.unread{color:#9b2819!important;background:#fff0e8}
#shim-app .shim-inbox-reader{box-sizing:border-box;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;padding:22px;background:#fff;overscroll-behavior:contain}
#shim-app .shim-inbox-reader .shim-email-reader{width:100%;max-width:100%;min-width:0;border:none;box-shadow:none;padding:0;margin:0;background:transparent}
#shim-app .shim-inbox-reader .shim-reader-head{display:flex;flex-direction:column;align-items:flex-start;gap:11px;margin-bottom:16px}
#shim-app .shim-inbox-reader .shim-reader-head h3{font-size:23px;line-height:1.3;margin:0;overflow-wrap:anywhere}
#shim-app .shim-inbox-reader .shim-reader-meta{font-size:14px;line-height:1.7;overflow-wrap:anywhere}
#shim-app .shim-inbox-reader .shim-reader-head span{display:inline-flex;align-items:center;gap:8px;font-size:12px;line-height:1.35;color:#526477;background:#f3f6fa;border:1px solid #e2e8ee;border-radius:999px;padding:7px 12px;white-space:normal;overflow-wrap:normal;word-break:normal}
#shim-app .shim-inbox-actions{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0 20px}
#shim-app .shim-inbox-actions .shim-btn{min-height:43px;white-space:normal;font-size:13px}
#shim-app .shim-inbox-actions .shim-btn-trash{border:1px solid #f1c5c6;background:#fff9f9;color:#a30d1a;font-weight:750}
#shim-app .shim-inbox-reader .shim-mail-body.shim-mail-rich{box-sizing:border-box!important;display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:92px;max-height:none!important;padding:19px!important;margin:0!important;background:#f7f9fc!important;border:1px solid #e5eaf1!important;border-radius:13px!important;overflow:visible!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:left!important;font-size:15px!important;line-height:1.75!important;writing-mode:horizontal-tb!important;letter-spacing:normal!important}
#shim-app .shim-inbox-reader .shim-mail-body.shim-mail-rich p{box-sizing:border-box!important;display:block!important;position:static!important;width:auto!important;max-width:100%!important;min-width:0!important;margin:0 0 14px!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:left!important;writing-mode:horizontal-tb!important;line-height:1.75!important}
#shim-app .shim-inbox-reader .shim-mail-body.shim-mail-rich p:last-child{margin-bottom:0!important}
#shim-app .shim-mail-body .shim-mail-quote{display:block;margin-top:18px;border:1px solid #dfe6ee;border-radius:12px;background:#fff;overflow:hidden}
#shim-app .shim-mail-body .shim-mail-quote summary{cursor:pointer;padding:12px 14px;background:#f1f5f9;font-size:14px;font-weight:750;color:#324d63;list-style:none}
#shim-app .shim-mail-body .shim-mail-quote summary::-webkit-details-marker{display:none}
#shim-app .shim-mail-body .shim-mail-quote-content{padding:14px;background:#fff;color:#4d5a69;font-size:14px}
#shim-app .shim-inbox-back{display:none}
#shim-app .shim-inbox-placeholder{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:370px;text-align:center;padding:30px;color:#56697d}
#shim-app .shim-inbox-placeholder-icon{font-size:36px;display:grid;place-items:center;background:#fff2f3;color:#a81524;width:78px;height:78px;border-radius:22px}
#shim-app .shim-inbox-placeholder h3{font-size:22px;margin:0}
#shim-app .shim-inbox-placeholder p{max-width:370px;font-size:15px;line-height:1.6;margin:0}
#shim-app .shim-mail-compose{margin:20px 0;border:1px solid #e0e7ed;border-radius:13px;overflow:hidden}
#shim-app .shim-mail-compose summary{cursor:pointer;padding:13px 15px;background:#fffafb;color:#9b1624;font-size:15px;font-weight:750}
#shim-app .shim-mail-compose form{padding:15px}
#shim-app .shim-mail-compose>.shim-muted{padding:0 15px 15px}
#shim-app .shim-inbox-status{margin:0 0 12px!important}
@media(max-width:860px){
 #shim-app .shim-inbox-page{padding:12px!important}
 #shim-app .shim-inbox-shell{display:block;height:auto;min-height:0;border:none;border-radius:0;overflow:visible}
 #shim-app .shim-inbox-list{width:100%;border:0;background:transparent;overflow:visible}
 #shim-app .shim-inbox-scroll{padding:0;overflow:visible}
 #shim-app .shim-inbox-list-title{padding:13px 5px}
 #shim-app .shim-inbox-scroll .shim-mail-list-item{padding:16px!important;min-height:110px!important;margin:10px 0!important}
 #shim-app .shim-inbox-shell:not(.is-reading) .shim-inbox-reader{display:none!important}
 #shim-app .shim-inbox-shell.is-reading .shim-inbox-list{display:none!important}
 #shim-app .shim-inbox-shell.is-reading .shim-inbox-reader{position:fixed!important;inset:0!important;top:0!important;left:0!important;right:0!important;bottom:0!important;z-index:2147483000!important;background:#fff!important;display:block!important;width:100vw!important;height:100dvh!important;max-height:100dvh!important;min-width:0!important;overflow:auto!important;overscroll-behavior:contain;padding:max(18px,env(safe-area-inset-top)) 17px calc(28px + env(safe-area-inset-bottom))!important}
 #shim-app .shim-inbox-reader .shim-mail-body.shim-mail-rich{padding:15px!important;font-size:16px!important}
 #shim-app .shim-inbox-back{display:inline-flex!important;position:sticky;top:0;z-index:2;padding:12px 15px;margin:0 0 18px;background:#fff;border:1px solid #e1e8ed;box-shadow:0 6px 20px rgba(19,36,53,.07)}
 #shim-app .shim-inbox-actions .shim-btn{flex:1 1 calc(50% - 9px);min-height:47px}
 #shim-app .shim-inbox-reader .shim-reader-head h3{font-size:22px}
}

/* v2.3.9 header home button + field helpers + icon polish */
#shim-app .shim-home-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:42px;height:42px;padding:0 12px;border:1px solid #d7dfe7;border-radius:12px;background:#fff;color:#15334f;box-shadow:0 3px 10px rgba(17,45,72,.06)}
#shim-app .shim-home-button:hover{background:#f7fafc}
#shim-app .shim-home-button svg{width:19px;height:19px;display:block;color:#15334f}
#shim-app .shim-home-button-label{font-size:12px;font-weight:800;letter-spacing:.2px}
#shim-app .shim-nav-icon,#shim-app .shim-module-icon{display:grid;place-items:center}
#shim-app .shim-nav-icon svg{width:18px;height:18px;display:block}
#shim-app .shim-mobile-module-item{transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}
#shim-app .shim-mobile-module-item:hover{border-color:#c63d4a;box-shadow:0 8px 18px rgba(17,45,72,.08)}
#shim-app .shim-mobile-module-item.active .shim-module-icon,#shim-app .shim-navitem.active .shim-nav-icon{background:rgba(255,255,255,.12);color:#B88A18}
#shim-app .shim-module-icon{box-shadow:inset 0 0 0 1px rgba(184,16,32,.08)}
#shim-app .shim-field>span,#shim-app .shim-inline-label{display:flex;align-items:center;gap:8px;justify-content:flex-start;flex-wrap:wrap}
#shim-app .shim-help-dot{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1px solid #d7dfe7;background:#f7f9fc;color:#8f1320;font-size:11px;font-weight:800;line-height:1;padding:0;box-shadow:none;cursor:help}
#shim-app .shim-help-dot:hover{background:#fff0f1;border-color:#c73d49}
#shim-app .shim-topbar .shim-home-button,#shim-app .shim-topbar .shim-alert-bell,#shim-app .shim-topbar .shim-install-button,#shim-app .shim-topbar .shim-signout-top{flex:0 0 auto}
@media(max-width:760px){
 #shim-app .shim-home-button{min-width:41px;width:41px;height:41px;padding:0;border-radius:10px}
 #shim-app .shim-home-button-label{display:none}
}
@media(max-width:420px){
 #shim-app .shim-topbar{gap:7px!important}
 #shim-app .shim-home-button{min-width:39px;width:39px;height:39px}
 #shim-app .shim-home-button svg{width:18px;height:18px}
}


/* State Home Improvement Inc. official black, gold, silver identity */
#shim-app{--navy:#101820;--navydeep:#080D13;--teal:#B58824;--teallight:#FBF6E5;--paper:#F7F8FA;--border:#E0E4E9;--muted:#596779;--ink:#14202A}
#shim-app .shim-sidebar{background:linear-gradient(155deg,#08090C 0%,#171A20 100%)}
#shim-app .shim-navitem.active{box-shadow:inset 3px 0 0 #D6AE47}
#shim-app .shim-btn.primary,#shim-app .shim-mobile-modules-btn,#shim-app .shim-install-button{background:#15191E;border-color:#15191E;color:#fff}
#shim-app .shim-btn.primary:hover,#shim-app .shim-mobile-modules-btn:hover{background:#30333A;border-color:#30333A}
#shim-app .shim-eyebrow{color:#9C751B}
#shim-app .shim-sidebar .shim-nav-icon,#shim-app .shim-module-icon{color:#C6A045}
#shim-app .shim-mobile-module-item{background:#fff;color:#18202B;border-color:#DFE3E8}
#shim-app .shim-mobile-module-item.active{background:#FFFAEE;border-color:#CDA747}
#shim-app .shim-mobile-module-item.active .shim-module-icon{background:#161A20;color:#E8C165}
#shim-app .shim-mobile-module-item .shim-module-icon{background:#FFF6DE;color:#946911}
#shim-app .shim-help-dot{background:#FFF5D9;color:#75520A;border-color:#D7C18F}
#shim-app .shim-home-button svg{color:#9B751F}
#shim-app .shim-kpi-number{color:#171A20}
#shim-app .shim-pill-new{background:#FFF5D9;color:#93691B}
#shim-app .shim-simple-contact.selected{border-color:#B88923}
#shim-app .shim-inbox-scroll .shim-mail-list-item.selected{background:#FFFAEF;border-color:#CDA747;box-shadow:inset 3px 0 0 #A47D21}
#shim-app .shim-inbox-actions .shim-btn.primary{color:#fff}
#shim-app .shim-alert-badge{background:#C19A3B}
#shim-app .shim-visit-count{background:#FAF0CB;color:#845F1B}


/* v2.4.0 — Compact two-column Planner: calendar LEFT, dates/appointments RIGHT. */
#shim-app .shim-planner-pagehead{margin-bottom:18px}
#shim-app .shim-planner-pagehead p{max-width:650px}
#shim-app .shim-planner-layout{display:grid;grid-template-columns:minmax(305px,.87fr) minmax(0,1.13fr);gap:18px;align-items:start;min-width:0}
#shim-app .shim-planner-left,#shim-app .shim-planner-right{min-width:0;display:flex;flex-direction:column;gap:14px}
#shim-app .shim-planner-layout .shim-visits-calendar,#shim-app .shim-planner-layout .shim-visits-list{margin:0}
#shim-app .shim-planner-left .shim-visits-calendar{padding:19px 17px 17px;border:1px solid #dfe3e8;box-shadow:0 7px 23px rgba(16,24,32,.045)}
#shim-app .shim-planner-layout .shim-visits-toolbar{align-items:center;margin-bottom:17px}
#shim-app .shim-planner-layout .shim-visits-toolbar h2{font-size:19px;line-height:1.2;color:#171a20}
#shim-app .shim-planner-layout .shim-visits-toolbar small{margin-top:4px;font-size:11.5px;color:#697481}
#shim-app .shim-planner-layout .shim-visits-toolbar>div:last-child{flex-wrap:nowrap}
#shim-app .shim-planner-layout .shim-visits-toolbar .shim-btn{min-height:34px;min-width:34px;padding:7px 9px;display:inline-flex;justify-content:center;align-items:center;font-size:12px}
#shim-app .shim-planner-layout .shim-visits-grid{gap:5px}
#shim-app .shim-planner-layout .shim-visit-weekday{padding:6px 0;font-size:11px;color:#687380}
#shim-app .shim-planner-layout .shim-visit-day{min-height:58px;padding:7px 6px;gap:3px;border-radius:8px;transition:background .12s,border-color .12s}
#shim-app .shim-planner-layout .shim-visit-day.filler{border:0;pointer-events:none}
#shim-app .shim-planner-layout .shim-visit-day strong{font-size:13px;font-weight:800;line-height:1.1}
#shim-app .shim-planner-layout .shim-visit-day.today{border-color:#c9ac5c}
#shim-app .shim-planner-layout .shim-visit-day.chosen{outline:2px solid #ba912c;outline-offset:-2px;background:#fff9eb}
#shim-app .shim-planner-layout .shim-visit-count{font-size:10px;line-height:1.2;color:#73581c;background:#fbf0cc;border-radius:4px;padding:2px 4px}
#shim-app .shim-planner-layout .shim-visit-dot{width:6px;height:6px;top:7px;right:6px;background:#d68c25}
#shim-app .shim-planner-legend{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;margin-top:15px;padding-top:14px;border-top:1px solid #ecedf0;color:#5a6471;font-size:11px;line-height:1.3}
#shim-app .shim-planner-legend span{display:inline-flex;align-items:center;gap:6px}
#shim-app .shim-legend-dot{display:inline-block;width:8px;height:8px;flex:none;border-radius:100%;background:#d68c25}
#shim-app .shim-legend-outline{display:inline-block;width:10px;height:10px;flex:none;border:2px solid #ba912c;border-radius:3px}
#shim-app .shim-visit-kpis-compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
#shim-app .shim-visit-kpis-compact>div{padding:12px 10px;min-width:0;border:1px solid #e2e6ec;border-radius:11px}
#shim-app .shim-visit-kpis-compact small{font-size:11px;line-height:1.35;min-height:30px;color:#4c5867}
#shim-app .shim-visit-kpis-compact strong{font-size:23px;margin-top:4px;color:#191d23}
#shim-app .shim-planner-right>.shim-panel{padding:20px;border:1px solid #dfe3e8;border-radius:15px;min-width:0}
#shim-app .shim-planner-section-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-bottom:15px;border-bottom:1px solid #e8ebef}
#shim-app .shim-planner-section-head .shim-eyebrow{font-size:10px;letter-spacing:1.3px;margin-bottom:5px}
#shim-app .shim-planner-section-head h2{font-size:18px;line-height:1.3;margin:0;color:#171d27}
#shim-app .shim-planner-count{font-size:11px;font-weight:800;white-space:nowrap;padding:7px 9px;border-radius:999px;background:#f8f1df;color:#805e1d}
#shim-app .shim-planner-right .shim-visit-item{grid-template-columns:79px minmax(0,1fr);gap:8px 12px;padding:15px 0;border-top:1px solid #e8ebef}
#shim-app .shim-planner-right .shim-visit-item:first-of-type{border-top:0;margin-top:0}
#shim-app .shim-planner-right .shim-visit-when b{font-size:15px;line-height:1.3;color:#191e26}
#shim-app .shim-planner-right .shim-visit-when span{font-size:10.5px}
#shim-app .shim-planner-right .shim-visit-info strong{font-size:14px;overflow-wrap:anywhere}
#shim-app .shim-planner-right .shim-visit-info>span:not(.shim-pill){font-size:12px;overflow-wrap:anywhere}
#shim-app .shim-planner-right .shim-visit-info small{font-size:11px;line-height:1.35;overflow-wrap:anywhere}
#shim-app .shim-planner-right .shim-visit-actions{grid-column:2;gap:5px}
#shim-app .shim-planner-right .shim-visit-actions .shim-btn{padding:7px 9px;min-height:31px;font-size:11px}
#shim-app .shim-planner-empty{padding:23px 8px;text-align:center;color:#606b79;display:flex;align-items:center;justify-content:center;gap:12px}
#shim-app .shim-planner-empty span{font-size:26px;color:#b8984b}
#shim-app .shim-planner-empty p{margin:0;font-size:12px;line-height:1.55;text-align:left;max-width:310px}
#shim-app .shim-visit-date-list{display:flex;flex-direction:column;gap:7px;margin-top:14px;max-height:345px;overflow-y:auto;overflow-x:hidden;padding-right:2px}
#shim-app .shim-visit-date-row{display:flex;align-items:center;gap:12px;width:100%;min-width:0;min-height:64px;padding:8px 10px;text-align:left;background:#fafbfc;border:1px solid #e4e8ed;border-radius:11px;color:#192330;cursor:pointer;transition:background .15s,border-color .15s;box-sizing:border-box}
#shim-app .shim-visit-date-row:hover,#shim-app .shim-visit-date-row:focus-visible{background:#fff9ed;border-color:#c6a75a}
#shim-app .shim-visit-date-row.chosen{background:#fff9ed;border-color:#bd9e52;box-shadow:inset 3px 0 0 #b08b2e}
#shim-app .shim-visit-datebadge{width:65px;min-width:65px;min-height:51px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#fff;border:1px solid #ece8df;border-radius:8px}
#shim-app .shim-visit-datebadge b{font-size:20px;line-height:1;color:#232323}
#shim-app .shim-visit-datebadge small{font-size:10px;line-height:1.2;color:#86703a}
#shim-app .shim-visit-date-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
#shim-app .shim-visit-date-content strong{font-size:12px;line-height:1.3;overflow-wrap:anywhere}
#shim-app .shim-visit-date-content small{font-size:11px;line-height:1.3;color:#5b6976;overflow-wrap:anywhere}
#shim-app .shim-date-pending{font-size:10px;color:#9d5b09;font-weight:700}
#shim-app .shim-visit-date-arrow{flex:none;font-size:17px;color:#ac8d38}
#shim-app .shim-planner-footer-note{max-width:900px;font-size:11px;line-height:1.5;color:#6a7480;margin:12px 0 0}
@media(max-width:920px){
 #shim-app .shim-planner-layout{grid-template-columns:1fr;gap:13px}
 #shim-app .shim-planner-left .shim-visits-calendar{max-width:720px;width:100%;box-sizing:border-box}
 #shim-app .shim-planner-layout .shim-visit-day{min-height:56px}
}
@media(max-width:560px){
 #shim-app .shim-planner-left .shim-visits-calendar{padding:15px 10px}
 #shim-app .shim-planner-layout .shim-visits-grid{gap:3px}
 #shim-app .shim-planner-layout .shim-visit-day{min-height:48px;padding:5px 3px}
 #shim-app .shim-planner-layout .shim-visit-day strong{font-size:12px}
 #shim-app .shim-planner-layout .shim-visit-count{font-size:9px;padding:1px 2px}
 #shim-app .shim-planner-right>.shim-panel{padding:14px 12px}
 #shim-app .shim-planner-right .shim-visit-item{grid-template-columns:1fr;gap:7px}
 #shim-app .shim-planner-right .shim-visit-when{display:flex;align-items:center;gap:10px}
 #shim-app .shim-planner-right .shim-visit-actions{grid-column:1}
 #shim-app .shim-visit-kpis-compact>div{padding:9px 7px}
 #shim-app .shim-visit-kpis-compact small{font-size:10px;min-height:26px}
 #shim-app .shim-visit-kpis-compact strong{font-size:21px}
 #shim-app .shim-visit-datebadge{width:54px;min-width:54px}
 #shim-app .shim-visit-date-content strong{font-size:11.5px}
}

/* v2.4.1 — always-visible branded customer email composer. */
#shim-app .shim-compose-panel{padding:0!important;overflow:hidden;border:1px solid #dce3ec;background:#fff;box-shadow:0 4px 22px rgba(17,36,52,.035)}
#shim-app .shim-compose-header{display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:21px 24px;background:linear-gradient(115deg,#fff 0%,#fffafa 100%);border-bottom:1px solid #e8eaf0}
#shim-app .shim-compose-header h2{font-size:24px;font-weight:820;letter-spacing:-.035em;color:#192536;margin:5px 0 6px;line-height:1.25}
#shim-app .shim-compose-header p{color:#566375;line-height:1.5;font-size:14px;margin:0}
#shim-app .shim-compose-kicker{font-size:11px;letter-spacing:.13em;color:#aa1420;font-weight:850}
#shim-app .shim-compose-secure{color:#4f6473;font-size:12px;font-weight:650;display:flex;align-items:center;gap:7px;border:1px solid #e3e9ed;background:#fff;padding:9px 12px;border-radius:999px}
#shim-app .shim-compose-secure span{color:#20815c}
#shim-app .shim-compose-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(265px,.8fr);align-items:start;gap:24px;padding:25px}
#shim-app .shim-compose-form{max-width:none;min-width:0;margin:0;gap:17px}
#shim-app .shim-compose-form label{font-size:13px;color:#364354;font-weight:770;gap:8px}
#shim-app .shim-compose-form input,#shim-app .shim-compose-form textarea{font-size:15px;border-color:#d6dee6;line-height:1.55;border-radius:11px;box-shadow:0 1px 2px rgba(15,23,42,.03);padding:12px 14px;min-width:0;box-sizing:border-box}
#shim-app .shim-compose-form input[readonly]{background:#f5f7fa;color:#394758;cursor:default}
#shim-app .shim-compose-form input:focus,#shim-app .shim-compose-form textarea:focus{border-color:#aa1523;outline:2px solid rgba(170,21,35,.14);outline-offset:0}
#shim-app .shim-compose-form textarea{min-height:190px;resize:vertical}
#shim-app .shim-compose-form .shim-attach-field{padding:15px 16px;background:#fafbfd;border-color:#c3cdd8;gap:9px}
#shim-app .shim-compose-form .shim-attach-field input[type=file]{font-size:13px;min-height:45px;cursor:pointer;padding:8px;background:#fff}
#shim-app .shim-attach-heading{display:flex;align-items:center;gap:7px;font-size:14px;color:#283749}
#shim-app .shim-optional{color:#768394;font-size:12px;font-weight:500}
#shim-app .shim-attach-heading .shim-compose-paperclip{font-size:16px}
#shim-app .shim-chosen-files{display:flex;flex-direction:column;gap:5px;color:#5a6878;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
#shim-app .shim-chosen-files strong{color:#1c6346;font-size:13px}
#shim-app .shim-chosen-files span{display:block;padding:5px 9px;background:#ecf8f1;border:1px solid #d7f1e3;color:#28614b;border-radius:6px}
#shim-app .shim-compose-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:1px}
#shim-app .shim-compose-actions button{margin:0;min-height:47px;font-weight:800;padding-inline:20px}
#shim-app .shim-compose-actions button.primary{box-shadow:0 6px 15px rgba(174,19,32,.16)}
#shim-app .shim-compose-actions button:disabled{opacity:.5;cursor:not-allowed}
#shim-app .shim-compose-recipient-note{font-size:12px;color:#627386;margin-top:-12px;line-height:1.4}
#shim-app .shim-compose-warning{margin:-10px 0 0;background:#fff8e5;border:1px solid #f0db9b;border-radius:8px;color:#7b5000;font-size:13px;line-height:1.5;padding:10px 12px}
#shim-app .shim-compose-delivery{font-size:12px;line-height:1.6;color:#6d7a89;margin:0}
#shim-app .shim-compose-preview{min-width:0;border:1px solid #e3e8ee;border-radius:15px;background:#f8fafc;padding:16px;position:relative}
#shim-app .shim-preview-heading{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:space-between;margin-bottom:13px}
#shim-app .shim-preview-heading strong{font-size:14px;color:#273648}
#shim-app .shim-preview-heading span{color:#237052;background:#eaf9f1;border:1px solid #d6eddf;padding:5px 7px;font-weight:740;font-size:10px;border-radius:7px}
#shim-app .shim-signature-card{border:1px solid #e7e8ec;background:white;border-radius:12px;overflow:hidden;box-shadow:0 4px 13px rgba(12,29,51,.035);max-width:100%}
#shim-app .shim-signature-card-bar{height:5px;background:linear-gradient(90deg,#ad1022 0%,#d63439 73%,#d5a34b 100%)}
#shim-app .shim-signature-body{padding:19px 15px}
#shim-app .shim-signature-brand{display:flex;align-items:center;gap:13px;min-width:0}
#shim-app .shim-signature-brand img{width:72px;max-height:88px;object-fit:contain;flex:0 0 72px}
#shim-app .shim-signature-brand>div{display:flex;flex-direction:column;gap:3px;min-width:0}
#shim-app .shim-signature-brand strong{font-size:13px;color:#17202d;line-height:1.35;letter-spacing:.017em;overflow-wrap:anywhere}
#shim-app .shim-signature-brand small{font-size:11px;color:#aa1523;font-weight:700}
#shim-app .shim-signature-brand span{font-size:11px;color:#566477}
#shim-app .shim-signature-rule{margin:15px 0;background:#e9eef2;height:1px}
#shim-app .shim-signature-contact{display:flex;flex-direction:column;gap:7px;color:#404f62;font-size:12px;overflow-wrap:anywhere;word-break:break-word;line-height:1.5}
#shim-app .shim-preview-note{font-size:12px;line-height:1.65;color:#637286;margin:13px 2px 0}
#shim-app .shim-work-received{margin-top:17px}
#shim-app .shim-work-received .shim-panel-header{margin-bottom:13px}
#shim-app .shim-work-received .shim-panel-header h2{margin:0 0 5px}
#shim-app .shim-work-received .shim-panel-header p{margin:0}
@media(max-width:1120px){#shim-app .shim-compose-grid{grid-template-columns:minmax(0,1fr);gap:18px}#shim-app .shim-compose-preview{display:block}#shim-app .shim-signature-card{max-width:480px}}
@media(max-width:600px){#shim-app .shim-compose-header{padding:17px 15px}#shim-app .shim-compose-header h2{font-size:21px}#shim-app .shim-compose-grid{padding:15px;gap:16px}#shim-app .shim-compose-secure{font-size:11px}#shim-app .shim-compose-form textarea{min-height:160px}#shim-app .shim-compose-actions button{flex:1 1 150px}#shim-app .shim-compose-preview{padding:13px}#shim-app .shim-signature-brand img{width:62px;flex-basis:62px}}

/* v2.4.5 — compact two-pane email workspace (desktop + responsive mobile) */
body.shim-standalone .shim-fullscreen{width:100%!important;max-width:none!important;min-height:100dvh;margin:0!important;padding:0!important}
body.shim-standalone #shim-app{width:100%;max-width:none!important;min-height:100dvh;border-radius:0!important;margin:0}
body.shim-standalone #shim-app .shim-shell{min-height:100dvh}
#shim-app .shim-messenger{overflow:hidden;background:white;border:1px solid #e0e5ee;border-radius:16px;box-shadow:0 10px 35px rgba(21,31,45,.035);min-width:0}
#shim-app .shim-messenger-header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;border-bottom:1px solid #e6eaf0}
#shim-app .shim-messenger-header h2{font-size:20px;letter-spacing:-.025em;color:#172538}
#shim-app .shim-messenger-header p{font-size:12px;color:#718094;margin-top:5px}
#shim-app .shim-messenger-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}
#shim-app .shim-mail-banner{padding:10px 17px;background:#fafbfd;color:#526171;font-size:12px;border-bottom:1px solid #e5e9ef;line-height:1.5}
#shim-app .shim-mail-page-head{margin-bottom:17px}
#shim-app .shim-messenger-layout{display:grid!important;grid-template-columns:minmax(240px,34%) minmax(0,1fr)!important;width:100%;min-height:580px;height:min(78dvh,840px);border:0!important;border-radius:0!important;overflow:hidden!important;background:white}
#shim-app .shim-messenger-layout .shim-inbox-list{background:#f9fafc!important;border-right:1px solid #e5e9f0;min-width:0;display:flex!important;flex-direction:column!important;height:100%;overflow:hidden!important}
#shim-app .shim-messenger-layout .shim-inbox-reader{position:static!important;inset:auto!important;z-index:auto!important;display:block!important;min-width:0!important;min-height:0!important;max-height:none!important;height:100%!important;width:100%!important;overflow-y:auto!important;overflow-x:hidden!important;padding:0!important;background:#fff!important}
#shim-app .shim-messenger-layout .shim-inbox-list-title{padding:19px 17px;display:flex;align-items:center;justify-content:space-between;gap:10px}
#shim-app .shim-messenger-layout .shim-inbox-list-title>div{display:flex;flex-direction:column;gap:3px}
#shim-app .shim-messenger-layout .shim-inbox-list-title strong{font-size:18px;color:#1d2a3c}
#shim-app .shim-messenger-layout .shim-inbox-list-title span{font-size:11px;color:#6b778a}
#shim-app .shim-mail-new{width:34px;height:34px;flex:none;border:1px solid #ead6d9;border-radius:10px;background:#fff6f7;color:#b20b19;font-size:23px;font-weight:500;display:grid;place-items:center;line-height:1}
#shim-app .shim-mail-searchbox{padding:12px 14px;background:#f9fafc;border-bottom:1px solid #e7ebf0}
#shim-app .shim-mail-searchbox input{box-sizing:border-box!important;width:100%!important;min-width:0!important;height:42px!important;border:1px solid #dce3eb!important;background:white!important;border-radius:10px!important;padding:0 13px!important;font:13px/1.4 inherit;color:#182c41!important}
#shim-app .shim-messenger-layout .shim-mail-thread-list{min-height:0;overflow:auto!important;height:auto!important;flex:1!important;padding:5px 0;overscroll-behavior:contain}
#shim-app .shim-thread-item{width:100%;min-width:0;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:start;gap:10px;text-align:left;padding:15px 14px;background:transparent;border:0;border-bottom:1px solid #ecf0f4;color:#233248;transition:background .15s}
#shim-app .shim-thread-item:hover{background:#f3f5f9}
#shim-app .shim-thread-item.selected{background:#fff5f5!important;border-left:3px solid #b11424;padding-left:11px}
#shim-app .shim-thread-item.unread .shim-thread-person,#shim-app .shim-thread-item.unread .shim-thread-subject{font-weight:800}
#shim-app .shim-thread-avatar{width:39px;height:39px;display:grid;place-items:center;background:#eaeff6;border-radius:12px;font-weight:800;color:#314760;font-size:15px}
#shim-app .shim-thread-summary{display:flex;flex-direction:column;gap:4px;min-width:0}
#shim-app .shim-thread-person,#shim-app .shim-thread-subject,#shim-app .shim-thread-preview{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1.35}
#shim-app .shim-thread-person{font-size:12.5px;font-weight:750}
#shim-app .shim-thread-subject{font-size:12px;color:#566276}
#shim-app .shim-thread-preview{font-size:11px;color:#8390a0}
#shim-app .shim-thread-item time{font-size:9.5px;color:#8a99aa;white-space:nowrap;margin-top:2px}
#shim-app .shim-unread-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ad1222;margin-left:3px}
#shim-app .shim-mail-zero{padding:46px 22px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:#6c7a8b;font-size:12px}
#shim-app .shim-mail-zero span{font-size:28px}
#shim-app .shim-mail-zero strong{font-size:14px;color:#213247}
#shim-app .shim-thread-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:390px;padding:40px;text-align:center;gap:8px;color:#77859a}
#shim-app .shim-conversation-view{min-width:0}
#shim-app .shim-conversation-heading{display:flex;gap:14px;justify-content:space-between;align-items:center;border-bottom:1px solid #e7ebf0;padding:20px 25px;position:sticky;top:0;background:#fff;z-index:5}
#shim-app .shim-conversation-heading h2{font-size:19px;line-height:1.35;color:#1b2737;overflow-wrap:anywhere;margin:6px 0 4px}
#shim-app .shim-conversation-heading p{font-size:12px;color:#758399;overflow-wrap:anywhere}
#shim-app .shim-conversation-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:end}
#shim-app .shim-conversation-actions .shim-btn{padding:8px 10px;font-size:10px}
#shim-app .shim-timeline{padding:24px 25px;display:flex;flex-direction:column;gap:18px;min-width:0}
#shim-app .shim-message-bubble{border:1px solid #e4e9f0;border-radius:13px;padding:16px 18px;max-width:94%;min-width:0;overflow-wrap:anywhere}
#shim-app .shim-message-bubble.received{align-self:flex-start;background:#f8fafc}
#shim-app .shim-message-bubble.sent{align-self:flex-end;background:#fff5f5;border-color:#f2dfe1}
#shim-app .shim-message-label{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px;color:#8693a4;font-size:10px;margin-bottom:11px}
#shim-app .shim-message-user{font-weight:800;color:#304056}
#shim-app .shim-message-body{font-size:13px;line-height:1.72;color:#233246;overflow-wrap:anywhere}
#shim-app .shim-message-bubble small{font-size:11px;color:#758397;margin-top:10px;display:block}
#shim-app .shim-message-collapsed{text-align:left;display:flex;flex-direction:column;gap:6px;width:min(94%,640px);align-self:flex-start;border:1px solid #dfe5ed;border-radius:12px;background:white;padding:14px 16px;color:#35495f}
#shim-app .shim-message-collapsed strong{font-size:13px}
#shim-app .shim-message-collapsed span,#shim-app .shim-message-collapsed small{font-size:11px;color:#8291a2}
#shim-app .shim-thread-reply{padding:20px 25px;border-top:1px solid #e8ecf2;background:#fcfcfd}
#shim-app .shim-thread-reply h3{font-size:14px;margin-bottom:12px;color:#243248}
#shim-app .shim-inline-reply{max-width:none;gap:11px}
#shim-app .shim-inline-reply textarea{width:100%;min-height:98px;border-radius:10px;border:1px solid #d9e1eb;font-size:13px}
#shim-app .shim-inline-reply .shim-attach-field{background:#fff}
#shim-app .shim-conversation-composer{padding:26px 30px;max-width:900px;margin:0 auto}
#shim-app .shim-conversation-composer.inline{padding:5px 0}
#shim-app .shim-compose-top h3{font-size:23px;color:#172b42;margin:3px 0 7px}
#shim-app .shim-compose-top p{font-size:12px;color:#697e90;margin-bottom:20px}
#shim-app .shim-conversation-composer .shim-mini-form{max-width:none;gap:15px}
#shim-app .shim-conversation-composer input,#shim-app .shim-conversation-composer textarea{width:100%;min-width:0;box-sizing:border-box;border-radius:10px;border:1px solid #d6dfe9;padding:13px;font-size:14px;background:#fff}
#shim-app .shim-conversation-composer textarea{min-height:170px;resize:vertical}
#shim-app .shim-mail-compose-actions{display:flex;gap:10px;flex-wrap:wrap}
#shim-app .shim-mail-signature-fold{border:1px solid #e5eaf1;border-radius:10px;background:#fafbfd;padding:12px 16px;font-size:12px;color:#647286}
#shim-app .shim-mail-signature-fold summary{cursor:pointer;font-weight:750}
#shim-app .shim-mail-signature-fold .shim-signature-card{margin-top:13px;max-width:440px}
#shim-app .shim-workspace .shim-messenger{margin:0}
#shim-app .shim-workspace .shim-messenger-layout{height:min(74dvh,770px);min-height:530px}
@media(max-width:1100px){
 #shim-app .shim-messenger-layout{grid-template-columns:minmax(220px,38%) minmax(0,1fr)!important}
 #shim-app .shim-thread-item{grid-template-columns:34px minmax(0,1fr);gap:9px}
 #shim-app .shim-thread-avatar{width:34px;height:34px}
 #shim-app .shim-thread-item time{grid-column:2;margin:0}
 #shim-app .shim-conversation-heading{flex-direction:column;align-items:flex-start;padding:18px}
 #shim-app .shim-timeline,#shim-app .shim-thread-reply{padding:18px}
}
@media(max-width:760px){
 #shim-app .shim-messenger-layout{display:block!important;height:auto!important;min-height:0!important;overflow:visible!important}
 #shim-app .shim-messenger-layout .shim-inbox-list{height:auto!important;min-height:300px!important;border-right:0!important;background:white!important}
 #shim-app .shim-messenger-layout:not(.is-reading) .shim-inbox-list{display:flex!important}
 #shim-app .shim-messenger-layout:not(.is-reading) .shim-inbox-reader{display:none!important}
 #shim-app .shim-messenger-layout.is-reading .shim-inbox-list{display:none!important}
 #shim-app .shim-messenger-layout.is-reading .shim-inbox-reader{display:block!important;position:relative!important;inset:auto!important;width:100%!important;height:auto!important;max-height:none!important;min-height:500px!important;padding:0!important;overflow:visible!important;z-index:auto!important}
 #shim-app .shim-messenger-header{padding:14px;align-items:flex-start;flex-direction:column}
 #shim-app .shim-messenger-header h2{font-size:17px}
 #shim-app .shim-conversation-heading{position:static;gap:12px;padding:15px}
 #shim-app .shim-conversation-heading h2{font-size:17px}
 #shim-app .shim-timeline{padding:15px;gap:12px}
 #shim-app .shim-message-bubble{max-width:100%;padding:12px}
 #shim-app .shim-thread-reply{padding:15px}
 #shim-app .shim-conversation-composer{padding:18px 15px}
 #shim-app .shim-mail-page-head .shim-messenger-actions{width:100%}
 #shim-app .shim-mail-page-head .shim-messenger-actions .shim-btn{flex:1}
 #shim-app .shim-thread-item{grid-template-columns:40px minmax(0,1fr) auto}
 #shim-app .shim-thread-item time{grid-column:auto}
}

/* State Home 2.4.6 — premium, accessible financial snapshot */
#shim-app .shim-finance-home{margin:22px 0 25px}
#shim-app .shim-finance-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:15px}
#shim-app .shim-finance-eyebrow{display:block;color:#a81a29;font-weight:850;letter-spacing:1.3px;font-size:11px;margin-bottom:6px}
#shim-app .shim-finance-section-head h2{font-size:clamp(21px,2.6vw,27px);line-height:1.2;margin:0 0 5px;color:#132032;font-weight:850}
#shim-app .shim-finance-section-head p{margin:0;color:#657282;font-size:13px}
#shim-app .shim-finance-currency{padding:7px 11px;border:1px solid #d9e0e8;color:#677282;font-size:11px;font-weight:850;letter-spacing:.5px;border-radius:20px;background:#fff;white-space:nowrap}
#shim-app .shim-finance-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
#shim-app .shim-finance-card{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:158px;text-align:left;border:1px solid #e0e5eb;border-radius:17px;padding:19px 18px;background:#fff;color:#172033;cursor:pointer;box-shadow:0 8px 24px rgba(20,29,43,.025);transition:transform .2s,box-shadow .2s,border-color .2s;font-family:inherit}
#shim-app .shim-finance-card:hover,#shim-app .shim-finance-chart:hover{transform:translateY(-2px);box-shadow:0 13px 29px rgba(27,30,39,.075);border-color:#ba9c60}
#shim-app .shim-finance-card:focus-visible,#shim-app .shim-finance-chart:focus-visible{outline:3px solid #d29632;outline-offset:3px}
#shim-app .shim-finance-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:#607084;font-weight:780}
#shim-app .shim-finance-card-top b{width:31px;height:31px;display:grid;place-items:center;background:#f3f5f8;border-radius:9px;font-size:19px;color:#a01726}
#shim-app .shim-finance-card>strong{display:block;font-size:clamp(21px,2vw,30px);letter-spacing:-.9px;font-weight:850;color:#122033;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;line-height:1.2}
#shim-app .shim-finance-card-bottom{font-size:12px;color:#6b7889;display:flex;justify-content:space-between;gap:6px;margin-top:auto;align-items:center}
#shim-app .shim-finance-card-bottom span{font-size:17px;color:#b21728}
#shim-app .shim-finance-card.dark{background:linear-gradient(130deg,#1c2939,#101925);color:#fff;border-color:#1b2838}
#shim-app .shim-finance-card.dark strong,#shim-app .shim-finance-card.dark .shim-finance-card-top,#shim-app .shim-finance-card.dark .shim-finance-card-bottom{color:#fff}
#shim-app .shim-finance-card.dark .shim-finance-card-top b{background:rgba(255,255,255,.12);color:#e9c779}
#shim-app .shim-finance-card.dark .shim-finance-card-bottom span{color:#e8c477}
#shim-app .shim-finance-card.due>strong{color:#a41525}
#shim-app .shim-finance-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:13px}
#shim-app .shim-finance-chart{border:1px solid #e0e5eb;border-radius:16px;background:#fff;min-width:0;padding:17px 20px;display:block;text-align:left;cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s;color:#1b2737;font-family:inherit}
#shim-app .shim-finance-chart-title{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:7px;margin-bottom:15px}
#shim-app .shim-finance-chart-title strong{font-size:14px;font-weight:820}
#shim-app .shim-finance-chart-title small{font-size:11px;color:#9d2732}
#shim-app .shim-finance-progress,#shim-app .shim-finance-estimate-bars{display:flex;width:100%;height:12px;overflow:hidden;border-radius:99px;background:#edf0f3}
#shim-app .shim-finance-progress span{display:block;background:linear-gradient(90deg,#9a7221,#cba94e);height:100%;border-radius:99px}
#shim-app .shim-finance-estimate-bars span{height:100%;display:block}
#shim-app .shim-finance-estimate-bars .sent{background:#a81626}
#shim-app .shim-finance-estimate-bars .draft{background:#e0c376}
#shim-app .shim-finance-chart-legend{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 18px;margin-top:14px;font-size:11px;color:#5c6979}
#shim-app .shim-finance-chart-legend>span{display:flex;align-items:center;gap:5px}
#shim-app .shim-finance-chart-legend b{margin-left:4px;font-weight:850;color:#1b2737}
#shim-app .shim-finance-chart-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#dfe4e9}
#shim-app .shim-finance-chart-legend i.collected{background:#c6a54d}
#shim-app .shim-finance-chart-legend i.pending{background:#dfe4e9}
#shim-app .shim-finance-chart-legend i.sent{background:#a81626}
#shim-app .shim-finance-chart-legend i.draft{background:#e0c376}
#shim-app .shim-finance-footnote{font-size:11px!important;color:#778293!important;margin:10px 0 0!important;line-height:1.5!important}
@media(max-width:1100px){#shim-app .shim-finance-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){#shim-app .shim-finance-cards{gap:9px}#shim-app .shim-finance-card{min-height:135px;padding:14px 12px}#shim-app .shim-finance-card>strong{font-size:clamp(19px,4.6vw,25px)}#shim-app .shim-finance-card-top{font-size:11px}#shim-app .shim-finance-cards .shim-finance-card-top b{width:24px;height:24px;font-size:16px}#shim-app .shim-finance-charts{grid-template-columns:1fr}#shim-app .shim-finance-section-head p{max-width:250px}}
@media(max-width:350px){#shim-app .shim-finance-cards{grid-template-columns:1fr}#shim-app .shim-finance-card{min-height:105px}}
@media(prefers-reduced-motion:reduce){#shim-app .shim-finance-card,#shim-app .shim-finance-chart{transition:none}#shim-app .shim-finance-card:hover,#shim-app .shim-finance-chart:hover{transform:none}}

/* v2.4.7 — invoice payment state and team notification UI */
#shim-app .shim-balance-badge.paid{background:#e5f5eb!important;color:#14633a!important;border:1px solid #b9dfc7;padding:9px 13px;font-weight:850}
#shim-app .shim-balance-badge.paid small{font-size:10px;letter-spacing:.05em;font-weight:750}
#shim-app .shim-balance-badge.partial{background:#fff4d8;color:#825f14;border:1px solid #ecd595}
#shim-app .shim-balance-badge.unpaid{background:#fff2eb;color:#92380f;border:1px solid #f1cdb8}
#shim-app .shim-invoice-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 15px;align-items:center}
#shim-app .shim-invoice-filter{background:#fff;color:#283a49;border:1px solid #dce3e9;border-radius:10px;min-height:40px;padding:9px 13px;font-weight:750;font-size:12px}
#shim-app .shim-invoice-filter.active{background:#171b20;border-color:#171b20;color:#fff}
#shim-app .shim-work-card{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;min-width:0}
#shim-app .shim-work-card>div:first-child{min-width:0;overflow-wrap:anywhere}
#shim-app .shim-work-card .shim-card-actions{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}
#shim-app .shim-notification-groups{padding:18px 0 6px;display:grid;gap:16px}
#shim-app .shim-notification-groups>h2{margin:0}
#shim-app .shim-recipient-group{background:#f8fafc;border:1px solid #e2e7ec;border-radius:15px;padding:18px;min-width:0}
#shim-app .shim-recipient-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
#shim-app .shim-recipient-intro h3{font-size:15px;margin:0 0 3px;color:#1d2c38}
#shim-app .shim-recipient-intro p{font-size:12px;line-height:1.5;margin:0;color:#647386}
#shim-app .shim-recipient-count{white-space:nowrap;background:#f3ead4;color:#795b1f;font-size:11px;font-weight:800;border-radius:8px;padding:5px 8px}
#shim-app .shim-recipient-rows{display:grid;gap:9px;margin-bottom:12px}
#shim-app .shim-recipient-row{display:flex;align-items:center;gap:9px;max-width:670px}
#shim-app .shim-recipient-row label{flex:1;min-width:0;display:block}
#shim-app .shim-recipient-row input{width:100%;height:43px;min-width:0;border:1px solid #d6e0e7;border-radius:10px;padding:10px 12px;background:#fff;font-size:14px;color:#213449}
#shim-app .shim-recipient-row input:focus{outline:2px solid #cda747;outline-offset:1px}
#shim-app .shim-recipient-remove{width:40px;height:40px;flex:0 0 40px;border:1px solid #e0ccd1;color:#a51524;background:#fff;border-radius:10px;font-size:21px;font-weight:700}
#shim-app .shim-recipient-add{min-height:40px}
#shim-app .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:740px){#shim-app .shim-work-card{flex-direction:column;gap:12px}#shim-app .shim-work-card .shim-card-actions{width:100%;justify-content:flex-start}#shim-app .shim-recipient-intro{flex-direction:column}#shim-app .shim-recipient-group{padding:14px}#shim-app .shim-recipient-count{align-self:flex-start}}
@media(max-width:390px){#shim-app .shim-work-card .shim-card-actions .shim-btn{min-height:39px;flex:1 1 auto}#shim-app .shim-invoice-filter{flex:1 1 auto}}

/* v2.4.8 Planner weather tiles and secured project attachment chips */
#shim-app .shim-weather{min-width:0;overflow:hidden;padding:18px 20px!important}
#shim-app .shim-weather-highlight{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0;padding:13px;border:1px solid #e5e9ef;border-radius:13px;background:linear-gradient(110deg,#f7f9fc,#fff)}
#shim-app .shim-weather-highlight div{display:flex;flex-direction:column;gap:5px;min-width:0}
#shim-app .shim-weather-highlight small{color:#697a88;font-size:11px}
#shim-app .shim-weather-highlight strong{font-size:15px;overflow-wrap:anywhere;line-height:1.3}
#shim-app .shim-weather-highlight>span{font-size:25px;font-weight:850;white-space:nowrap;color:#ae1731}
#shim-app .shim-weather-strip{display:grid;grid-template-columns:repeat(7,minmax(72px,1fr));gap:5px;overflow-x:auto;padding:0 0 8px}
#shim-app .shim-weather-day{border:1px solid #e6e7ea;background:#fff;border-radius:11px;padding:8px 3px;color:#273344;display:flex;align-items:center;flex-direction:column;gap:5px;min-width:72px;cursor:pointer}
#shim-app .shim-weather-day:hover,#shim-app .shim-weather-day.active{background:#fff8e9;border-color:#bd9e52}
#shim-app .shim-weather-day small{font-size:10px;color:#546677}
#shim-app .shim-weather-day strong{font-size:15px}
#shim-app .shim-weather-day em{font-size:10px;font-style:normal;color:#586d88}
#shim-app .shim-weather-caption{display:flex;gap:8px;justify-content:space-between;flex-wrap:wrap;color:#697b8a;font-size:10px;margin-top:8px}
#shim-app .shim-weather-warning{border-left:3px solid #c49d45;margin:11px 0 0;padding:7px 10px;background:#fffbef;color:#725c34;font-size:11px;line-height:1.5}
#shim-app .shim-secure-files{margin:14px 0;padding:14px;border-radius:12px;background:#f7f9fb;border:1px solid #dde4eb;display:flex;flex-direction:column;gap:8px}
#shim-app .shim-secure-files>div{display:flex;flex-wrap:wrap;gap:7px}
#shim-app .shim-secure-files .shim-btn{max-width:100%;overflow-wrap:anywhere;white-space:normal;text-align:left}
#shim-app .shim-secure-files small{font-size:11px;color:#6a7785}
#shim-app .shim-weather-settings{margin-top:15px}
@media(max-width:680px){#shim-app .shim-weather{padding:15px!important}#shim-app .shim-weather-strip{grid-template-columns:repeat(7,82px)}#shim-app .shim-weather-highlight strong{font-size:13px}}

/* v2.4.9 — Compact, glanceable Planner controls. Visit list is prioritized above weather. */
#shim-app .shim-planner-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 15px;padding:12px 14px;background:#fff;border:1px solid #dfe5ec;border-radius:14px;box-shadow:0 3px 16px rgba(24,35,49,.04)}
#shim-app .shim-planner-tools .shim-btn{font-size:12px;min-height:35px;white-space:normal}
#shim-app .shim-planner-tools .shim-btn:disabled{opacity:.47;cursor:not-allowed}
#shim-app .shim-gcal-state{display:inline-flex;align-items:center;gap:5px;min-height:29px;font-size:11px;border-radius:8px;padding:6px 9px;font-weight:760;max-width:100%;overflow-wrap:anywhere}
#shim-app button.shim-gcal-state{cursor:pointer;border:1px solid #e8d7b2;color:#876423;background:#fff9e9}
#shim-app .shim-gcal-state.connected{color:#126947;background:#e7f5ee;border:1px solid #bce2cf}
#shim-app .shim-gcal-note{flex-basis:100%;font-size:11px;line-height:1.4;color:#697789}
#shim-app .shim-weather-mini-panel{padding:11px 13px!important;margin:0!important;box-shadow:none!important;background:#fff;border:1px solid #e2e7ed}
#shim-app .shim-weather-mini-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
#shim-app .shim-weather-mini-head>div{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;min-width:0}
#shim-app .shim-weather-mini-head strong{font-size:13px;color:#1e2936}
#shim-app .shim-weather-mini-head small{font-size:10px;color:#758291}
#shim-app .shim-weather-mini-head .shim-btn{padding:4px 9px;min-height:27px;font-size:15px}
#shim-app .shim-weather-mini-days{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;min-width:0}
#shim-app .shim-weather-mini{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid #e8ecf0;border-radius:9px;background:#f8fafc;padding:6px 2px;cursor:pointer;color:#233146}
#shim-app .shim-weather-mini.active,#shim-app .shim-weather-mini:hover{border-color:#cea54f;background:#fff8e8}
#shim-app .shim-weather-mini small{font-size:10px;color:#5a6a7b;white-space:nowrap}
#shim-app .shim-weather-mini span{font-size:19px;line-height:1.2}
#shim-app .shim-weather-mini strong{font-size:13px;color:#283341}
#shim-app .shim-weather-mini em{font-size:10px;font-weight:600;color:#557792;font-style:normal;white-space:nowrap}
#shim-app .shim-weather-mini-foot{font-size:10px;line-height:1.45;margin:7px 0 0;color:#697786}
#shim-app .shim-gcal-settings-panel{margin-top:15px}
#shim-app .shim-gcal-settings-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:12px 0}
#shim-app .shim-gcal-redirect{display:block;white-space:normal;overflow-wrap:anywhere;border:1px dashed #c5cdd7;background:#f5f7f9;padding:11px 13px;margin:8px 0 12px;border-radius:9px;font-size:12px;color:#243448}
@media(max-width:760px){#shim-app .shim-planner-tools{padding:10px;gap:7px}#shim-app .shim-planner-tools>.shim-btn:first-child{flex:1 1 100%}#shim-app .shim-planner-tools>.shim-btn:not(:first-child){flex:1 1 auto}#shim-app .shim-weather-mini-panel{padding:10px!important}}
@media(max-width:420px){#shim-app .shim-weather-mini-days{grid-template-columns:repeat(3,minmax(0,1fr))}#shim-app .shim-weather-mini{padding:6px 3px}#shim-app .shim-planner-tools .shim-btn{font-size:11px}}

/* v2.4.10: accessible click-to-call and project-to-estimate actions */
.shim-call-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:6px;background:#af1222!important;border:1px solid #af1222!important;color:white!important;text-decoration:none!important;min-height:39px;padding:9px 15px!important;border-radius:10px;font-weight:750!important;margin:4px 8px 4px 0;white-space:nowrap;vertical-align:middle;box-shadow:0 5px 15px rgba(145,15,34,.12)}
.shim-call-btn:hover,.shim-call-btn:focus-visible{background:#850d19!important;color:white!important;outline-offset:3px}
.shim-job-origin{display:block;margin-top:9px;font-size:12px;color:#8d5d18;font-weight:600}
.shim-form-hint-important{background:#fff8e9;border-left:4px solid #c08b28;padding:12px 14px;border-radius:8px;color:#62451e;font-size:13px;line-height:1.5}
.shim-work-head>div:last-child .shim-call-btn{margin-left:8px}
@media(max-width:700px){.shim-work-tabs{display:flex;flex-wrap:nowrap;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;gap:6px}.shim-work-tabs button{flex:0 0 auto;white-space:nowrap;min-height:44px}.shim-work-head>div:last-child .shim-call-btn{margin-left:0}.shim-work-card .shim-card-actions{display:flex;flex-wrap:wrap;gap:8px}.shim-call-btn{min-height:44px}}

/* v2.4.11 — compact language control on every dashboard screen */
#shim-app .shim-header-language{display:flex;gap:2px;align-items:center;padding:3px;border:1px solid #d9e1eb;border-radius:10px;background:#fff;flex:0 0 auto}
#shim-app .shim-header-language button{border:0;border-radius:7px;min-height:32px;min-width:34px;padding:6px 8px;background:transparent;color:#415065;font:700 12px/1 Arial,sans-serif;cursor:pointer}
#shim-app .shim-header-language button.is-active{background:#ad0e1c;color:#fff}
#shim-app .shim-header-language button:focus-visible{outline:2px solid #b61d29;outline-offset:2px}
@media(max-width:760px){#shim-app .shim-header-language{padding:2px;gap:1px}#shim-app .shim-header-language button{min-width:30px;min-height:30px;padding:5px}}
@media(max-width:390px){#shim-app .shim-header-language button{min-width:27px;padding:4px}}


/* v2.4.13 home live clock + weather */
#shim-app .shim-home-live-card{display:grid;grid-template-columns:minmax(260px,1.05fr) minmax(320px,1.25fr);gap:18px;align-items:stretch;margin:12px 0 24px;background:linear-gradient(135deg,#11304b 0%,#1b4763 36%,#7bb26f 100%);border:0;color:#fff;overflow:hidden;position:relative}
#shim-app .shim-home-live-card:before{content:'';position:absolute;right:-90px;top:-120px;width:340px;height:340px;border-radius:50%;background:rgba(255,255,255,.08)}
#shim-app .shim-home-live-copy,#shim-app .shim-home-live-weather{position:relative;z-index:1}
#shim-app .shim-home-live-copy{display:flex;flex-direction:column;justify-content:center;padding:4px 2px}
#shim-app .shim-home-live-kicker{font-size:11px;letter-spacing:2.2px;font-weight:800;color:#d9eccf;margin-bottom:12px;display:block}
#shim-app .shim-home-live-card h2{font-size:20px;color:#fff;margin-bottom:8px}
#shim-app .shim-home-live-time{font-size:42px;line-height:1;font-weight:800;letter-spacing:-1.2px;margin:4px 0 10px;color:#fff}
#shim-app .shim-home-live-date{font-size:14px;color:#eef7ff;margin-bottom:10px}
#shim-app .shim-home-live-zone{display:flex;align-items:center;gap:9px;font-size:12px;color:#dbecf6;font-weight:700;margin-bottom:12px}
#shim-app .shim-home-live-copy p{color:#e4eff8;font-size:13px;max-width:38ch}
#shim-app .shim-home-live-weather{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:18px 18px 16px;backdrop-filter:blur(4px);box-shadow:inset 0 1px 0 rgba(255,255,255,.09)}
#shim-app .shim-home-weather-now{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,1fr);gap:15px;align-items:center}
#shim-app .shim-home-weather-main{display:flex;align-items:center;gap:14px}
#shim-app .shim-home-weather-icon{font-size:52px;line-height:1;filter:drop-shadow(0 8px 12px rgba(0,0,0,.12))}
#shim-app .shim-home-weather-main strong{display:block;font-size:34px;line-height:1;color:#fff}
#shim-app .shim-home-weather-main p{font-size:14px;color:#f3fbff;margin-top:6px}
#shim-app .shim-home-weather-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#shim-app .shim-home-weather-stats span{display:flex;flex-direction:column;gap:4px;background:rgba(255,255,255,.12);border-radius:12px;padding:10px 12px;min-height:70px}
#shim-app .shim-home-weather-stats small{font-size:10px;letter-spacing:.4px;color:#d8edf7;text-transform:uppercase}
#shim-app .shim-home-weather-stats b{font-size:12px;color:#fff;line-height:1.35;word-break:break-word}
#shim-app .shim-home-weather-days{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
#shim-app .shim-home-weather-day{background:rgba(255,255,255,.11);border-radius:14px;padding:12px 10px;text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center}
#shim-app .shim-home-weather-day small{color:#e0f1f8;font-size:11px;font-weight:700}
#shim-app .shim-home-weather-day span{font-size:24px;line-height:1}
#shim-app .shim-home-weather-day strong{font-size:18px;color:#fff}
#shim-app .shim-home-weather-day em{font-style:normal;font-size:11px;color:#e5f4ff}
#shim-app .shim-home-weather-now.loading{display:flex;align-items:center;justify-content:center;min-height:140px}
#shim-app .shim-home-weather-now.loading p{color:#fff;margin:0}
@media (max-width:1100px){#shim-app .shim-home-live-card{grid-template-columns:1fr;gap:14px}#shim-app .shim-home-live-copy p{max-width:none}#shim-app .shim-home-weather-now{grid-template-columns:1fr}#shim-app .shim-home-live-time{font-size:38px}}
@media (max-width:760px){#shim-app .shim-home-live-card{padding:18px 16px}#shim-app .shim-home-live-time{font-size:34px}#shim-app .shim-home-weather-stats{grid-template-columns:1fr 1fr}#shim-app .shim-home-weather-days{grid-template-columns:repeat(2,minmax(0,1fr))}#shim-app .shim-home-weather-main strong{font-size:28px}}
@media (max-width:480px){#shim-app .shim-home-weather-stats{grid-template-columns:1fr}#shim-app .shim-home-weather-days{grid-template-columns:1fr 1fr;gap:8px}#shim-app .shim-home-live-kicker{font-size:10px;letter-spacing:1.8px}}


/* 2.4.13 — compact, permanent Home clock / local weather card in the right-hand hero */
#shim-app .shim-overview-hero{display:grid;grid-template-columns:minmax(270px,.9fr) minmax(460px,1.1fr);align-items:center;gap:clamp(18px,3vw,40px);margin:8px 0 22px;min-width:0}
#shim-app .shim-overview-intro{min-width:0}
#shim-app .shim-overview-intro h1{font-size:clamp(28px,2.7vw,39px);line-height:1.1;margin:12px 0 12px}
#shim-app .shim-overview-intro>p{font-size:13px;color:#54687c;line-height:1.5;margin:0 0 20px;max-width:45ch}
#shim-app .shim-overview-intro .shim-simple-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
#shim-app .shim-overview-intro .shim-simple-actions button{font-size:11px;min-height:37px;padding:8px 12px}
#shim-app .shim-overview-hero .shim-home-live-card{display:flex;flex-direction:column;justify-content:space-between;gap:0;position:relative;min-width:0;min-height:207px;max-width:none;margin:0!important;padding:15px 17px!important;border:1px solid #284c62;border-radius:18px;background:linear-gradient(128deg,#10253a 0%,#183e56 58%,#28617a 100%);box-shadow:0 13px 29px rgba(20,47,68,.14);color:#fff;overflow:hidden}
#shim-app .shim-overview-hero .shim-home-live-card:before{width:170px;height:170px;right:-48px;top:-80px;background:rgba(255,255,255,.055)}
#shim-app .shim-home-live-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;z-index:1;position:relative}
#shim-app .shim-home-live-top>div:first-child{min-width:0;display:flex;flex-direction:column;gap:4px}
#shim-app .shim-home-live-kicker{font-size:9px;letter-spacing:1.45px;color:#e6c775;margin:0!important}
#shim-app .shim-home-city{font-weight:750;font-size:12px;color:#f0f6fb;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:32ch}
#shim-app .shim-home-live-zone{display:flex;align-items:center;white-space:nowrap;gap:6px;margin:0!important;font-size:11px;color:#c6dfeb}
#shim-app .shim-home-live-zone .shim-live-dot{height:6px;width:6px;background:#69d7bc;border-radius:50%;box-shadow:0 0 0 3px #69d7bc20}
#shim-app .shim-home-live-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(145px,.84fr);align-items:center;gap:16px;padding:16px 0 11px;position:relative;z-index:1}
#shim-app .shim-home-live-clock{min-width:0;border-right:1px solid #ffffff35;padding-right:14px}
#shim-app .shim-home-live-time{font-size:clamp(28px,2.8vw,37px)!important;line-height:1.1;letter-spacing:-1.2px;font-weight:800;font-variant-numeric:tabular-nums;display:block;margin:0 0 7px!important;white-space:nowrap}
#shim-app .shim-home-live-date{font-size:11px;line-height:1.45;color:#dceef7;margin:0!important;text-transform:capitalize}
#shim-app .shim-overview-hero .shim-home-live-weather{background:transparent;backdrop-filter:none;box-shadow:none;border:0;padding:0;min-width:0}
#shim-app .shim-home-weather-highlight{display:flex;align-items:center;gap:9px;min-width:0}
#shim-app .shim-home-weather-highlight>div{min-width:0;display:flex;flex-direction:column;gap:2px}
#shim-app .shim-home-weather-icon{font-size:38px;line-height:1.15;flex:0 0 auto;filter:drop-shadow(0 4px 12px #0002)}
#shim-app .shim-home-weather-label{font-size:9px;letter-spacing:.35px;color:#c6e4ee}
#shim-app .shim-home-weather-highlight strong{color:#fff;font-size:27px;line-height:1.08;letter-spacing:-.5px}
#shim-app .shim-home-weather-highlight small{color:#d8e9f2;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:19ch}
#shim-app .shim-home-rain-pill{font-size:10px;color:#dcecf8;margin-top:8px}
#shim-app .shim-home-rain-pill b{color:#fff}
#shim-app .shim-home-weather-empty{font-size:11px;line-height:1.55;color:#ecf1f4}
#shim-app .shim-home-live-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:1;border-top:1px solid #ffffff24;padding-top:9px}
#shim-app .shim-home-weather-days{display:flex;align-items:center;gap:8px;margin:0!important;min-width:0;flex:1}
#shim-app .shim-home-weather-day{background:#ffffff14;border-radius:7px;padding:5px 7px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:5px;min-width:0}
#shim-app .shim-home-weather-day small{font-size:9px;color:#e2edf7;white-space:nowrap}
#shim-app .shim-home-weather-day span{font-size:15px}
#shim-app .shim-home-weather-day strong{font-size:11px;color:#fff}
#shim-app .shim-home-weather-day em{font-size:9px;color:#cce8f1;white-space:nowrap}
#shim-app .shim-home-forecast-note{font-size:10px;color:#d7e8ef}
#shim-app .shim-home-weather-tools{display:flex;align-items:center;gap:7px;flex:0 0 auto}
#shim-app .shim-home-weather-tools small{font-size:9px;color:#d5e5ee;max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#shim-app .shim-home-refresh{color:#f3fbff;border:1px solid #ffffff44;border-radius:8px;width:27px;height:27px;background:#ffffff15;cursor:pointer;font-size:20px;line-height:1}
#shim-app .shim-home-refresh:hover,#shim-app .shim-home-refresh:focus-visible{background:#ffffff2f;outline:2px solid #eac65f;outline-offset:2px}
#shim-app .shim-overview-hero+.shim-finance-home{margin-top:14px}
@media(max-width:1250px){#shim-app .shim-overview-hero{grid-template-columns:minmax(240px,.85fr) minmax(405px,1.15fr);gap:18px}#shim-app .shim-home-weather-tools small{display:none}#shim-app .shim-home-weather-days{gap:4px}#shim-app .shim-home-weather-day{padding:5px}}
@media(max-width:970px){#shim-app .shim-overview-hero{grid-template-columns:minmax(0,1fr);gap:16px;align-items:stretch}#shim-app .shim-overview-hero .shim-home-live-card{max-width:100%}#shim-app .shim-home-weather-tools small{display:block}}
@media(max-width:610px){#shim-app .shim-overview-hero{margin-top:3px}#shim-app .shim-overview-hero .shim-home-live-card{padding:14px!important;min-height:204px}#shim-app .shim-home-live-body{gap:10px;grid-template-columns:minmax(0,1fr) minmax(125px,.9fr)}#shim-app .shim-home-live-time{font-size:clamp(22px,6vw,34px)!important}#shim-app .shim-home-weather-icon{font-size:30px}#shim-app .shim-home-weather-highlight strong{font-size:24px}#shim-app .shim-home-weather-tools small{display:none}#shim-app .shim-home-weather-day{gap:3px;padding:5px 4px}#shim-app .shim-home-weather-day em{display:none}}
@media(max-width:370px){#shim-app .shim-home-live-body{grid-template-columns:1fr;gap:13px}#shim-app .shim-home-live-clock{border-right:0;border-bottom:1px solid #ffffff26;padding:0 0 10px}#shim-app .shim-home-weather-days{gap:4px}#shim-app .shim-home-weather-day{padding:4px}}

/* v2.4.13 — guided PWA installation and phone-notification onboarding */
.shim-install-backdrop{position:fixed;inset:0;background:rgba(10,21,35,.72);backdrop-filter:blur(7px);z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto;overscroll-behavior:contain}
.shim-install-dialog{background:#fff;color:#1b2f40;border:1px solid #e1e8f0;border-radius:21px;width:min(620px,100%);max-height:calc(100dvh - 28px);overflow:auto;box-shadow:0 26px 100px rgba(0,0,0,.3);font-family:inherit;outline:none}
.shim-install-head{background:linear-gradient(135deg,#132c44,#22516a);padding:24px 27px;color:white;display:flex;align-items:flex-start;gap:15px;position:relative}
.shim-install-mark{width:44px;height:44px;border:1px solid #ffffff66;border-radius:13px;background:#ffffff1e;display:grid;place-items:center;font-size:25px;flex:0 0 44px}
.shim-install-head>div{min-width:0;flex:1}.shim-install-head small{font-size:10px;letter-spacing:1.25px;font-weight:750;color:#e6ca7e}.shim-install-head h2{font-size:21px;line-height:1.2;color:white;margin:5px 0 6px}.shim-install-head p{font-size:12px;color:#d8e8f3;line-height:1.5;margin:0}
.shim-install-close{border:0;cursor:pointer;background:#ffffff1a;color:#fff;border-radius:9px;font-size:24px;line-height:1;width:34px;height:34px;flex:0 0 34px}
.shim-install-steps{padding:22px 27px 4px;display:grid;gap:13px}.shim-install-steps>section{border:1px solid #dde6ed;border-radius:13px;padding:15px;display:flex;align-items:flex-start;gap:13px;box-shadow:0 3px 10px #14283f0a}
.shim-install-index{width:35px;height:35px;flex:0 0 35px;display:grid;place-items:center;border-radius:9px;background:#f0f4f8;color:#1a4a60;font-size:12px;font-weight:800}
.shim-install-step{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:6px;flex:1}.shim-install-step b{color:#192d42;font-size:14px}.shim-install-step>span{color:#426a74;font-size:11px;font-weight:750}.shim-install-step p{line-height:1.55;font-size:12px;color:#546577;margin:2px 0 5px;max-width:63ch}
.shim-install-primary,.shim-install-secondary{border:1px solid #194d5d;background:#194d5d;color:white;padding:10px 15px;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer;min-height:39px}.shim-install-secondary{background:white;color:#194d5d}.shim-install-primary:hover,.shim-install-secondary:hover{filter:brightness(1.1)}.shim-install-primary:disabled,.shim-install-secondary:disabled{opacity:.53;cursor:not-allowed}
.shim-install-feedback{margin:14px 27px 0;padding:11px 13px;font-size:12px;line-height:1.45;border:1px solid #d5e2e8;border-radius:9px;background:#edf5f8;color:#21485d}
.shim-install-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 27px 22px}.shim-install-foot span{font-size:11px;color:#68798b;line-height:1.5}.shim-install-foot button{padding:9px 17px;border-radius:8px;border:1px solid #d5dce3;background:#fff;color:#2d3c4e;font-weight:700;font-size:12px;cursor:pointer}
@media(max-width:620px){.shim-install-backdrop{padding:8px;align-items:center}.shim-install-dialog{border-radius:16px;max-height:calc(100dvh - 16px)}.shim-install-head{padding:18px}.shim-install-head h2{font-size:19px}.shim-install-mark{display:none}.shim-install-steps{padding:14px 14px 2px;gap:9px}.shim-install-steps>section{padding:12px;gap:10px}.shim-install-foot{padding:15px;flex-wrap:wrap}.shim-install-feedback{margin:12px 14px 0}}
@media(prefers-reduced-motion:reduce){.shim-install-backdrop{backdrop-filter:none}}

/* v2.4.14: compact live status and verified Lead diagnostics. */
#shim-app .shim-live-status{display:inline-flex;align-items:center;border-radius:100px;padding:3px 7px;background:#e6f5ed;color:#126a48;font-size:9px;font-weight:800;letter-spacing:.5px}
#shim-app .shim-live-status.shim-live-offline{background:#fff1e6;color:#9b4813}
#shim-app .shim-lead-audit{background:#f5faf7;border:1px solid #c7e5d2;border-radius:12px;padding:13px 15px;margin:10px 0 15px;display:grid;gap:7px;font-size:12px}
#shim-app .shim-lead-audit>small{color:#607b70}#shim-app .shim-lead-audit-items{display:grid;gap:4px;overflow-wrap:anywhere}
#shim-app .shim-lead-audit-warning,#shim-app .shim-lead-audit-error{color:#a52a2a}
#shim-app .shim-toolbar{flex-wrap:wrap}#shim-app .shim-toolbar input{min-width:min(100%,210px)}
@media(max-width:760px){#shim-app .shim-toolbar>[data-verify-leads],#shim-app .shim-toolbar>[data-refresh-contacts]{flex:1 1 auto}#shim-app .shim-live-status{font-size:8px}}

/* v2.4.15 - accessible partial/full payment controls. */
#shim-app .shim-payment-balance{display:flex;flex-wrap:wrap;gap:8px 15px;align-items:center;background:#f4f8fc;border:1px solid #dbe4ec;border-radius:12px;padding:13px 15px}
#shim-app .shim-payment-balance strong{font-size:16px;color:#172c44}
#shim-app .shim-payment-balance small{width:100%;font-size:12px;color:#526477}
#shim-app .shim-payment-balance .shim-btn{min-height:36px}
@media(max-width:640px){#shim-app .shim-payment-balance .shim-btn{width:100%;min-height:44px}}

/* v2.4.16: Agreements, AI and workforce styles */
#shim-app .shim-lead-audit-warning{color:#963529;font-size:12px;font-weight:700}
#shim-app .shim-lead-audit-error{background:#fff3ef;border-color:#efb6a5;color:#91392a}
@media(max-width:750px){#shim-app .shim-toolbar{flex-wrap:wrap}#shim-app .shim-toolbar .shim-btn{white-space:normal}}

/* v1.0.4 – Contract drafts: responsive and consistent with State Home branding */
.shim-contract-warning{background:#fff8e8;border:1px solid #ddc990;border-left:5px solid #bd9b3c;border-radius:12px;padding:16px 18px;margin-bottom:18px;color:#53472b;line-height:1.55}
.shim-contract-warning strong{display:block;font-size:15px;color:#795b13;margin-bottom:3px}
.shim-contract-warning p{margin:0;font-size:13px}
.shim-contract-choose{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid #e3e8e5}
.shim-contract-choose label{display:flex;flex:1 1 310px;flex-direction:column;gap:8px;color:#0e3b28;font-size:13px}
.shim-contract-choose select{min-height:44px;width:100%;border:1px solid #d7dfdc;border-radius:10px;padding:9px 12px;background:#fff;color:#1b3328}
.shim-contract-list{display:grid;gap:12px;margin-top:18px}
.shim-contract-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 18px;border:1px solid #dfe8e3;border-radius:12px;background:linear-gradient(95deg,#f4f9f5,#fff)}
.shim-contract-item strong{font-size:15px;color:#102e20}
.shim-contract-item p{margin:5px 0;color:#66766e;font-size:13px}
.shim-contract-state{font-size:11px;font-weight:750;letter-spacing:.035em;color:#946d1e}
.shim-contract-item .shim-card-actions,.shim-contract-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.shim-contract-editor{margin-top:18px}
.shim-contract-editor .shim-formgrid{margin-top:18px}
.shim-contract-editor .shim-field{min-width:0}
.shim-contract-editor textarea{min-height:95px}
@media(max-width:800px){.shim-contract-item{align-items:stretch;flex-direction:column}.shim-contract-item .shim-card-actions{justify-content:stretch}.shim-contract-item .shim-card-actions button{flex:1 1 130px}.shim-contract-choose button{width:100%}}

/* v1.0.5: document-linked Contracts / Agreements, customer workspace */
#shim-app .shim-customer-contracts .shim-contract-choose{margin:15px 0 20px}
#shim-app .shim-customer-contracts .shim-contract-list{display:grid;gap:12px}
#shim-app .shim-customer-contracts .shim-work-card{align-items:center}
#shim-app .shim-work-tabs{overflow-x:auto;scrollbar-width:thin;max-width:100%;padding-bottom:5px}
#shim-app .shim-work-tabs button{flex-shrink:0}
@media(max-width:760px){
 #shim-app .shim-contract-choose{flex-direction:column;align-items:stretch}
 #shim-app .shim-contract-choose select{width:100%;min-width:0}
 #shim-app .shim-contract-item,#shim-app .shim-customer-contracts .shim-work-card{flex-wrap:wrap;gap:12px}
 #shim-app .shim-contract-item .shim-card-actions{flex-wrap:wrap}
}

/* State Home Crew & Timesheets 1.0.7 */
.shim-crew-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.shim-crew-summary .shim-panel{margin:0;padding:18px;display:flex;flex-direction:column;gap:10px}.shim-crew-summary small{color:#637567;font-weight:700}.shim-crew-summary strong{font-size:26px;color:#a90f1b}.shim-crew-formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.shim-crew-formgrid label,.shim-crew-filter label{display:flex;flex-direction:column;gap:7px;font-weight:700;color:#183627}.shim-crew-formgrid input,.shim-crew-formgrid select,.shim-crew-filter input{width:100%;box-sizing:border-box;border:1px solid #d5dfd9;border-radius:9px;padding:11px;font:inherit;background:#fff}.shim-crew-projectbox{padding:15px;margin:18px 0;border:1px solid #d9e1dc;border-radius:12px;display:grid;gap:6px;max-height:290px;overflow:auto}.shim-crew-jobcheck{display:flex;gap:10px;align-items:center;padding:7px 0;font-size:14px}.shim-crew-jobcheck input{width:18px;height:18px}.shim-crew-editor{margin-bottom:16px}.shim-crew-pinnotice{padding:12px;background:#ebf6e9;border-radius:10px;color:#a90f1b;word-break:break-word}.shim-crew-filter{display:flex;flex-wrap:wrap;align-items:end;gap:11px;margin:14px 0 16px}.shim-crew-filter label{min-width:155px}.shim-panel .shim-tablewrap{overflow-x:auto}@media(max-width:900px){.shim-crew-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.shim-crew-formgrid{grid-template-columns:1fr}.shim-crew-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.shim-crew-summary .shim-panel{padding:11px}.shim-crew-summary strong{font-size:22px}}/* 2.4.17 — Taxes & Accounting workspace, private receipt archive, compact on phones */
#shim-app .shim-tax-topnote{padding:15px 18px;border:1px solid #e8d7af;border-left:4px solid #b78e32;border-radius:12px;background:#fffaf0;color:#485162;line-height:1.55;margin-bottom:18px;font-size:13px}
#shim-app .shim-tax-topnote strong{color:#594518}
#shim-app .shim-tax-toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:18px}
#shim-app .shim-tax-toolbar label{display:flex;flex-direction:column;gap:5px;font-weight:700;color:#263344;font-size:12px}
#shim-app .shim-tax-toolbar select{background:#fff;border:1px solid #d2dce7;border-radius:9px;padding:10px 13px;min-width:110px;font:inherit}
#shim-app .shim-tax-toolbar>span{color:#677588;font-size:12px}
#shim-app .shim-tax-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
#shim-app .shim-tax-kpis>div{background:#fff;border:1px solid #dce3ed;border-radius:16px;padding:18px 17px;display:flex;flex-direction:column;gap:8px;min-width:0;box-shadow:0 6px 20px #13254009}
#shim-app .shim-tax-kpis small{font-size:12px;color:#60718a;font-weight:600}
#shim-app .shim-tax-kpis strong{font-size:clamp(18px,2.2vw,26px);color:#15263c;font-weight:800;overflow-wrap:anywhere}
#shim-app .shim-tax-expense{padding:16px 5px;border-bottom:1px solid #e4eaf1;display:flex;justify-content:space-between;align-items:center;gap:16px}
#shim-app .shim-tax-expense>div:first-child{display:flex;flex-direction:column;gap:5px;min-width:180px}
#shim-app .shim-tax-expense strong{color:#1b2c41}
#shim-app .shim-tax-expense small{color:#6a7685}
#shim-app .shim-tax-expense span{font-size:13px;color:#57677c}
#shim-app .shim-tax-expense-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
#shim-app .shim-tax-filebtn{cursor:pointer;white-space:nowrap}
#shim-app .shim-tax-expense-actions>.shim-btn{max-width:240px;overflow-wrap:anywhere}
#shim-app .shim-record-pay-always{min-width:142px}
#shim-app .shim-record-pay-always:disabled{opacity:.53;cursor:not-allowed;background:#f3f6f9;color:#57677b}
@media(max-width:1100px){#shim-app .shim-tax-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#shim-app .shim-tax-expense{flex-direction:column;align-items:stretch}#shim-app .shim-tax-expense-actions{justify-content:flex-start}#shim-app .shim-tax-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#shim-app .shim-tax-kpis>div{padding:13px}}

/* v2.4.18 — responsive voucher entry, scan review and module visibility */
.shim-module-settings{border:1px solid #e4e9ee;border-radius:20px;background:#fafcfd;padding:20px;margin:22px 0}
.shim-module-settings h2{margin:0 0 7px}.shim-module-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}
.shim-module-choice{display:flex;align-items:flex-start;gap:12px;background:#fff;border:1px solid #e0e6eb;border-radius:12px;padding:12px;cursor:pointer;min-width:0}
.shim-module-choice input{accent-color:#b31220;width:18px;height:18px;flex:0 0 18px;margin:2px 0 0}.shim-module-choice span{min-width:0;display:flex;flex-direction:column;gap:3px}.shim-module-choice b{font-size:13px}.shim-module-choice small{color:#66788c;font-size:11px}
.shim-voucher-editor{border:1px solid #c9d6df;box-shadow:0 10px 35px rgba(9,28,50,.08)}
.shim-voucher-top,.shim-voucher-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.shim-voucher-top label,.shim-voucher-grid label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:13px;color:#203247;min-width:0}
.shim-voucher-editor input:not([type=checkbox]),.shim-voucher-editor select,.shim-voucher-editor textarea{width:100%;max-width:100%;min-width:0;border:1px solid #cbd6e1;border-radius:10px;padding:12px;background:#fff;color:#12253c;font:inherit}
.shim-voucher-editor input[type=file]{padding:10px;border-style:dashed;background:#fafcff;cursor:pointer}
.shim-voucher-wide{grid-column:1/-1}.shim-voucher-ai{border:1px solid #e8d9a9;background:#fffdf5;border-radius:14px;padding:14px;display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px}
.shim-voucher-ai span{font-weight:800}.shim-voucher-ai small{color:#657282}.shim-voucher-ai p{width:100%;margin:0;font-size:13px;color:#294f35}
.shim-voucher-consent{display:flex;align-items:flex-start;gap:8px;width:100%;font-size:12px;font-weight:500;line-height:1.5;color:#3b4b62}
.shim-voucher-consent input{width:17px;height:17px;flex:0 0 17px;accent-color:#b31220;margin-top:2px}.shim-voucher-explain{font-size:12px;color:#667483;line-height:1.55}
.shim-voucher-editor [hidden]{display:none!important}.shim-tax-expense-actions{flex-wrap:wrap}
@media(max-width:1040px){.shim-module-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.shim-module-choice-grid,.shim-voucher-top,.shim-voucher-grid{grid-template-columns:1fr}.shim-module-settings{padding:14px}.shim-voucher-ai{align-items:stretch}.shim-voucher-ai button{width:100%}}

.shim-voucher-preview{background:#f6f8fa;border:1px dashed #ccd7e0;border-radius:12px;padding:12px;margin-top:12px;max-width:320px;min-height:44px;color:#3b4d62;font-size:12px}
.shim-voucher-preview img{width:100%;max-height:160px;object-fit:contain;border-radius:6px}
.shim-voucher-preview[hidden]{display:none!important}
/* v2.4.20 · Crew & Timesheets — refreshed, responsive and scoped */
#shim-app .shim-crew-dashboard{--crew-ink:#17283b;--crew-muted:#627386;--crew-line:#e5eaf0;--crew-accent:#ad1020;max-width:1550px;margin:0 auto;min-width:0}
#shim-app .shim-crew-dashboard .shim-page-head{margin-bottom:22px;gap:18px;align-items:center}
#shim-app .shim-crew-dashboard .shim-page-head h1{font-size:clamp(26px,2.5vw,34px);font-weight:800;letter-spacing:-.75px}
#shim-app .shim-crew-dashboard .shim-page-head p{font-size:13px;max-width:670px;line-height:1.55;margin-top:8px}
#shim-app .shim-crew-dashboard .shim-btn{font-size:12px;border-radius:10px;min-height:39px;padding:10px 14px}
#shim-app .shim-crew-dashboard .shim-btn.primary{background:var(--crew-accent);border-color:var(--crew-accent);color:#fff}
#shim-app .shim-crew-dashboard .shim-btn.primary:hover{background:#8e0c1a;border-color:#8e0c1a}
#shim-app .shim-crew-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 20px}
#shim-app .shim-crew-stat{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--crew-line);border-radius:17px;padding:20px;min-width:0;box-shadow:0 8px 24px #17283b06}
#shim-app .shim-crew-stat-icon{width:44px;height:44px;min-width:44px;display:grid;place-items:center;font-size:24px;border-radius:12px;background:#fdf1f2;color:var(--crew-accent);font-weight:700}
#shim-app .shim-crew-stat.working .shim-crew-stat-icon{background:#eaf8ef;color:#237a47}
#shim-app .shim-crew-stat.hours .shim-crew-stat-icon{background:#f1f4fc;color:#475fa0}
#shim-app .shim-crew-stat.pay .shim-crew-stat-icon{background:#fff5e3;color:#99721b}
#shim-app .shim-crew-stat small{font-size:12px;color:var(--crew-muted);font-weight:600;display:block;line-height:1.4}
#shim-app .shim-crew-stat strong{display:block;color:var(--crew-ink);font-size:clamp(20px,2vw,27px);line-height:1.3;margin-top:3px;letter-spacing:-.5px;white-space:normal;overflow-wrap:anywhere}
#shim-app .shim-crew-portal{border-radius:18px;background:linear-gradient(120deg,#172c3e,#26374c);color:#fff;display:flex;gap:18px;align-items:flex-start;padding:23px 25px;margin:0 0 20px;box-shadow:0 12px 28px #152b4630}
#shim-app .shim-crew-portal-icon{width:54px;height:54px;min-width:54px;border-radius:15px;display:grid;place-items:center;background:#ffffff1b;color:#ffdc8d;font-size:34px}
#shim-app .shim-crew-portal-main{min-width:0;flex:1}
#shim-app .shim-crew-kicker{display:block;color:#b9871f;font-weight:850;font-size:10px;letter-spacing:1.7px;margin-bottom:7px}
#shim-app .shim-crew-portal .shim-crew-kicker{color:#f4cc7b}
#shim-app .shim-crew-portal h2{color:#fff;font-size:18px;line-height:1.3}
#shim-app .shim-crew-portal p{font-size:12px;line-height:1.55;color:#dbe5ef;max-width:790px;margin:6px 0 0}
#shim-app .shim-crew-portal-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:17px}
#shim-app .shim-crew-portal .shim-btn.subtle{background:#ffffff18;color:white;border-color:#ffffff3b}
#shim-app .shim-crew-portal .shim-btn.subtle:hover{background:#ffffff33}
#shim-app .shim-crew-pinnotice{padding:12px 14px;background:#fff8e8!important;color:#5f4315!important;border:1px solid #e4c57b;border-radius:11px;margin-top:16px!important;font-size:12px;line-height:1.5}
#shim-app .shim-crew-section{margin:0 0 20px;padding:24px;border-radius:18px;border-color:var(--crew-line);box-shadow:0 6px 23px #112d4810}
#shim-app .shim-crew-section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
#shim-app .shim-crew-section-heading h2{font-size:19px;color:var(--crew-ink);font-weight:800;display:flex;align-items:center;gap:9px}
#shim-app .shim-crew-section-heading p{font-size:12px;color:var(--crew-muted);margin-top:5px}
#shim-app .shim-crew-count{background:#f4f5f7;color:#526273;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;min-width:24px;min-height:24px;padding:0 7px}
#shim-app .shim-crew-worker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#shim-app .shim-crew-worker-card{background:#fff;border:1px solid var(--crew-line);border-radius:15px;padding:17px;display:flex;flex-direction:column;min-width:0;gap:16px;transition:border-color .2s,box-shadow .2s}
#shim-app .shim-crew-worker-card:hover{border-color:#ced8e1;box-shadow:0 8px 24px #182a3910}
#shim-app .shim-crew-worker-top{display:flex;align-items:center;gap:11px;min-width:0}
#shim-app .shim-crew-avatar{width:43px;height:43px;min-width:43px;display:grid;place-items:center;background:#fbecef;color:#a31324;border-radius:12px;font-size:18px;font-weight:800}
#shim-app .shim-crew-worker-identity{min-width:0;flex:1}
#shim-app .shim-crew-worker-identity h3{font-size:14px;color:var(--crew-ink);font-weight:800;line-height:1.35}
#shim-app .shim-crew-worker-identity small{display:block;color:#64748b;font-size:11px;overflow-wrap:anywhere;margin-top:4px}
#shim-app .shim-crew-status{display:inline-flex;align-items:center;gap:5px;background:#f0f4f8;color:#576576;font-size:10px;font-weight:750;padding:7px 10px;border-radius:100px;white-space:nowrap}
#shim-app .shim-crew-status.active,#shim-app .shim-crew-status.complete{background:#e8f7ed;color:#237447}
#shim-app .shim-crew-status.working{background:#fff3d8;color:#916113}
#shim-app .shim-crew-status.inactive{background:#f5f5f5;color:#667184}
#shim-app .shim-crew-worker-facts{display:grid;grid-template-columns:1.2fr .85fr 1.1fr;gap:10px;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4;padding:12px 0}
#shim-app .shim-crew-worker-facts>div{min-width:0}
#shim-app .shim-crew-worker-facts small,#shim-app .shim-crew-shift-metrics small{display:block;font-size:10px;color:#718096;font-weight:650;margin-bottom:5px}
#shim-app .shim-crew-worker-facts b{display:block;font-size:13px;color:#192c3e;line-height:1.25;overflow-wrap:anywhere}
#shim-app .shim-crew-worker-facts em{font-size:10px;font-weight:500;color:#6b7889;font-style:normal}
#shim-app .shim-crew-worker-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
#shim-app .shim-crew-worker-actions .shim-btn{flex:0 1 auto;font-size:11px;min-height:36px;padding:8px 10px}
#shim-app .shim-crew-filter{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:0 0 20px;padding:16px;border:1px solid #edf0f4;border-radius:13px;background:#f9fafc}
#shim-app .shim-crew-filter label{font-size:11px;flex:1 1 145px;min-width:0;color:#526174}
#shim-app .shim-crew-filter input{font-size:12px;border-radius:9px;padding:10px;max-width:100%;min-height:40px}
#shim-app .shim-crew-shift-list{display:grid;gap:11px}
#shim-app .shim-crew-shift-card{background:#fff;border:1px solid #e2e9f0;border-radius:14px;padding:16px;min-width:0}
#shim-app .shim-crew-shift-head{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:14px}
#shim-app .shim-crew-shift-person{min-width:0}
#shim-app .shim-crew-shift-date{color:#a11325;font-weight:750;font-size:11px;display:block;margin-bottom:3px}
#shim-app .shim-crew-shift-person strong{color:#17283b;font-size:14px;display:block}
#shim-app .shim-crew-shift-person small{font-size:11px;color:#697789;display:block;margin-top:3px;overflow-wrap:anywhere}
#shim-app .shim-crew-shift-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;background:#f9fafc;border-radius:10px;padding:13px}
#shim-app .shim-crew-shift-metrics>div{min-width:0}
#shim-app .shim-crew-shift-metrics b{color:#17283b;font-size:12px;overflow-wrap:anywhere;display:block}
#shim-app .shim-crew-shift-details{margin-top:13px}
#shim-app .shim-crew-shift-details summary{cursor:pointer;color:#9e1527;font-size:11px;font-weight:750;list-style:none;display:flex;gap:8px;align-items:center;justify-content:space-between;padding:6px 2px}
#shim-app .shim-crew-shift-details summary::-webkit-details-marker{display:none}
#shim-app .shim-crew-shift-details[open] summary span{transform:rotate(180deg)}
#shim-app .shim-crew-shift-extra{border-top:1px solid #edf0f4;padding:13px 2px 2px;display:flex;align-items:start;justify-content:space-between;gap:12px;flex-wrap:wrap}
#shim-app .shim-crew-shift-extra small{font-size:10px;color:#718096;font-weight:700}
#shim-app .shim-crew-shift-extra p{font-size:12px;color:#273e53;margin-top:4px}
#shim-app .shim-crew-gps-links{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
#shim-app .shim-crew-gps-links a,#shim-app .shim-crew-no-gps{font-size:11px}
#shim-app .shim-crew-gps-links a{color:#a51123;text-decoration:underline;text-underline-offset:2px}
#shim-app .shim-crew-no-gps{color:#82909e}
#shim-app .shim-crew-more{display:flex;max-width:290px;margin:16px auto 0;justify-content:center}
#shim-app .shim-crew-disclaimer{font-size:11px;color:#718096;line-height:1.55;margin:17px 0 0}
#shim-app .shim-crew-empty{text-align:center;border:1px dashed #d5dee8;border-radius:14px;padding:28px 18px;grid-column:1/-1;background:#fbfcfe}
#shim-app .shim-crew-empty strong{font-size:14px;color:#253c54}
#shim-app .shim-crew-empty p{margin:7px 0 14px;font-size:12px;color:#697c8c}
#shim-app .shim-crew-editor{border-radius:18px;margin:0 0 20px;padding:23px}
#shim-app .shim-crew-editor h2{font-size:18px}
@media(max-width:1100px){#shim-app .shim-crew-summary{grid-template-columns:repeat(2,minmax(0,1fr))}#shim-app .shim-crew-worker-grid{grid-template-columns:1fr}}
@media(max-width:700px){#shim-app .shim-crew-dashboard .shim-page-head{align-items:stretch}#shim-app .shim-crew-dashboard .shim-page-head>.shim-btn{width:100%}#shim-app .shim-crew-summary{gap:9px}#shim-app .shim-crew-stat{padding:13px;gap:9px;border-radius:12px}#shim-app .shim-crew-stat-icon{width:34px;height:34px;min-width:34px;font-size:19px;border-radius:9px}#shim-app .shim-crew-stat strong{font-size:20px}#shim-app .shim-crew-stat small{font-size:10px}#shim-app .shim-crew-portal{padding:17px;gap:10px;flex-direction:column}#shim-app .shim-crew-portal-icon{width:42px;height:42px;min-width:42px;font-size:25px}#shim-app .shim-crew-portal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:7px}#shim-app .shim-crew-portal-actions .shim-btn{white-space:normal;text-align:center;min-height:42px}#shim-app .shim-crew-section{padding:16px}#shim-app .shim-crew-worker-grid{grid-template-columns:1fr}#shim-app .shim-crew-worker-card{padding:14px}#shim-app .shim-crew-worker-identity h3{font-size:13px}#shim-app .shim-crew-worker-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}#shim-app .shim-crew-worker-actions .shim-btn{width:100%;white-space:normal;min-height:40px}#shim-app .shim-crew-worker-actions .shim-btn[data-crew-invite]{grid-column:1/-1}#shim-app .shim-crew-shift-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}#shim-app .shim-crew-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px}#shim-app .shim-crew-filter label{min-width:0}#shim-app .shim-crew-filter .shim-btn{width:100%;white-space:normal}#shim-app .shim-crew-shift-head{align-items:start}#shim-app .shim-crew-shift-head .shim-crew-status{max-width:105px;white-space:normal;text-align:center}}
@media(max-width:380px){#shim-app .shim-crew-stat{padding:10px}#shim-app .shim-crew-stat-icon{display:none}#shim-app .shim-crew-worker-facts{grid-template-columns:repeat(2,minmax(0,1fr))}#shim-app .shim-crew-status{font-size:9px;padding:5px 7px}}


/* v2.4.22 — final responsive / alignment audit; no business data or logic changes. */
#shim-app .shim-shell,#shim-app .shim-main,#shim-app .shim-content,#shim-app .shim-panel,#shim-app .shim-modal-body{min-width:0;max-width:100%}
#shim-app .shim-panel,#shim-app .shim-field,#shim-app .shim-formgrid>*,#shim-app .shim-corporate-settings,#shim-app .shim-work-card,#shim-app .shim-crew-worker-card{overflow-wrap:anywhere;word-break:normal}
#shim-app input:not([type=checkbox]):not([type=radio]),#shim-app select,#shim-app textarea{max-width:100%;min-width:0;box-sizing:border-box}
#shim-app .shim-brand{min-width:0}
#shim-app .shim-brand>div{min-width:0}
#shim-app .shim-brand strong,#shim-app .shim-brand span{white-space:normal;overflow-wrap:anywhere;letter-spacing:.02em}
#shim-app .shim-sidebar-logo{object-fit:contain;object-position:center;display:block;aspect-ratio:4/3;min-width:0;max-width:78px;height:auto;max-height:59px}
#shim-app .shim-locked-logo img,#shim-app .shim-signature-brand img,#shim-app .shim-logo-preview img{object-fit:contain;object-position:center}
#shim-app .shim-kpi-number,#shim-app .shim-finance-card>strong{white-space:normal;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
#shim-app .shim-footer{gap:12px;flex-wrap:wrap;overflow-wrap:anywhere}
#shim-app .shim-modal{max-width:100%;max-height:calc(100dvh - 24px)}
#shim-app .shim-modal-head{min-width:0}
#shim-app .shim-modal-head h2{min-width:0;overflow-wrap:anywhere;line-height:1.3}
#shim-app .shim-formgrid>*,#shim-app .shim-compose-grid>*,#shim-app .shim-crew-worker-grid>*{min-width:0}
#shim-app .shim-line{min-width:0}
#shim-app .shim-line input{width:100%;min-width:0}
#shim-app .shim-modalfoot{flex-wrap:wrap}
#shim-app .shim-btn,#shim-app .shim-card-actions .shim-btn{max-width:100%;overflow-wrap:anywhere}
#shim-app .shim-work-tabs{max-width:100%;scrollbar-width:thin}
#shim-app .shim-tablewrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
/* Tiny neutral help marks aligned with each input label. */
#shim-app .shim-field>span,#shim-app .shim-inline-label{display:inline-flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:5px;min-width:0}
#shim-app .shim-help-dot{appearance:none;display:inline-flex;align-items:center;justify-content:center;flex:0 0 16px;width:16px;height:16px;min-width:16px;min-height:16px;margin:0 0 0 2px;padding:0;border-radius:50%;border:1px solid #d8dce4;background:#f7f8fa;color:#6b7582;font-family:inherit;font-size:10px;font-weight:750;line-height:1;box-shadow:none;cursor:help;vertical-align:middle;transition:background .15s,border-color .15s,color .15s}
#shim-app .shim-help-dot:hover,#shim-app .shim-help-dot:focus-visible{background:#f9f3e7;border-color:#c5aa6f;color:#6a5428}
#shim-app .shim-help-dot:focus-visible{outline:2px solid #c8ab6a;outline-offset:2px}
.shim-field-help-popover{position:fixed;z-index:2147483500;width:max-content;max-width:min(300px,calc(100vw - 20px));padding:10px 12px;border:1px solid #dce2e9;border-radius:11px;background:#fff;color:#27364a;box-shadow:0 14px 36px rgba(16,30,49,.17);font:12px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;overflow-wrap:anywhere;pointer-events:none}
@media(max-width:1024px){#shim-app .shim-brand{max-width:100%}#shim-app .shim-topbar{min-width:0}#shim-app .shim-signout-top{flex-shrink:0}}
@media(max-width:760px){
 #shim-app .shim-modalback{padding:8px;align-items:center}
 #shim-app .shim-modal{width:100%;max-height:calc(100dvh - 16px);border-radius:13px}
 #shim-app .shim-modal-head{padding:14px 16px;gap:10px}
 #shim-app .shim-modal-body{padding:15px 13px;overscroll-behavior:contain}
 #shim-app .shim-modalfoot{gap:8px;justify-content:stretch}
 #shim-app .shim-modalfoot>.shim-btn{flex:1 1 120px;white-space:normal;text-align:center;min-height:42px}
 #shim-app .shim-panel-header{flex-wrap:wrap;align-items:center}
 #shim-app .shim-panel-header>.shim-btn{flex:0 1 auto;white-space:normal}
 #shim-app .shim-card-actions{flex-wrap:wrap;min-width:0}
 #shim-app .shim-card-actions .shim-btn{white-space:normal;min-height:42px}
 #shim-app .shim-crew-worker-identity{min-width:0}
 #shim-app .shim-crew-worker-identity h3{overflow-wrap:anywhere}
 #shim-app .shim-crew-portal-actions .shim-btn{white-space:normal;overflow-wrap:anywhere}
 #shim-app .shim-brand .shim-sidebar-logo{flex:0 0 auto;max-width:64px;max-height:46px}
}
@media(max-width:480px){
 #shim-app .shim-modalfoot{flex-direction:column}
 #shim-app .shim-modalfoot .shim-btn{flex:0 0 auto;width:100%}
 #shim-app .shim-crew-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
 #shim-app .shim-doc-totals div{max-width:100%}
 #shim-app .shim-topbar{justify-content:flex-start}
}
@media(max-width:340px){
 #shim-app .shim-crew-worker-actions{grid-template-columns:1fr}
 #shim-app .shim-crew-worker-actions .shim-btn[data-crew-invite]{grid-column:auto}
 #shim-app .shim-topbar{gap:5px!important}
 #shim-app .shim-topbar .shim-signout-top{font-size:10px;padding:6px}
}


/* Final UI QA: small, unobtrusive native help for fields not covered by dashboard.js. */
.shim-info-button{appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;margin:0 0 0 3px!important;padding:0!important;border:1px solid #d8dce4!important;border-radius:50%!important;background:#f7f8fa!important;color:#6b7582!important;font:750 10px/1 system-ui,sans-serif!important;box-shadow:none!important;vertical-align:middle!important;cursor:help!important}
.shim-info-button:hover,.shim-info-button:focus-visible{background:#f9f3e7!important;border-color:#c5aa6f!important;color:#6a5428!important;outline:2px solid #d6bd81!important;outline-offset:2px!important}
.shim-info-text{display:block!important;max-width:min(320px,100%)!important;overflow-wrap:anywhere!important;white-space:normal!important;font:12px/1.5 system-ui,sans-serif!important;background:#f9fafc!important;color:#344054!important;border:1px solid #e0e5ec!important;box-shadow:0 8px 18px rgba(20,32,48,.08)!important}
.shim-info-text[hidden]{display:none!important}
/* Resolve an older global modal h2 override: white title on dark modal header. */
#shim-app .shim-modal .shim-modal-head h2{color:#fff!important;text-shadow:none!important;line-height:1.25!important}
#shim-app .shim-modal-head small{color:#d5b866!important}

/* v2.4.25: long-form scope notes in Estimates & Invoices */
#shim-app .shim-modal textarea.shim-document-notes{min-height:325px!important;line-height:1.52!important;resize:vertical;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px!important;padding:14px 15px!important}
#shim-app .shim-doc-note-hint{font-size:12px;line-height:1.5;color:#596a7b;margin:-6px 0 7px;padding:0 2px}
@media(max-width:600px){#shim-app .shim-modal textarea.shim-document-notes{min-height:290px!important;padding:12px!important}}

/* v2.4.26 — recoverable documents and estimate decisions */
#shim-app .shim-estimate-reject{border-color:#e1aeb3;color:#a8202f;background:#fff9f9}
#shim-app .shim-estimate-reject:not(:disabled):hover{background:#fff0f1}
#shim-app .shim-estimate-reject:disabled{opacity:.52;cursor:not-allowed}
#shim-app .shim-trash-btn{color:#9c2430;border-color:#ebc9cb;background:#fffafb}
#shim-app .shim-trash-btn:hover{background:#fff0f1;border-color:#ba5563}
#shim-app .shim-open-trash{display:inline-flex;gap:8px;align-items:center;white-space:normal}
#shim-app .shim-open-trash span{border-radius:99px;padding:1px 7px;background:#f2e8ea;font-size:12px}
#shim-app .shim-trash-notice{background:#fff9ed;border:1px solid #ead7ae;color:#58471d;border-radius:14px;padding:16px 18px;margin-bottom:16px;line-height:1.55}
#shim-app .shim-trash-kind{font-size:11px;font-weight:800;letter-spacing:.11em;color:#a02d36;display:block;margin-bottom:5px}
#shim-app .shim-trash-item{min-width:0;overflow-wrap:anywhere}
#shim-app .shim-trash-item strong,#shim-app .shim-trash-item small{display:block}
#shim-app .shim-trash-item small{color:#657080;margin-top:6px}
@media(max-width:640px){#shim-app .shim-trash-panel{padding:14px}#shim-app .shim-trash-item{flex-wrap:wrap}#shim-app .shim-trash-item .shim-card-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}#shim-app .shim-trash-item .shim-card-actions .shim-btn{white-space:normal;overflow-wrap:anywhere;min-width:0}}

/* State Home official black/red identity (theme overrides) */
#shim-app{--teal:#BB1118;--navy:#17191C;--teallight:#fff0f1;}
#shim-app .shim-sidebar{background:linear-gradient(180deg,#161616,#2a1113)!important;}
#shim-app .shim-btn.primary,#shim-app .shim-badge.primary{background:#BA0C16!important;border-color:#BA0C16!important;color:#fff!important;}
#shim-app .shim-eyebrow{color:#AA1018!important;}
#shim-app .shim-brand img,#shim-app .shim-sidebar-logo{background:#fff!important;object-fit:contain!important;border-radius:8px!important;}
#shim-app .shim-locked-logo{background:white!important;}
.shim-auth-form button{background:#BA0C16!important;color:#fff!important;}
