:root{--ink:#182a29;--green:#12664f;--bright:#e6f4aa;--bg:#f3f5f2;--line:#d8e0da;--muted:#64726a;--red:#b23b30}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);padding:10px 15px}button:hover{border-color:var(--green)}button:disabled{opacity:.5;cursor:wait}a{color:var(--green)}header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 5%;background:var(--ink);color:white}.brand{text-decoration:none;color:var(--bright);font-weight:900;letter-spacing:2px;font-size:25px}.brand span{display:block;font-weight:400;letter-spacing:0;color:white;font-size:14px}nav{display:flex;gap:8px;flex-wrap:wrap}nav button{background:transparent;border-color:#4b625b;color:white;font-size:14px}.notice{background:var(--bright);padding:10px 5%;font-size:14px}main{max-width:1440px;margin:auto;padding:32px 5%}h1{font-size:clamp(28px,4vw,42px);line-height:1.2;letter-spacing:-1px;margin:0 0 12px}h2{font-size:23px;margin:0 0 12px}h3{font-size:19px;margin:0 0 8px}p{margin:0 0 16px}.muted,small{color:var(--muted)}small{font-size:14px;display:block}.toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:25px}.toolbar label{min-width:220px}.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px}.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.card,.basket,.order,.panel{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.card{display:flex;flex-direction:column;border-top:4px solid var(--green)}.product-photo{width:100%;height:180px;object-fit:cover;border-radius:8px;margin-bottom:15px}.unit{font-size:14px;text-transform:uppercase;letter-spacing:1px;color:var(--green);font-weight:700;margin-bottom:12px}.price{font-size:25px;font-weight:800;margin-top:auto}.card label{margin-top:15px}.card button{margin-top:10px}.primary{background:var(--green);border-color:var(--green);color:white}.basket{position:sticky;top:20px;align-self:start}.basket-item{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:13px 0}.basket-item button{padding:3px 9px;align-self:center}.total{display:flex;justify-content:space-between;font-size:22px;font-weight:800;margin:20px 0}label{display:block;font-size:14px;font-weight:650;margin-bottom:12px}input,select,textarea{display:block;width:100%;padding:11px 12px;border:1px solid #bac8c0;border-radius:7px;background:white;color:var(--ink);margin-top:5px;min-width:0}input[type=checkbox]{display:inline;width:auto;margin-right:8px}textarea{min-height:90px}.basket .primary{width:100%}.badge{display:inline-block;font-size:14px;border-radius:5px;padding:4px 9px;background:#e3f0e9;color:#185641;font-weight:600}.badge.new{background:#fff0d2;color:#84500f}.error{color:var(--red)}.empty{padding:30px 0;color:var(--muted)}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.tabs button.selected{background:var(--ink);color:white;border-color:var(--ink)}.orders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.order-head{display:flex;justify-content:space-between;gap:10px;align-items:start;margin-bottom:16px}.order ul{padding-left:20px}.order .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.order .weights{margin-top:15px}.inline{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.inline>*{flex:1}.inline button{flex:none;margin-bottom:12px}.list-row{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.list-row .actions{display:flex;gap:8px;flex-wrap:wrap}dialog{border:1px solid var(--line);border-radius:15px;padding:32px;width:min(520px,94vw);color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#11292499}.close{float:right;font-size:23px;padding:0 8px}.link{border:0;color:var(--green);padding-left:0;margin:12px 0}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 20px;border-radius:8px;max-width:90vw;z-index:10;display:none}button:focus-visible,a:focus-visible{outline:3px solid #cca523;outline-offset:3px}.success{border-left:5px solid var(--green);margin-bottom:24px}.check{font-size:16px;font-weight:400}.branch-info{margin-bottom:15px}.summary{display:flex;gap:15px;flex-wrap:wrap;margin:20px 0}.summary span{padding:12px 18px;background:white;border:1px solid var(--line);border-radius:8px} @media(max-width:1050px){.shop-layout{grid-template-columns:minmax(0,1fr) 300px}.products{grid-template-columns:1fr}}@media(max-width:740px){header{align-items:start;flex-direction:column;padding:18px 5%}main{padding-top:24px}.shop-layout,.products,.orders{grid-template-columns:1fr}.basket{position:static}.toolbar label{width:100%;min-width:0}.list-row{align-items:start;flex-direction:column}nav{gap:6px}nav button{padding:8px 10px}.card,.basket,.order,.panel{padding:18px}}
.setup-panel{max-width:540px;margin:20px auto}.card,.basket,.order,.panel{min-width:0}.order-head>div{min-width:0}.order-head h3,.order small,.brand,header nav button{overflow-wrap:anywhere}.list-row>div{min-width:0;overflow-wrap:anywhere}main{width:100%}nav button{min-height:44px}button{min-height:44px}@media(max-width:380px){.order-head{flex-wrap:wrap}.toolbar h1{font-size:28px}.total{font-size:20px}}
header{background:var(--profile-color,#12664f)}nav button{border-color:#ffffff80}nav button[hidden]{display:none}.profile-bar{padding:12px 5%;font-size:14px;font-weight:750;letter-spacing:.5px;color:var(--profile-color,#12664f);border-bottom:2px solid var(--profile-color,#12664f);background:#e6f1ed}body[data-surface=admin]{background:#f1f0fa}body[data-surface=admin] .profile-bar{background:#e9e7fb}body[data-surface=admin] .brand{color:white}body[data-surface=customer] .brand{color:white}.config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.config-save{grid-column:1/-1;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.account-panel{margin-top:28px}.config-intro{margin-bottom:20px}.config-save p:empty{display:none}#config-saved{color:var(--green);font-weight:650}@media(max-width:740px){.config-grid{grid-template-columns:1fr}.config-save{grid-column:auto}}
