/* Marquei — identidade da operação. Carregar após style.css. */
:root{
 --mq-ink:#22251f;--mq-muted:#60665c;--mq-line:#e2e6dc;--mq-canvas:#f7f8f4;
 --mq-nav:#22251f;--mq-yellow:#ffd84d;--mq-paper:#fff;
 --ink:var(--mq-ink);--muted:var(--mq-muted);--line:var(--mq-line);
 --canvas:var(--mq-canvas);--surface:var(--mq-paper);--cream:#fff;--radius:16px;
 --accent:var(--mq-yellow);--accent-soft:#fff7d9;--accent-line:#a48217;
 --green:var(--mq-ink);--green-deep:#151811;--green-light:#f0f2ea;
 --clay:#725600;--clay-light:#fff7d9;
 --shadow:0 3px 12px #22251f04;
}
body{background:var(--mq-canvas);color:var(--mq-ink);font-family:Inter,system-ui,sans-serif}
h1,h2,h3{color:var(--mq-ink);font-family:"Hanken Grotesk",Inter,sans-serif}
h1{font-size:30px;font-weight:800;letter-spacing:-.9px}
button,input,select,textarea,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #887018;outline-offset:3px}
::selection{background:#ffea9b;color:#22251f}
.shell{grid-template-columns:224px minmax(0,1fr)}
body:has(.operation-workspace) .shell:not(.sidebar-collapsed){grid-template-columns:224px minmax(0,1fr)}
.shell .sidebar,body:has(.operation-workspace) .shell:not(.sidebar-collapsed) .sidebar{width:224px;background:var(--mq-nav);border:0;color:#e0e4d9}
.sidebar .sidebar-brand-row{height:86px;padding:20px 18px;gap:8px}
.sidebar .brand{flex-shrink:0}
.sidebar .brand-logo{width:156px;height:40px;object-fit:contain;filter:none}
.sidebar .brand-icon{width:40px;height:40px;filter:none}
.sidebar .sidebar-collapse{color:#c0c7b7;padding:7px;border-radius:9px}
.sidebar .sidebar-collapse:hover{background:#383e30;color:white}
.sidebar .active-module-wrap{margin:5px 12px 18px}
.sidebar .active-module{background:#30362a;border:1px solid #49503f;border-radius:13px;padding:11px 10px;gap:9px}
.sidebar .active-module:hover{background:#3b4233;border-color:#697256}
.sidebar .active-module-icon{background:var(--mq-yellow);color:#22251f;width:34px;height:34px;border-radius:10px;flex-shrink:0}
.sidebar .active-module-copy strong{font-size:14px;font-weight:650;color:white}
.sidebar .active-module-copy small{font-size:11px;color:#c5ccbb}
.sidebar .module-chevron{color:#c0c7b7}
.sidebar .nav{padding:0 12px}
.sidebar .nav-heading{font-size:10px;font-weight:650;color:#bac2ad;letter-spacing:1.2px;margin:20px 10px 8px}
.sidebar .nav-button,body:has(.operation-workspace) .shell:not(.sidebar-collapsed) .nav-button{min-height:44px;padding:10px 11px;gap:11px;font-size:13px;font-weight:500;color:#e0e4d9;border:0;border-radius:10px;margin:4px 0}
.sidebar .nav-button svg{color:#bdc7b1;width:18px;height:18px}
.sidebar .nav-button:hover{background:#353c2e;color:white}
.sidebar .nav-button.active,body:has(.operation-workspace) .shell:not(.sidebar-collapsed) .nav-button.active{background:var(--mq-yellow);color:var(--mq-ink);box-shadow:none;font-weight:700}
.sidebar .nav-button.active .nav-label,.sidebar .nav-button.active svg{color:var(--mq-ink)}
.sidebar .nav-count{background:#444d38;color:#fff}
.sidebar .nav-button.active .nav-count{background:#22251f14;color:#22251f}
.sidebar .sidebar-footer{border-color:#424938;margin:12px;padding:15px 6px 0}
.sidebar .user-row strong{font-size:12px;color:#f5f7f0}
.sidebar .user-row p{font-size:11px;color:#c1c9b6}
.sidebar .user-row .avatar{background:#424c34;color:#fff7d9;width:34px;height:34px;border-radius:11px}
.sidebar .logout{color:#c1c9b6}
.sidebar-collapsed .sidebar{width:84px}
.topbar{height:72px;padding:0 26px;gap:18px;background:#fff;border-bottom:1px solid var(--mq-line)}
.unit-avatar{background:#f0f3e9;color:#5a654d;border:1px solid #e2e8d8;border-radius:12px}
.unit-card .eyebrow{font-size:10px;letter-spacing:1px;color:#646e5c}
.unit-card strong{font-size:13px;font-weight:650}
.global-search{background:#f7f8f4;border:1px solid #858f79;border-radius:11px;padding:9px 12px;max-width:460px}
.global-search input{font-size:12px;color:var(--mq-ink)}
.global-search input::placeholder{color:#68715e}
.global-search button{font-size:12px}
.header-profile-copy strong{font-size:12px;font-weight:650}
.header-avatar{background:#f1eddb;color:#605016;border-radius:12px}
.workspace{padding:26px;max-width:1760px}
.workspace-foot{padding:0 26px 24px}
.card,.stat-card,.settings-card{border:1px solid var(--mq-line);border-radius:16px;box-shadow:var(--shadow)}
.card-header{border-color:var(--mq-line);padding:20px}
.card-header h2{font-size:19px;font-weight:750;letter-spacing:-.35px}
.card-body{padding:20px}
.btn{min-height:44px;border:1px solid #d7ddce;border-radius:10px;background:white;color:#3d4535;font-size:13px;font-weight:650;box-shadow:none;padding:10px 14px;transition:background .15s,border-color .15s,box-shadow .15s}
.btn:hover{background:#f5f7ef;border-color:#adb99f}
.btn.primary{background:var(--mq-yellow);border-color:var(--mq-yellow);color:var(--mq-ink)}
.btn.primary:hover{background:#f6cc31;border-color:#e6bb27;box-shadow:0 3px 8px #c59a0d18}
.btn.compact{min-height:44px;border-radius:9px;padding:9px 12px;font-size:12px}
.btn.danger{color:#9d2e41;border-color:#edcbd2;background:#fff6f7}
.icon-button{width:44px;height:44px;border:1px solid #dce2d4;border-radius:10px;background:white;color:#58634e}
.icon-button:hover{background:#f1f4e9;border-color:#b4c0a5}
.field label{font-size:12px;font-weight:650;color:#454e3b}
.field input,.field select,.field textarea{border:1px solid #858f79;border-radius:10px;padding:11px 12px;font-size:14px;min-height:44px;background:white;color:#2c3425;transition:border-color .15s,box-shadow .15s}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#8c9b78;box-shadow:0 0 0 3px #e7ecdca6}
.field .help,.help{color:var(--mq-muted);line-height:1.6}
.form-footer{border-color:var(--mq-line)}
.stat-card .stat-value{font-family:"Hanken Grotesk",Inter,sans-serif;font-size:34px;font-weight:750;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.stat-card .stat-top{font-weight:550;color:#515d46}
.stat-card .stat-foot{color:#646e5b}
table{font-size:13px}
th{background:#f7f9f2;color:#5b6750;border-color:#e7ecdf;font-size:10px;font-weight:650;letter-spacing:.35px}
td{border-color:#edf0e7}
.badge{border-radius:5px;font-size:11px;font-weight:600}
dialog{border:1px solid #e2e7d9;border-radius:20px;box-shadow:0 28px 90px #22251f2e}
dialog::backdrop{background:#22251f69;backdrop-filter:blur(3px)}
.dialog-header{background:white;color:var(--mq-ink);border-bottom:1px solid var(--mq-line);padding:23px 25px}
.dialog-header h2{color:var(--mq-ink);font-size:25px;font-weight:750;letter-spacing:-.5px}
.dialog-header p{color:#606a56;font-size:13px}
.dialog-header .icon-button{background:#f3f6ec;border:0;color:#56634a;flex-shrink:0}
.dialog-content{padding:24px 25px}
.settings-card h2{font-size:20px;font-weight:750;letter-spacing:-.4px}
.settings-section-title p{color:var(--mq-muted)}

/* Calendário à esquerda; informações e próxima ação no mesmo campo de visão. */
.operation-workspace{max-width:1840px;padding:22px 24px 28px;background:var(--mq-canvas)}
.operation-heading{gap:16px;margin-bottom:18px;align-items:center}
.operation-heading h1{font-size:30px;font-weight:800;letter-spacing:-.9px}
.operation-heading p{display:block;font-size:12px;color:#646e5c;margin-top:4px;line-height:1.5}
.operation-heading .heading-actions{gap:8px}
.operation-heading .btn.primary{background:var(--mq-yellow);border-color:var(--mq-yellow);color:var(--mq-ink)}
.operation-heading .btn.primary:hover{background:#f6cc31;border-color:#e6bb27}
.operation-layout{grid-template-columns:350px minmax(0,1fr);gap:22px;align-items:start}
.operation-sidebar{gap:14px}
.operation-sidebar .card{border-color:var(--mq-line);border-radius:16px;box-shadow:var(--shadow)}
.operation-calendar-tools{gap:14px}
.operation-month{padding:14px;background:white}
.operation-month-heading{gap:5px;margin-bottom:10px}
.operation-month-heading .icon-button{width:44px;height:44px;min-width:44px;border:0;border-radius:10px;background:transparent;color:#536048}
.operation-month-heading .icon-button:hover{background:#f0f4e7}
.operation-month .operation-month-title input[type=month]{font-family:"Hanken Grotesk",Inter,sans-serif;font-size:18px;font-weight:750;letter-spacing:-.45px;min-height:44px;height:44px;color:var(--mq-ink);padding:4px 0;background:white}
.operation-calendar-grid{gap:3px;padding:0}
.operation-calendar-weekday{min-height:26px;background:transparent;color:#66705d;border-radius:0;font-size:10px;font-weight:650;letter-spacing:.4px}
.operation-calendar-day{border:1px solid transparent;border-radius:9px;min-height:48px;padding:4px;background:#f4f6ef;box-shadow:none;color:#505c44}
.operation-calendar-day strong{font-size:12px;line-height:16px;color:#57634b;font-weight:500}
.operation-calendar-day span{font-size:17px;line-height:22px;font-weight:650;color:#34402a;letter-spacing:-.3px}
.operation-calendar-day.has-reservations{background:#fff5d4;border-color:#f4e8bc}
.operation-calendar-day.has-reservations span{color:#6b5210}
.operation-calendar-day.outside:not(.selected){background:#fafbf7;border-color:transparent}
.operation-calendar-day.outside strong,.operation-calendar-day.outside span{color:#6b7462}
.operation-calendar-day:hover{background:#e9eedf;border-color:#c6d2b6}
.operation-calendar-day.today strong{background:#e6edda;color:#34402a;padding:1px 3px;border-radius:4px}
.operation-calendar-day.selected{background:var(--mq-yellow);border-color:#d2ad2d;padding:4px;box-shadow:inset 0 0 0 1px #d2ad2d}
.operation-calendar-day.selected strong,.operation-calendar-day.selected span{color:var(--mq-ink)}
.operation-calendar-day.selected.today strong{background:#fff3b7;color:var(--mq-ink)}
.operation-calendar-day span.large-total{font-size:14px}
.operation-calendar-footer{border-top:1px solid #edf0e6;margin-top:9px;padding-top:9px}
.operation-calendar-footer .operation-calendar-caption{font-size:11px;color:#626e57}
.operation-calendar-footer .btn{min-height:44px;border:0;background:#f2f5eb;color:#48543e;border-radius:9px;padding:9px 12px;font-size:12px}
.operation-daily-summary{padding:15px 17px}
.operation-daily-summary h2{font-size:14px;font-weight:650;color:#515d46;margin-bottom:8px}
.operation-daily-summary strong{font-family:"Hanken Grotesk",Inter,sans-serif;font-size:30px;font-weight:750;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.operation-daily-summary p,.operation-daily-summary small{color:#626e57;font-size:12px}
.operation-daily-summary .text-button{min-height:32px;font-size:12px;margin-top:5px}
.operation-queue-heading{padding:13px 15px;border-color:#edf0e7;gap:8px}
.operation-queue-heading h2{font-size:15px;font-weight:650;color:var(--mq-ink)}
.operation-queue-heading .counter{border:0;background:#eff4e5;color:#4f603e;border-radius:6px}
.operation-queue-empty{font-size:12px;color:#636e59;padding:17px 15px}
.operation-queue-row{padding:12px 15px;border-color:#edf0e7}
.operation-queue-row .text-button{font-size:14px;font-weight:650;color:var(--mq-ink)}
.operation-queue .operation-notes{font-size:12px;background:#f6f8f1;border:0;border-radius:7px}
.operation-day{background:transparent;border:0;border-radius:0;overflow:visible;box-shadow:none}
.operation-date-header{padding:16px 18px;background:white;border:1px solid var(--mq-line);border-radius:16px 16px 0 0;gap:10px}
.operation-date-header h2{font-size:23px;font-weight:750;letter-spacing:-.6px;line-height:1.3;color:var(--mq-ink)}
.operation-day-totals{font-size:12px;line-height:20px;color:#626e57;gap:4px 15px;margin-top:4px}
.operation-day-totals strong{font-size:15px;font-weight:700;color:var(--mq-ink);font-variant-numeric:tabular-nums}
.operation-date-header .date-control{gap:5px}
.operation-date-header .date-control button{width:44px;height:44px;border-color:#e1e7d8;background:#fff}
.operation-date-header .date-control input{font-size:13px;min-height:44px;max-width:142px;background:#f6f8f1;border:1px solid #858f79;border-radius:9px;padding:7px;color:var(--mq-ink)}
.operation-date-header .date-control .btn{width:auto;font-size:12px;border:0;background:#f1f5e8}
.operation-toolbar{padding:11px 18px;gap:10px;background:white;border:1px solid var(--mq-line);border-top:0;border-radius:0 0 16px 16px;margin-bottom:14px}
.operation-toolbar .search-box input{min-height:44px;border:1px solid #858f79;background:#f7f9f2;font-size:13px;border-radius:10px;padding-top:10px;padding-bottom:10px}
.operation-toolbar .filter-select{min-height:44px;border:1px solid #858f79;font-size:13px;border-radius:10px;color:#49573e}
.operation-groups{padding:0}
.operation-time-group{border:0;margin-bottom:14px}
.operation-time-group>header{background:transparent;border:0;padding:3px 2px 7px;gap:5px 10px}
.operation-time-group>header h3{font-size:17px;font-weight:750;color:#39482d;font-variant-numeric:tabular-nums;letter-spacing:-.3px}
.operation-time-group>header span{font-size:12px;color:#66725b;font-weight:400}
.operation-reservation{grid-template-columns:minmax(0,1fr) 298px;align-items:center;gap:14px;padding:10px 15px;margin:0 0 7px;background:white;border:1px solid #e2e7da;border-radius:13px;box-shadow:0 2px 5px #22251f02;transition:border-color .15s,box-shadow .15s}
.operation-reservation:hover{background:white;border-color:#b8c5a8;box-shadow:0 3px 10px #22251f07}
.operation-reservation.arrived{border-left:3px solid #9473ca}
.operation-client-heading{gap:3px 10px;margin:0;align-items:center}
.operation-client-title{display:flex;align-items:center;gap:6px 9px;flex-wrap:wrap;min-width:0}
.operation-client-heading .operation-client-name{font-size:15px;line-height:1.4;font-weight:700;letter-spacing:-.15px;min-height:26px;color:var(--mq-ink)}
.operation-state-chip{display:inline-flex;align-items:center;gap:5px;white-space:normal;border-radius:6px;padding:3px 6px;font-size:11px;line-height:1.4;font-weight:600;color:#4e5e40;background:#f1f5e9}
.operation-state-chip:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0}
.operation-state-chip.confirmed{background:#edf7f2;color:#276448}
.operation-state-chip.pending{background:#fff7df;color:#805c15}
.operation-state-chip.arrived{background:#f3effa;color:#674694}
.operation-state-chip.seated{background:#edf4fc;color:#315f8b}
.operation-state-chip.cancelled,.operation-state-chip.no_show{background:#fbf0f2;color:#9d3c50}
.operation-party{font-size:12px;line-height:1.5;color:#59664d;margin:0}
.operation-contact-links{gap:0 13px;margin:0;line-height:1.5}
.operation-contact-links a{min-height:28px;font-size:13px;line-height:1.5;color:#3b5837;font-weight:550;text-decoration:none}
.operation-contact-links a:hover{text-decoration:underline;color:#263f22}
.operation-client .operation-notes{margin:1px 0 0;padding:0;background:none;border:0;color:#50594a;font-size:12px;line-height:1.55}
.operation-client .operation-notes strong{color:var(--mq-ink)}
.operation-client .operation-author{font-size:11px;line-height:1.5;color:#66725b;margin-top:2px;gap:4px}
.operation-late{margin-top:3px;padding:3px 6px;font-size:11px;border:0;background:#fff0e7;color:#94502e;border-radius:5px}
.operation-row-controls{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) 44px;grid-template-areas:"table status edit" "actions actions actions";gap:5px 8px;align-items:end}
.operation-row-controls label:first-child{grid-area:table}
.operation-row-controls label:nth-child(2){grid-area:status}
.operation-row-controls label{gap:3px;font-size:10px;font-weight:650;color:#626e56;line-height:1.4}
.operation-row-controls select{min-height:44px;border:1px solid #858f79;border-radius:9px;font-size:12px;font-weight:500;padding:8px 7px;background:white;color:#46583a}
.operation-row-controls .icon-button{grid-area:edit;width:44px;height:44px;border-color:#dbe3d1;background:white;color:#5d7051;border-radius:9px}
.operation-row-controls .operation-next-actions{grid-area:actions;display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:0}
.operation-next-actions .btn{min-height:44px;font-size:12px;line-height:1.3;padding:8px 10px;border-color:#dbe3d1;color:#46583a;background:#f7f9f2;border-radius:9px;flex:0 1 auto}
.operation-next-actions .btn.primary{color:#fff;background:var(--mq-ink);border-color:var(--mq-ink)}
.operation-next-actions .btn.primary:hover{background:#373c31;border-color:#373c31}
.operation-row-controls .operation-next-actions .btn:disabled{color:#67725b;background:#f5f7f0;border-color:#e2e8d9;cursor:not-allowed;opacity:1}
.operation-status-select.confirmed{background:#f4faf7;color:#276448;border-color:#d7e9df}
.operation-status-select.pending{background:#fffaf0;color:#805c15;border-color:#eddfbc}
.operation-status-select.arrived{background:#f8f5fc;color:#674694;border-color:#e3d9ef}
.operation-status-select.seated{background:#f3f8fd;color:#315f8b;border-color:#d6e4f3}
.operation-status-select.cancelled,.operation-status-select.no_show{background:#fcf5f7;color:#9d3c50;border-color:#eedce1}
.operation-day .table-footer{border:0;border-radius:8px;background:transparent;color:#66725b;padding:8px 2px;font-size:11px}
.operation-day .table-footer a{font-size:11px;color:#4a603e}
.operation-daily-summary .text-button{color:var(--mq-ink)}

@media(min-width:1800px){.operation-layout{grid-template-columns:360px minmax(0,1fr);gap:24px}.operation-reservation{grid-template-columns:minmax(0,1fr) 310px}}
@media(max-width:1250px){.operation-reservation{grid-template-columns:minmax(0,1fr);gap:9px}.operation-row-controls{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) 44px}.operation-date-header h2{font-size:20px}}
@media(min-width:740px) and (max-width:1120px){
 .operation-workspace{padding:18px 18px 24px}
 .operation-heading{margin-bottom:14px}.operation-heading h1{font-size:25px}.operation-heading p{display:none}
 .operation-layout,.operation-layout.show-calendar{grid-template-columns:350px minmax(0,1fr);gap:14px}
 .operation-date-header{padding:12px;gap:8px}.operation-date-header h2{font-size:18px}
 .operation-toolbar{padding:10px 12px;gap:8px;margin-bottom:11px}
 .operation-toolbar .filter-select{max-width:136px;flex-basis:136px;font-size:13px}
 .operation-reservation{padding:11px 12px;gap:9px}
 .operation-client-heading .operation-client-name{min-height:32px;font-size:15px}
 .operation-contact-links a{min-height:44px;font-size:14px}
 .operation-party{font-size:13px}.operation-client .operation-notes{font-size:13px}
 .operation-row-controls select{font-size:14px}
 .operation-state-chip{font-size:12px}.operation-client .operation-author{font-size:12px}
 .operation-shell .global-search{max-width:280px;background:#f7f9f2}
}
@media(max-width:739px){
 .operation-workspace{padding:16px 12px 22px}.operation-heading{margin-bottom:13px;gap:9px}.operation-heading h1{font-size:24px}.operation-heading p{display:none}
 .operation-heading .heading-actions .btn{font-size:12px;padding:9px 10px}
 .operation-layout,.operation-layout.show-calendar{grid-template-columns:minmax(0,1fr);gap:14px}
 .operation-date-header{padding:13px 12px;gap:9px}.operation-date-header h2{font-size:19px}
 .operation-toolbar{padding:10px 12px;margin-bottom:12px}.operation-toolbar .search-box input,.operation-toolbar .filter-select{font-size:16px}
 .operation-reservation{grid-template-columns:minmax(0,1fr);padding:13px 12px;gap:10px}
 .operation-client-heading .operation-client-name{font-size:16px;min-height:44px}
 .operation-state-chip{font-size:12px}.operation-party{font-size:13px}
 .operation-contact-links a{min-height:44px;font-size:14px}
 .operation-client .operation-notes{font-size:13px}.operation-client .operation-author{font-size:12px}
 .operation-row-controls select{font-size:16px}.operation-row-controls label{font-size:12px}
 .operation-next-actions .btn{flex:1;min-width:110px;font-size:13px}
 .operation-month{padding:12px}.operation-calendar-day{min-height:52px}.operation-calendar-day strong{font-size:12px}.operation-calendar-day span{font-size:18px}
 .topbar{padding:0 14px}.global-search{display:none}
 .dialog-header{padding:20px}.dialog-content{padding:20px}.field input,.field select,.field textarea{font-size:16px}
}
@media(max-width:400px){.operation-month{padding:10px 6px}.operation-calendar-grid{gap:2px}.operation-calendar-day{min-height:50px}}
@media(prefers-reduced-motion:reduce){.btn,.field input,.field select,.field textarea,.operation-reservation{transition:none}}
