@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#21352a;background:#f6f6f0;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.app-shell{min-height:100vh;display:grid;grid-template-columns:246px minmax(0,1fr)}.sidebar{background:#1e382b;color:#f7f7ee;padding:26px 18px;display:flex;flex-direction:column;gap:42px}.brand{display:flex;align-items:center;gap:12px;padding:3px 12px;font-size:14px;font-weight:800;letter-spacing:.07em}.brand img{width:44px;height:44px;object-fit:cover;border-radius:12px}.brand small{display:block;font-size:10px;letter-spacing:.2em;color:#c6dbac;margin-top:4px}.sidebar nav{display:grid;gap:6px}.nav-item{display:flex;align-items:center;gap:13px;width:100%;padding:13px 15px;border:0;border-radius:12px;text-align:left;background:transparent;color:#dfebe0;font-weight:700}.nav-item span{font-size:19px;width:22px;text-align:center}.nav-item:hover,.nav-item.active{background:#dff3ae;color:#21392b}.sidebar-bottom{margin-top:auto;display:grid;gap:12px;padding:12px;color:#dce9d7;font-size:13px}.sidebar-bottom button{text-align:left;border:0;background:transparent;color:inherit;padding:0}.sidebar-bottom a:hover,.sidebar-bottom button:hover{text-decoration:underline}main{min-width:0;padding:34px clamp(20px,4vw,64px) 70px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:22px;padding-bottom:27px;border-bottom:1px solid #dce2d8}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.18em;color:#789156;margin:0 0 8px}.topbar h1{font:700 clamp(30px,3vw,46px)/1.1 Fraunces,Georgia,serif;margin:0;letter-spacing:-.03em}.top-actions{display:flex;align-items:center;gap:15px;font-size:13px;font-weight:700;color:#65786a}.status-pill,.badge{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:99px;background:#dff3ae;color:#29442d;font-size:12px;font-weight:800;white-space:nowrap}.status-pill:before{content:'';width:7px;height:7px;border-radius:50%;background:#478735}.status-pill.closed,.badge.rejected{background:#f8e1d8;color:#803f30}.status-pill.closed:before{background:#bd5d40}.badge.confirmed{background:#e2ebd6}.badge.completed{background:#dcefe4}.view{padding-top:31px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.section-heading h2{font:700 29px Fraunces,Georgia,serif;letter-spacing:-.025em;margin:0 0 5px}.section-heading p{margin:0;color:#68786e;font-size:14px;line-height:1.5}.primary-button,.secondary-button,.refresh-button,.order-card button,.product-actions button{border:1px solid #234331;border-radius:11px;background:#234331;color:white;padding:10px 14px;font-size:13px;font-weight:800;white-space:nowrap}.primary-button:hover,.order-card button:hover,.product-actions button:hover{background:#385e43}.secondary-button,.refresh-button,.product-actions .secondary-button{background:white;color:#234331;border-color:#c8d6c8}.secondary-button:hover,.refresh-button:hover,.product-actions .secondary-button:hover{background:#ecf4e6}.order-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px}.order-card,.empty-card,.store-card,.product-row{background:#fff;border:1px solid #dde4da;border-radius:18px;box-shadow:0 6px 22px rgba(24,51,31,.04)}.order-card{padding:21px;display:flex;flex-direction:column;gap:12px}.order-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.order-head strong{font-size:18px}.order-head time{display:block;color:#758279;font-size:12px;margin-top:4px}.order-card p{margin:0;font-size:13px;line-height:1.5}.order-card .customer-name{font-weight:800;font-size:15px}.order-card ul{margin:0;padding:12px 0 12px 19px;border-top:1px solid #edf0e9;border-bottom:1px solid #edf0e9;font-size:13px;line-height:1.8}.order-total{display:flex;justify-content:space-between;font-weight:800}.order-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto;padding-top:4px}.order-actions button{padding:9px 11px}.order-actions .reject{background:#fff;color:#9b4b3d;border-color:#e9c8be}.order-actions .reject:hover{background:#fff1eb}.empty-card{grid-column:1/-1;padding:38px;color:#627267;text-align:center}.date-field{display:grid;gap:6px;font-size:12px;font-weight:800}.date-field input,.product-toolbar input,.product-toolbar select,.modal-card input,.modal-card textarea{border:1px solid #cbd8cb;border-radius:10px;background:white;color:#21352a;padding:11px 12px;min-width:0;outline:none}.date-field input:focus,.product-toolbar input:focus,.product-toolbar select:focus,.modal-card input:focus,.modal-card textarea:focus{border-color:#4d7952;box-shadow:0 0 0 3px #cfeab4}.history-count{color:#607267;font-size:13px}.product-toolbar{display:flex;gap:10px;margin-bottom:17px}.product-toolbar input{flex:1}.product-toolbar select{min-width:190px}.product-list{display:grid;gap:9px}.product-row{padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:18px}.product-row h3{margin:0 0 4px;font-size:15px}.product-row p{margin:0;color:#758279;font-size:12px}.product-row .product-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:6px}.product-row .price{font-size:15px;font-weight:800}.product-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.product-actions button{padding:8px 11px}.badge.soldout{background:#fff0d7;color:#8a5c1d}.badge.hidden-product{background:#e9ece9;color:#667068}.store-card{display:flex;align-items:center;gap:20px;padding:27px;max-width:760px}.store-card h3{margin:0 0 6px;font:700 24px Fraunces,Georgia,serif}.store-card p{margin:0;color:#68786e;font-size:14px;line-height:1.5}.store-card button{margin-left:auto}.store-indicator{width:15px;height:15px;flex:none;border-radius:50%;background:#559b48;box-shadow:0 0 0 8px #e1f2db}.store-indicator.closed{background:#c36a4e;box-shadow:0 0 0 8px #f9e7e1}.store-note{color:#718175;font-size:13px;max-width:760px}.toast{position:fixed;z-index:5;right:24px;bottom:24px;padding:13px 18px;background:#234331;color:white;border-radius:11px;box-shadow:0 10px 30px #18332335;font-weight:700;font-size:13px}.toast.error{background:#883e32}.modal{position:fixed;z-index:10;inset:0;background:#11231999;display:grid;place-items:center;padding:20px}.modal-card{position:relative;width:min(520px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;padding:27px;box-shadow:0 25px 65px #10221944}.modal-card h2{font:700 30px Fraunces,Georgia,serif;margin:0 0 22px}.modal-close{position:absolute;right:21px;top:16px;border:0;background:transparent;color:#20392b;font-size:28px}.modal-card form{display:grid;gap:14px}.modal-card form>label{display:grid;gap:6px;font-size:13px;font-weight:800}.modal-card textarea{resize:vertical}.check-row{display:flex;gap:24px;flex-wrap:wrap;font-size:13px;font-weight:700}.check-row label{display:flex;align-items:center;gap:6px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:8px}@media(max-width:850px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{min-width:0;padding:15px;gap:12px}.sidebar nav{display:flex;overflow-x:auto}.nav-item{white-space:nowrap;width:auto}.sidebar-bottom{display:none}main{padding-top:25px}}@media(max-width:600px){.topbar,.section-heading,.store-card,.product-row{align-items:flex-start;flex-direction:column}.top-actions{flex-wrap:wrap}.product-toolbar{flex-direction:column}.product-toolbar select{min-width:0}.store-card button{margin-left:0}.product-actions{justify-content:flex-start}.order-grid{grid-template-columns:1fr}}

