*{box-sizing:border-box}body{margin:0;background:#f5f6f9;color:#202633;font:15px system-ui,-apple-system,Segoe UI,sans-serif}a{color:#e65e18;text-decoration:none}aside{position:fixed;inset:0 auto 0 0;width:242px;background:#151d2c;color:white;padding:28px 20px}.brand{font-size:24px;font-weight:900;letter-spacing:-1px}.brand span{color:#ff762c}aside small{color:#8d9ab0;letter-spacing:2px;font-size:10px}nav{display:grid;gap:8px;margin-top:48px}nav a{padding:13px;border-radius:10px;color:#c7d0df}nav a:hover{background:#273347;color:white}.asidefoot{position:absolute;bottom:25px;font-size:13px}.content{margin-left:242px;padding:38px;max-width:1650px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}header small{color:#8690a0;font-size:11px;letter-spacing:1.5px}h1{font-size:30px;margin:7px 0}h2{font-size:19px;margin:0 0 20px}.pill{border:1px solid #dce1e9;border-radius:50px;padding:9px 13px;color:#596474;font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:25px}.stat,section{background:white;border:1px solid #e8ebf0;border-radius:15px;padding:25px;box-shadow:0 3px 12px #20263305}.stat small{display:block;color:#7c8695}.stat strong{display:block;font-size:34px;margin-top:13px}.columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);gap:20px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}td,th{padding:15px 11px;border-bottom:1px solid #edf0f3}th{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#8590a0}td{font-size:13px}.tag{background:#f0f2f6;padding:5px 9px;border-radius:6px;font-size:12px}.urgent{background:#ffe7e2;color:#b32e1c}label{display:block;color:#626e7f;font-size:13px;margin:14px 0}input,select,textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #dce2eb;border-radius:8px;font:inherit;background:white;color:#222}textarea{min-height:95px}button{border:0;background:#fa6c24;color:white;border-radius:9px;padding:12px 18px;font-weight:700;cursor:pointer}.inline{display:flex;gap:10px;align-items:center}.inline select{max-width:220px}.note{border-top:1px solid #eee;padding:14px 0}.auth{max-width:420px;margin:12vh auto;background:white;padding:35px;border-radius:18px;box-shadow:0 15px 60px #17203317}.auth input{margin:13px 0}.auth button{width:100%}.error{color:#bb3020}@media(max-width:850px){aside{position:relative;width:auto;padding:16px}.asidefoot{position:static}nav{display:flex;flex-wrap:wrap;margin-top:12px}.content{margin:0;padding:20px}.stats{grid-template-columns:repeat(2,1fr)}.columns{grid-template-columns:1fr}header{align-items:start}.pill{display:none}}.stack{display:grid;gap:20px;align-content:start}.two{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.pipeline{display:grid;grid-template-columns:repeat(5,minmax(195px,1fr));gap:14px;overflow:auto}.lane{padding:17px;min-height:300px;background:#f9fafc}.lane h2{font-size:16px}.deal{background:white;border:1px solid #e4e8ee;border-radius:12px;padding:13px;margin:12px 0}.deal p{color:#788392;font-size:12px}.deal select{font-size:12px;padding:7px}.muted{color:#8993a1;font-size:12px}.alert{background:#fff0e8;border:1px solid #ffcbb1;color:#8b390f;padding:12px 18px;border-radius:10px;margin-bottom:18px}.compact{margin:0}.secondary{background:#edf1f6;color:#354156;font-size:12px;padding:7px 10px}@media(max-width:850px){.two{grid-template-columns:1fr}.pipeline{grid-template-columns:repeat(5,215px)}}

.inbox-filters{display:grid;grid-template-columns:minmax(180px,2fr) repeat(3,minmax(105px,1fr)) auto auto auto;gap:12px;align-items:end}.inbox-filters label{margin:0}.inbox-filters button{height:44px}.inbox-filters>a{padding:12px}.inbox-check{display:flex!important;gap:7px;align-items:center;white-space:nowrap}.inbox-check input{width:auto;margin:0}.inbox-head{margin-bottom:18px}.match-alert{border:1px solid #ffc78c;background:#fff7ed;padding:16px;border-radius:12px;margin:15px 0}.match-alert p{margin:8px 0}@media(max-width:1150px){.inbox-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.inbox-filters{grid-template-columns:1fr}}

.mail-workspace .mail-good{padding:14px 18px;background:#e8f8ef;border:1px solid #8ed3ac;border-radius:10px;margin-bottom:18px}.mail-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:16px 0}.mail-template{border:1px solid #e0e6ed;padding:16px;border-radius:12px;background:#fff}.mail-template p{margin:5px 0}.mail-workspace details{margin-top:24px;padding:14px;border:1px solid #ddd;border-radius:12px}.mail-workspace summary{cursor:pointer;font-weight:700}

/* v1.2 email workspace */
.mail-compose-grid{display:grid;grid-template-columns:minmax(0,760px);gap:18px;margin-bottom:20px}
.mail-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.mail-settings-grid section{min-width:0}
.mail-settings-intro{margin-bottom:18px}
.signature-preview{border:1px solid #d9e1eb;border-radius:14px;background:#fff;display:flex;align-items:center;gap:24px;padding:22px;flex-wrap:wrap;font-size:14px;line-height:1.8}
.signature-preview img{object-fit:contain;max-height:110px}
@media(max-width:880px){.mail-settings-grid{grid-template-columns:1fr}}

.email-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.email-tab{padding:10px 16px;background:#fff;border:1px solid #d9e1eb;border-radius:12px;text-decoration:none;color:#25364c;font-weight:650}
.email-tab.active{background:#18283e;color:white}
.email-inbox-grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(340px,1.15fr);gap:18px}
.email-inbox-grid section{min-width:0}
.email-inbox-grid table td{font-size:13px;max-width:200px;overflow-wrap:anywhere}
@media(max-width:950px){.email-inbox-grid{grid-template-columns:1fr}}

/* v1.4: fixed sidebar clipping and overlapping staff footer */
aside{display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
aside nav{display:flex;flex-direction:column;gap:2px;margin-top:26px;flex:0 0 auto}
aside nav a{padding:10px 12px;line-height:1.25;border-radius:9px;font-size:13px}
aside .asidefoot{position:static;margin-top:auto;padding-top:22px;flex-shrink:0;overflow-wrap:anywhere}
.navlabel{font-size:10px;letter-spacing:1.5px;color:#8294ad;font-weight:800;margin:17px 10px 5px}
@media(max-width:850px){aside{overflow:visible}aside nav{flex-direction:row;flex-wrap:wrap;margin-top:14px}.navlabel{width:100%;margin:12px 4px 0}.asidefoot{margin-top:10px!important}}

/* v1.5 navigation and mail workspace */
.mail-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.mail-save-draft{background:#e9eef5!important;color:#21314a!important}.ot-menu-toggle{display:none}aside{overflow-y:auto;overscroll-behavior:contain}aside nav{padding-bottom:18px}aside .asidefoot{position:static;margin-top:auto;padding:16px 20px;background:#151d2c}aside nav a{display:block;line-height:1.4}body{min-height:100vh}
@media(max-width:760px){.ot-menu-toggle{display:inline-block;margin-bottom:14px;background:#152136;color:white;border:0;padding:10px 14px;border-radius:8px}aside{transform:translateX(-105%);transition:transform .2s ease;z-index:99;position:fixed!important;top:0;bottom:0;width:245px!important}body.ot-nav-open aside{transform:translateX(0)}main.content{margin-left:0!important;padding:18px!important}}

/* v1.6 restaurant intake */
.intake-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;flex-wrap:wrap}.intake-head h2{font-size:26px;margin:0}.intake-head p{color:#718096}.intake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.intake-grid section{min-width:0}.product-picks{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.product-picks label{border:1px solid #dce3ec;border-radius:10px;padding:10px 13px;display:flex;gap:7px;align-items:center}.product-picks input{width:auto}.ot-primary-link{display:inline-block;background:#fff3e9;border-radius:9px;padding:9px 12px;color:#d85715;text-decoration:none;font-weight:700}.onboard-progress{height:13px;border-radius:12px;background:#e4eaf0;overflow:hidden;margin-bottom:20px}.onboard-progress>div{height:100%;background:#ef752f;transition:width .2s}.onboard-step{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #e7ecf2}.onboard-step .step-toggle{width:35px;height:35px;padding:0;border-radius:50%;background:#f1f4f8;color:#263445}.onboard-step .step-toggle.done{background:#e2f7ea;color:#167f4a}.onboard-step small{margin-left:auto;color:#8290a0}.onboard-step span{font-weight:600}@media(max-width:880px){.intake-grid{grid-template-columns:1fr}}

/* v1.7 restaurant sales */
.free-pos-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 30px;background:linear-gradient(120deg,#17253c,#254465);color:white;border-radius:17px;margin-bottom:20px;flex-wrap:wrap}.free-pos-banner h2{color:white;font-size:24px;margin:7px 0}.free-pos-banner p{color:#dbe8f7;margin:0;max-width:750px}.free-pos-banner small{letter-spacing:2px;color:#ffae79}.sales-add{background:#ff6a29;color:white;padding:13px 20px;border-radius:10px;text-decoration:none;font-weight:700}.free-pos-callout{padding:14px 16px;background:#e9f8f0;border:1px solid #b6e3ca;border-radius:12px;margin:12px 0;color:#175c3e}.free-pos-callout p{margin:5px 0 0;font-size:13px}.sales-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}.sales-stats>div{background:white;border:1px solid #e1e7ef;border-radius:14px;padding:20px}.sales-stats small,.sales-stats strong{display:block}.sales-stats strong{font-size:30px;margin-top:6px;color:#1a2c44}.sales-stages{display:flex;flex-wrap:wrap;gap:12px}.sales-stages a{flex:1;min-width:100px;text-align:center;padding:16px;background:#f3f6fa;border-radius:12px;text-decoration:none;color:#223651}.sales-stages strong,.sales-stages span{display:block}.sales-stages strong{font-size:25px}.sales-panels{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.sales-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #e6ebf1}.sales-row small{display:block;color:#65768b;margin-top:5px}.sales-inline-form{display:grid;grid-template-columns:minmax(130px,1fr) 145px 145px auto;gap:7px;align-items:center}.sales-inline-form input,.sales-inline-form select{min-width:0;margin:0}.sales-inline-form button{margin:0;white-space:nowrap}@media(max-width:900px){.sales-stats{grid-template-columns:repeat(2,1fr)}.sales-panels{grid-template-columns:1fr}.sales-inline-form{grid-template-columns:1fr 1fr}.sales-inline-form button{grid-column:1/-1}}

.crm-headline{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.crm-headline h2{margin:0}.crm-filter{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.crm-filter label{flex:1;min-width:180px}.crm-filter button{flex:0 0 auto}.crm-log{border-top:1px solid #e5eaf0;padding:13px 0}.crm-overdue{color:#bd241a;font-weight:800}.crm-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:20px}.crm-day-label{font-weight:800;text-align:center;color:#657184;padding:10px}.crm-calendar-day{min-height:115px;background:white;border:1px solid #e1e7f0;border-radius:10px;padding:8px;min-width:0;overflow-wrap:anywhere}.crm-calendar-day.outside{opacity:.45}.crm-event{background:#fff0e5;border-left:3px solid #ed6b26;border-radius:4px;margin-top:5px;padding:5px;font-size:11px;line-height:1.3}.crm-event.crm-done{background:#e5f7eb;text-decoration:line-through;border-color:#4f9b67}.crm-event small{font-size:10px;color:#657184}@media(max-width:720px){.crm-calendar{gap:2px}.crm-day-label{font-size:10px;padding:4px}.crm-calendar-day{min-height:80px;padding:3px;font-size:11px}.crm-event{font-size:9px;padding:3px}.crm-event small{font-size:9px}}

.ot-profile-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.ot-timeline-entry{border-left:3px solid #ff6b2a;padding:10px 14px;margin:12px 0;background:#f8fafc;border-radius:8px}.ot-timeline-entry p{white-space:normal;overflow-wrap:anywhere}.ot-timeline-entry small{color:#687589}.crm-headline{flex-wrap:wrap}
