:root{--ink:#17202a;--muted:#667085;--line:#e4e7ec;--surface:#fff;--soft:#f5f7fa;--brand:#145c52;--brand-dark:#0d463f;--accent:#e8f4f1;--danger:#b42318;--shadow:0 6px 20px rgba(16,24,40,.07)}
*{box-sizing:border-box}body{margin:0;background:var(--soft);color:var(--ink);font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--brand)}.site-header{height:68px;background:#102a2a;color:#fff;position:relative;z-index:20}.header-inner{height:100%;max-width:1180px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:48px 1fr 48px;align-items:center}.brand{justify-self:center;color:#fff;text-decoration:none;font-size:1.25rem;font-weight:850;letter-spacing:-.02em}.header-placeholder{width:48px}.nav-menu{position:relative;justify-self:start}.nav-menu summary{list-style:none}.nav-menu summary::-webkit-details-marker{display:none}.menu-toggle{width:44px;height:44px;display:grid;align-content:center;gap:5px;padding:10px;border-radius:10px;cursor:pointer}.menu-toggle:hover,.nav-menu[open] .menu-toggle{background:#ffffff17}.menu-toggle:focus-visible,.cart-shortcut:focus-visible{outline:3px solid #8bd5c8;outline-offset:2px}.menu-toggle span{display:block;width:23px;height:2px;border-radius:2px;background:#fff;transition:transform .18s,opacity .18s}.nav-menu[open] .menu-toggle span:first-child{transform:translateY(7px) rotate(45deg)}.nav-menu[open] .menu-toggle span:nth-child(2){opacity:0}.nav-menu[open] .menu-toggle span:last-child{transform:translateY(-7px) rotate(-45deg)}.menu-panel{position:absolute;top:53px;left:0;width:min(340px,calc(100vw - 24px));max-height:calc(100vh - 82px);overflow-y:auto;padding:10px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:0 0 14px 14px;box-shadow:0 18px 45px rgba(16,24,40,.24);display:flex;flex-direction:column}.menu-panel a{display:flex;flex-direction:column;padding:11px 13px;border-radius:9px;color:var(--ink);text-decoration:none}.menu-panel a:hover{background:var(--accent)}.menu-panel a span{font-weight:780}.menu-panel a small{margin-top:1px}.menu-user{padding:9px 13px 14px;margin-bottom:5px;border-bottom:1px solid var(--line)}.menu-user small{margin-bottom:1px}.menu-section{padding:13px 13px 4px;color:var(--muted);font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em}.menu-logout{margin-top:8px;padding-top:10px;border-top:1px solid var(--line)}.menu-logout button{width:100%;padding:11px 13px;border:0;border-radius:9px;background:#fff1f0;color:var(--danger);font:inherit;font-weight:750;text-align:left;cursor:pointer}.cart-shortcut{position:relative;justify-self:end;width:44px;height:44px;display:grid;place-items:center;border-radius:10px;color:#fff}.cart-shortcut:hover{background:#ffffff17}.cart-shortcut svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.badge{position:absolute;top:2px;right:0;display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;background:#fff;color:#102a2a;border:2px solid #102a2a;border-radius:12px;font-size:.65rem;font-weight:850}.container{max-width:1180px;margin:0 auto;padding:44px 24px 70px;min-height:calc(100vh - 132px)}footer{text-align:center;color:var(--muted);padding:22px}h1{font-size:clamp(2rem,4vw,3rem);line-height:1.1;margin:.2em 0 .7em}h2{line-height:1.2}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.page-heading h1{margin:0}.eyebrow,.sku{text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:800;font-size:.78rem;margin:0 0 6px}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);padding:10px 16px;text-decoration:none;font:inherit;font-weight:750;cursor:pointer}.button:hover{box-shadow:0 2px 8px #0001}.button.primary{background:var(--brand);border-color:var(--brand);color:#fff}.button.primary:hover{background:var(--brand-dark)}.button.secondary{background:transparent}.button.large{padding:14px 20px}.search-form{display:flex;gap:10px;margin-bottom:24px}.search-form input{flex:1}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.card,.panel,.auth-card,.empty-state{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.card{display:flex;flex-direction:column;padding:24px}.card h2{margin:.2em 0}.description{color:var(--muted);flex:1}.product-meta{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;margin-top:10px}.product-meta strong{font-size:1.3rem}.stock{font-size:.85rem;color:var(--brand)}.stock.out{color:var(--danger)}.add-form{display:grid;grid-template-columns:auto 74px 1fr;align-items:center;gap:10px;margin-top:18px}.add-form label{font-size:.85rem}.auth-card{max-width:480px;margin:4vh auto;padding:32px}.auth-card.wide{max-width:620px}.auth-card h1{font-size:2.2rem}.stacked-form{display:flex;flex-direction:column;gap:9px}.stacked-form label{font-weight:700;margin-top:5px}input,textarea,select{width:100%;border:1px solid #cbd1da;border-radius:8px;padding:11px 12px;background:#fff;color:var(--ink);font:inherit}input:focus,textarea:focus,select:focus{outline:3px solid #b8ded6;border-color:var(--brand)}small,.muted{display:block;color:var(--muted);font-size:.86rem}.errorlist{color:var(--danger);margin:0;padding-left:20px}.messages{margin-bottom:20px}.message{padding:13px 16px;border-radius:9px;background:#e6f1ef}.message.error{background:#fee4e2;color:#912018}.message.success{background:#dcfae6;color:#067647}.table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}table{border-collapse:collapse;width:100%;min-width:650px}th,td{padding:17px 20px;text-align:left;border-bottom:1px solid var(--line)}th{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#fafafa}tfoot td{border:0;font-size:1.1rem;font-weight:800}.quantity-input{max-width:90px}.actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px}.empty-state{text-align:center;padding:55px 24px;grid-column:1/-1}.checkout-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:24px;align-items:start}.panel{padding:26px}.panel h2{margin-top:0}.summary-row{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.summary-total{display:flex;justify-content:space-between;font-size:1.25rem;padding-top:20px}.notice{padding:12px;background:#fffaeb;border-radius:8px;font-size:.9rem}.status{display:inline-flex;padding:6px 10px;border-radius:20px;background:#eee;font-size:.83rem;font-weight:800}.status-submitted{background:#eef4ff;color:#3538cd}.status-confirmed{background:#ecfdf3;color:#027a48}.status-processing{background:#fffaeb;color:#b54708}.status-completed{background:#e6f1ef;color:#145c52}.status-cancelled{background:#fee4e2;color:#b42318}.order-info{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:20px 0}.order-info>div{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:10px;padding:17px}.order-info span{color:var(--muted);font-size:.85rem}.back-link{display:inline-block;margin-bottom:20px}.notes{margin-top:20px}
.category-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.category-tab{padding:8px 15px;border:1px solid var(--line);border-radius:20px;background:#fff;color:var(--ink);text-decoration:none;font-weight:700}.category-tab.active{background:var(--brand);border-color:var(--brand);color:#fff}.intro{max-width:760px;color:var(--muted);margin:-12px 0 28px}.favorite-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.favorite-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.favorite-heading h2{margin:0}.favorite-items{list-style:none;padding:0;margin:20px 0}.favorite-items li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.favorite-actions{display:flex;gap:8px;flex-wrap:wrap}.button.danger{color:var(--danger);border-color:#fecdca}.button.compact-button{padding:6px 10px;font-size:.8rem}.removable-row{align-items:center;display:grid;grid-template-columns:minmax(0,1fr) auto auto}.form-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:24px;align-items:start}.form-layout h1{font-size:2.2rem}.stacked-form input[type=checkbox]{width:auto;margin-right:auto;transform:scale(1.25)}
.product-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.card{padding:17px}.card h2{font-size:1.12rem}.card .description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:.9rem}.unit-pill{display:inline-flex;padding:4px 8px;border-radius:15px;background:var(--accent);color:var(--brand);font-size:.78rem;font-weight:800}.add-form{grid-template-columns:auto 64px 1fr;gap:7px}.add-form .button{padding:9px 10px}
@media(max-width:760px){.header-inner{padding:0 10px}.brand{font-size:1.05rem}.menu-panel{position:fixed;top:68px;left:0;width:min(330px,calc(100vw - 34px));max-height:calc(100vh - 68px);border-radius:0 0 14px 0}.container{padding:24px 10px}.page-heading{align-items:flex-start;flex-direction:column}.checkout-grid,.form-layout{grid-template-columns:1fr}.order-info{grid-template-columns:1fr}.actions .button{width:100%}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.card{padding:11px;border-radius:10px}.card h2{font-size:.98rem;margin:.15em 0}.card .sku{font-size:.66rem}.card .description{font-size:.78rem;-webkit-line-clamp:1;margin:.45em 0}.product-meta{align-items:center;flex-direction:row;gap:5px;padding-top:7px}.stock{font-size:.68rem}.unit-pill{font-size:.68rem;padding:3px 6px}.add-form{grid-template-columns:58px minmax(0,1fr);margin-top:8px}.add-form label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.add-form input{padding:7px 6px}.add-form .button{width:100%;font-size:.78rem;padding:7px 4px}.category-tabs{gap:5px}.category-tab{padding:6px 10px;font-size:.8rem}}
.director-heading{align-items:flex-end}.director-stats{display:flex;gap:10px}.director-stats>div{display:flex;flex-direction:column;min-width:120px;padding:14px 18px;background:#fff;border:1px solid var(--line);border-radius:12px}.director-stats strong{font-size:1.7rem;line-height:1}.director-stats span{color:var(--muted);font-size:.8rem;margin-top:5px}.view-switch{display:grid;grid-template-columns:repeat(2,minmax(0,250px));gap:10px;margin:0 0 34px}.view-option{display:flex;flex-direction:column;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);text-decoration:none}.view-option span{font-weight:800}.view-option small{color:var(--muted)}.view-option.active{background:#102a2a;color:#fff;border-color:#102a2a}.view-option.active small{color:#c9dcda}.director-section{margin-top:30px}.accepted-section{padding-top:18px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-heading h2{margin:0;font-size:1.7rem}.director-table .quantity-total{font-size:1.15rem;font-weight:850;color:var(--brand)}.director-hint{color:var(--muted);font-size:.9rem}.director-order-list{display:grid;gap:14px}.director-order{background:#fff;border:1px solid var(--line);border-left:5px solid #f79009;border-radius:12px;padding:19px;box-shadow:var(--shadow)}.director-order-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.director-order h3{margin:2px 0;font-size:1.2rem}.order-number{font-size:.75rem;letter-spacing:.08em;font-weight:850;color:var(--muted);margin:0}.director-items{list-style:none;padding:0;margin:14px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 24px}.director-items li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.accept-button{background:#067647;color:#fff;border-color:#067647}.accepted-order{border-left-color:#12b76a;background:#f0fdf4}.accepted-grid{grid-template-columns:repeat(auto-fit,minmax(330px,1fr))}.accepted-meta,.order-note{font-size:.85rem;margin:13px 0 0}.accepted-meta{color:#067647}.order-note{padding:9px 11px;background:#fffaeb;border-radius:7px}.empty-state.compact{padding:30px}.empty-state.compact h3{margin-top:0}
.accepted-totals{border-color:#86efac}.accepted-totals th{background:#ecfdf3}.accepted-totals tbody tr{background:#f0fdf4}.accepted-totals .quantity-total{color:#067647}
.production-actions{display:flex;align-items:center;gap:8px}.fulfill-button{background:#102a2a;color:#fff;border-color:#102a2a}
.operational-day-banner{display:flex;align-items:baseline;gap:12px;margin:-12px 0 24px;padding:11px 15px;background:#eef4ff;border:1px solid #c7d7fe;border-radius:10px;color:#3538cd}.operational-day-banner span{font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.operational-day-banner strong{font-size:1.15rem}.operational-day-banner small{margin-left:auto;color:#475467}.operational-note{padding:10px 13px;background:#eef4ff;border-radius:8px;color:#344054;font-size:.9rem}.settings-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:20px;align-items:start}.settings-panel .button{margin-top:12px}.current-day-panel{background:#102a2a;color:#fff}.current-day-panel .eyebrow,.current-day-panel small{color:#c9dcda}.current-day-panel h2{font-size:2rem}.reset-time{display:flex;justify-content:space-between;align-items:center;padding:12px 0;margin:16px 0;border-top:1px solid #ffffff33;border-bottom:1px solid #ffffff33}.reset-time strong{font-size:1.5rem}
@media(max-width:760px){.director-heading{align-items:stretch}.director-stats{width:100%}.director-stats>div{min-width:0;flex:1;padding:12px}.view-switch{grid-template-columns:1fr 1fr}.view-option{padding:11px}.director-order-top{flex-direction:column}.director-order-top form,.director-order-top .accept-button,.production-actions,.production-actions form,.production-actions .fulfill-button{width:100%}.production-actions{align-items:stretch;flex-direction:column}.director-items{grid-template-columns:1fr}.accepted-grid{grid-template-columns:1fr}.director-order{padding:14px}.director-table{min-width:0}.director-table th:nth-child(3),.director-table td:nth-child(3){display:none}}
.history-month-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.history-month-nav h2{margin:0;font-size:1.8rem}.history-summary{display:flex;gap:10px;margin-bottom:16px}.history-stat{display:flex;flex-direction:column;padding:12px 16px;border-radius:10px;min-width:180px}.history-stat strong{font-size:1.5rem}.production-stat{background:#fffaeb;color:#93370d}.fulfilled-stat{background:#ecfdf3;color:#067647}.history-legend{display:flex;gap:20px;margin:12px 0;color:var(--muted);font-size:.85rem}.legend-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}.production-dot{background:#f79009}.fulfilled-dot{background:#12b76a}.calendar-wrap{overflow-x:auto}.history-calendar{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));min-width:735px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.calendar-weekday{padding:10px;text-align:center;background:#102a2a;color:#fff;font-size:.8rem;font-weight:850}.calendar-day{min-height:105px;padding:9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;background:#fff}.calendar-day.outside{background:#f8f8f8;color:#98a2b3}.calendar-day.today .day-number{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#102a2a;color:#fff}.day-number{font-weight:850}.day-events{display:flex;flex-direction:column;gap:4px;margin-top:10px}.day-events span{padding:4px 6px;border-radius:5px;font-size:.72rem;font-weight:750}.production-event{background:#fffaeb;color:#93370d}.fulfilled-event{background:#ecfdf3;color:#067647}.history-actions{display:flex;gap:8px}.daily-history-section{margin:32px 0}.fulfilled-history{padding-top:25px;border-top:2px solid #bbf7d0}.history-order-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin-top:14px}.history-order{background:#fff;border:1px solid var(--line);border-left:5px solid #f79009;border-radius:10px;padding:16px}.history-order h3{margin:2px 0}.history-order.fulfilled-record{border-left-color:#12b76a;background:#f0fdf4}
@media(max-width:760px){.history-month-nav{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.history-month-nav h2{grid-column:1/-1;grid-row:1;text-align:center}.history-month-nav .button{font-size:.78rem;padding:8px}.history-summary{display:grid;grid-template-columns:1fr 1fr}.history-stat{min-width:0;padding:10px}.history-heading .history-actions{display:grid;width:100%}.history-order-list{grid-template-columns:1fr}}
@media(max-width:760px){.operational-day-banner{align-items:flex-start;flex-direction:column;gap:2px}.operational-day-banner small{margin-left:0}.settings-layout{grid-template-columns:1fr}}
@media print{.site-header,footer,.print-button,.history-heading .button{display:none!important}body{background:#fff}.container{max-width:none;padding:0}.table-wrap,.history-order{box-shadow:none}.daily-history-section{break-inside:avoid}a{color:inherit;text-decoration:none}}
.pastry-heading h1{color:#7a284e}.pastry-day-banner{background:#fff1f3;border-color:#fecdd6;color:#9f1239}.pastry-switch{grid-template-columns:repeat(3,minmax(0,250px))}.pastry-switch .view-option.active{background:#7a284e;border-color:#7a284e}.pastry-switch .view-option.active small{color:#ffe4e9}.pastry-section{padding-top:8px}.pastry-section-heading h2{margin:2px 0 0}.pastry-fulfill{background:#7a284e;color:#fff;border-color:#7a284e}.pastry-fulfill:hover{background:#5c1d3b}.pastry-table{border-color:#fecdd6}.pastry-table th{background:#fff1f3}.pastry-table .quantity-total{color:#9f1239}.pastry-order{border-left-color:#db2777}.tray-customer-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}.tray-customer{border-top:5px solid #16a34a}.tray-customer-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.tray-customer-heading h3{font-size:1.35rem;margin:2px 0}.tray-customer-heading>span{padding:5px 9px;background:#ecfdf3;color:#067647;border-radius:20px;font-size:.78rem;font-weight:800}.tray-order{padding:16px 0;border-top:1px solid var(--line)}.tray-order:first-of-type{margin-top:12px}.tray-order .director-items{margin-top:6px}.tray-order .order-number{color:#067647}
.product-fulfill-cell{text-align:right}.pastry-product-fulfill{padding:8px 12px;border-color:#f9a8d4;color:#9f1239;white-space:nowrap}.pastry-product-fulfill:hover{background:#fff1f3}
@media(max-width:760px){.pastry-switch{grid-template-columns:1fr 1fr}.pastry-switch .tray-option{grid-column:1/-1}.pastry-section-heading{align-items:stretch;flex-direction:column}.pastry-section-heading form,.pastry-section-heading .button,.pastry-order form,.pastry-order .button{width:100%}.tray-customer-list{grid-template-columns:1fr}.tray-customer{padding:16px}.tray-section .section-heading{align-items:flex-start;flex-direction:column}}
.pizza-heading h1{color:#b54708}.pizza-day-banner{background:#fffaeb;border-color:#fedf89;color:#93370d}.pizza-section{padding-top:8px}.pizza-table{border-color:#fedf89}.pizza-table th{background:#fffaeb}.pizza-table .quantity-total{color:#b54708}.pizza-fulfill{background:#b54708;color:#fff;border-color:#b54708}.pizza-fulfill:hover{background:#93370d}.pizza-product-fulfill{padding:8px 12px;border-color:#fedf89;color:#93370d;white-space:nowrap}.pizza-product-fulfill:hover{background:#fffaeb}.pizza-order{border-left-color:#f79009}.pizza-completed-customer{border-top-color:#f79009}
@media(max-width:760px){.pizza-section .section-heading{align-items:stretch;flex-direction:column}.pizza-section form,.pizza-section .pizza-fulfill,.pizza-order form,.pizza-order .pizza-fulfill{width:100%}}
.nav-menu:not([open]) .menu-panel{display:none}
.archived-stat{background:#fff1f0;color:#b42318}.archived-dot{background:#f04438}.archived-event{background:#fff1f0;color:#b42318}.archived-history{padding-top:25px;border-top:2px solid #fecdca}.archived-record{border-left-color:#f04438;background:#fff7f6}.archived-totals{border-color:#fecdca}.archived-totals th{background:#fff1f0}.archived-totals .quantity-total{color:#b42318}
.tray-customer{transition:border-color .2s,background .2s}.tray-customer.tray-pending{border-top-color:#f04438;background:#fff7f6}.tray-customer.tray-complete{border-top-color:#12b76a;background:#f0fdf4}.tray-customer-heading .tray-status{padding:6px 10px;border-radius:20px;font-size:.75rem;font-weight:850}.tray-pending .tray-status{background:#fee4e2;color:#b42318}.tray-complete .tray-status{background:#dcfae6;color:#067647}.tray-items li{align-items:center;padding:9px 10px;border-radius:8px;margin:4px 0;border-bottom:0}.tray-items li span small{margin-top:1px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.tray-item-pending{background:#fee4e2;color:#912018}.tray-item-pending span small{color:#b42318}.tray-item-complete{background:#dcfae6;color:#05603a}.tray-item-complete span small{color:#067647}.tray-order-complete .order-number{color:#067647}
.clear-tray-form{margin-top:16px;padding-top:16px;border-top:1px solid #abefc6}.clear-tray-button{width:100%;background:#067647;color:#fff;border-color:#067647}.clear-tray-button:hover{background:#05603a}
