/* Shared product finish: generous spacing, readable controls, quiet surfaces. */
:root{--ink:#173d42;--muted:#627a7e;--bg:#f5f7f5;--line:#dfe8e5;--green:#176b61;--lime:#a9e8d6;--product-shadow:0 8px 28px #153e4210}
body{background:var(--bg);color:var(--ink);font-size:15px}p{color:var(--muted)}
.app-shell,.mobile-shell,.auth-shell,.client-shell{--green:#176b61;--ink:#173d42;--muted:#627a7e}
.app-shell .button,.mobile-shell .button,.auth-shell .button,.client-shell .button,.control-shell .button{border-radius:13px;min-height:46px;font-size:13px;font-weight:700;transition:background .18s,box-shadow .18s}
.app-shell .button:not(.secondary),.mobile-shell .button:not(.secondary),.auth-shell .button:not(.secondary),.client-shell .button:not(.secondary){background:#176b61;border-color:#176b61;box-shadow:0 4px 10px #176b6118}
.button:hover{filter:brightness(.96)}.button.secondary{border-color:#d6e2de}
.app-shell input,.app-shell select,.app-shell textarea,.mobile-shell input,.mobile-shell select,.mobile-shell textarea,.auth-shell input,.client-shell input,.client-shell textarea,.client-shell select,dialog input,dialog textarea,dialog select{border-radius:12px;border-color:#d8e3df;min-height:46px;background:#fbfdfc;color:#173d42;font-size:14px}
input:focus,select:focus,textarea:focus{outline:2px solid #53bba085;outline-offset:2px;background:#fff}input[type=checkbox],input[type=radio]{min-height:0;accent-color:#176b61}
.app-shell label,.mobile-shell label,.client-shell label,.auth-shell label{font-size:12px;font-weight:600;color:#48676b}
.workspace{background:radial-gradient(ellipse at 100% 0,#e6f1ec 0,transparent 48%),#f5f7f5}.workspace-body{max-width:1720px;margin:auto;padding:38px 38px 44px}.premium-header{background:#ffffffed;border-bottom:1px solid #dfe8e5;height:82px;box-shadow:0 3px 16px #183e4204}
.header-context strong{font-size:13px}.header-context small{font-size:11px}.header-search{background:#f4f8f6;border-color:#e2ebe7;border-radius:14px}.header-search input{min-height:34px;background:transparent;font-size:12px}
.sidebar{background:#fff;border-color:#dfe8e5}.sidebar nav a{border-radius:12px;font-size:12px;min-height:43px;color:#587476;transition:background .15s}.sidebar nav a:hover{background:#f0f6f3}.sidebar nav a.active,.sidebar nav a.selected{background:#e7f3ee;color:#176b61;box-shadow:inset 3px 0 #176b61}.sidebar .nav-label{letter-spacing:1.4px;color:#8ba09d}.company-switch{background:#f6f9f7;border-color:#e1eae5;border-radius:14px}.sidebar-setting-button{border-color:#d8e5de}.sidebar-bottom .trial-card{background:#e9f5ee}
.page-heading{margin:30px 0}.page-heading h1{font-size:clamp(27px,2.4vw,39px);line-height:1.2;letter-spacing:-1.5px;margin-bottom:12px;max-width:850px}.page-heading p{font-size:13px}.eyebrow{color:#4b8c80;font-size:10px;letter-spacing:1.7px}
.app-shell .panel,.app-shell .stats-grid>article,.app-shell .location-overview>article,.app-shell .template-card,.app-shell .premium-location-card,.mobile-shell .panel,.mobile-shift{border:1px solid #dfe8e5;border-radius:21px;box-shadow:var(--product-shadow);background:#fff}
.stats-grid,.location-overview{gap:18px}.stats-grid>article,.location-overview>article{padding:26px}.stats-grid strong,.location-overview strong{font-size:37px;letter-spacing:-1.5px;color:#173d42}.stats-grid small,.location-overview small{font-size:11px}.stats-grid>article>span,.location-overview>article>span{font-size:12px;color:#68817c}.location-overview .location-overview-accent{background:linear-gradient(135deg,#164e49,#176b61);border-color:transparent;color:white}.location-overview-accent strong,.location-overview-accent>span{color:white!important}
.panel-title h3{font-size:18px}.panel-title a,.panel-title small{font-size:12px}.pill{border-radius:7px;padding:7px 10px;background:#e6f4ed;color:#176b61;font-size:10px;font-weight:600}.pill.amber{background:#fff1d9;color:#95651b}.trial-banner{border-radius:18px;border-color:#cde5db;background:linear-gradient(115deg,#e9f5ee,#eef6f3)}
.attention-banner{background:#edf4f0;border-color:#d6e6de;border-radius:17px}.attention-icon{background:#176b61;color:white;border-radius:12px}.tip{background:#f0f6f2;border-radius:15px}.empty,.premium-empty,.worker-empty-small{color:#68807d;font-size:14px;line-height:1.8}.empty{padding:50px 24px}.empty small{font-size:12px}.location-empty-hero{border-color:#dfe8e5;background:linear-gradient(130deg,#fff,#edf5f0);border-radius:23px}.location-card-cover,.template-cover{background:linear-gradient(120deg,#edf6ef,#eaf2f8)}
.team-member{padding:28px;transition:box-shadow .18s,transform .18s}.team-member:hover{box-shadow:0 12px 32px #153e4215;transform:translateY(-2px)}.team-member h3{font-size:21px}.team-avatar,.mini-avatar,.profile-avatar{background:#e4f3ea;color:#176b61}.team-role{background:#eaf4ee;color:#176b61}.team-security,.settings-info{background:#f4f8f5;border-color:#e1ebe5;font-size:12px}.team-email,.team-member-actions{font-size:12px}.template-content{padding:25px}.template-tasks{font-size:13px;line-height:1.9}.template-actions{font-size:12px}
.calendar-panel{border-radius:20px;border-color:#dfe8e5;box-shadow:var(--product-shadow)}.calendar-toolbar{padding:22px}.calendar-day{background:#fff;border-color:#e5ece7;min-height:125px}.calendar-day:hover{background:#f4faf6}.calendar-event{border-radius:8px;background:#e9f4ee;color:#245e50;font-size:11px;border-left-color:#4a9b80}.calendar-weekday{color:#68817c;font-size:11px}.calendar-day-head{font-size:12px}.calendar-month{font-size:23px}.calendar-filter{gap:14px}
.hours-insights,.hours-worker-row,.attention-ticket{border-color:#dfe8e5;border-radius:18px}.hours-bar-row{font-size:12px}.review-description,.receipt-message{background:#f4f8f5;font-size:14px;line-height:1.8}.settings-card{padding:32px}.settings-card-heading>span{background:#eaf4ee;color:#176b61}.settings-workflow{background:#eaf4ee;border-color:#d6e7dd}.settings-save{background:white;padding:20px;border:1px solid #dfe8e5;border-radius:16px}.settings-danger{border-color:#f0d7d2;box-shadow:none}
.module-billing-intro{border-radius:22px;border-color:#dfe8e5}.billing-module-tabs{background:#e8eee9;border-radius:13px;padding:5px}.billing-module-tabs a{border-radius:10px;font-size:13px}.billing-module-tabs a.selected{background:#fff;color:#176b61}.app-shell table{font-size:13px}.app-shell th{font-size:10px;letter-spacing:.7px;text-transform:uppercase;color:#789089;background:#f6f9f6}.app-shell td{border-color:#e6ece7}.app-shell tbody tr:hover{background:#f8fbf8}.workspace-foot{font-size:10px;color:#8ca09b}
dialog{border:1px solid #dce7e0;border-radius:23px;box-shadow:0 28px 100px #183e4240;padding:30px}dialog::backdrop{background:#102e3d70;backdrop-filter:blur(6px)}.dialog-heading h2{color:#173d42;font-size:24px}.dialog-heading button{border-radius:50%;background:#eef4ef;color:#557b71}
.mobile-shell{max-width:680px;padding:30px 24px 105px}.mobile-shell header{border-bottom:1px solid #dce7e0;padding-bottom:23px;margin-bottom:28px}.mobile-shell h1{font-size:36px;letter-spacing:-1.5px}.worker-day-hub,.scan-banner{background:linear-gradient(130deg,#174c48,#176b61);border-radius:22px;box-shadow:0 12px 28px #176b611f}.worker-day-hub input{background:#ffffff18!important;color:white!important;border-color:#ffffff40!important}.worker-week a.selected{background:#a9e8d6;color:#174c48}.worker-metrics article{border-color:#dfe8e5;border-radius:16px;padding:19px;background:white}.worker-metrics strong{color:#176b61}.mobile-shift{padding:26px;margin-top:23px}.mobile-shift h2{font-size:26px}.task-button{border-radius:12px;background:#f5f9f6;border:1px solid #e1ebe4;font-size:14px;padding:16px;min-height:52px}.task-button.done{background:#e9f5ed;color:#176b61}.worker-bottom-nav{background:#ffffffed;border-top:1px solid #dbe7df;backdrop-filter:blur(15px);padding-bottom:max(10px,env(safe-area-inset-bottom));box-shadow:0 -6px 24px #183e4208}.worker-bottom-nav a{font-size:11px;color:#496e64}.worker-bottom-nav span{color:#176b61}.upcoming-duty{border-color:#e1e9e4;border-radius:14px}.duty-date{background:#eaf4ee;color:#176b61}.glass-mobile-summary{background:#eaf4ee;border-radius:16px;color:#176b61}.glass-mobile-stop{padding:26px}
.auth-shell{background:#f5f7f5}.auth-story{background:linear-gradient(140deg,#164d49,#174257);border-radius:0 32px 32px 0}.auth-story h1{line-height:1.2}.auth-story em{color:#a9e8d6}.auth-card{border-radius:24px}.client-card{border-color:#dfe8e5;box-shadow:0 15px 55px #153e4210;border-radius:26px}.client-symbol{background:#e7f4ed;color:#176b61}.client-card>p{font-size:14px}.client-privacy{font-size:11px}.client-card h1{font-size:36px}.qr-notice{border-radius:24px}
.control-main .control-panel,.control-main .control-stat{box-shadow:var(--product-shadow)}.control-topbar{background:#ffffffed}.control-sidebar nav a:hover{background:#edf5ef}
@media(min-width:701px){.sidebar{width:244px}.workspace{margin-left:244px;width:calc(100% - 244px)}}
@media(max-width:1000px){.workspace-body{padding:28px 24px}.stats-grid,.location-overview{gap:12px}.stats-grid>article,.location-overview>article{padding:22px}.settings-card{padding:25px}}
@media(max-width:700px){body{font-size:14px}.workspace-body{padding:23px 17px 32px}.premium-header{height:72px;padding:0 17px}.page-heading{gap:17px;flex-wrap:wrap;margin:25px 0}.page-heading h1{font-size:29px;letter-spacing:-1px;line-height:1.25}.page-heading .button{min-height:42px;font-size:12px;padding:11px 15px}.stats-grid,.location-overview{gap:12px}.stats-grid>article,.location-overview>article{padding:19px}.stats-grid strong,.location-overview strong{font-size:32px}.stats-grid small,.location-overview small{font-size:10px}.app-shell .panel{border-radius:17px}.team-member{padding:24px}.team-member-actions{flex-wrap:wrap;gap:14px;font-size:12px}.settings-card{padding:24px}.app-shell input,.app-shell select,.app-shell textarea,.mobile-shell input,.mobile-shell select,.auth-shell input,.client-shell input,.client-shell select,.client-shell textarea,dialog input,dialog select,dialog textarea{font-size:16px}.mobile-shell{padding:23px 17px 105px}.mobile-shell h1{font-size:32px}.mobile-shell header .brand{font-size:26px}.mobile-shift{padding:23px}.worker-day-hub{padding:23px}.worker-metrics{gap:9px}.worker-metrics article{padding:15px 11px}.worker-metrics small{font-size:10px}.worker-metrics strong{font-size:26px}.client-card{padding:28px 24px}.client-card h1{font-size:31px}.auth-story{border-radius:0}.calendar-toolbar{padding:16px;gap:12px}.calendar-event{font-size:11px}dialog{padding:25px;max-width:calc(100vw - 28px)}.sidebar nav a{font-size:13px}.sidebar{width:285px;max-width:85vw}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.app-shell .location-overview>article.location-overview-accent{background:linear-gradient(135deg,#164e49,#176b61);border-color:transparent;color:white}.app-shell .location-overview>article.location-overview-accent strong{font-size:22px;letter-spacing:-.6px;color:white}
.auth-story,.auth-story h1,.auth-story .brand{color:#fff}.auth-story p{color:#c7ddd7}.auth-story em{color:#a9e8d6}
@media(max-width:700px){.app-shell .sidebar{width:100%;max-width:none}.workspace-drawer{width:min(320px,88vw)}}