/* Weekly opening-hours controls */
.store-card{max-width:860px}
.store-mode-badge{margin-left:auto;padding:7px 11px;border-radius:99px;background:#edf3e8;color:#385740;font-size:12px;font-weight:800}
.store-controls{display:flex;gap:10px;flex-wrap:wrap;max-width:860px;margin:15px 0 24px}
.store-controls button.active{background:#234331;color:#fff;border-color:#234331}
.store-controls .store-close-button.active{background:#8b4638;border-color:#8b4638}
.ordering-channels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:860px;margin:0 0 28px}
.ordering-channels>.schedule-card.channel-control-card{margin:0;min-width:0}
.channel-control-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.channel-control-heading h3{margin:0;font:700 23px Fraunces,Georgia,serif}
.channel-status{padding:5px 12px;border-radius:100px;background:#e1efbe;color:#25412e;font-size:12px;font-weight:800}
.channel-status.closed{background:#f4e3dd;color:#843f2f}
.channel-control-card>p{min-height:60px;margin:12px 0 0;font-size:13px;line-height:1.55}
.channel-control-card .store-controls{margin:16px 0 0;gap:7px}
.channel-control-card .store-controls button{padding:10px;font-size:12px;min-height:44px}
:root[data-theme="dark"] .channel-control-card{background:#1d2b21;color:#edf2e8;border-color:#405345}
@media(max-width:650px){.ordering-channels{grid-template-columns:1fr}.channel-control-card>p{min-height:0}}
.schedule-card{max-width:860px;padding:25px;background:#fff;border:1px solid #dde4da;border-radius:18px;box-shadow:0 6px 22px rgba(24,51,31,.04)}
.schedule-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}
.schedule-heading h3{margin:0 0 5px;font:700 22px Fraunces,Georgia,serif}
.schedule-heading p{margin:0;color:#68786e;font-size:13px;line-height:1.5}
.schedule-list{display:grid}
.schedule-row{display:grid;grid-template-columns:110px 110px minmax(130px,1fr) 24px minmax(130px,1fr);align-items:center;gap:12px;padding:12px 0;border-top:1px solid #edf0e9}
.schedule-row:first-child{border-top:0}
.schedule-day{font-weight:800}
.schedule-enabled{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700}
.schedule-row input[type=time]{width:100%;min-width:0;padding:10px;border:1px solid #cbd8cb;border-radius:10px;background:#fff;color:#21352a}
.schedule-row input[type=time]:disabled{background:#f1f3ef;color:#9ba59d}
.schedule-separator{color:#728078;text-align:center;font-size:13px}
.schedule-card .store-note{margin:18px 0 0}
@media(max-width:600px){
  .schedule-heading{align-items:flex-start;flex-direction:column}
  .store-mode-badge{margin-left:0}
  .schedule-row{grid-template-columns:1fr 1fr}
  .schedule-day{grid-column:1}
  .schedule-enabled{grid-column:2;justify-self:end}
  .schedule-separator{display:none}
  .schedule-row input[type=time]{grid-row:2}
}
.admin-password-form{max-width:520px;display:grid;gap:16px}
.admin-password-form>label{display:grid;gap:7px;font-size:14px;font-weight:700}
.admin-password-form input:not([type=checkbox]){min-width:0;width:100%;padding:12px;border:1px solid #cbd8cb;border-radius:10px;background:#fff;color:#21352a}
.admin-password-form>label.admin-password-show{display:flex;align-items:center;gap:8px}
.admin-password-form small{color:#68786e}
.admin-password-form p{margin:0;line-height:1.5;font-size:14px}
:root[data-theme=dark] .admin-password-form{background:#20352b;color:#edf3e8;border-color:#486051}
:root[data-theme=dark] .admin-password-form input:not([type=checkbox]){background:#16291f;color:#edf3e8;border-color:#486051}
:root[data-theme=dark] .admin-password-form small{color:#bdcdbf}
.schedule-card + .schedule-card { margin-top: 28px; }
