@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--forest:#172c27;--deep:#123f32;--sage:#829a82;--sage-bg:#eaf0e6;--sand:#c09b60;--sand-bg:#f5ecdd;--plum:#74465f;--plum-bg:#eee5ee;--ivory:#f6f3ec;--ink:#1c2928;--muted:#75807c;--line:#e5e5dd;--white:#fffefb;--sidebar:216px;--shadow:0 5px 24px #25392e04}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--ivory);font-family:'DM Sans',sans-serif;font-size:14px;line-height:1.5}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button,input,select{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid var(--sage)}button{color:inherit}button svg{flex-shrink:0}a{color:var(--deep)}svg.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.sidebar{width:var(--sidebar);position:fixed;inset:0 auto 0 0;background:linear-gradient(145deg,#203a31,#122b25 70%);color:#f5f4ec;display:flex;flex-direction:column;z-index:20;overflow:hidden}.brand{padding:31px 27px 22px;text-align:center}.brand-name{font-family:Georgia,serif;font-size:34px;letter-spacing:1px;line-height:1.1}.brand small{display:block;font-size:9px;letter-spacing:3.5px;margin-top:9px}.brand .grapes{width:38px;height:45px;margin:25px auto 11px;opacity:.9}.nav{display:grid;gap:7px;padding:15px 13px}.nav button{display:flex;align-items:center;gap:16px;padding:13px 16px;background:none;border:1px solid transparent;border-radius:8px;text-align:left;color:#e3e8df;font-size:14px;transition:.2s}.nav button:hover{background:#ffffff0c}.nav button.active{background:#819a7d9c;border-color:#c1ceb63d;color:white;box-shadow:inset 0 1px #dce8d51a}.sidebar-art{position:absolute;bottom:70px;left:-125px;width:490px;height:230px;object-fit:cover;object-position:left bottom;mix-blend-mode:screen;filter:invert(1) sepia(1);opacity:.13;pointer-events:none}.sidebar-foot{margin-top:auto;padding:25px 26px;font-size:10px;letter-spacing:.5px;color:#c2cbbf;border-top:1px solid #d8c3a223;z-index:1}.sidebar-foot span{display:block;color:#ebedde;font-size:12px;margin-top:4px}.workspace{margin-left:var(--sidebar);min-height:100vh}.topbar{height:72px;border-bottom:1px solid #dfdfd5;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:#fbf9f4bd}.breadcrumb{color:var(--muted);font-size:12px;display:flex;gap:12px;align-items:center}.breadcrumb strong{color:var(--ink);font-weight:500}.top-actions{display:flex;align-items:center;gap:22px}.season-select{border:1px solid #dcded4;background:transparent;padding:9px 27px 9px 13px;border-radius:6px;font-size:11px;color:#3b4841;max-width:240px}.profile{display:flex;gap:10px;align-items:center;background:none;border:0;border-left:1px solid var(--line);padding:0 0 0 20px;text-align:left}.avatar{width:34px;height:34px;background:#e8ddcd;display:grid;place-items:center;border-radius:50%;font-size:11px;font-weight:600}.profile strong{font-size:11px;display:block;font-weight:600}.profile small{font-size:10px;color:var(--muted)}.profile .icon{width:14px}.demo-badge{font-size:9px;letter-spacing:1px;text-transform:uppercase;border:1px solid #d4daca;background:#e9eddf;padding:4px 8px;border-radius:4px;color:#54654e;white-space:nowrap}.content{padding:31px 34px 26px;max-width:1760px;margin:auto}.page-head{min-height:114px;position:relative;display:flex;align-items:flex-start;justify-content:space-between;padding:7px 0 23px;isolation:isolate}.head-copy{z-index:1}.eyebrow{font-size:9px;font-weight:600;letter-spacing:3px;color:#758078;text-transform:uppercase;margin-bottom:9px}.page-head h1{font-family:Manrope,sans-serif;font-weight:750;font-size:34px;letter-spacing:-1.5px;line-height:1.2;margin:0 0 12px}.page-head p{font-size:12px;color:var(--muted);margin:0}.header-art{position:absolute;right:0;top:-19px;width:49%;height:119px;object-fit:cover;object-position:50% 60%;mix-blend-mode:multiply;opacity:.47;z-index:-1;mask-image:linear-gradient(to right,transparent,black 23%);pointer-events:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:9px 15px;min-height:38px;border:1px solid #d9dcd2;background:#fffdfa;border-radius:6px;font-size:11px;white-space:nowrap;transition:.15s;box-shadow:0 1px 2px #00000002}.btn:hover{background:#eeeee6;border-color:#b8c3b4}.btn .icon{width:16px;height:16px}.btn.primary{background:var(--deep);border-color:var(--deep);color:#fff}.btn.primary:hover{background:#245642}.btn.plum{background:var(--plum);border-color:var(--plum);color:#fff}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none}.btn.danger{color:var(--plum);border-color:#b991a6}.btn.square{padding:9px;min-width:37px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:13px;margin:7px 0 19px;flex-wrap:wrap}.toolgroup{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.date-title{font-size:12px;font-weight:550;min-width:160px;text-align:center}.segmented{display:flex;border:1px solid #d7dcd1;border-radius:6px;overflow:hidden;padding:3px;background:#f9f8f3}.segmented button{border:0;border-radius:4px;background:transparent;color:#657369;font-size:11px;padding:7px 18px}.segmented button.active{color:white;background:var(--deep);box-shadow:0 1px 3px #162f2133}.panel{background:#fffefbcc;border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow)}.schedule-layout{display:grid;grid-template-columns:minmax(0,1fr) 238px;gap:15px;align-items:stretch}.calendar-scroll{overflow:auto;border-radius:9px;background:var(--white);border:1px solid var(--line)}.calendar{width:100%;min-width:730px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:11px}.calendar th{height:52px;text-align:center;font-weight:600;background:#fffefa;border-right:1px solid #efeee7;font-size:11px}.calendar th:first-child{width:170px;text-align:left;padding-left:17px}.calendar th span{display:block;font-size:10px;font-weight:400;margin-top:3px;color:#738074}.calendar td{height:34px;border-bottom:1px solid #fffefb;border-right:1px solid #fffefb;text-align:center}.calendar td:first-child{text-align:left;padding:0 14px;font-size:10px;font-weight:500}.calendar tr.front td{background:#ecf0e6}.calendar tr.kitchen td{background:#f7efdf}.calendar tr.reservations td{background:#eee4ed}.calendar .department td{height:33px;text-align:left!important;padding-left:14px!important;font-size:12px!important;border-left:4px solid var(--sage);font-weight:650!important;background:#e1e8db!important}.calendar .department.kitchen td{background:#eee2c9!important;border-color:var(--sand)}.calendar .department.reservations td{background:#e7d9e7!important;border-color:var(--plum)}.department .count{margin-left:9px;border-radius:20px;background:#8ca08573;padding:1px 6px;color:#fff;font-size:9px;font-weight:500}.department.kitchen .count{background:#be9b62}.department.reservations .count{background:#9b7393}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--sage);margin-right:8px}.dot.kitchen{background:var(--sand)}.dot.reservations{background:var(--plum)}.shift-input{display:block;border:1px solid transparent;background:#8098750e;width:calc(100% - 8px);height:25px;margin:3px 4px;text-align:center;border-radius:3px;padding:2px;font-size:10px;color:#2c3d30}.shift-input:hover{border-color:#abb9a0;background:#fff9}.shift-input:focus{outline:none;border-color:#75926a;background:white;box-shadow:0 0 0 2px #7e9b7920}.shift-input.off{background:transparent;color:#8a9189}.shift-input.hol{background:#fff8;border:1px solid #b48798;color:#884c62;font-size:9px}.shift-input.override{font-weight:700;text-decoration:underline;text-decoration-color:#819775;text-underline-offset:4px}.weekly-panel{padding:22px 21px;position:relative;overflow:hidden;min-height:350px}.weekly-panel h2{font-family:Manrope;font-size:21px;letter-spacing:-.5px;margin:0 0 4px}.weekly-panel .date{font-size:11px;color:#738078}.weekly-placeholder{border-top:1px solid var(--line);margin-top:21px;padding-top:21px}.weekly-placeholder h3{font-size:13px;margin:0 0 7px;font-weight:600}.weekly-placeholder p{font-size:11px;color:#839087;max-width:160px}.weekly-panel img{position:absolute;width:350px;height:220px;object-fit:cover;object-position:left;bottom:0;right:-165px;opacity:.12;mix-blend-mode:multiply;pointer-events:none}.save-status{display:flex;gap:8px;align-items:center;font-size:10px;color:#6e7c6d;margin:17px 0}.save-status .icon{width:16px;height:16px;color:#467358}.footnote{font-size:10px;color:#879087}.home-head{min-height:145px}.home-head h1{font-size:37px;max-width:650px}.home-head .header-art{height:150px;width:48%;opacity:.45}.launch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.launch-card{position:relative;text-align:left;border:1px solid #cbd4c4;background:#e5ecdf;border-radius:9px;min-height:286px;padding:31px;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden;transition:transform .2s,box-shadow .2s}.launch-card:hover{transform:translateY(-4px);box-shadow:0 13px 30px #193d2810}.launch-card.kitchen{background:#f0e4d1;border-color:#ddc9aa}.launch-card.reservations{background:#e9dfeb;border-color:#d7c4d6}.launch-card>.icon{width:46px;height:46px;stroke-width:1.1;color:#295440;margin:9px 0 26px}.launch-card.kitchen>.icon{color:#9b7234}.launch-card.reservations>.icon{color:#78435e}.launch-card h2{font-family:Manrope;font-size:27px;margin:0 0 8px;font-weight:750;letter-spacing:-1px}.launch-card p{font-size:12px;max-width:240px;margin:0 0 32px;color:#6f796d}.launch-card .open{margin-top:auto;display:flex;align-items:center;gap:20px;padding:8px 16px;background:#28543d;color:#fff;border-radius:5px;font-size:11px}.launch-card.kitchen .open{background:#b18c53}.launch-card.reservations .open{background:#794961}.card-vine{position:absolute;right:-25px;top:-10px;width:200px;height:180px;object-fit:cover;object-position:left;opacity:.13;mix-blend-mode:multiply;mask-image:linear-gradient(to left,black,transparent);pointer-events:none}.season-strip{padding:25px 30px;margin-top:24px;display:flex;align-items:center;gap:23px;position:relative;overflow:hidden;min-height:120px}.season-strip .icon{width:35px;height:42px;color:var(--plum)}.season-strip h3{font-size:17px;margin:3px 0;font-weight:600}.season-strip p{font-size:12px;color:var(--muted);margin:0}.season-strip img{position:absolute;right:0;bottom:-18px;width:48%;height:150px;object-fit:cover;mix-blend-mode:multiply;opacity:.38;mask-image:linear-gradient(to right,transparent,black)}.home-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:22px;padding-top:18px;border-top:1px solid #dddccf;font-size:10px;color:#7a8579}.summary-cards{display:flex;gap:10px}.metric{padding:12px 18px;min-width:150px;border:1px solid #dce3d6;border-radius:7px;background:#eaf0e5;display:flex;align-items:center;gap:15px}.metric.sand{background:#f2e9da;border-color:#e7d8c1}.metric.plum{background:#eee5ed;border-color:#e4d7e1}.metric .icon{width:24px;height:24px;stroke-width:1.4;color:#46644b}.metric small{font-size:10px;color:#6c776b}.metric strong{display:block;font-family:Manrope;font-size:21px;font-weight:750;letter-spacing:-.7px}.tips-grid{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:16px}.panel-pad{padding:22px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.panel h2,.panel-title h2{font-family:Manrope;font-size:18px;font-weight:750;letter-spacing:-.6px;margin:0}.data-table{width:100%;border-collapse:collapse;font-size:11px}.data-table th{text-align:left;font-size:10px;padding:11px 12px;font-weight:650;color:#465349;background:#f5f5ef;border-bottom:1px solid var(--line);white-space:nowrap}.data-table td{padding:11px 12px;border-bottom:1px solid #eeeee7;height:48px}.data-table tbody tr:hover{background:#f7f8f0}.data-table input{width:100%;min-width:56px;max-width:115px;background:#fffdf9;border:1px solid #e1e3da;border-radius:4px;padding:5px 9px;font-size:11px}.data-table input:focus{outline:2px solid #b8c9ad;outline-offset:0}.data-table tfoot td{background:#edf1e7;font-weight:650;font-size:12px}.table-scroll{overflow:auto}.status-chip{display:inline-flex;gap:5px;align-items:center;color:#5f7b5b;background:#e9efdf;border-radius:4px;padding:3px 7px;font-size:9px;white-space:nowrap}.status-chip .icon{width:12px;height:12px}.pools p{font-size:11px;color:var(--muted);margin:6px 0 22px}.pool{padding:18px 17px;border:1px solid #dce3d7;background:#eaf0e5;border-radius:7px;margin-top:13px}.pool.kitchen{background:#f6eddf;border-color:#ebdfca}.pool-title{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600}.pool strong{font-family:Manrope;display:block;font-size:26px;letter-spacing:-.8px;margin:5px 0 13px}.bar{height:8px;background:#dbe3d5;border-radius:10px;overflow:hidden}.bar span{display:block;height:100%;background:var(--sage);border-radius:10px}.kitchen .bar{background:#e8dcc7}.kitchen .bar span{background:var(--sand)}.pool small{font-size:9px;color:#7a8575;display:block;margin-top:8px}.distribution{margin-top:19px}.tag{background:#e3ecde;color:#46644a;display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:4px;font-size:10px;white-space:nowrap}.tag.kitchen{background:#f3e7d3;color:#97723a}.tag.reservations{background:#ede0ec;color:#7b526e}.tag .dot{width:6px;height:6px;margin:0}.filter-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-tabs button{border:1px solid #dbddd4;border-radius:6px;padding:9px 14px;background:#fffcf7;display:flex;gap:7px;align-items:center;font-size:11px}.filter-tabs button.active{border-color:#799173;background:#eaf0e3}.filter-tabs small{background:#b0baac;color:white;padding:1px 5px;border-radius:20px;font-size:9px}.team-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px}.team-table td{height:64px}.team-table tbody tr{cursor:pointer}.team-table tr.selected{background:#e6eddf}.person-cell{display:flex;gap:11px;align-items:center;white-space:nowrap}.person-cell .avatar{width:32px;height:32px;background:#e4e9dd;font-size:10px}.details{padding:24px;position:relative;overflow:hidden;min-height:420px}.details-head{display:flex;align-items:center;gap:13px;padding-bottom:21px;border-bottom:1px solid var(--line)}.details-head .avatar{width:46px;height:46px;background:#b6c6af;font-size:16px}.details-head h2{font-size:19px}.details-head .tag{margin-top:5px}.detail-row{display:flex;justify-content:space-between;font-size:11px;margin:18px 0;color:#7a8479}.detail-row strong{font-weight:500;color:#354431}.details .btn{width:100%;margin-top:9px;position:relative;z-index:1}.details-art{height:160px;width:250px;object-fit:cover;object-position:left;position:absolute;bottom:0;right:-105px;opacity:.14;mix-blend-mode:multiply}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.setting-title{display:flex;gap:12px;align-items:center;margin-bottom:22px}.setting-title>.icon{width:35px;height:35px;background:#e4ebdf;color:#547951;border-radius:50%;padding:7px}.setting-title h2{font-size:18px}.setting-title p{font-size:11px;color:var(--muted);margin:4px 0 0}.field{display:grid;grid-template-columns:130px 1fr;gap:15px;align-items:center;margin:15px 0;font-size:11px}.field input,.field select,.form-input{width:100%;min-width:0;background:#fffdfa;border:1px solid #dce0d5;padding:10px 12px;border-radius:5px;color:#394638;font-size:12px}.field .fixed{padding:10px 12px;background:#f0f1e9;border-radius:5px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-row label{font-size:11px}.form-row input{margin-top:8px}.settings-grid .btn.full{width:100%;margin-top:17px}.history-strip{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:21px 24px;margin-top:18px}.history-strip h3{font-family:Manrope;margin:0;font-size:15px}.history-strip p{margin:4px 0 0;color:var(--muted);font-size:11px}.subtle{color:var(--muted);font-size:10px}.login{min-height:100vh;display:grid;place-items:center;padding:35px;position:relative;overflow:hidden;background:#f7f5ef}.login:before,.login:after{content:'';position:absolute;width:650px;height:650px;border-radius:50%;background:#e7ebdf70;left:-330px;top:-350px}.login:after{background:#eae1d770;left:auto;top:auto;right:-330px;bottom:-350px}.login-wrap{position:relative;width:420px;max-width:100%;text-align:center;z-index:1}.login-brand .grapes{width:49px;height:57px;margin:0 auto 12px;color:#658768}.login-brand h1{font-family:Georgia,serif;font-weight:400;font-size:37px;margin:0}.login-brand small{font-size:9px;letter-spacing:4px;color:#7e8b79}.login-card{background:#fffefc;border:1px solid #ecece3;border-radius:12px;padding:32px 32px 25px;text-align:left;margin-top:25px;box-shadow:0 15px 45px #283e2610}.login-card h2{font-family:Georgia,serif;font-weight:400;font-size:28px;text-align:center;margin:0 0 7px}.login-card p{font-size:12px;color:var(--muted);text-align:center;margin:0 0 26px}.login-card label{display:block;font-size:11px;font-weight:600;margin:16px 0 7px}.password-field{position:relative}.password-field input{padding-right:42px}.password-field button{position:absolute;right:6px;top:6px;background:none;border:0;color:#899286;padding:5px}.login-forgot{display:block;text-align:right;background:none;border:0;text-decoration:underline;font-size:10px;color:#617c5c;margin:10px 0 22px auto}.login-card .btn{width:100%;font-size:12px;padding:12px}.login-card .access-note{font-size:10px;margin:15px 0 0;color:#8b9586}.preview-entry{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);text-align:center}.preview-entry .btn{background:#edf1e6;border-color:#d9e1cf;color:#466141}.preview-entry small{display:block;color:#7a8676;font-size:10px;margin-top:8px}.login-footer{font-size:10px;color:#899281;margin-top:25px}.mobile-menu{display:none}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);padding:12px 21px;color:#fff;background:#203d2e;border-radius:7px;box-shadow:0 8px 40px #0002;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:100;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid var(--line);background:var(--white);border-radius:12px;width:470px;max-width:92vw;padding:28px;box-shadow:0 20px 100px #10281a30;color:var(--ink)}dialog::backdrop{background:#14261d65;backdrop-filter:blur(3px)}dialog h2{font-family:Manrope;font-size:22px;margin:0 0 7px;letter-spacing:-.6px}dialog p{color:var(--muted);font-size:12px}dialog label{font-size:11px;display:block;margin:14px 0 5px}dialog .form-input{margin-bottom:3px}dialog .modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:23px}dialog .form-row label{margin:0}.modal-close{float:right;border:0;background:none;padding:0;color:var(--muted)}.design-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:#75816c;padding:10px 0 0}.design-notice span{display:flex;align-items:center;gap:6px}.design-notice svg{width:12px;height:12px}.print-head{display:none}.empty-state{text-align:center;padding:55px;color:var(--muted);font-size:12px}.standalone-report{margin-top:15px}.selected-row{background:#e8edde!important}.month-select{border:1px solid #dadfd2;padding:9px 15px;border-radius:6px;background:#fffdf8;font-size:12px}.signin-note{background:#f1eee4;padding:10px;border-radius:5px;font-size:11px;margin-top:14px;color:#6d775f}.num{text-align:right;font-variant-numeric:tabular-nums}.login-card input:disabled{background:#f8f7f2}.hidden{display:none!important}
.season-strip .grapes{width:35px;height:44px;flex:0 0 35px;color:var(--plum)}
.week-sections{position:relative;z-index:1;margin-top:19px}.week-section{padding:15px 0;border-top:1px solid #e7e8e0}.week-section-head{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:10px}.week-section h3{display:flex;align-items:center;gap:7px;font-size:13px;margin:0;font-weight:650}.week-section h3 .icon{width:15px;height:15px}.week-add{display:grid;place-items:center;width:25px;height:25px;border:1px solid #dde2d7;border-radius:7px;background:#fbfcf7;color:#365545;cursor:pointer}.week-add .icon{width:13px;height:13px}.week-entry{display:block;width:100%;text-align:left;border:1px solid #e2e6dc;border-left:3px solid #71896d;border-radius:8px;background:#f0f3eb;padding:10px;margin-top:8px;color:#273c32;cursor:pointer;transition:box-shadow .15s}.week-entry:hover{box-shadow:0 3px 12px #263c2815}.week-entry strong{display:block;font-size:12px;line-height:1.45;margin:5px 0}.entry-date{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px;font-size:10px;color:#6e796c}.request-status{font-size:9px;color:#7a6240;background:#f0e4ce;padding:2px 5px;border-radius:4px}.entry-person{display:block;font-size:11px;margin-bottom:4px}.entry-detail{display:block;color:#798276;font-size:10px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.events .week-entry{background:#f8f1e4;border-color:#e9dfca;border-left-color:#b1955b}.special .week-entry{background:#f3eaf2;border-color:#e5d9e3;border-left-color:#855772}.week-help,.week-empty{font-size:10px;color:#7a8477;line-height:1.6}.week-help{border-top:1px solid #e7e8e0;padding-top:12px}.weekly-panel>.week-sections+img{opacity:.045}.day-markers{display:flex;justify-content:center;gap:3px;margin-top:5px}.day-marker{display:inline-grid;place-items:center;border:0;border-radius:4px;background:#eddfbf;color:#90733a;width:22px;height:19px;cursor:pointer}.day-marker.special{background:#e6d5e3;color:#7d506d}.day-marker .icon{width:12px;height:12px}.entry-form-note{font-size:11px;color:#748070;line-height:1.6}#week-entry-form textarea{resize:vertical}#week-entry-form label{display:block;font-size:12px;margin:13px 0 6px}#week-entry-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(min-width:1550px){.calendar td{height:38px}.shift-input{height:28px;font-size:11px}.calendar td:first-child{font-size:12px}.calendar th{font-size:12px}.schedule-layout{grid-template-columns:minmax(0,1fr) 260px}.page-head h1{font-size:39px}}
@media(max-width:1250px){:root{--sidebar:185px}.content{padding:25px}.topbar{padding:0 25px}.schedule-layout{grid-template-columns:minmax(0,1fr) 190px}.weekly-panel{padding:18px}.calendar th:first-child{width:145px}.team-layout{grid-template-columns:minmax(0,1fr) 240px}.data-table td,.data-table th{padding:10px 8px}.tips-grid{grid-template-columns:minmax(0,1fr) 235px}.summary-cards .metric{min-width:120px;padding:10px 13px}.launch-card{padding:25px}.field{grid-template-columns:105px 1fr}.profile span:not(.avatar){display:none}}
@media(max-width:1000px){.schedule-layout,.tips-grid{grid-template-columns:1fr}.weekly-panel{min-height:145px}.weekly-panel img{height:140px}.weekly-placeholder{margin-top:12px;padding-top:12px}.weekly-placeholder p{max-width:100%}.weekly-panel h2{font-size:17px}.weekly-placeholder h3{display:inline;margin-right:10px}.weekly-placeholder p{display:inline}.pools{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.pools>h2{width:100%}.pools>p{margin:0;width:100%}.pool{flex:1;margin:0}.pool strong{font-size:21px}.team-layout{grid-template-columns:1fr}.details{min-height:220px}.detail-row{max-width:320px}.details .btn{max-width:240px}.settings-grid{grid-template-columns:1fr}.header-art{width:40%;opacity:.28}.launch-grid{gap:12px}.launch-card h2{font-size:23px}.launch-card{padding:20px;min-height:265px}.top-actions{gap:10px}.demo-badge{display:none}.history-strip{flex-wrap:wrap}}
@media(max-width:720px){:root{--sidebar:220px}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0);box-shadow:10px 0 50px #0003}.workspace{margin-left:0}.mobile-menu{display:inline-flex}.topbar{padding:0 17px;height:62px}.breadcrumb{display:none}.profile{padding-left:10px}.season-select{max-width:180px;font-size:10px;padding:8px}.content{padding:21px 16px}.page-head{min-height:104px}.page-head h1{font-size:29px}.header-art{width:45%;top:0;height:95px;opacity:.25}.home-head h1{font-size:30px;max-width:280px}.home-head{min-height:150px}.home-head .header-art{width:60%;height:150px;opacity:.2}.launch-grid{grid-template-columns:1fr}.launch-card{min-height:170px;padding:23px;display:grid;grid-template-columns:50px 1fr;gap:0 15px}.launch-card>.icon{grid-row:1/4;margin:0;width:37px;height:37px}.launch-card h2{font-size:24px}.launch-card p{margin:5px 0 14px}.launch-card .open{justify-self:start;padding:6px 12px}.season-strip{padding:20px}.season-strip img{width:40%;opacity:.2}.season-strip h3{font-size:14px}.season-strip p{font-size:10px;max-width:220px}.summary-cards{width:100%;gap:7px}.metric{flex:1;min-width:0!important;padding:10px!important;gap:7px}.metric .icon{width:19px}.metric strong{font-size:16px}.metric small{font-size:9px}.toolbar{gap:12px}.toolgroup{gap:7px}.date-title{min-width:130px}.btn{padding:8px 11px;font-size:10px}.segmented button{padding:7px 12px}.panel-pad{padding:16px}.team-table{min-width:620px}.team-layout>.panel:first-child{overflow:hidden}.team-layout .table-scroll{overflow:auto}.filter-tabs button{padding:8px 10px}.form-row{gap:10px}.field{grid-template-columns:105px 1fr}.history-strip{padding:18px}.home-bottom{gap:10px}.login{padding:25px}.login-card{padding:26px}.design-notice{flex-wrap:wrap}.page-head p{max-width:250px}}
@media print{@page{size:landscape;margin:12mm}body{background:white}.sidebar,.topbar,.page-head,.toolbar,.weekly-panel,.save-status,.design-notice,#toast{display:none!important}.workspace{margin:0}.content{padding:0}.schedule-layout{display:block}.calendar-scroll{border:0;overflow:visible}.calendar{width:100%;min-width:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.calendar td{height:32px}.shift-input{border:0!important}.print-head{display:block;margin-bottom:15px;font-family:Georgia,serif;font-size:22px}.print-head span{float:right;font-family:'DM Sans',sans-serif;font-size:14px}.calendar th:first-child{width:175px}dialog{display:none!important}}
.calendar-scroll{align-self:start}
.calendar-day-heading{position:relative;display:flex;align-items:center;justify-content:center;min-height:52px;padding:4px 25px}.calendar-date-label{white-space:nowrap}.calendar-date-label>span{font-size:12px}.calendar th .day-markers{position:absolute;right:3px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:3px;margin:0;max-height:56px;overflow-y:auto}.calendar th .day-marker{flex-shrink:0}
.data-table th.num,.data-table td.num{text-align:right}
.brand.sidebar-brand{position:relative;height:207px;flex-shrink:0;padding:0}.sidebar-logo{position:absolute;top:28px;left:50%;transform:translateX(-50%);width:123px;max-width:66.67%;height:auto;aspect-ratio:184/112;mix-blend-mode:lighten}.sidebar-brand small{position:absolute;top:108px;left:0;right:0;margin:0}.brand.sidebar-brand .brand-wine{position:absolute;top:134px;left:50%;transform:translateX(-50%);margin:0}
.data-table input.tip-amount{width:80px;max-width:80px;min-width:0;font-variant-numeric:tabular-nums}.data-table input.tip-amount[aria-invalid="true"]{border-color:#a65068;outline-color:#a65068}
.login-brand .login-logo{display:block;width:100%;height:auto;margin:0 auto 10px;mix-blend-mode:multiply;clip-path:polygon(50% 16.5%,79.45% 82.6%,20.55% 82.6%)}.login-brand h1:has(.login-logo){line-height:0}.login-brand:has(.login-logo) small{display:block}
.sidebar-art{left:-28px;bottom:110px;width:240px;height:355px;object-fit:contain;object-position:center;filter:none;mix-blend-mode:normal;opacity:.65}.header-art,.home-head .header-art{object-fit:contain;object-position:right center;mask-image:none;opacity:.78;mix-blend-mode:multiply}.card-vine{right:-12px;top:-8px;width:155px;height:240px;object-fit:contain;object-position:right top;mask-image:none;opacity:.52;mix-blend-mode:multiply}.launch-card.front .card-vine{filter:grayscale(.5) sepia(.2) hue-rotate(45deg)}.launch-card.reservations .card-vine{filter:hue-rotate(270deg) saturate(.6)}.season-strip img{object-fit:contain;object-position:right center;mask-image:none;opacity:.68;bottom:0}.details-art{width:190px;height:235px;object-fit:contain;right:-24px;opacity:.5}.weekly-panel img{width:165px;height:240px;object-fit:contain;right:-22px;opacity:.4}.weekly-panel>.week-sections+img{opacity:.12}@media(max-width:720px){.header-art,.home-head .header-art{opacity:.3}.card-vine{height:175px;width:120px}.season-strip img{opacity:.25}}
@media screen{.calendar{min-width:900px;font-size:16px}.calendar th{font-size:14px;height:64px}.calendar th:first-child{width:195px}.calendar th>span:not(.day-markers){font-size:12px}.calendar td{height:48px}.calendar td:first-child{font-size:16px;line-height:1.4;padding:8px 14px}.calendar .department td{height:39px;font-size:14px!important}.shift-input{height:40px;min-height:40px;font-size:16px;padding:6px 3px;border-radius:5px}.shift-input.hol{font-size:16px}.shift-input:focus{box-shadow:0 0 0 3px #7e9b7938}.week-section h3{font-size:14px}}
.header-art,.home-head .header-art{object-fit:fill}
@keyframes vine-breeze{0%,100%{transform:rotate(-1.5deg) translate3d(0,0,0)}35%{transform:rotate(1.8deg) translate3d(-2px,2px,0)}70%{transform:rotate(-.6deg) translate3d(1px,4px,0)}}.launch-card .card-vine{transform-origin:90% 0;animation:vine-breeze 9s ease-in-out infinite;will-change:transform}.launch-card.kitchen .card-vine{animation-duration:11s;animation-delay:-3s}.launch-card.reservations .card-vine{animation-duration:10s;animation-delay:-6s}@media(prefers-reduced-motion:reduce){.launch-card .card-vine{animation:none;transform:none;will-change:auto}}
.brand .brand-wine{display:block;width:40px;height:52px;margin:20px auto 0;stroke-width:1.2}.home-head .head-copy>p{max-width:440px}@keyframes vine-breeze{0%,100%{transform:rotate(-5deg) translate3d(0,0,0) skewX(-1deg)}30%{transform:rotate(5.5deg) translate3d(-7px,7px,0) skewX(1deg)}65%{transform:rotate(-3deg) translate3d(3px,12px,0) skewX(-.5deg)}}.launch-card .card-vine{animation-duration:6s}.launch-card.kitchen .card-vine{animation-duration:7s}.launch-card.reservations .card-vine{animation-duration:6.5s}@media(prefers-reduced-motion:reduce){.launch-card .card-vine{animation:none;transform:none}}
.calendar .shift-input.off{background:#dce6ed;color:#29465a;border:1px solid #94aab9;font-weight:750;letter-spacing:.5px}.calendar .shift-input.hol{background:#ecd6df;color:#702848;border:1px solid #b77c95;font-weight:750;letter-spacing:.5px}
.calendar .outside-participation{background:#eeede8}.calendar .shift-input:disabled{opacity:.35;cursor:not-allowed;background:transparent}.calendar .shift-input.override{box-shadow:inset 0 -3px #b28a47;font-weight:700}.units-note{font-size:12px;color:#65746c;line-height:1.6;margin:12px 0}.units-note strong{color:#87672d}#employee-form>label,#participation-form>label{display:block;margin:14px 0 6px}#employee-form .form-row{margin-top:14px}#employee-form .form-row label{display:block;margin-bottom:6px}.returning-list{max-height:300px;overflow:auto;border-block:1px solid #e4e5dc;padding:8px 0}.returning-list label{display:flex;align-items:center;gap:10px;padding:9px 2px;font-size:14px}.returning-list input{accent-color:#164b3a;width:17px;height:17px}.returning-list small{margin-left:auto;color:#758074}.modal-actions{flex-wrap:wrap}

#shared-team [hidden] { display: none !important; }
#shared-events form[hidden] { display: none; }
