:root{--ink:#17334a;--muted:#5c7080;--navy:#092f4d;--deep:#07263e;--link:#086b9a;--ocean:#28b0f5;--canvas:#f3f7fa;--line:#dce5ec;--white:#fff;--radius:12px;--shadow:0 6px 28px #092f4d08;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-size:16px;line-height:1.55;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--white)}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #088ed0;outline-offset:4px}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15;letter-spacing:-.035em}h1{font-size:2.25rem}h2{font-size:1.35rem}h3{font-size:1.1rem}p+p{margin-top:1rem}.muted{color:var(--muted)}.eyebrow{font-size:.75rem;font-weight:750;letter-spacing:.15em;color:var(--link);margin-bottom:1.3rem}.eyebrow.light{color:#abc8dc}.brand{display:flex;gap:12px;align-items:center;font-size:1.6rem;font-weight:650;letter-spacing:-.055em;line-height:1}.brand:hover{text-decoration:none}.brand-sub{display:block;font-size:.75rem;letter-spacing:.22em;font-weight:600;margin-top:6px}.brand-symbol{display:block;width:48px;height:48px;object-fit:contain;flex-shrink:0}.brand{font-family:"Avenir Next",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:750}.brand-sub{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--navy);color:white;padding:12px 20px;border:1px solid transparent;border-radius:7px;font-size:.9rem;font-weight:650;line-height:1.5;white-space:nowrap;transition:background .15s}.button:hover{background:#164e75;text-decoration:none}.button.ocean{background:var(--ocean);color:var(--deep)}.button.ocean:hover{background:#67c8fa}.button.secondary{background:white;color:var(--ink);border-color:var(--line)}.button.secondary:hover{background:#edf4f9}.button.small{padding:9px 16px;font-size:.875rem}.button.danger{background:#a33737}.button:disabled{opacity:.55;cursor:not-allowed}.public-header{max-width:1320px;margin:auto;padding:26px 5%;display:flex;align-items:center;justify-content:space-between}.public-header nav{display:flex;align-items:center;gap:34px;font-size:.875rem;font-weight:600}.hero{background:var(--navy);color:white;overflow:hidden}.hero-inner{max-width:1320px;padding:78px 5% 65px;margin:auto;display:grid;grid-template-columns:1.3fr 1fr;gap:90px}.hero h1{font-size:clamp(3.25rem,5.4vw,5rem);letter-spacing:-.055em;line-height:1.04;font-weight:550}.hero h1 em{font-style:normal;color:var(--ocean)}.hero-description{font-size:1.05rem;max-width:450px;color:#c4d8e7;margin:28px 0 32px;line-height:1.7}.hero-aside{padding-top:15px}.service-rail{display:flex;gap:25px;border-top:1px solid #42667f;padding:28px 0}.service-rail h2{font-size:1.3rem;font-weight:500;letter-spacing:-.02em}.service-rail p{color:#bdd3e2;font-size:.93rem;margin-top:10px;max-width:290px}.service-number{font-size:.875rem;color:var(--ocean);padding-top:3px}.coast-note{display:flex;flex-direction:column;border-left:2px solid var(--ocean);padding-left:18px;margin-top:25px;font-size:.875rem;color:#caddeb}.public-section{max-width:1320px;margin:auto;padding:85px 5%}.section-heading{display:grid;grid-template-columns:1fr 1.4fr;gap:10px 65px}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2,.approach h2,.contact-section h2{font-size:clamp(2rem,3vw,2.7rem);font-weight:550;line-height:1.15}.section-heading>p:last-child{max-width:420px;align-self:center;color:var(--muted);font-size:1.1rem}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:48px}.services-grid article{border-top:1px solid var(--line);padding-top:24px}.icon-tile{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:8px;background:#e7f3fb;color:var(--link);font-size:1.5rem;margin-bottom:24px}.services-grid h3{margin-bottom:15px}.services-grid p{color:var(--muted);font-size:.95rem;line-height:1.7}.approach{background:#f0f6fa;display:grid;grid-template-columns:1fr 1fr;gap:80px;max-width:none;padding-left:max(5%,calc((100% - 1188px)/2));padding-right:max(5%,calc((100% - 1188px)/2))}.steps article{display:flex;gap:25px;margin-bottom:25px}.steps article>span{font-size:.875rem;font-weight:650;color:var(--link);padding-top:3px}.steps p{margin-top:10px;color:var(--muted);font-size:.95rem}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-section h2{margin-bottom:25px}.contact-section p{color:var(--muted);max-width:400px}.email-link{display:inline-block;font-size:1rem;font-weight:600;margin:28px 0;overflow-wrap:anywhere}.contact-card{padding:30px;background:var(--canvas);border:1px solid var(--line);border-radius:12px}.public-footer{border-top:1px solid var(--line);padding:25px 5%;display:flex;justify-content:space-between;color:var(--muted);font-size:.875rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field.full{grid-column:1/-1}label{display:block;font-size:.875rem;font-weight:600;margin-bottom:7px}input:not([type=checkbox]),select,textarea{display:block;width:100%;border:1px solid #cbd7d9;border-radius:6px;padding:10px 12px;background:#fff;color:var(--ink);font-size:1rem;min-height:44px}textarea{resize:vertical}input[type=checkbox]{width:18px;height:18px;accent-color:var(--link)}.field{margin-bottom:18px}.form-grid .field{margin-bottom:0}.form-note,.helptext,.help-text{font-size:.875rem;color:var(--muted);line-height:1.5}.form-note{margin:18px 0!important}.errorlist{font-size:.875rem;color:#a82f34;padding-left:18px}.honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.success-panel{padding:36px 10px}.success-panel p{margin:16px 0}.success-icon{width:45px;height:45px;border-radius:50%;background:#d7ece4;color:var(--link);display:flex;align-items:center;justify-content:center;margin-bottom:24px;font-size:1.4rem}.login-page{min-height:100vh;background:var(--canvas);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:32px 20px}.login-card{background:white;border:1px solid var(--line);border-radius:14px;width:min(100%,450px);padding:38px}.login-card h1{font-size:2rem;margin-bottom:12px}.login-card form{margin-top:25px}.login-card form p{margin-bottom:18px}.login-card .button{width:100%}.demo-entry{border-top:1px solid var(--line);margin-top:26px;padding-top:20px;font-size:.875rem;color:var(--muted)}.demo-entry form{margin-top:12px}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:10px}
@media(max-width:900px){.hero-inner{gap:45px}.services-grid{grid-template-columns:1fr 1fr}.approach,.contact-section{gap:40px}.hero h1{font-size:3.5rem}}
@media(max-width:650px){.public-header{padding:20px 6%}.brand{font-size:1.35rem}.public-header nav a:not(.button){display:none}.hero-inner{padding:55px 6%;grid-template-columns:1fr;gap:48px}.hero h1{font-size:3.5rem}.hero-aside{padding-top:0}.public-section{padding:55px 6%}.section-heading,.approach,.contact-section{grid-template-columns:1fr;gap:25px}.services-grid{gap:30px 20px}.services-grid h3{font-size:1rem}.form-grid{grid-template-columns:1fr}.contact-card{padding:22px}.public-footer{gap:20px;flex-direction:column}.login-card{padding:28px}}
.workspace{background:var(--canvas)}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:var(--deep);color:#b6cadb;padding:32px 22px 20px;display:flex;flex-direction:column;z-index:30}.sidebar .brand{color:white;font-size:1.55rem;gap:10px}.sidebar .brand-symbol{width:40px;height:40px}.sidebar .brand-sub{letter-spacing:.11em;font-size:.6rem}.sidebar .brand-sub{font-size:.75rem;color:#9fbcd1}.nav-label{font-size:.75rem;font-weight:600;letter-spacing:.13em;margin:48px 12px 14px;color:#83a5bf}.sidebar nav{display:flex;flex-direction:column;gap:6px}.sidebar nav a,.settings-link{display:flex;gap:13px;align-items:center;padding:12px 14px;font-size:.875rem;border-radius:7px;transition:background .15s}.sidebar nav a>span{width:19px;font-size:1.2rem;line-height:1;text-align:center}.sidebar nav a:hover,.settings-link:hover{background:#123e5d;text-decoration:none;color:white}.sidebar nav .active{background:#174763;color:white;font-weight:600;box-shadow:inset 3px 0 var(--ocean)}.sidebar-bottom{margin-top:auto}.website-link{display:flex;justify-content:space-between;padding:18px 13px;font-size:.875rem;color:#abc3d5}.owner-card{border-top:1px solid #284b66;padding:23px 7px 0;display:flex;align-items:center;gap:11px}.avatar{display:flex;align-items:center;justify-content:center;background:var(--ocean);color:var(--deep);width:35px;height:35px;border-radius:50%;font-size:.875rem;font-weight:650;flex-shrink:0}.owner-card strong{font-size:.875rem;color:white;font-weight:500}.owner-card small{display:block;font-size:.75rem;color:#9ab8ce}.owner-card form{margin-left:auto}.logout-button{background:none;border:0;color:#afc3c8;font-size:1.3rem;padding:6px}.workspace-body{margin-left:244px;min-height:100vh;display:flex;flex-direction:column}.workspace-topbar{background:#fff;border-bottom:1px solid var(--line);min-height:72px;padding:18px 38px;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:.875rem;color:var(--muted)}.workspace-topbar strong{font-weight:500;color:var(--ink)}.breadcrumb-divider{margin:0 13px;color:#5e6f78}.topbar-date{font-size:.875rem}.demo-banner{display:flex;align-items:center;gap:15px;background:#fff5df;color:#765827;padding:8px 38px;font-size:.75rem;font-weight:700;letter-spacing:.05em;border-bottom:1px solid #f0e3c4}.demo-banner span{font-size:.75rem;font-weight:400;letter-spacing:0}.office-main{padding:38px;max-width:1700px;width:100%;margin:0 auto;flex:1;min-width:0}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.page-heading .eyebrow{font-size:.75rem;margin-bottom:10px}.page-heading h1{font-weight:600;font-size:2rem;letter-spacing:-.045em}.page-heading p:not(.eyebrow){font-size:.9rem;color:var(--muted);margin-top:10px}.actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.actions .button{font-size:.875rem;padding:10px 16px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:28px}.stats-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.stat-card>span{color:var(--muted);font-size:.875rem;font-weight:500;display:block}.stat-card>strong{display:block;font-size:1.95rem;line-height:1.2;letter-spacing:-.04em;font-weight:600;margin:16px 0 12px;white-space:nowrap;font-variant-numeric:tabular-nums}.stat-card>small,.stat-card>a{font-size:.75rem;color:var(--muted)}.stat-card>a{color:var(--link)}.stat-card.accent{background:#fdf4ef;border-color:#ecd8cc}.stat-card.accent>strong{color:#8b4b35}.stat-card em{font-size:1rem;font-style:normal;font-weight:400;color:var(--muted)}.stat-card .date-stat{font-size:1.6rem}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr);gap:24px;align-items:start}.dashboard-columns>div{min-width:0}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:24px;min-width:0;overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:21px 24px;border-bottom:1px solid #edf0f0}.panel-header h2{font-size:1.05rem;font-weight:650;letter-spacing:-.02em}.panel-header a,.panel-header>.muted{font-size:.75rem}.panel-header a{color:var(--link);font-weight:600}.project-row{display:flex;align-items:center;gap:14px;padding:22px 24px;border-bottom:1px solid #eef2f2}.project-row:last-child{border-bottom:0}.project-row:hover{background:#f8fafa;text-decoration:none}.project-row strong{font-size:.875rem;font-weight:600}.project-row small{font-size:.75rem;display:block;color:var(--muted);margin-top:5px}.project-icon{width:40px;height:40px;border-radius:9px;background:#e9f0ed;color:var(--link);display:flex;justify-content:center;align-items:center;font-weight:600;font-size:.95rem;flex-shrink:0}.project-row:nth-child(3) .project-icon{background:#f4eee6;color:#957749}.project-row:nth-child(4) .project-icon{background:#e8edf4;color:#4b6988}.row-end{margin-left:auto;text-align:right;flex-shrink:0;font-size:.875rem}.badge{display:inline-block;background:#edf1f3;border-radius:5px;padding:4px 8px;line-height:1.3;color:#546970;font-size:.75rem;font-weight:550;white-space:nowrap;letter-spacing:0}.badge.active,.badge.paid,.badge.complete{background:#e7f1eb;color:#38745c}.badge.overdue{background:#fae8e1;color:#a04b2e}.badge.draft,.badge.lead,.badge.planned,.badge.part-paid{background:#fbf1d9;color:#926d1f}.badge.void,.badge.inactive{background:#eee;color:#666}.badge.awaiting-payment{background:#e9eff6;color:#476889}.task-row{display:flex;gap:14px;padding:20px 24px;border-bottom:1px solid #eef2f2}.task-row:last-child{border-bottom:0}.task-row strong{font-size:.875rem;font-weight:500;line-height:1.45;display:block}.task-row small{display:block;font-size:.75rem;color:var(--muted);margin-top:6px}.task-check{border:1px solid #bfd0d1;background:#fff;width:19px;height:19px;border-radius:5px;margin-top:3px;display:flex;align-items:center;justify-content:center;padding:0;color:var(--link)}.task-check:hover{background:#e7f1eb}.task-date{font-size:.75rem;color:#85602f;display:block;margin-top:8px}.completed strong{text-decoration:line-through;color:var(--muted)}.completed .task-check{background:#e7f1eb}.inquiry-mini{display:flex;gap:13px;padding:20px 24px}.avatar.pale{background:#e8eff3;color:#4a707e}.inquiry-mini strong{font-size:.875rem}.inquiry-mini small{font-size:.875rem;color:var(--muted);display:block;margin-top:6px;line-height:1.5}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}th{font-size:.75rem;font-weight:550;color:var(--muted);background:#fafbfb;padding:12px 24px;white-space:nowrap}td{padding:18px 24px;border-top:1px solid #edf0f0;vertical-align:middle}td small{display:block;font-size:.75rem;color:var(--muted);margin-top:5px}td strong{font-weight:550}.numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.record-link{font-weight:600;color:var(--ink)}.record-link:hover{color:var(--link)}.empty-state{padding:45px 25px;text-align:center;color:var(--muted);font-size:.9rem}.empty-state h3{font-size:1.1rem;color:var(--ink);margin-bottom:12px}.empty-state p{margin-bottom:14px}.empty-state.compact{padding:26px 20px;font-size:.875rem}.empty-state.compact p:last-child{margin:0}.text-link{color:var(--link);font-weight:600}.office-footer{border-top:1px solid var(--line);margin:0 38px;padding:20px 0;display:flex;justify-content:space-between;color:#5e6f78;font-size:.75rem}.filter-bar{display:flex;gap:12px;padding:20px 24px;align-items:center;border-bottom:1px solid var(--line)}.filter-bar input{max-width:400px}.filter-bar select{max-width:200px}.filter-bar input,.filter-bar select{font-size:.875rem}.pagination{display:flex;justify-content:center;gap:25px;padding:20px;font-size:.875rem;border-top:1px solid var(--line)}.form-panel{padding:30px;max-width:780px}.form-panel form{max-width:640px}.form-panel .field{margin-bottom:22px}.form-panel textarea{min-height:95px}.help-text{margin-top:7px;max-width:580px}.checkbox-field{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.checkbox-field label{margin:0}.checkbox-field .help-text{width:100%}.form-actions{display:flex;gap:12px;margin-top:30px;border-top:1px solid var(--line);padding-top:24px}.back-link{font-size:.875rem;color:var(--muted);display:block;margin-bottom:15px}.padded{padding:26px}.padded h2{font-size:1.1rem;margin-bottom:12px}.detail-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(0,2fr);gap:24px;align-items:start}dl{margin:20px 0 28px}dt{font-size:.75rem;color:var(--muted);margin-top:17px}dd{font-size:.875rem;margin:4px 0 0;overflow-wrap:anywhere}.preserve{font-size:.9rem;color:var(--muted);line-height:1.7;margin-top:18px;overflow-wrap:anywhere}.inquiry-detail{border-bottom:1px solid var(--line);padding:20px 24px}.inquiry-detail summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;font-size:.875rem}.inquiry-detail summary>span{color:var(--muted);font-size:.75rem}.inquiry-detail>div{padding-top:20px;font-size:.9rem}.inquiry-detail>div>a{display:block;margin:14px 0}.tabs{display:flex;gap:25px}.tabs a{color:var(--muted)}.tabs .selected{color:var(--link);font-weight:650}.timer-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#e1efea;border:1px solid #bfdace;padding:14px 18px;border-radius:9px;margin-bottom:28px}.timer-banner>div{display:flex;gap:16px;align-items:center;font-size:.875rem;min-width:0}.timer-banner strong{font-variant-numeric:tabular-nums;font-size:1.1rem}.timer-pulse{width:8px;height:8px;background:#2f8b65;border-radius:50%;flex-shrink:0}.message{padding:15px 18px;border-radius:8px;background:#e6f2eb;border:1px solid #c3ded0;color:#315f49;margin-bottom:22px;font-size:.875rem}.message.error{background:#fceceb;color:#963e39;border-color:#f0d1ce}.notice{padding:16px 20px;background:#fff6e5;border:1px solid #efe0bb;color:#84622c;border-radius:8px;font-size:.875rem;margin-bottom:24px}.invoice-document{max-width:1100px;background:white;border:1px solid var(--line);border-radius:12px;padding:50px;margin-bottom:25px}.invoice-top{display:flex;justify-content:space-between;gap:25px}.invoice-top .brand-symbol{display:inline-block;margin-bottom:22px}.invoice-top h2{font-size:1.4rem;margin-bottom:12px}.invoice-top p,.bill-to p{font-size:.875rem;color:var(--muted);line-height:1.7}.invoice-heading{text-align:right}.invoice-heading .eyebrow{font-size:.75rem;color:var(--link);margin-bottom:15px}.invoice-heading dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;margin:25px 0}.invoice-heading dt,.invoice-heading dd{margin:0}.bill-to{margin:40px 0}.bill-to .eyebrow{font-size:.75rem;margin-bottom:13px}.bill-to h3{font-size:1.05rem;margin-bottom:9px}.invoice-lines th,.invoice-lines td{padding:15px 12px}.invoice-lines th:first-child,.invoice-lines td:first-child{padding-left:0}.invoice-lines td:first-child{width:60%}.invoice-lines th{background:white;border-bottom:2px solid var(--ink)}.invoice-bottom{display:flex;justify-content:space-between;gap:40px;margin-top:28px}.invoice-notes{max-width:50%;font-size:.875rem;color:var(--muted);line-height:1.65}.invoice-notes h3{font-size:.875rem;color:var(--ink);margin:16px 0 8px}.invoice-totals{display:grid;grid-template-columns:1fr 1fr;gap:14px 30px;min-width:270px;margin:0}.invoice-totals dt,.invoice-totals dd{margin:0;font-size:.875rem}.invoice-totals dd{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.invoice-totals .total-due{border-top:1px solid var(--line);padding-top:18px;margin-top:4px;font-size:1.05rem;color:var(--ink);font-weight:650}.invoice-footer{margin-top:55px;border-top:1px solid var(--line);padding-top:22px;font-size:.875rem;color:var(--muted)}.line-form{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:15px;align-items:end;margin-top:25px}.line-form .field{margin:0}.line-form .button{height:46px}.text-button{border:0;background:none;color:var(--muted);font-size:1rem;padding:5px 10px}.danger-text{color:#a65342;font-size:.875rem}.section-description{font-size:.875rem;margin:15px 0 20px;line-height:1.65}.share-row{display:flex;gap:12px;align-items:center}.share-row input{font-size:.875rem}.void-form{margin:30px 0}.connection-card{display:flex;align-items:center;gap:18px;border:1px solid var(--line);background:white;border-radius:12px;padding:24px;margin-bottom:25px}.connection-icon{background:#eeeafa;color:#6c54aa;border-radius:8px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:750;flex-shrink:0}.connection-card strong{font-size:.9rem}.connection-card p{font-size:.875rem;color:var(--muted);margin-top:5px}.connection-card .badge{margin-left:auto}.reference-cell{max-width:260px;overflow-wrap:anywhere}.settings-grid{grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr)}.settings-grid .form-panel{max-width:none}.export-links{display:flex;flex-direction:column;gap:14px;font-size:.875rem;color:var(--link)}.payment-page{background:var(--canvas)}.payment-main{max-width:1000px;margin:auto;padding:45px 25px}.payment-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:45px}.payment-status{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:30px 0}.payment-status h1{font-size:2rem}.payment-status .eyebrow{margin-bottom:12px}.payment-status p:not(.eyebrow){font-size:.9rem;color:var(--muted);margin-top:10px}.payment-footnote{text-align:center;font-size:.875rem;color:var(--muted)}.payment-footnote a{color:var(--link)}.menu-button{display:none;background:none;border:0;font-size:1.3rem;color:var(--ink);margin-right:15px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.office-main{padding:45px 50px}.stats-grid{gap:24px}.stat-card{padding:26px}}
@media(max-width:1200px){.sidebar{width:220px;padding-left:16px;padding-right:16px}.workspace-body{margin-left:220px}.office-main{padding:28px}.workspace-topbar{padding:18px 28px}.stats-grid{gap:12px}.stat-card{padding:18px}.stat-card>strong{font-size:1.6rem}.dashboard-columns{grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:18px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading .actions{align-self:flex-start}td,th{padding-left:18px;padding-right:18px}.project-row,.task-row,.inquiry-mini{padding:20px}.project-icon{display:none}.panel-header{padding:20px}.invoice-document{padding:35px}}
@media(max-width:1000px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.line-form{grid-template-columns:1fr 1fr}.line-form .field:first-child{grid-column:1/-1}.line-form .button{grid-column:1/-1}.invoice-bottom{gap:25px}.invoice-totals{min-width:240px}.project-icon{display:flex}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);width:244px;transition:transform .2s}.nav-open .sidebar{transform:translateX(0)}.nav-open .workspace-body{position:relative}.workspace-body{margin-left:0}.menu-button{display:inline-block}.workspace-topbar{padding:14px 18px;min-height:64px;position:relative;z-index:31}.workspace-topbar>div{display:flex;align-items:center}.topbar-date{display:none}.office-main{padding:25px 18px}.demo-banner{padding:8px 18px;gap:10px}.demo-banner span{font-size:.75rem}.page-heading{margin-bottom:24px}.page-heading h1{font-size:1.8rem}.page-heading .actions{flex-wrap:wrap}.stats-grid,.stats-grid.three,.stats-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stats-grid.three .stat-card:last-child{grid-column:1/-1}.stat-card{padding:18px 16px}.stat-card>strong{font-size:1.65rem}.stat-card>span{font-size:.75rem}.stat-card>small,.stat-card>a{font-size:.75rem}.office-footer{margin:0 18px}.filter-bar{flex-wrap:wrap;padding:18px}.filter-bar input{max-width:none}.filter-bar select{flex:1}.panel-header{padding:18px}.project-row{padding:20px 18px;gap:11px}.project-row .row-end{max-width:110px}.project-row strong{font-size:.875rem}.project-icon{width:34px;height:34px}.table-scroll td,.table-scroll th{padding-left:16px;padding-right:16px}.form-panel{padding:24px 20px}.timer-banner{align-items:flex-start;padding:14px}.timer-banner>div{flex-wrap:wrap;gap:8px}.timer-banner>div>span:last-child{width:100%;font-size:.75rem}.timer-banner .button{white-space:nowrap;padding:8px 10px;font-size:.75rem}.invoice-document{padding:25px 20px}.invoice-top{gap:20px}.invoice-top h2{font-size:1.1rem}.invoice-heading dl{grid-template-columns:1fr;font-size:.875rem;gap:4px}.invoice-heading dd{margin-bottom:10px}.invoice-bottom{flex-direction:column}.invoice-notes{max-width:none}.invoice-totals{align-self:flex-end;width:100%;max-width:340px}.share-row{flex-wrap:wrap}.share-row input{width:100%}.connection-card{flex-wrap:wrap;padding:20px}.connection-card>div{flex:1;min-width:160px}.connection-card .badge{margin-left:58px}.payment-main{padding:25px 16px}.payment-header{flex-wrap:wrap}.payment-status{align-items:flex-start;flex-direction:column}.inquiry-detail summary{flex-direction:column;gap:6px}}
@media print{body{background:white!important;color:#000}.sidebar,.workspace-topbar,.demo-banner,.office-footer,.timer-banner,.messages,.no-print,.skip-link{display:none!important}.workspace-body{margin:0;display:block}.office-main,.payment-main{padding:0;max-width:none}.invoice-document{border:0;padding:0;margin:0;border-radius:0;max-width:none}.invoice-document .table-scroll{overflow:visible}table{font-size:10pt}thead{display:table-header-group}tr{break-inside:avoid}.invoice-document .brand-symbol{print-color-adjust:exact;-webkit-print-color-adjust:exact}.invoice-bottom{break-inside:avoid}.invoice-footer{break-inside:avoid}.invoice-lines td,.invoice-lines th{padding:12px 8px}@page{margin:18mm;size:letter}}

.badge,.task-date{font-size:.875rem}th{font-size:.875rem}table{font-size:.875rem}.services-grid p,.steps p{font-size:1rem}@media(min-width:651px) and (max-width:800px){.hero-inner{grid-template-columns:1fr;gap:40px}.hero-description{max-width:550px}.hero-aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.hero-aside>.eyebrow,.coast-note{grid-column:1/-1}.service-rail{gap:18px;margin:0;padding:22px 0}.hero h1{font-size:3.75rem}}

/* Public service details: networks, AV, signage, and practical AI adoption. */
.public-header nav{gap:26px}
.public-section[id],.ai-section[id]{scroll-margin-top:24px}
.services-expanded{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 36px}
.service-link{display:inline-block;margin-top:18px;color:var(--link);font-size:.9rem;font-weight:650}
.network-section{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:70px;border-top:1px solid var(--line)}
.feature-copy h2{font-size:clamp(2rem,3vw,2.7rem);font-weight:550;line-height:1.15;margin-bottom:24px}
.feature-copy>p:not(.eyebrow){color:var(--muted);font-size:1.05rem;max-width:520px}
.feature-list{padding:0;margin:28px 0 32px;list-style:none;display:grid;gap:19px}
.feature-list li{padding-left:20px;position:relative;color:var(--muted);font-size:.95rem;line-height:1.65}
.feature-list li:before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;background:var(--link);border-radius:50%}
.feature-list strong{color:var(--ink);font-weight:650}
.network-example{padding:34px;background:var(--navy);color:white;border-radius:16px}
.network-example>.eyebrow{color:#bad6e8;font-size:.7rem;line-height:1.8;margin-bottom:25px}
.network-gateway{display:flex;align-items:center;gap:16px;padding-bottom:28px;border-bottom:1px solid #42657e}
.gateway-symbol{display:grid;place-items:center;background:#164965;border:1px solid #426e8b;border-radius:10px;width:50px;height:50px;font-size:1.6rem;flex-shrink:0;color:var(--ocean)}
.network-gateway strong{display:block;font-size:1.1rem;font-weight:550}
.network-gateway div>span{display:block;color:#bfd7e8;font-size:.8rem;margin-top:6px}
.network-branches{display:grid;gap:15px;margin-top:26px}
.network-lane{position:relative;display:grid;grid-template-columns:10px minmax(0,1fr);gap:6px 14px;background:#123e5d;padding:21px 20px;border-radius:9px;border:1px solid #345e7b}
.lane-dot{width:8px;height:8px;background:#a6d6b7;border-radius:50%;margin-top:6px}
.guest .lane-dot{background:var(--ocean)}
.devices .lane-dot{background:#96c1e0}
.network-lane h3{font-size:1rem;letter-spacing:-.015em;font-weight:600}
.network-lane p{font-size:.875rem;color:#d0e1ee;line-height:1.6;margin-top:8px}
.lane-label{grid-column:2;font-size:.7rem;letter-spacing:.05em;color:#bad6e8;margin-top:5px;text-transform:uppercase;font-weight:600}
.network-caption{font-size:.8rem!important;line-height:1.65;color:#b8d0e1;margin-top:24px!important}
.ai-section{background:#eff7fc;border-top:1px solid #dceaf4;border-bottom:1px solid #dceaf4}
.ai-use-cases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:48px}
.ai-use-cases article{border-top:2px solid #86bbdc;padding-top:22px}
.use-case-number{font-size:.7rem;font-weight:650;letter-spacing:.1em;color:var(--link)}
.ai-use-cases h3{font-size:1.35rem;font-weight:550;line-height:1.25;letter-spacing:-.025em;margin-top:17px;max-width:300px}
.ai-use-cases p{color:#5c7080;font-size:1rem;line-height:1.7;margin-top:16px}
.ai-plan{display:grid;grid-template-columns:1fr 1.3fr;gap:55px;padding:40px;margin-top:48px;background:white;border:1px solid #d9e6ee;border-radius:12px}
.ai-plan h3{font-size:1.6rem;line-height:1.35;font-weight:550;letter-spacing:-.03em;margin-bottom:28px}
.ai-plan .eyebrow{font-size:.7rem;margin-bottom:16px}
.ai-plan-steps{margin:0;padding-left:23px;display:grid;gap:23px}
.ai-plan-steps li{padding-left:10px;color:var(--link);font-size:.95rem;font-weight:650}
.ai-plan-steps strong{display:block;color:var(--ink);font-size:1rem}
.ai-plan-steps span{display:block;font-weight:400;color:var(--muted);margin-top:7px;line-height:1.6}
.ai-review-note{font-size:.9rem;color:#5c7080;margin:24px 0 0!important;max-width:790px}
.approach-intro{margin-top:25px;max-width:420px;color:var(--muted);font-size:1rem;line-height:1.7}
@media(max-width:1000px){.network-section{gap:35px}.network-example{padding:25px}.ai-plan{gap:30px;padding:30px}.public-header nav{gap:18px}.public-header nav>a:not(.button){font-size:.8rem}}
@media(max-width:800px){.network-section{grid-template-columns:1fr}.network-example{max-width:600px;width:100%;margin:0 auto}.services-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-plan{grid-template-columns:1fr;gap:30px}.public-header nav>a:not(.button){display:none}.ai-use-cases{gap:22px}.ai-use-cases h3{font-size:1.2rem}}
@media(max-width:600px){.ai-use-cases{grid-template-columns:1fr;gap:28px;margin-top:32px}.ai-use-cases h3{max-width:none}.ai-use-cases p{margin-top:12px}.ai-plan{padding:25px 22px;margin-top:32px}.ai-plan h3{font-size:1.4rem}.network-section{gap:32px}.network-example{padding:25px 20px}.network-lane{padding:18px 16px}.feature-copy .button,.ai-plan .button{white-space:normal;gap:16px;text-align:left}.hero h1{font-size:clamp(2.7rem,8.5vw,3.5rem)}}
@media(max-width:420px){.services-expanded{grid-template-columns:1fr;gap:28px}.services-expanded .icon-tile{margin-bottom:17px}.services-expanded h3{font-size:1.15rem}}

/* Connected Coast identity and AV / signage service illustration. */
.sidebar .brand-sub{font-size:.6rem;letter-spacing:.11em}
.stat-card.accent{background:#eaf5fd;border-color:#cbe3f3}
.stat-card.accent>strong{color:#086b9a}
.project-icon{background:#e7f1f8}
.av-section{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:70px;border-top:1px solid var(--line)}
.signage-example{padding:34px;border-radius:16px;background:#eaf4fb;border:1px solid #d4e6f3}
.signage-example>.eyebrow{font-size:.7rem;line-height:1.8}
.menu-display{padding:10px;background:#102d43;border-radius:12px;box-shadow:0 16px 30px #092f4d18}
.menu-screen{position:relative;isolation:isolate;overflow:hidden;min-height:280px;padding:28px 24px;color:white;background:var(--navy)}
.menu-kicker{font-size:.6rem;font-weight:600;letter-spacing:.15em;color:#acd2ec}
.menu-screen h3{font-size:clamp(1.8rem,2.8vw,2.4rem);font-weight:550;line-height:1.1;margin:24px 0}
.menu-items{display:grid;gap:7px;font-size:.85rem;color:#cde6f7}
.menu-wave{position:absolute;right:-70px;bottom:-145px;width:260px;height:320px;border:45px solid #169eec;border-radius:48%;transform:rotate(35deg);z-index:-1}
.signage-workflow{display:grid;gap:14px;margin:32px 0 24px;font-size:.9rem}
.signage-workflow span{display:flex;align-items:center;gap:15px}
.signage-workflow strong{font-size:.7rem;font-weight:650;color:var(--link);border:1px solid #b7d5e8;border-radius:6px;padding:5px 7px}
.signage-caption{font-size:.875rem;color:var(--muted);line-height:1.7}
@media(max-width:1100px){.services-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}.av-section{gap:35px}.signage-example{padding:25px}}
@media(max-width:800px){.av-section{grid-template-columns:1fr}.signage-example{max-width:600px;width:100%;margin:0 auto}}
@media(max-width:600px){.av-section{gap:32px}.menu-screen{min-height:280px}.signage-example{padding:25px 20px}}
@media(max-width:420px){.services-expanded{grid-template-columns:1fr}.public-header .brand{gap:8px;font-size:1.3rem}.public-header .brand-symbol{width:40px;height:40px}.public-header .brand-sub{font-size:.6rem}.public-header .button{gap:10px;padding:9px 12px}}

/* Restaurant consulting connects the existing network and signage services. */
.restaurant-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:70px;align-items:start;border-top:1px solid var(--line)}
.restaurant-intro{margin:22px 0 28px!important}
.restaurant-related{font-size:.9rem!important;margin-top:24px!important;line-height:1.7;max-width:400px!important}
.restaurant-related a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.restaurant-services{background:#eff7fc;border:1px solid #dceaf4;border-radius:16px;padding:10px 32px}
.restaurant-services article{padding:25px 0;border-bottom:1px solid #d6e6f1}
.restaurant-services article:last-child{border-bottom:0}
.restaurant-services h3{font-size:1.25rem;font-weight:550;margin:12px 0}
.restaurant-services p{font-size:.95rem;line-height:1.7;color:var(--muted)}
.restaurant-section .button{white-space:normal;text-align:left}
@media(max-width:1100px){.restaurant-section{gap:35px}}
@media(max-width:900px){.public-header nav>a:not(.button){display:none}}
@media(max-width:800px){.restaurant-section{grid-template-columns:1fr}.restaurant-services{max-width:600px;width:100%;margin:0 auto}}
@media(max-width:600px){.restaurant-services{padding:4px 22px}.restaurant-section{gap:32px}}

.service-hero{background:var(--navy);color:white}
.service-hero .public-section{padding-top:30px;padding-bottom:65px}
.public-breadcrumb{display:flex;gap:12px;font-size:.8rem;color:#c4d8e7;margin-bottom:48px;flex-wrap:wrap}
.service-hero h1{font-size:clamp(2.25rem,4.8vw,4.2rem);font-weight:550;line-height:1.08;max-width:940px}
.service-hero-description{max-width:720px;color:#c4d8e7;font-size:1.1rem;line-height:1.7;margin:28px 0 32px}
.restaurant-topics p+p{margin-top:16px}
.service-rollout{padding:0 0 0 24px;margin:0;display:grid;gap:28px}
.service-rollout li{padding-left:10px;color:var(--link);font-weight:650}
.service-rollout h3{color:var(--ink)}
.service-rollout p{color:var(--muted);font-size:.95rem;line-height:1.7;margin-top:10px;font-weight:400}
.service-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-faq{border-top:1px solid var(--line)}
.service-faq h2,.service-cta h2{font-size:clamp(2rem,3vw,2.7rem);font-weight:550;margin-bottom:30px}
.service-faq details{border-top:1px solid var(--line);padding:20px 0;max-width:900px}
.service-faq summary{cursor:pointer;font-size:1.1rem;font-weight:600;line-height:1.5}
.service-faq details p{margin-top:14px;color:var(--muted);max-width:780px;line-height:1.7}
.service-cta{background:var(--canvas);border-radius:16px;margin-bottom:60px}
.service-cta>p:not(.eyebrow){color:var(--muted);margin-bottom:25px}
.service-cta .email-link{display:block;margin-bottom:0}
.service-hero .button,.service-cta .button{white-space:normal;text-align:left}
@media(max-width:800px){.service-related-grid{grid-template-columns:1fr}.service-hero h1 br{display:none}.public-footer{gap:20px;flex-wrap:wrap}}
@media(max-width:600px){.public-breadcrumb{margin-bottom:35px}.service-hero-description{font-size:1rem}.service-cta{border-radius:0;margin-bottom:0}}

/* Enterprise managed IT and identity services. */
.public-header nav{gap:20px}
.public-footer{gap:20px;flex-wrap:wrap}
.managed-callout{display:grid;grid-template-columns:1fr 1.2fr;gap:45px;padding:38px;margin-top:55px;background:#eff7fc;border:1px solid #dceaf4;border-radius:16px;scroll-margin-top:24px}
.managed-callout h3{font-size:clamp(1.8rem,2.7vw,2.3rem);font-weight:550;line-height:1.2}
.managed-callout>div>p:not(.eyebrow){color:var(--muted);line-height:1.7}
.managed-callout .button{margin-top:24px;white-space:normal;text-align:left}
.managed-callout-note{font-size:.875rem;margin-top:20px!important}
.enterprise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 32px;margin-top:48px}
.enterprise-grid article{border-top:2px solid #86bbdc;padding-top:22px}
.enterprise-grid h3{font-size:1.3rem;font-weight:550;line-height:1.25;margin:16px 0}
.enterprise-grid p{color:var(--muted);font-size:1rem;line-height:1.7}
.identity-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:65px;border-top:1px solid var(--line)}
.identity-lifecycle{list-style:none;margin:0;padding:10px 30px;background:#eff7fc;border:1px solid #dceaf4;border-radius:16px}
.identity-lifecycle li{padding:24px 0;border-bottom:1px solid #d6e6f1}
.identity-lifecycle li:last-child{border-bottom:0}
.identity-lifecycle h3{font-size:1.2rem;font-weight:550;margin:12px 0}
.identity-lifecycle p{color:var(--muted);font-size:.95rem;line-height:1.7}
@media(max-width:1100px){.public-header nav{gap:15px}.public-header nav>a:not(.button){font-size:.8rem}.enterprise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.identity-section{gap:35px}}
@media(max-width:1000px){.public-header nav>a:not(.button){display:none}}
@media(max-width:800px){.managed-callout,.identity-section{grid-template-columns:1fr;gap:30px}.managed-callout{padding:30px}}
@media(max-width:600px){.enterprise-grid{grid-template-columns:1fr;gap:28px}.managed-callout{padding:26px 22px;margin-top:35px}.identity-lifecycle{padding:5px 22px}}

/* Concise homepage and shared public navigation. */
.home-container{width:100%;max-width:1280px;margin:0 auto;padding-left:48px;padding-right:48px}
.public-header{max-width:1280px;padding:24px 48px;position:relative;z-index:40}
.public-header nav{gap:28px}
.services-menu{position:relative}
.services-menu summary{display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;font-size:.875rem;font-weight:600;padding:12px 0}
.services-menu summary::-webkit-details-marker{display:none}
.menu-chevron{font-size:1rem;line-height:1;transition:transform .15s}
.services-menu[open] .menu-chevron{transform:rotate(180deg)}
.menu-mobile-label{display:none}
.services-menu-panel{position:absolute;top:calc(100% + 16px);right:0;width:520px;max-width:calc(100vw - 40px);padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:4px;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 40px #07263e1a}
.public-header nav .services-menu-panel a{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:46px;padding:12px;border-radius:6px;font-size:.875rem;line-height:1.4;color:var(--ink)}
.services-menu-panel a:hover{background:#eff7fc;text-decoration:none}
.services-menu-panel a>span{color:var(--link)}
.public-header .services-menu-panel .menu-utility{border-top:1px solid var(--line);border-radius:0;margin-top:6px;color:var(--muted);font-size:.8rem}
.public-home main [id]{scroll-margin-top:24px}
.home-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--navy);color:white}
.home-hero:after{content:"";position:absolute;z-index:-1;width:640px;height:640px;border:80px solid #35aee713;border-radius:50%;right:-190px;top:-180px;pointer-events:none}
.home-hero .home-container{padding-top:72px;padding-bottom:78px}
.home-hero .eyebrow{font-size:.7rem;letter-spacing:.17em;margin-bottom:25px}
.home-hero h1{font-size:clamp(3.15rem,6.2vw,5.4rem);font-weight:550;letter-spacing:-.055em;line-height:1.04;max-width:900px}
.home-hero h1 em{font-style:normal;color:var(--ocean)}
.home-hero-copy{max-width:650px;font-size:1.08rem;line-height:1.75;color:#c4d8e7;margin:26px 0 30px}
.home-hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.home-text-link{display:inline-flex;align-items:center;gap:14px;font-size:.9rem;font-weight:550}
.home-services{padding-top:76px;padding-bottom:80px}
.home-section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:36px}
.home-section-heading h2,.home-contact h2{font-size:clamp(2rem,3.2vw,2.8rem);font-weight:550;line-height:1.16;letter-spacing:-.04em}
.home-section-heading .eyebrow{font-size:.7rem;margin-bottom:17px}
.home-section-heading>p{color:var(--muted);font-size:1rem;line-height:1.6;padding-bottom:3px}
.home-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-service-card{display:flex;flex-direction:column;min-width:0;padding:27px 26px 24px;border:1px solid var(--line);border-radius:10px;background:white;transition:border-color .15s,background .15s}
.home-service-card:hover{border-color:#87bddb;background:#f5faff;text-decoration:none}
.home-card-number{font-size:.65rem;letter-spacing:.13em;color:var(--link);font-weight:650;margin-bottom:24px}
.home-service-card h3{font-size:1.22rem;font-weight:600;letter-spacing:-.025em;margin-bottom:14px}
.home-service-card p{font-size:.95rem;line-height:1.65;color:var(--muted);margin-bottom:24px}
.home-card-link{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:auto;font-size:.85rem;font-weight:650;color:var(--link)}
.home-approach{padding:65px 0;background:#f1f6fa;border-top:1px solid #e4edf3;border-bottom:1px solid #e4edf3}
.home-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;list-style:none;margin:40px 0 0;padding:0}
.home-steps li>span{font-size:.75rem;color:var(--link);font-weight:650;display:block;margin-bottom:17px}
.home-steps h3{font-size:1.15rem;font-weight:600;margin-bottom:12px}
.home-steps p{font-size:.95rem;line-height:1.7;color:var(--muted);max-width:310px}
.home-service-area{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-top:34px;padding-bottom:34px;border-bottom:1px solid var(--line);align-items:center}
.home-service-area .eyebrow{font-size:.7rem;margin:0}
.home-service-area>p:last-child{font-size:.95rem;line-height:1.65;color:var(--muted);margin:0;max-width:720px}
.home-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:85px;padding-top:75px;padding-bottom:85px;align-items:start}
.home-contact-copy{padding-top:8px}
.home-contact-copy>p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.7;margin-top:23px;max-width:350px}
.home-contact-copy .email-link{font-size:.95rem;margin-top:24px}
.home-contact .contact-card{background:#f6f8fb;border-color:#e1e8ef;padding:28px;border-radius:10px}
.site-footer{border-top:1px solid var(--line);background:white;padding:30px 0 25px;color:var(--muted)}
.site-footer nav{display:flex;flex-wrap:wrap;gap:14px 28px;font-size:.8rem;padding-bottom:24px}
.site-footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:.75rem;border-top:1px solid #eef2f5;padding-top:20px}
@media(max-width:1000px){.home-container{padding-left:36px;padding-right:36px}.public-header{padding:22px 36px}.home-contact{gap:40px}.home-service-card{padding:24px 20px}.home-service-card h3{font-size:1.1rem}}
@media(max-width:800px){.home-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-section-heading>p{max-width:230px}.home-contact{grid-template-columns:1fr;gap:28px}.home-contact-copy>p:not(.eyebrow){max-width:500px}.home-steps{gap:25px}}
@media(max-width:600px){.home-container{padding-left:24px;padding-right:24px}.public-header{padding:20px 24px}.public-header nav{gap:20px}.home-hero .home-container{padding-top:48px;padding-bottom:52px}.home-hero h1{font-size:clamp(2.75rem,11vw,3.7rem)}.home-hero-copy{font-size:1rem;line-height:1.7}.home-hero-actions{gap:22px}.home-hero:after{right:-430px;top:-180px}.home-services{padding-top:50px;padding-bottom:50px}.home-section-heading{display:block;margin-bottom:26px}.home-section-heading>p{max-width:none;margin-top:20px}.home-service-grid{grid-template-columns:1fr;gap:13px}.home-service-card{padding:24px}.home-card-number{margin-bottom:18px}.home-service-card h3{font-size:1.2rem}.home-service-card p{margin-bottom:20px}.home-approach{padding:48px 0}.home-steps{grid-template-columns:1fr;gap:26px;margin-top:28px}.home-steps li{display:grid;grid-template-columns:26px minmax(0,1fr);column-gap:16px}.home-steps li>span{grid-row:1/3;padding-top:3px}.home-steps p{max-width:none}.home-service-area{grid-template-columns:1fr;gap:12px;padding-top:26px;padding-bottom:26px}.home-contact{padding-top:48px;padding-bottom:50px}.home-contact .contact-card{padding:24px 20px}.site-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px}.site-footer-bottom{flex-direction:column;gap:12px}.services-menu-panel{grid-template-columns:1fr;width:340px;top:calc(100% + 10px)}.public-header .services-menu-panel .menu-utility{margin-top:0}}
@media(max-width:520px){.public-header .header-contact{display:none}.menu-desktop-label{display:none}.menu-mobile-label{display:inline}.services-menu summary{border:1px solid var(--line);border-radius:6px;padding:10px 14px}.home-hero-actions .button{gap:18px;white-space:normal}.home-section-heading h2,.home-contact h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){.home-service-card,.menu-chevron{transition:none}}

/* Customer support portal */
.captcha-field{margin:22px 0;max-width:100%}altcha-widget{display:block;max-width:100%}.portal-header{background:#fff;border-bottom:1px solid var(--line);padding:22px max(24px,calc((100vw - 1240px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px}.portal-header nav{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:600}.portal-header form{margin:0}.customer-portal{background:#f5f8fa}.portal-main{max-width:1288px;margin:auto;padding:32px 24px 60px}.portal-organization{display:flex;gap:16px;font-size:13px;font-weight:700;margin:0 0 24px}.portal-organization span{font-weight:400;color:#56697a}.portal-footer{max-width:1288px;margin:auto;padding:24px;color:#56697a;font-size:13px;border-top:1px solid #dce4e9}.portal-footer>a{float:right}.portal-footer p{margin-top:16px;max-width:740px}.support-welcome{display:flex;justify-content:space-between;align-items:center;gap:30px;background:#0b3047;border-radius:18px;padding:40px;color:#fff}.support-welcome h1{font-size:clamp(30px,4vw,44px);letter-spacing:-1.5px;color:#fff;margin:8px 0 12px}.support-welcome p{color:#bdd3df;margin-bottom:0}.support-welcome .eyebrow{color:#83d3f6}.support-welcome .button{white-space:nowrap}.support-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:26px 0}.support-metrics>div{border:1px solid #dce4e9;padding:22px 24px;border-radius:12px;background:#fff}.support-metrics span{font-size:13px;color:#617482;display:block}.support-metrics strong{font-size:32px;display:block;margin-top:12px;line-height:1}.request-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:26px 0 34px}.request-options>a{padding:25px;background:#fff;border:1px solid #dce4e9;border-radius:12px;position:relative;color:#133549}.request-options>a:hover{border-color:#1d91c5}.request-options span{font-size:10px;letter-spacing:1.7px;font-weight:700;color:#177294}.request-options h2{font-size:18px;margin:18px 0 8px}.request-options p{font-size:14px;color:#617482;margin:0 20px 0 0}.request-options b{position:absolute;bottom:24px;right:22px;color:#177294}.support-filters{display:flex;align-items:flex-end;gap:14px;padding:20px;border-bottom:1px solid #dce4e9;flex-wrap:wrap}.support-filters label{font-size:12px;flex:1;min-width:150px}.support-filters input,.support-filters select{margin-top:7px;min-height:42px}.ticket-title{display:grid;gap:7px;min-width:180px}.ticket-title small{color:#647584;font-size:11px}.ticket-title strong{color:#12344a;font-size:14px;font-weight:600}.table-sub{display:block;font-size:11px;color:#56697a;margin-top:6px}.priority{font-weight:700;font-size:12px;white-space:nowrap;color:#27617a}.priority-1{color:#ad3528}.priority-2{color:#8b5c12}.priority-4{color:#647584}.overdue-text{display:block;font-size:11px;color:#ad3528;margin-top:6px}.ticket-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px}.ticket-layout>div,.ticket-layout>aside{min-width:0}.ticket-meta{display:flex;flex-wrap:wrap;gap:15px;font-size:12px;color:#647584;margin-bottom:24px}.support-prose{overflow-wrap:anywhere;line-height:1.7}.ticket-timeline{padding:0 24px}.ticket-update{border-bottom:1px solid #e1e8ec;padding:22px 0}.ticket-update header{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:12px}.ticket-update header span,.ticket-update header small{color:#647584}.ticket-update header b{font-size:10px;background:#fff1c7;color:#715400;padding:4px 8px;border-radius:4px}.ticket-update p{margin:12px 0 0}.internal-update{background:#fffaf0;padding:20px 16px;margin:12px -8px;border:1px solid #eadfbd;border-radius:8px}.incident-stage,.resolution-box{background:#f0f7fa;padding:20px;border-radius:10px;margin-top:24px}.incident-stage>span{font-size:10px;letter-spacing:1.7px;display:block;color:#30718c}.incident-stage>strong{display:block;margin:8px 0;font-size:22px}.incident-stage p{color:#4f6878;font-size:12px;margin:0}.ticket-layout form p{margin:18px 0}.ticket-layout form p>label,.support-form form p>label,.login-card form p>label{display:block;margin-bottom:8px;font-size:13px;font-weight:600}.ticket-layout input[type=checkbox]{width:auto}.support-form{max-width:820px}.support-form .helptext{font-size:12px;color:#647584;display:block;margin-top:6px}.support-form textarea{min-height:120px}.support-form form .actions{margin-top:24px}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.knowledge-item summary{padding:24px;cursor:pointer;font-weight:700}.knowledge-item .padded{padding-top:0}.access-member{padding:18px 0;border-bottom:1px solid #e1e8ec;overflow-wrap:anywhere}.access-member:last-child{border-bottom:0}.access-member p{font-size:13px;color:#647584}.invite-result{border-color:#2498c5;background:#f0faff}.portal-login-help{border-top:1px solid #dde7ed;margin-top:28px;padding-top:24px;font-size:13px}.portal-login-help p{line-height:1.6}.badge.in_progress{background:#e0f3fd;color:#146181}.badge.waiting_customer,.badge.waiting_vendor{background:#fff4d7;color:#836521}.badge.resolved,.badge.closed{background:#e4f3ea;color:#346a4a}.ticket-layout h1,.page-heading h1{overflow-wrap:anywhere}
@media(max-width:1050px){.ticket-layout{grid-template-columns:minmax(0,1fr) 290px}.portal-header{flex-wrap:wrap}.portal-header nav{gap:18px}.support-welcome{padding:30px}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.portal-header{padding:20px}.portal-header nav{width:100%;justify-content:space-between;gap:8px;font-size:12px}.portal-header .button{padding:8px 12px}.portal-main{padding:24px 16px 40px}.portal-organization{display:block;line-height:1.7}.portal-organization span{display:block}.support-welcome{display:block;padding:28px 24px}.support-welcome .button{margin-top:24px}.support-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.support-metrics>div{padding:20px 16px}.support-metrics strong{font-size:28px}.request-options,.resource-grid{grid-template-columns:1fr}.request-options{gap:12px}.request-options>a{padding:22px}.request-options h2{margin:12px 0 8px}.ticket-layout{grid-template-columns:1fr}.support-filters label{min-width:120px}.support-filters{padding:16px}.ticket-timeline{padding:0 18px}.ticket-update header span{font-size:11px}.portal-footer>a{float:none;display:block;margin-top:10px}}
/* Connected Coast illustrations: locally hosted and lightweight. */
.home-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:30px}.home-hero-content{min-width:0}.home-hero .home-hero-copy{max-width:620px}.home-network-graphic{display:block;width:100%;height:auto;max-width:540px;margin:auto}.home-hero-grid .home-hero-actions{gap:22px}.home-service-card{position:relative}.home-service-icon{width:38px;height:38px;color:#1789b5;display:block;margin-bottom:24px}.home-card-number{padding-right:4px}@media(min-width:1100px){.home-hero-grid h1{font-size:clamp(54px,5.2vw,76px)}}@media(max-width:900px){.home-hero-grid{grid-template-columns:1fr}.home-network-graphic{max-width:390px;margin:10px auto -25px}.home-hero-grid .home-hero-copy{max-width:650px}}@media(max-width:520px){.home-network-graphic{max-width:290px;margin:5px auto -20px}.home-service-icon{width:32px;height:32px;margin-bottom:18px}}
.google-signin-form{margin-top:24px}.google-signin-button{width:100%;justify-content:center}.google-signin-hint{font-size:12px;line-height:1.6;color:var(--muted);margin:12px 0 20px}.login-divider{display:flex;align-items:center;gap:14px;margin:22px 0;color:var(--muted);font-size:12px}.login-divider:before,.login-divider:after{content:"";height:1px;flex:1;background:var(--line)}.account-security-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr);gap:24px}.account-security-grid h2{margin-bottom:16px}.account-security-grid p{line-height:1.65;margin:14px 0 20px}.account-connected{overflow-wrap:anywhere}.account-connected .badge{margin-right:10px}.account-help{font-size:13px;color:var(--muted)}@media(max-width:760px){.account-security-grid{grid-template-columns:1fr}}
.phone-link{margin-top:0!important}.email-link+.phone-link{display:block}
/* Client profile: contacts, managed services, renewals */
.contact-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 24px;border-bottom:1px solid #eef2f2}
.contact-main{display:flex;gap:12px;align-items:flex-start;min-width:0}.contact-main small{display:block;margin-top:4px;font-size:.8rem;color:var(--muted);overflow-wrap:anywhere}
.escalation-step{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:#fae8e1;color:#a04b2e;font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center}
.row-actions{display:flex;gap:12px;align-items:center;font-size:.8rem;flex-shrink:0}.row-actions form{margin:0}
.link-button{background:none;border:0;padding:0;color:#a33737;font-size:.8rem;font-weight:600}.link-button:hover{text-decoration:underline}
.nowrap{white-space:nowrap}.renewal-soon{color:#836521;font-weight:600}.renewal-past{color:#ad3528;font-weight:600}
.badge.coverage-managed{background:#e0f3fd;color:#146181}.badge.coverage-co_managed{background:#e8eefc;color:#34508f}
.badge.coverage-monitored{background:#fff4d7;color:#836521}.badge.coverage-documented{background:#edf1f3;color:#546970}
.badge.coverage-proposed{background:#f1e9fb;color:#6a3f98}
.internal-panel{border-style:dashed}
.archived-services summary{cursor:pointer;list-style:none}.archived-services summary::-webkit-details-marker{display:none}
.service-card .badge{margin:0 0 10px}

/* Network services */
.network-site{margin-bottom:40px}.network-site>h2{margin:10px 0 6px}.network-site>h2 small{font-size:.9rem;font-weight:500}
.network-subhead{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:22px 0 12px}
.wifi-card{display:flex;flex-direction:column;gap:6px}.wifi-card p{margin:0}.wifi-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.wifi-card-head h3{overflow-wrap:anywhere}
.status-dot{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;white-space:nowrap}.status-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:#9aa9b3}
.status-dot.on:before,.status-dot.online:before{background:#2f9e6b}.status-dot.off:before,.status-dot.offline:before{background:#c2472f}
.guest-pass{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:var(--canvas);border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin-top:4px}.guest-pass span{font-size:.75rem;color:var(--muted);width:100%}.guest-pass code{font-size:.95rem;overflow-wrap:anywhere}.guest-pass .link-button{color:var(--link);margin-left:auto}
.pending-note{color:#836521;font-size:.8rem;font-weight:600}
.wifi-actions{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.85rem;font-weight:600;color:var(--link);margin-top:8px;padding-top:10px;border-top:1px solid #eef2f2}
.small-note{font-size:.8rem}
.network-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}@media(max-width:800px){.network-columns{grid-template-columns:1fr}}
.lease-price{font-size:1.6rem;font-weight:650;letter-spacing:-.02em;margin:6px 0}.lease-price span{font-size:.85rem;font-weight:500;color:var(--muted)}
.badge.request-pending{background:#fff4d7;color:#836521}.badge.request-applied{background:#e7f1eb;color:#38745c}.badge.request-rejected{background:#fae8e1;color:#a04b2e}.badge.request-cancelled{background:#eee;color:#666}
.secret-box{margin-top:20px;border:1px dashed #c9a94d;background:#fffbef;border-radius:10px;padding:16px}.secret-box code{font-size:1.1rem;overflow-wrap:anywhere}
.apply-steps{padding-left:20px;color:var(--muted);font-size:.9rem;margin:10px 0 18px}.apply-steps li{margin-bottom:6px}
.day-picker{border:0;padding:0;margin:0}.day-picker legend{font-size:.875rem;font-weight:600;margin-bottom:7px}.day-picker div{display:flex;flex-wrap:wrap;gap:6px 14px}.day-picker label{display:inline-flex;gap:6px;align-items:center;font-weight:500}
.form-intro{color:var(--muted);margin-bottom:18px}
.panel-links{font-size:.8rem;font-weight:600;color:var(--link)}
.log-filter{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.log-filter select,.log-filter input{min-height:36px;padding:6px 10px;font-size:.85rem;width:auto}
.log-table td{font-size:.85rem;vertical-align:top}.log-level{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:2px 6px;margin-right:6px;background:#edf1f3;color:#546970}
.log-level.warning{background:#fff4d7;color:#836521}.log-level.critical{background:#fae8e1;color:#a04b2e}
.insert-log{display:block;margin-top:6px;color:var(--link)}
/* Conversational ticket view */
.chat-panel .panel-header .muted{font-size:.75rem}
.chat-thread{display:flex;flex-direction:column;gap:14px;padding:22px 24px;max-height:640px;overflow-y:auto;background:#f7fafc;scroll-behavior:smooth}
.chat-msg{display:flex;gap:10px;align-items:flex-end;max-width:82%}.chat-msg.mine{align-self:flex-end;flex-direction:row-reverse}
.chat-avatar{flex-shrink:0;width:30px;height:30px;border-radius:50%;background:#dfe9f0;color:var(--navy);font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center}.chat-msg.mine .chat-avatar{background:var(--navy);color:#fff}
.chat-body{min-width:0;display:flex;flex-direction:column}.chat-msg.mine .chat-body{align-items:flex-end}
.chat-bubble{background:#fff;border:1px solid var(--line);border-radius:16px 16px 16px 4px;padding:11px 14px;font-size:.93rem;line-height:1.5;overflow-wrap:anywhere;box-shadow:0 1px 2px #092f4d0a}
.chat-msg.mine .chat-bubble{background:var(--navy);border-color:var(--navy);color:#fff;border-radius:16px 16px 4px 16px}
.chat-msg.internal .chat-bubble{background:#fff8e3;border:1px dashed #d8b85a;color:var(--ink)}
.chat-bubble-title{display:block;margin-bottom:4px}
.chat-private{display:block;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#836521;margin-bottom:4px}
.chat-meta{font-size:.72rem;color:var(--muted);margin-top:5px;padding:0 4px}
.chat-event{align-self:center;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;justify-content:center;text-align:center;max-width:90%;font-size:.75rem;color:var(--muted);background:#eef3f7;border-radius:999px;padding:5px 12px}.chat-event time{opacity:.8}.chat-event.internal{background:#fbf3dc}
.chat-composer{border-top:1px solid var(--line);padding:16px 20px;background:#fff}
.chat-composer textarea{border-radius:12px;min-height:84px;resize:vertical}
.composer-actions{display:flex;align-items:center;gap:14px;margin-top:10px;flex-wrap:wrap}.composer-actions .button{margin-left:auto}
.composer-hint{font-size:.75rem;color:var(--muted)}
.internal-toggle{display:inline-flex;align-items:center;gap:7px;font-size:.85rem;font-weight:600;margin:0}
.suggestion-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px}
.suggest-button{border:1px solid #c9dcea;background:#eef7fd;color:var(--link);border-radius:999px;padding:6px 14px;font-size:.82rem;font-weight:650}.suggest-button:hover{background:#dff0fb}.suggest-button:disabled{opacity:.6;cursor:progress}
.suggest-status{font-size:.78rem;color:var(--muted)}.suggest-status.error{color:#a82f34}
.suggestion-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;width:100%}.suggestion-chips:empty{display:none}
.suggestion-chip{text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px;font-size:.82rem;line-height:1.4;color:var(--ink);display:flex;flex-direction:column;gap:4px;transition:border-color .15s,background .15s}.suggestion-chip:hover{border-color:var(--ocean);background:#f5fbff}
.suggestion-chip strong{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--link)}.suggestion-chip span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted)}
@media(max-width:600px){.chat-thread{padding:16px 12px;max-height:none}.chat-msg{max-width:94%}.chat-composer{padding:14px}.composer-hint{display:none}}
.log-list{list-style:none;margin:0;padding:0}.log-item{padding:12px 20px;border-bottom:1px solid #eef2f2;font-size:.83rem}.log-item strong{font-weight:600}.log-item small{display:block;color:var(--muted);margin-top:4px;font-size:.75rem;overflow-wrap:anywhere}.log-item .insert-log{margin-top:6px;font-size:.75rem}
@media(max-width:600px){.hide-sm{display:none}.portal-header nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}}
/* Network setup wizard */
.wizard-steps{list-style:none;display:flex;flex-wrap:wrap;gap:6px 18px;padding:0;margin:0 0 20px;font-size:.82rem;color:var(--muted)}.wizard-steps li{display:flex;align-items:center;gap:7px}.wizard-steps span{width:22px;height:22px;border-radius:50%;background:#e4ebf0;color:#3f5566;display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700}.wizard-steps li.current{color:var(--ink);font-weight:650}.wizard-steps li.current span{background:var(--navy);color:#fff}
.wizard-panel h2{margin-bottom:6px}
.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:18px 0}.choice-grid.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.choice-card{position:relative;display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);border-radius:12px;padding:16px 16px 16px 44px;cursor:pointer;font-weight:400;margin:0;background:#fff}.choice-card input{position:absolute;left:16px;top:18px;width:18px;min-height:0;height:18px}.choice-card strong{font-size:.95rem}.choice-card span{font-size:.83rem;color:var(--muted);line-height:1.45}.choice-card:has(input:checked){border-color:var(--ocean);background:#f3faff;box-shadow:0 0 0 1px var(--ocean)}
.choice-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:16px 0}.choice-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #eef2f2;margin:0;font-weight:500;cursor:pointer}.choice-row:last-child{border-bottom:0}.choice-row input[type=radio]{width:18px;height:18px;min-height:0}.choice-row:has(input:checked){background:#f3faff}
.manual-ids{margin:12px 0}.manual-ids summary{cursor:pointer;font-size:.85rem;font-weight:600;color:var(--link);margin-bottom:12px}
.import-list{border:1px solid var(--line);border-radius:10px;overflow:hidden}.import-row{display:flex;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid #eef2f2;margin:0;font-weight:400;cursor:pointer}.import-row:last-child{border-bottom:0}.import-row input{width:18px;height:18px;flex-shrink:0}.import-row>span:nth-child(2){flex:1;min-width:0}.import-row small{display:block;color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}
.lease-fields{border:1px dashed var(--line);border-radius:10px;padding:16px}
.review-list{display:grid;grid-template-columns:180px 1fr;gap:10px 18px;margin:18px 0}.review-list dt{margin:0;font-size:.8rem}.review-list dd{margin:0}@media(max-width:600px){.review-list{grid-template-columns:1fr}}
/* Accessibility (WCAG 2.2 AA) */
.back-link,.header-secondary,.home-text-link,.service-link,.text-link,.tabs a,.site-footer nav a,.site-footer-bottom a,.panel-header a,.row-actions a,.wifi-actions a,.link-button,.portal-header nav a,.portal-footer a,.menu-utility{display:inline-flex;align-items:center;min-height:24px}
input[type=checkbox],input[type=radio]{min-width:20px;min-height:20px}
.detail-grid>*{min-width:0}dd{overflow-wrap:anywhere}
.empty-state .empty-title{font-size:1.1rem}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media (forced-colors:active){.button,.badge,.status-dot:before,.chat-bubble{forced-color-adjust:auto;border:1px solid CanvasText}}
.skip-link{font-weight:650;border-radius:6px;box-shadow:0 2px 10px #092f4d33}

/* Privacy & accessibility pages */
.legal-page{background:#fff}.legal-content{max-width:780px;margin:0 auto;padding:56px 24px 80px;line-height:1.7}.legal-content h1{font-size:clamp(2rem,4vw,2.8rem);font-weight:600;margin-bottom:10px}.legal-content h2{font-size:1.35rem;margin:38px 0 10px}.legal-content section{scroll-margin-top:20px}.legal-content ul,.legal-content ol{padding-left:22px}.legal-content li{margin-bottom:6px}.legal-content a{color:var(--link);text-decoration:underline}
.legal-meta{color:var(--muted);font-size:.9rem}
.legal-toc{background:var(--canvas);border:1px solid var(--line);border-radius:12px;padding:18px 22px;margin:24px 0}.legal-toc h2{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;color:var(--muted)}.legal-toc ol{columns:2;column-gap:30px;margin:0}@media(max-width:600px){.legal-toc ol{columns:1}}
.legal-table{font-size:.88rem}.legal-table th[scope=row]{font-weight:600;vertical-align:top}.legal-table td{vertical-align:top}
.gpc-banner{background:#e7f1eb;border:1px solid #bcd9c7;color:#244f38;border-radius:10px;padding:12px 16px;margin:18px 0}
.privacy-form{margin-top:24px}.privacy-form select,.privacy-form input,.privacy-form textarea{width:100%}
.nav-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:10px;background:var(--ocean);color:var(--deep);font-size:.72rem;font-weight:700;margin-left:6px}
.record-counts{grid-template-columns:1fr auto;margin:0}.record-counts dd{text-align:right}
.danger-zone{border-color:#e8c4bb}
.site-footer-bottom{flex-wrap:wrap}
.legal-content .table-wrap{overflow-x:auto}.legal-table{width:100%;border-collapse:collapse}.legal-table th,.legal-table td{white-space:normal;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}
@media(max-width:640px){.legal-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.legal-table,.legal-table tbody,.legal-table tr,.legal-table th,.legal-table td{display:block;width:auto}.legal-table tr{border:1px solid var(--line);border-radius:10px;margin-bottom:12px;padding:4px 0}.legal-table th[scope=row]{border-bottom:0;padding-bottom:0}.legal-table td{border-bottom:0;padding-top:4px}.legal-table td:nth-of-type(2):before{content:"Source: ";font-weight:600}}
.email-link{min-height:24px}.public-breadcrumb a,.stat-card a{display:inline-flex;align-items:center;min-height:24px}.panel-header a[aria-label]{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px}
/* Passkeys */
.passkey-signin{margin:18px 0 6px}.passkey-button{width:100%;gap:10px;background:var(--navy)}.passkey-signin .passkey-status{font-size:.82rem;color:var(--muted);margin-top:8px;min-height:1em}
.passkey-list{list-style:none;padding:0;margin:14px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden}.passkey-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #eef2f2}.passkey-list li:last-child{border-bottom:0}.passkey-list small{display:block;color:var(--muted);font-size:.78rem;margin-top:3px}.passkey-list form{margin:0}
.passkey-add-form{margin-top:16px;border-top:1px solid var(--line);padding-top:16px}.passkey-status{font-size:.85rem;color:var(--muted)}

.unifi-configuration{margin-bottom:24px}.unifi-configuration-summary h2{margin:4px 0 10px}.unifi-configuration-summary p:last-child{margin-bottom:0}.unifi-configuration .table-wrap{overflow-x:auto}.unifi-configuration table{min-width:580px}.unifi-log-notice{margin:0;padding:16px 24px;color:var(--muted,#526476)}

/* UniFi security posture, shared by the office and the customer's own sites. */
.posture-panel{margin-bottom:24px;overflow:hidden}.posture-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px;border-bottom:1px solid var(--line)}.posture-heading h2{margin:4px 0 8px}.posture-heading p{margin:0;color:var(--muted)}.posture-heading .eyebrow{color:var(--navy);font-size:.7rem}.posture-heading .button{white-space:nowrap}.posture-heading form{margin:0}
.posture-summary{display:flex;flex-wrap:wrap;gap:12px 32px;padding:20px 24px 8px}.posture-summary span{font-size:.84rem;color:var(--muted)}.posture-summary strong{font-size:1.4rem;color:var(--ink);margin-right:6px;font-variant-numeric:tabular-nums}.posture-meta{padding:0 24px;color:var(--muted);font-size:.8rem}.posture-notice{margin:18px 24px;padding:12px 15px;border:1px solid #e4c891;border-radius:8px;background:#fff8e9;color:#725016;font-size:.87rem;line-height:1.55}
.posture-findings{padding:0 24px}.posture-finding{border-top:1px solid var(--line);padding:20px 0;overflow-wrap:anywhere}.posture-finding-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.posture-finding h3{font-size:1rem;margin:0}.posture-finding p{font-size:.875rem;line-height:1.65;margin:8px 0}.posture-finding .posture-affected{color:var(--navy);font-weight:650;margin:5px 0 12px}.posture-severity{flex-shrink:0;border-radius:5px;padding:4px 8px;font-size:.72rem;font-weight:700;white-space:nowrap}.posture-severity.high{background:#fbe9e7;color:#8c2920}.posture-severity.medium{background:#fff2d9;color:#785007}.posture-source{font-size:.8rem;display:inline-flex;align-items:center;min-height:24px;color:var(--link);text-decoration:underline;text-underline-offset:3px}
.posture-coverage{padding:18px 24px;border-top:1px solid var(--line);background:var(--canvas)}.posture-coverage summary{cursor:pointer;min-height:24px;font-size:.86rem;font-weight:650}.posture-coverage p,.posture-coverage li{font-size:.83rem;line-height:1.65}.posture-coverage h3{font-size:.85rem;margin:18px 0 8px}.posture-coverage ul{padding-left:20px}.posture-coverage li+li{margin-top:6px}.posture-empty{padding:12px 24px;line-height:1.65;font-size:.88rem;color:var(--muted)}.posture-findings>.posture-empty{padding:8px 0 20px}.posture-footnote{margin:0;padding:14px 24px;border-top:1px solid var(--line);font-size:.76rem;line-height:1.6;color:var(--muted)}
@media(max-width:640px){.posture-heading{align-items:flex-start;flex-direction:column;padding:20px}.posture-summary{gap:12px 22px;padding-left:20px;padding-right:20px}.posture-findings,.posture-meta,.posture-coverage,.posture-footnote{padding-left:20px;padding-right:20px}.posture-finding-title{align-items:flex-start;flex-direction:column;gap:8px}.posture-notice{margin-left:20px;margin-right:20px}}

/* Organization security reviews */
.security-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px;margin-bottom:32px}.security-card{padding:26px;overflow-wrap:anywhere}.security-card h3{margin:8px 0 14px}.security-card p{line-height:1.65}.security-card .eyebrow{font-size:.7rem}.security-warning{color:#785007}.security-network-links{margin-top:30px}.security-site-link{display:flex;justify-content:space-between;gap:16px;padding:20px;margin:10px 0;text-decoration:none;color:var(--ink)}.security-site-link span{color:var(--muted)}.security-form{max-width:740px}.security-form label{display:block;font-weight:650;margin-bottom:8px}.security-form input,.security-form select{display:block;width:100%;max-width:100%;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--paper,#fff);color:var(--ink)}.security-form .helptext{display:block;margin-top:7px;color:var(--muted);font-size:.82rem}.security-form .errorlist{color:#9c2828}.security-access{margin-top:26px}.security-access p{max-width:850px;font-size:.9rem}.security-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 10px}.security-actions form{margin:0}@media(max-width:640px){.security-card{padding:20px}.security-site-link{flex-direction:column;gap:6px}.security-actions{flex-direction:column;align-items:stretch}.security-actions .button{width:100%}.security-card h3,.page-heading h1{overflow-wrap:anywhere}}

.security-selector{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.security-selector summary{cursor:pointer;font-weight:650;font-size:.88rem}

.posture-heading>div{min-width:0}.posture-heading h2{overflow-wrap:anywhere}
#alarm-webhook .panel-header p{font-size:.8rem;margin-top:4px}#alarm-webhook .actions form{margin:0}.webhook-url{padding:20px 24px 4px}.webhook-url label{display:block;font-size:.85rem;font-weight:600;margin-bottom:8px}.webhook-url label small{font-weight:400}.webhook-url-row{display:flex;gap:10px;align-items:center}.webhook-url-row input{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.webhook-help{padding:14px 24px 22px;font-size:.875rem;line-height:1.6}.webhook-help summary{cursor:pointer;font-weight:600;color:var(--link);min-height:24px}.webhook-help ol{margin:12px 0 10px 20px}.webhook-help li{margin-bottom:6px}
@media(max-width:760px){#alarm-webhook .panel-header{flex-wrap:wrap}.webhook-url{padding:18px 18px 4px}.webhook-help{padding:12px 18px 20px}.webhook-url-row{flex-wrap:wrap}.webhook-url-row input{width:100%;flex-basis:100%}}

/* Workspace finding evidence and owner decisions */
.finding-evidence{margin:14px 0;padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:#f8fafb}.finding-evidence summary,.finding-dismiss summary{cursor:pointer;font-size:.86rem;font-weight:650;min-height:26px}.finding-evidence dl{margin:12px 0}.finding-links{display:flex;gap:10px 20px;flex-wrap:wrap;margin:12px 0}.finding-record{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;background:white;border:1px solid var(--line);border-radius:6px;font-size:.8rem;line-height:1.6}.finding-dismiss{margin-top:18px;padding-top:14px;border-top:1px dashed var(--line)}.finding-dismiss form{margin:12px 0 0;max-width:680px}.finding-dismiss textarea{min-height:92px}.finding-dismiss .button{margin-top:10px}.finding-decision{margin:14px 0;padding:14px 16px;border-left:3px solid #647d8c;background:#eef3f6;border-radius:0 7px 7px 0;overflow-wrap:anywhere}.finding-decision strong{font-size:.85rem}.finding-decision small{font-size:.76rem;color:var(--muted)}.finding-action{margin-top:16px}.finding-dismissed{background:#fbfcfd}.finding-dismissed>.posture-finding:first-of-type{border-top:0}.posture-finding.padded{padding:24px}.finding-evidence .muted{font-size:.79rem}
/* UX pass: portal footer, network health, service desk, incident stepper */
.portal-footer-row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.portal-footer nav{display:flex;gap:20px;flex-wrap:wrap}.portal-footer>a{float:none}.portal-footer p a{color:var(--link);font-weight:600;display:inline;min-height:0}
.support-filters input,.support-filters select{height:44px;min-height:44px;font-size:.9rem;font-weight:400}.support-filters .button{height:44px}
.network-strip,.site-health{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-left:4px solid #2f9e6b;border-radius:10px;padding:14px 18px;margin:20px 0 0;font-size:.9rem}.network-strip:hover{text-decoration:none;background:#f8fbfc}.network-strip .status-dot,.site-health .status-dot{font-size:.9rem;white-space:normal}.network-strip.has-issue,.site-health.has-issue{border-left-color:#c2472f;background:#fffaf8}.network-strip-link{color:var(--link);font-weight:600;font-size:.85rem}.site-health{margin:0 0 18px}
.portal-main .row-actions{justify-content:flex-end;flex-wrap:wrap}.portal-main .row-actions a{color:var(--link);font-weight:600}.portal-main td .row-actions{display:flex}
.panel-sub{font-size:.8rem;color:var(--muted);margin-top:5px}.desk-panel .row-end small,.alert-panel small{display:block}.desk-panel .priority{font-size:.8rem;font-weight:650}.desk-panel .overdue-text{display:inline;margin:0}.alert-panel .project-row strong{display:flex;align-items:center;gap:4px}.alert-panel .status-dot{font-size:.875rem}
.phase-steps{list-style:none;display:flex;flex-wrap:wrap;gap:6px 18px;margin:10px 0 0;padding:0;font-size:12px;color:#4f6878}.phase-steps li{display:flex;align-items:center;gap:6px}.phase-steps li>span[aria-hidden]{width:10px;height:10px;border-radius:50%;border:2px solid #9fb3c1;background:#fff;flex-shrink:0}.phase-steps li.done>span[aria-hidden]{background:#2f9e6b;border-color:#2f9e6b}.phase-steps li.current{color:var(--ink);font-weight:700}.phase-steps li.current>span[aria-hidden]{background:var(--link);border-color:var(--link);box-shadow:0 0 0 3px #086b9a33}
.show-sm{display:none}td .badge.show-sm{margin-top:6px}
.sidebar-bottom .settings-link>span:first-child{width:19px;text-align:center;font-size:1.05rem;line-height:1}.sidebar-bottom .settings-link.active{background:#174763;color:white;font-weight:600}
@media(max-width:600px){.show-sm{display:inline-block}.portal-footer-row{align-items:flex-start;flex-direction:column}.network-strip,.site-health{padding:12px 14px}}
@media(forced-colors:active){.phase-steps li>span[aria-hidden]{forced-color-adjust:none;border-color:CanvasText}.phase-steps li.done>span[aria-hidden],.phase-steps li.current>span[aria-hidden]{background:Highlight}}
.support-filters label{margin-bottom:0}
.network-columns td a{color:var(--link);font-weight:600}.portal-main>h2{margin:36px 0 14px}
.portal-header nav{margin-left:auto}.portal-signout{margin:0}
@media(max-width:760px){.portal-header{flex-wrap:wrap;row-gap:14px}.portal-header .brand{order:1}.portal-signout{order:2;margin-left:auto}.portal-header nav{order:3;width:100%;margin-left:0;flex-wrap:nowrap;justify-content:space-between;overflow-x:auto}}
/* Service desk: tabs, work queue, projects & tasks */
.desk-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin:-6px 0 24px;overflow-x:auto}.desk-tabs a{padding:10px 14px;font-size:.9rem;font-weight:600;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-1px;white-space:nowrap}.desk-tabs a:hover{color:var(--ink);text-decoration:none}.desk-tabs a.selected{color:var(--link);border-bottom-color:var(--link)}
.support-metrics.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.queue-table td:first-child{display:flex;align-items:flex-start;gap:12px}.queue-check{margin:2px 0 0}.kind-tag{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:1px 6px;background:#e9f0f6;color:#40627a}.kind-tag.task{background:#eef3ea;color:#44683a}.queue-table tr.is-overdue td:first-child{box-shadow:inset 3px 0 #c2472f}.due-inline{display:inline;margin:0}.queue-table .table-sub a{color:var(--link)}
.progress{display:block;appearance:none;-webkit-appearance:none;width:120px;max-width:100%;height:6px;border:0;border-radius:3px;background:#e3eaef;overflow:hidden;color:#2f9e6b}.progress::-webkit-progress-bar{background:#e3eaef;border-radius:3px}.progress::-webkit-progress-value{background:#2f9e6b;border-radius:3px}.progress::-moz-progress-bar{background:#2f9e6b;border-radius:3px}.project-progress{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.project-progress .progress{width:140px}
.work-panel h2{margin-bottom:12px}.work-project{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px}.work-panel .task-row.compact{padding:10px 0;border-bottom:1px solid #eef2f2}.work-panel .task-row.compact:last-of-type{border-bottom:0}.small-note{font-size:.85rem;margin:6px 0 10px}.work-task-form,.work-link-form{margin-top:14px}.work-task-form label,.work-link-form label{font-size:.8rem}.work-task-row{display:flex;gap:8px;margin-top:8px}.work-task-row input,.work-task-row select{flex:1;min-width:0}.work-panel .link-button{margin-top:12px;color:var(--link);font-weight:600;background:none;border:0;padding:0;font-size:.875rem}
.portal-projects .project-row:hover{background:transparent}
@media(max-width:760px){.support-metrics.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.queue-table td:first-child{min-width:220px}.project-progress .progress{width:90px}}
@media(forced-colors:active){.progress{border:1px solid CanvasText}}
.queue-check-spacer{display:block;width:19px;flex-shrink:0}.project-chip{color:var(--link);font-weight:600}
/* Inbox */
.inbox-setup h2{margin-bottom:10px}.inbox-setup .muted{max-width:720px}.inbox-connect{margin:20px 0 6px;max-width:560px}.inbox-setup .webhook-help{padding:12px 0 0}
.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--link);color:#fff;font-size:.72rem;margin-left:4px}.tab-count.muted-count{background:#dfe7ec;color:var(--muted)}
.inbox-row{display:flex;gap:14px;padding:16px 24px;border-bottom:1px solid #eef2f2;align-items:flex-start}.inbox-row:hover{background:#f8fafb;text-decoration:none}.inbox-row:last-of-type{border-bottom:0}.inbox-row .avatar{width:34px;height:34px;font-size:.85rem}.inbox-row-main{min-width:0;flex:1}.inbox-row-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inbox-row-top strong{font-weight:500;font-size:.9rem}.inbox-row-top time{margin-left:auto;font-size:.78rem;color:var(--muted);white-space:nowrap}.inbox-row .badge{font-size:.7rem;padding:2px 6px}.inbox-subject{display:block;font-size:.9rem;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inbox-row small{display:block;color:var(--muted);font-size:.8rem;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inbox-row.is-new strong,.inbox-row.is-new .inbox-subject{font-weight:700}.inbox-row.is-new{box-shadow:inset 3px 0 var(--link)}
.inbox-foot{margin:14px 2px 0;font-size:.8rem}.inbox-foot .link-button{color:var(--muted);background:none;border:0;padding:0;font-size:.8rem;text-decoration:underline}
.inbox-title{overflow-wrap:anywhere}.inbox-actions{flex-wrap:wrap;align-self:flex-start}.inbox-actions form{margin:0}
.inbox-body{white-space:pre-wrap;overflow-wrap:anywhere;padding:22px 24px;font-size:.95rem;line-height:1.65;max-height:70vh;overflow-y:auto}.inbox-note{padding:0 24px 18px;font-size:.75rem;color:var(--muted)}
.confirm-delete{position:relative}.confirm-delete>summary{list-style:none}.confirm-delete>summary::-webkit-details-marker{display:none}.confirm-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:5;width:260px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px;box-shadow:0 10px 30px #092f4d22;font-size:.85rem}.confirm-pop p{margin-bottom:10px}
.convert-panel h2{margin-bottom:6px}.convert-block{border-top:1px solid #eef2f2;padding-top:14px;margin-top:14px}.convert-block h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}.convert-block label{font-size:.8rem;margin:8px 0 4px}.convert-block .button{margin-top:10px}.convert-buttons{display:flex;gap:8px;flex-wrap:wrap}.convert-block p{font-size:.875rem}
@media(max-width:760px){.inbox-row{padding:14px 16px}.confirm-pop{left:0;right:auto}}
.view-toggle{display:flex;gap:4px;background:#eef3f6;border-radius:8px;padding:3px}.view-toggle a{padding:5px 12px;border-radius:6px;font-size:.8rem;font-weight:600;color:var(--muted);min-height:24px}.view-toggle a.selected{background:#fff;color:var(--ink);box-shadow:0 1px 2px #092f4d1a}.view-toggle a:hover{text-decoration:none}
.email-frame{display:block;width:100%;height:70vh;min-height:420px;border:0;border-top:1px solid #eef2f2;background:#fff}.images-bar{margin:0;padding:10px 24px;background:#f7fafc;border-top:1px solid #eef2f2;font-size:.82rem;color:var(--muted)}

/* Customer → service → security review navigation. */
.security-overview{display:flex;align-items:center;flex-wrap:wrap;gap:18px 32px;margin:-6px 0 24px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.security-overview>span{font-size:.86rem;color:var(--muted)}.security-overview strong{font-size:1.35rem;color:var(--ink);margin-right:6px}.security-filters{display:flex;align-items:flex-end;gap:16px;margin-bottom:24px;flex-wrap:wrap}.security-search{flex:1;min-width:230px;max-width:540px}.security-search label{font-size:.78rem;font-weight:650;margin-bottom:7px;display:block}.security-search input{width:100%}.security-filter-toggle{display:flex;align-items:center;gap:8px;min-height:43px;font-size:.86rem;cursor:pointer;margin:0}.security-filter-toggle input{width:16px;height:16px;margin:0;accent-color:var(--link)}.security-filters>.text-link{font-size:.85rem;align-self:center;margin-top:20px}.security-result-count{font-size:.8rem;color:var(--muted);margin:-10px 0 18px}.security-customer-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 24px;background:#f5f8fa;border-bottom:1px solid var(--line)}.security-customer-heading .eyebrow{font-size:.66rem;letter-spacing:.1em;color:var(--muted);margin:0 0 7px}.security-customer-heading h2{font-size:1.13rem;letter-spacing:-.025em;overflow-wrap:anywhere}.security-customer-heading h2 a{color:var(--ink);text-decoration:none}.security-customer-heading h2 a:hover{text-decoration:underline}.security-customer-heading h2 span{color:var(--link);margin-left:8px}.security-customer-total{font-size:.8rem;color:var(--muted);flex-shrink:0}.security-customer-total strong{color:#785007;font-weight:550}.security-service+.security-service{border-top:1px solid var(--line)}.security-service-heading{display:flex;align-items:center;gap:12px;padding:20px 24px 12px}.security-service-heading h3{font-size:.9rem;margin:0}.security-service-heading p{color:var(--muted);font-size:.76rem;margin:4px 0 0}.security-service-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:33px;height:33px;border-radius:8px;background:#eaf2f7;color:#176787;font-size:1rem;font-weight:700}.security-service-count{margin-left:auto;font-size:.76rem;color:var(--muted);white-space:nowrap}.security-review-rows{list-style:none;margin:0;padding:0 24px 10px}.security-review-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,auto) auto;align-items:center;gap:22px;padding:16px 0;border-top:1px solid #edf1f3}.security-review-name{min-width:0}.security-review-name>a{font-size:.92rem;font-weight:600;color:var(--ink);overflow-wrap:anywhere}.security-review-name>a:hover{color:var(--link)}.security-review-name small{display:block;font-size:.75rem;color:var(--muted);margin-top:5px;line-height:1.5}.security-review-status{text-align:right}.security-review-status p{font-size:.76rem;color:var(--muted);margin:6px 0 0}.security-review-status p strong{color:#9b3327}.security-review-row>.button{white-space:nowrap;gap:12px}.review-state{display:inline-block;font-size:.72rem;font-weight:650;line-height:1.5;padding:4px 9px;border-radius:5px;background:#edf1f4;color:#536675}.review-state.high{background:#fbe9e7;color:#8c2920}.review-state.warning{background:#fff2d9;color:#785007}.review-state.pending{background:#eef1f5;color:#58677c}.review-state.neutral{background:#edf4f4;color:#3e686b}.security-index-note{font-size:.78rem;line-height:1.7;color:var(--muted);max-width:900px}.security-breadcrumbs{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:.78rem;color:var(--muted);margin-bottom:24px;overflow-wrap:anywhere}.security-breadcrumbs a{color:var(--link)}.security-add-services{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px dashed #cbd7de;padding:22px 24px;border-radius:10px}.security-add-services h2{font-size:.95rem}.security-add-services p{font-size:.8rem;color:var(--muted);margin-top:6px}.security-add-services .security-actions{margin:0}.security-connection-settings>summary{font-size:.95rem;font-weight:650;cursor:pointer}.security-connection-settings[open]>summary{margin-bottom:20px}.client-security-entry{margin-bottom:24px;font-size:.88rem}
@media(max-width:900px){.security-review-row{gap:16px;grid-template-columns:minmax(0,1fr) auto}.security-review-status{grid-column:1;text-align:left}.security-review-row>.button{grid-column:2;grid-row:1/3}.security-add-services{align-items:flex-start;flex-direction:column}.security-customer-heading{align-items:flex-start}.security-customer-total{white-space:normal}}
@media(max-width:560px){.security-overview{gap:12px 22px}.security-overview>span{font-size:.77rem}.security-customer-heading{padding:20px;flex-direction:column;gap:10px}.security-customer-total{margin:0}.security-service-heading{padding:20px 20px 12px;align-items:flex-start;flex-wrap:wrap}.security-service-count{width:100%;margin-left:45px}.security-review-rows{padding:0 20px 6px}.security-review-row{grid-template-columns:1fr;gap:12px}.security-review-row>.button{grid-column:1;grid-row:auto;justify-self:start}.security-review-status{grid-column:1}.security-service-heading>div{min-width:0;flex:1}.security-search{min-width:0;flex-basis:100%;max-width:none}.security-filter-toggle{min-height:38px}.security-filters{gap:10px 14px}.security-filters>.text-link{margin:0}.security-add-services{padding:20px}.security-add-services .security-actions{width:100%}}
/* Mail (Gmail-style inbox) */
.mail-page .office-main{padding:16px 20px 12px;max-width:none}.mail-page .office-footer{display:none}.mail-page .messages .message{margin-bottom:10px}
.mail{display:grid;grid-template-columns:200px minmax(340px,440px) minmax(0,1fr);background:#fff;border:1px solid var(--line);border-radius:12px;height:calc(100vh - 118px);min-height:560px;overflow:hidden;box-shadow:var(--shadow)}
.mail-folders{display:flex;flex-direction:column;gap:2px;padding:14px 10px 10px 0;border-right:1px solid var(--line);overflow:auto;min-width:0}
.mail-compose{margin:0 0 12px 12px;justify-content:center;gap:8px;border-radius:14px;padding:12px 18px}
.mail-folder{display:flex;justify-content:space-between;align-items:center;padding:8px 14px 8px 22px;border-radius:0 18px 18px 0;font-size:.9rem;color:var(--ink);min-height:34px}.mail-folder:hover{background:#f0f4f7;text-decoration:none}.mail-folder.selected{background:#e1edf6;font-weight:700;color:var(--link)}.mail-folder b{font-size:.78rem}.mail-folder i{font-style:normal;font-size:.75rem;color:var(--muted)}
.mail-folders-foot{margin-top:auto;display:flex;flex-direction:column;gap:6px;padding:14px 12px 4px 22px;font-size:.75rem;color:var(--muted)}.mail-folders-foot form{margin:0}.mail-folders-foot .link-button{background:none;border:0;padding:0;font-size:.78rem;color:var(--link);font-weight:600;text-align:left;cursor:pointer}.mail-folders-foot .muted-link{color:var(--muted);font-weight:400;text-decoration:underline}
.mail-list{display:flex;flex-direction:column;min-width:0;border-right:1px solid var(--line);overflow:hidden}.mail-list>.message{margin:10px 12px 0}
.mail-search{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid #eef2f2}.mail-search input{min-height:38px;border-radius:20px;background:#f1f5f8;border-color:transparent;padding:6px 16px;font-size:.9rem}.mail-search input:focus{background:#fff;border-color:#cbd7d9}.mail-search .button{min-height:38px;padding:6px 12px}
.mail-toolbar{display:flex;align-items:center;gap:4px;padding:4px 12px;border-bottom:1px solid #eef2f2;min-height:44px;margin:0}.mail-bulk{display:flex;flex-wrap:wrap;gap:2px}.mail-bulk[hidden]{display:none}.mail-range{margin-left:auto;font-size:.75rem;color:var(--muted);white-space:nowrap;padding:0 6px}
.mail-check{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0;cursor:pointer}.mail-check input{margin:0}
.icon-button{display:inline-flex;align-items:center;gap:4px;border:0;background:none;padding:6px 9px;border-radius:7px;font-size:.82rem;font-weight:550;color:var(--ink);min-height:32px;cursor:pointer;white-space:nowrap}.icon-button:hover{background:#eef3f6;text-decoration:none}summary.icon-button{list-style:none}summary.icon-button::-webkit-details-marker{display:none}
.mail-rows{overflow-y:auto;flex:1}
.mail-row{display:grid;grid-template-columns:28px 26px minmax(0,1fr) auto;align-items:start;column-gap:4px;padding:10px 12px 10px 10px;border-bottom:1px solid #eef2f2;cursor:pointer;position:relative;background:#f8fafb}.mail-row:hover{box-shadow:inset 0 -1px #dde6ec,0 1px 3px #092f4d14;z-index:1}.mail-row.unread{background:#fff}.mail-row.selected{background:#e6f0f8;box-shadow:inset 3px 0 var(--link)}
.mail-star{margin:0}.star{border:0;background:none;font-size:1.05rem;line-height:1;color:#98a8b3;padding:4px 2px;min-width:24px;min-height:28px;cursor:pointer}.star.on{color:#d99a00}.mail-star-space{width:26px}
.mail-row-link{min-width:0;color:var(--ink);display:block}.mail-row-link:hover{text-decoration:none}.mail-from,.mail-line{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-from{font-size:.88rem}.mail-line{font-size:.84rem;color:var(--ink);margin-top:2px}.mail-line strong{font-weight:500}.mail-snippet{color:var(--muted)}.mail-row.unread .mail-from,.mail-row.unread .mail-line strong{font-weight:700}.mail-count{font-size:.7rem;color:#38745c;font-weight:600}.mail-chip{font-size:.66rem;padding:1px 6px;margin-right:5px;vertical-align:1px}
.mail-meta{font-size:.75rem;color:var(--muted);white-space:nowrap;padding-top:2px;display:flex;gap:6px}.mail-row.unread .mail-meta time{color:var(--ink);font-weight:700}
.mail-hover{display:none;position:absolute;right:8px;top:6px;gap:2px;background:inherit;padding-left:8px}.mail-hover form{margin:0}.mail-hover .icon-button{padding:5px 7px}.mail-row:hover .mail-hover,.mail-row:focus-within .mail-hover{display:flex}.mail-row:hover .mail-meta,.mail-row:focus-within .mail-meta{visibility:hidden}
.mail-foot{font-size:.75rem;padding:8px 14px;margin:0;border-top:1px solid #eef2f2}
.mail-pane{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fff}
.reader-toolbar{display:flex;align-items:center;gap:2px;padding:5px 10px;border-bottom:1px solid #eef2f2;flex-wrap:wrap;min-height:46px}.reader-toolbar form{margin:0}.reader-nav{margin-left:auto;display:flex;align-items:center;gap:2px}.compose-title{font-size:.95rem;margin-left:6px}
.reader-scroll{overflow-y:auto;flex:1;padding:18px 26px 36px}
.reader-head{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.reader-subject{font-size:1.35rem;font-weight:600;letter-spacing:-.02em;flex:1 1 280px;overflow-wrap:anywhere}.reader-labels{display:flex;gap:6px;flex-wrap:wrap;padding-top:4px}.reader-labels .badge{font-size:.72rem}.reader-star{margin:0}
.reader-from{display:flex;gap:12px;align-items:center;margin:16px 0 12px}.reader-from small{display:block;margin-top:2px}.reader-from time{margin-left:auto;font-size:.8rem;color:var(--muted);white-space:nowrap}.reader-from .avatar{width:38px;height:38px}
.reader-body{border:1px solid var(--line);border-radius:10px;overflow:hidden}.reader-body-head{display:flex;justify-content:flex-end;padding:6px 8px;border-bottom:1px solid #eef2f2;min-height:8px}.reader-body-head:empty{display:none}.reader-body .email-frame{height:58vh;border-top:0}.reader-body .inbox-body{max-height:none}
.reader-thread{margin-top:14px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.thread-item{border-bottom:1px solid #eef2f2}.thread-item:last-child{border-bottom:0}.thread-item summary{display:flex;gap:10px;align-items:baseline;padding:10px 14px;cursor:pointer;font-size:.85rem;min-height:24px}.thread-item summary .muted{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.thread-item time{font-size:.75rem;color:var(--muted);white-space:nowrap}.thread-item.mine summary strong{color:var(--link)}.thread-body{padding:4px 14px 14px;white-space:pre-wrap;font-size:.9rem;line-height:1.6;overflow-wrap:anywhere}
.reader-reply{margin-top:16px;border:1px solid var(--line);border-radius:10px;padding:12px 14px}.reply-head{font-size:.82rem;color:var(--muted);margin-bottom:6px}.reader-reply textarea{min-height:120px}
.reader-history{margin-top:18px}.reader-history h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:6px}.history-row{display:flex;justify-content:space-between;gap:10px;padding:8px 2px;border-bottom:1px solid #eef2f2;font-size:.85rem}.history-row small{color:var(--muted);white-space:nowrap}
.turn-into{position:relative}.turn-into-panel{position:absolute;left:0;top:calc(100% + 6px);width:330px;max-height:70vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px #092f4d26;padding:4px 16px 16px;z-index:20}
.mail-empty{margin:auto;text-align:center;color:var(--muted);padding:40px}.mail-empty span{font-size:2.6rem;display:block;margin-bottom:8px;color:#c3d0d8}kbd{display:inline-block;border:1px solid #cbd7d9;border-bottom-width:2px;border-radius:4px;padding:0 5px;font:600 .75rem ui-monospace,Menlo,monospace;background:#f7fafb;color:var(--ink)}
.mail-keys{border:1px solid var(--line);border-radius:12px;padding:22px 26px;max-width:420px;box-shadow:0 20px 50px #092f4d33}.mail-keys::backdrop{background:#07263e55}.mail-keys h2{font-size:1.1rem;margin-bottom:12px}.mail-keys dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0 0 16px}.mail-keys dt,.mail-keys dd{margin:0;font-size:.875rem}
.compose-form{display:flex;flex-direction:column;gap:0}.compose-field{display:flex;align-items:center;gap:10px;border-bottom:1px solid #eef2f2;padding:4px 0}.compose-field label{width:64px;margin:0;font-size:.82rem;color:var(--muted);font-weight:500}.compose-field input{border:0;min-height:40px;padding:6px 0;box-shadow:none}.compose-field input:focus-visible{outline-offset:2px}.compose-form textarea{border:0;margin-top:10px;min-height:280px;padding:6px 0;resize:vertical}.compose-form .composer-actions{border-top:1px solid #eef2f2;padding-top:12px}
@media(max-width:1400px){.mail{grid-template-columns:minmax(320px,400px) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.mail-folders{grid-column:1/-1;flex-direction:row;align-items:center;gap:4px;padding:8px 12px;border-right:0;border-bottom:1px solid var(--line);overflow-x:auto}.mail-compose{margin:0 8px 0 0;padding:8px 14px}.mail-folder{border-radius:16px;padding:6px 12px;white-space:nowrap;gap:6px}.mail-folders-foot{margin:0 0 0 auto;flex-direction:row;align-items:center;padding:0;gap:12px;white-space:nowrap}.mail-folders-foot small{display:none}}
@media(max-width:980px){.mail{grid-template-columns:minmax(0,1fr);height:auto;min-height:calc(100vh - 150px);overflow:visible}.mail.has-pane .mail-list,.mail.has-pane .mail-folders{display:none}.mail:not(.has-pane) .mail-pane{display:none}.mail-list{border-right:0}.mail-rows{overflow:visible}.mail-pane{overflow:visible}.reader-scroll{padding:14px 16px 28px}.mail-folders-foot{display:none}.mail-page .office-main{padding:12px}.turn-into-panel{left:auto;right:-60px;width:min(330px,92vw)}.reader-body .email-frame{height:70vh}}
@media(max-width:600px){.mail-row{grid-template-columns:24px 24px minmax(0,1fr) auto;padding:10px 8px}.mail-hover{display:none!important}.mail-row:hover .mail-meta{visibility:visible}.reader-toolbar .icon-button{padding:6px 7px;font-size:.78rem}}
.mail-row.kbd-focus{outline:2px solid var(--link);outline-offset:-2px}
@media(max-width:600px){.reader-from{flex-wrap:wrap}.reader-from>div{min-width:0;flex:1;overflow-wrap:anywhere}.reader-from time{margin-left:50px;flex-basis:100%}}

/* Email & automation */
.email-body{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.9rem;line-height:1.6;background:#f7f9fa;border:1px solid var(--line);border-radius:8px;padding:18px;margin:0 0 20px;max-height:420px;overflow:auto}.email-meta{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;margin:0 0 18px}.email-meta dt,.email-meta dd{margin:0}.badge.email-sent,.badge.job-ok{background:#e7f1eb;color:#38745c}.badge.email-failed,.badge.job-error{background:#fae8e1;color:#a04b2e}.badge.email-queued,.badge.job-running{background:#fbf1d9;color:#926d1f}.badge.email-cancelled{background:#eee;color:#666}
.email-table .show-mobile{display:none}@media(max-width:760px){.email-table .hide-mobile{display:none}.email-table .show-mobile{display:block;overflow-wrap:anywhere}}
.badge.agreement-active,.badge.autopay-succeeded{background:#e7f1eb;color:#38745c}.badge.agreement-draft,.badge.agreement-paused,.badge.autopay-processing{background:#fbf1d9;color:#926d1f}.badge.agreement-ended{background:#eee;color:#666}.badge.autopay-failed{background:#fae8e1;color:#a04b2e}
.activate-panel .inline-form,.inline-form{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}.inline-form .field{margin:0}.item-form{border-top:1px solid var(--line)}.item-form h3{font-size:.95rem;margin-bottom:14px}.item-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px 18px;margin-bottom:16px}.item-grid .field{margin:0}.item-grid .help-text{display:block;font-size:.75rem}.inactive-row td{color:var(--muted)}.row-actions{display:flex;gap:12px;align-items:center;justify-content:flex-end;white-space:nowrap}.row-actions form{margin:0}.link-button{background:none;border:0;padding:0;color:var(--link);font-weight:600;font-size:.8rem;cursor:pointer}
.autopay-box{border-top:1px solid #edf0f0}.autopay-box h3{font-size:.95rem;margin-bottom:8px}.autopay-box p{font-size:.875rem;margin-bottom:12px}.invoice-send{margin-top:16px;flex-wrap:wrap}.attempts-heading{font-size:.9rem;margin:22px 0 8px}
.plain-list{list-style:none;margin:0;padding:0}.plain-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;padding:10px 0;border-bottom:1px solid #edf0f0;font-size:.875rem}.plain-list li small{width:100%}.plain-list li.total{font-weight:650;border-bottom:0}
.setup-card{max-width:640px;margin:10px auto 30px}.setup-card h1{font-size:2rem;margin:10px 0 14px}.setup-card p{line-height:1.65;margin-bottom:18px}.setup-note{font-size:.8rem;margin-top:14px}
.billing-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:24px}.billing-grid h2,.agreement-summary h3{margin-bottom:12px}.balance-figure{font-size:2rem;font-weight:650;letter-spacing:-.03em;margin:4px 0}.small-print{font-size:.8rem;margin-top:12px}@media(max-width:760px){.billing-grid{grid-template-columns:1fr}.item-grid{grid-template-columns:1fr}}
.badge.quote-accepted{background:#e7f1eb;color:#38745c}.badge.quote-sent{background:#e9eff6;color:#476889}.badge.quote-draft{background:#fbf1d9;color:#926d1f}.badge.quote-declined{background:#fae8e1;color:#a04b2e}.badge.quote-expired{background:#eee;color:#666}
.quote-totals{display:flex;flex-direction:column;align-items:flex-end;gap:8px;border-top:1px solid var(--line)}.quote-totals p{display:flex;gap:30px;font-size:.95rem}.share-spaced{margin-top:18px}.accepted-panel{border-color:#c3ded0}
.quote-document h1{font-size:2rem;margin:10px 0 8px;letter-spacing:-.03em}.quote-intro,.quote-terms{margin:24px 0;line-height:1.7;font-size:.95rem}.quote-terms h2{font-size:1.05rem;margin-bottom:10px}.invoice-lines td small{display:block;color:var(--muted);font-size:.75rem}.quote-summary{margin:24px 0 0 auto;max-width:360px}.quote-decision{max-width:1100px}.quote-decision h2{margin-bottom:12px}.accept-form{max-width:520px}.accept-form .field{margin-bottom:16px}.field-error{color:#a04b2e;display:block;margin-top:6px}.decline{margin-top:22px;font-size:.9rem}.decline summary{cursor:pointer;color:var(--muted)}.decline form{margin-top:14px;max-width:520px}

.signin-options{display:flex;flex-direction:column;gap:10px;margin-top:26px}.signin-options .passkey-signin,.signin-options .google-signin-form{margin:0}.signin-options .passkey-status:empty{display:none}.signin-options .passkey-status{margin:6px 0 0}.google-signin-button{gap:10px}.signin-hint{font-size:.8rem;line-height:1.5;color:var(--muted);text-align:center;margin:4px 0 0}.signin-options .login-divider{margin:14px 0 0}.login-card .password-form{margin-top:18px}.login-card .password-form p{margin:0 0 16px}.login-card .password-form .captcha-field{margin:4px 0 20px}.login-card .password-form altcha-widget{--altcha-max-width:100%;width:100%}.login-card h1{margin-bottom:8px}.login-card .password-form .button{gap:10px}
.password-start{gap:10px}.signin-options [hidden],.password-form [hidden],.password-form[hidden]{display:none!important}.password-form [data-password-continue]{width:100%;margin-top:2px}.password-user{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--canvas);font-weight:600;overflow-wrap:anywhere}.link-button{background:none;border:0;padding:0;color:var(--link);font-weight:600;font-size:.875rem}.link-button:hover{text-decoration:underline}
.login-brand{margin-bottom:28px;font-size:1.4rem;justify-content:center}.login-brand .brand-symbol{width:42px;height:42px}.login-card .eyebrow{margin-bottom:.9rem}

/* Workspace navigation: count badges keep their own size; the mobile drawer sits above the top bar, scrolls on its own, and closes on a backdrop tap. */
.sidebar nav a>span.nav-count{width:auto;min-width:20px;padding:0 6px;font-size:.72rem;margin-left:auto}
.nav-backdrop{display:none}
@media(max-width:760px){.sidebar{z-index:40;width:min(84vw,288px);height:100vh;height:100dvh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-top:calc(24px + env(safe-area-inset-top));padding-bottom:calc(20px + env(safe-area-inset-bottom))}.sidebar-bottom{margin-top:18px;padding-top:12px;border-top:1px solid #1d4562}.nav-open{overflow:hidden}.nav-open .nav-backdrop{display:block;position:fixed;inset:0;z-index:39;background:#04182a99;border:0;padding:0;cursor:pointer}.workspace-body{overflow-x:clip}}

/* Keep invoice table action labels inside the horizontal scroll container. */
.invoice-document .table-scroll{position:relative}
.invoice-document .invoice-totals dt small{display:block;color:var(--muted)}

.tax-summary .invoice-totals{margin:1rem 0}

/* Itemized tax and recycling fees, shared by owner and customer documents. */
.tax-detail-lines th,.tax-detail-lines td{padding:16px 12px;vertical-align:top}
.tax-detail-lines .tax-line-description{min-width:210px;width:auto;overflow-wrap:anywhere;white-space:normal}
.tax-detail-lines th:first-child,.tax-detail-lines td:first-child{padding-left:20px}
.tax-detail-lines th:last-child,.tax-detail-lines td:last-child{padding-right:20px}
.tax-detail-lines .tax-line-total{font-weight:650}
.tax-detail-lines .tax-pending{color:var(--muted);font-size:.8rem;white-space:normal}
.tax-detail-lines .tax-line-actions{width:1%;text-align:right}
.quote-tax-totals{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px 44px;border-top:1px solid var(--line);padding-top:24px;margin-top:0}
.quote-tax-totals>div{flex:0 1 380px;min-width:0}
.quote-tax-totals h2,.quote-tax-totals h3{font-size:1rem;margin:0 0 16px}
.quote-tax-totals .invoice-totals{min-width:0;max-width:none;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px}
.tax-document-note{font-size:.8rem;line-height:1.6;color:var(--muted);margin:20px 0 0}
@media screen and (max-width:800px){
 .tax-detail-lines,.tax-detail-lines tbody{display:block;width:100%;min-width:0}
 .tax-detail-lines thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .tax-detail-lines tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 18px;padding:20px 16px;border-bottom:1px solid var(--line)}
 .tax-detail-lines td,.tax-detail-lines th:first-child,.tax-detail-lines td:first-child,.tax-detail-lines th:last-child,.tax-detail-lines td:last-child{padding:0;border:0;width:auto;min-width:0;white-space:normal;text-align:left}
 .tax-detail-lines .tax-line-description,.tax-detail-lines .tax-line-actions,.tax-detail-lines td[colspan]{grid-column:1/-1}
 .tax-detail-lines .tax-line-description{font-size:.95rem}
 .tax-detail-lines td[data-label]::before{content:attr(data-label);display:block;color:var(--muted);font-size:.72rem;font-weight:500;margin-bottom:3px}
 .tax-detail-lines .tax-line-total{background:var(--canvas);border-radius:5px;padding:8px 10px;margin:-8px -10px}
 .quote-tax-totals{gap:28px;justify-content:stretch;padding-top:20px}
 .quote-tax-totals>div{flex-basis:100%;max-width:none}
 .quote-tax-totals .invoice-totals{max-width:none}
}
@media print{
 .tax-detail-lines th,.tax-detail-lines td{padding:10px 5px;font-size:8.5pt}
 .tax-detail-lines th:first-child,.tax-detail-lines td:first-child{padding-left:0}
 .tax-detail-lines th:last-child,.tax-detail-lines td:last-child{padding-right:0}
 .tax-detail-lines .tax-line-description{min-width:0;width:35%}
 .tax-detail-lines th{white-space:normal}
 .quote-tax-totals{break-inside:avoid}
}
