:root{--green: #2f7d49;--green-bright: #379a59;--green-deep: #1d4a2e;--ring: #142e1d;--ink: #16271c;--ink-soft: #46584c;--muted: #7c8a7f;--orange: #e08a2b;--orange-deep: #c5701a;--cream: #f4ecdc;--cream-2: #efe5d1;--card: #fffdf8;--line: #e7dcc6;--line-soft: #efe7d6;--good: #2f7d49;--warn: #e08a2b;--bad: #c0473a;--shadow-sm: 0 1px 2px rgba(20,46,29,.06), 0 2px 6px rgba(20,46,29,.05);--shadow: 0 4px 14px rgba(20,46,29,.09), 0 1px 3px rgba(20,46,29,.06);--shadow-lg: 0 16px 40px rgba(20,46,29,.16);--r-sm: 12px;--r: 18px;--r-lg: 26px;--r-xl: 34px;--font: "Plus Jakarta Sans", system-ui, sans-serif;--display: "Baloo 2", "Plus Jakarta Sans", system-ui, sans-serif;--sidebar: 240px;--cart: 360px}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:var(--font);color:var(--ink);background:var(--ring);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior:none;overflow:hidden}#root{height:100%}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit}button,.pill,.qty-badge,label,.brand-lockup{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}button,a,[role=button]{touch-action:manipulation}input,textarea,select{-webkit-user-select:text;user-select:text}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.viewport{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:radial-gradient(120% 90% at 50% -10%,#1c3c27 0%,var(--ring) 60%)}.stage{width:100%;height:100%;background:var(--cream);overflow:hidden;position:relative;display:flex;flex-direction:column}.row{display:flex;align-items:center;gap:12px}.col{display:flex;flex-direction:column}.spacer{flex:1}.muted{color:var(--muted)}.center{display:flex;align-items:center;justify-content:center}.scroll-x{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none}.scroll-x::-webkit-scrollbar{display:none}.scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.scroll::-webkit-scrollbar{width:10px}.scroll::-webkit-scrollbar-thumb{background:#d7cbb1;border-radius:20px;border:3px solid transparent;background-clip:content-box}.grid{display:grid;gap:16px}.grid-kpi{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(158px,1fr))}.grid-2{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.grid-fill{display:grid;gap:10px 16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.grid-main{display:grid;gap:16px;grid-template-columns:1.5fr minmax(0,1fr)}.grid-count{display:grid;gap:16px;grid-template-columns:1.6fr minmax(0,1fr)}.grid-form{display:grid;gap:22px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.varor-row{display:grid;gap:10px;grid-template-columns:2.4fr 1fr 1fr 1fr 1.3fr 88px;align-items:center}@media(max-width:1000px){:root{--sidebar:200px;--cart:300px}.varor-row{grid-template-columns:2.2fr 1fr 1.4fr 88px}.varor-row>.col-sm-hide{display:none}}@media(max-width:900px){.grid-2,.grid-main,.grid-count{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.grid-form{grid-template-columns:minmax(0,1fr)}}.login-split{flex-direction:row}.login-hero{flex:1 1 0;min-width:0;background:linear-gradient(150deg,#1d4a2e,#2f7d49);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,4.5vw,52px) clamp(28px,4.2vw,50px)}.login-form{flex:1 1 0;min-width:0;background:var(--card);display:flex;align-items:center;justify-content:center;padding:clamp(20px,3vw,32px)}@media(max-width:860px){.login-split{flex-direction:column}.login-hero{flex:0 0 auto;padding:30px 28px}.login-hero h1{font-size:30px!important;margin:18px 0 10px!important}.login-hero p{margin-bottom:18px!important}.login-form{flex:1 1 auto;align-items:flex-start;padding-top:32px}}.login-mobile-brand{display:none}@media(max-width:600px){.login-hero{display:none}.login-form{overflow-y:auto;padding:32px 20px 24px}.login-mobile-brand{display:flex;flex-direction:column;align-items:center;margin:8px 0 26px}}.admin-shell{flex-direction:row}.admin-side{width:var(--sidebar);flex-shrink:0;background:var(--ring);display:flex;flex-direction:column;padding:20px 14px}.admin-main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--cream)}.admin-topbar,.admin-scrim,.btn.admin-side-close{display:none}.page-head{display:flex;align-items:flex-end;gap:16px;padding:24px 28px 16px;flex-shrink:0}.page-head-sticky{position:sticky;top:0;z-index:20;background:var(--cream);box-shadow:0 6px 12px -8px #142e1d2e}.page-head-title{font-family:var(--display);font-weight:800;font-size:28px;color:var(--ink);line-height:1}.page-head-sub{color:var(--muted);font-size:14.5px;margin-top:6px;font-weight:600}.admin-body{padding:0 28px 28px}.segmented{display:inline-flex;background:#e8ddc8;border-radius:12px;padding:4px;gap:3px;max-width:100%}.count-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr}.form-cols{display:grid;gap:12px;align-items:end}.sched-team{width:200px}.sched-days{padding-left:74px}.waste-team{width:110px;flex-shrink:0}.btn{border:none;border-radius:var(--r-sm);padding:14px 20px;font-weight:700;font-size:16px;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:transform .08s ease,background .15s ease,box-shadow .15s ease;white-space:nowrap}.btn:active{transform:translateY(1px) scale(.99)}.btn-primary{background:var(--green);color:#fff;box-shadow:0 3px 0 var(--green-deep)}.btn-primary:active{box-shadow:0 1px 0 var(--green-deep)}.btn-primary:disabled{background:#b9c7bd;box-shadow:0 3px #9fb0a4;cursor:not-allowed;color:#eef3ef}.btn-orange{background:var(--orange);color:#fff;box-shadow:0 3px 0 var(--orange-deep)}.btn-orange:active{box-shadow:0 1px 0 var(--orange-deep)}.btn-orange:disabled{background:#e3cfb0;box-shadow:0 3px #cbb693;cursor:not-allowed;color:#fff}.btn-ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line);box-shadow:var(--shadow-sm)}.btn-ghost:hover{border-color:#d8cbb0}.btn-soft{background:#eadfca;color:var(--green-deep)}.btn-danger{background:#fbeae7;color:var(--bad)}.btn-lg{padding:18px 26px;font-size:19px;border-radius:var(--r)}.btn-sm{padding:9px 14px;font-size:14px;border-radius:10px}.btn-block{width:100%}.btn-icon{width:44px;height:44px;padding:0;border-radius:12px}.btn:disabled{cursor:not-allowed}@media(pointer:coarse){.btn{min-height:44px}.btn-sm{min-height:40px}.btn-icon{min-width:44px}}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:700}.tag-good{background:#e3f0e7;color:var(--green-deep)}.tag-warn{background:#fbeed8;color:var(--orange-deep)}.tag-bad{background:#f8e2de;color:var(--bad)}.tag-neutral{background:#ece3d1;color:var(--ink-soft)}.card{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--shadow)}.card-flat{background:var(--card);border-radius:var(--r);border:1.5px solid var(--line-soft)}.stat{padding:clamp(13px,1.4vw,18px) clamp(13px,1.5vw,20px);display:flex;flex-direction:column;gap:10px;min-width:0}.stat-label{font-size:13.5px;font-weight:700;color:var(--ink-soft);line-height:1.2}.stat-value{font-family:var(--display);font-weight:800;line-height:1;font-size:clamp(19px,1.9vw,30px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-sub{font-size:13px;color:var(--muted);font-weight:600}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:13.5px;font-weight:700;color:var(--ink-soft)}.input,.select,.textarea{background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:13px 15px;font-size:16px;color:var(--ink);width:100%;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%237c8a7f' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 4px #2f7d4921}.textarea{resize:none;line-height:1.5}.emoji-grid{display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(40px,1fr))}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;background:#142e1d6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:32px;animation:fade .15s ease}.modal{background:var(--cream);border-radius:var(--r-xl);width:min(560px,100%);max-height:88%;overflow:hidden;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:pop .18s cubic-bezier(.2,.9,.3,1.3)}.modal-head{display:flex;align-items:center;gap:12px;padding:20px 24px;border-bottom:1.5px solid var(--line)}.modal-body{padding:22px 24px;overflow-y:auto}.modal-foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px 24px;border-top:1.5px solid var(--line)}@media(max-width:1000px){.overlay{padding:20px}.modal{max-height:92%}}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(12px) scale(.97)}}@keyframes slideup{0%{opacity:0;transform:translateY(20px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.brand-lockup{display:flex;align-items:center;gap:13px}.brand-logo{width:46px;height:46px;object-fit:contain}.brand-name{font-family:var(--display);font-weight:800;letter-spacing:.5px;line-height:1}.divider{height:1.5px;background:var(--line);border:none;margin:0}.qty-badge{min-width:26px;height:26px;padding:0 7px;border-radius:999px;background:var(--orange);color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center}.spinner{width:22px;height:22px;border-radius:999px;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin .7s linear infinite}.spinner-dark{border-color:#1d4a2e33;border-top-color:var(--green)}.demo-bar{display:flex;align-items:center;gap:14px;flex-shrink:0;padding:9px 22px;background:var(--orange);color:#fff;font-size:13.5px;font-weight:700;line-height:1.35}.demo-bar-tag{flex-shrink:0;border-radius:999px;padding:4px 12px;background:#ffffff38;font-family:var(--display);font-weight:800;font-size:13px;letter-spacing:1.4px}.kiosk-topbar{display:flex;align-items:center;flex-wrap:wrap;gap:14px 18px;padding:14px 22px;flex-shrink:0;background:var(--card);border-bottom:1.5px solid var(--line)}.kiosk-topbar-actions{display:flex;align-items:center;gap:12px;margin-left:auto;flex-shrink:0}@media(max-width:700px){.admin-shell{flex-direction:column}.admin-topbar{display:flex;align-items:center;gap:12px;flex-shrink:0;padding:10px 14px;background:var(--ring)}.admin-side{position:absolute;top:0;bottom:0;left:0;z-index:50;width:min(290px,84vw);overflow-y:auto;transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-lg)}.admin-side.open{transform:none}.btn.admin-side-close{display:inline-flex}.admin-scrim{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:45;background:#142e1d6b;animation:fade .15s ease}.page-head{flex-wrap:wrap;align-items:flex-start;gap:12px;padding:16px 14px 12px}.page-head-title{font-size:24px}.page-head-sub{font-size:13.5px}.page-head-right{width:100%}.page-head-right>div{justify-content:flex-start!important}.page-head-sticky .page-head-sub{display:none}.admin-body{padding:0 12px 20px}.segmented{overflow-x:auto;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.segmented button{padding:9px 13px!important}.grid-kpi{gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.m-hide{display:none!important}.varor-head{display:none}.varor-row{grid-template-columns:auto minmax(0,1fr) auto;row-gap:8px;padding-left:14px!important;padding-right:14px!important}.varor-row>:first-child{grid-column:1 / -1;flex-wrap:wrap}.varor-row:not(.varor-head)>:nth-child(5):before{content:"I lager";font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.group-head{padding-left:14px!important;padding-right:14px!important}.count-grid{grid-template-columns:minmax(0,1fr) 44px 90px}.count-head>:nth-child(4){display:none}.count-row>:nth-child(4){grid-column:1 / -1}.count-row>:nth-child(4):not(:has(.pill)){display:none}.count-pad{padding-left:14px!important;padding-right:14px!important}.waste-row{flex-wrap:wrap;gap:10px 12px!important;padding:12px 14px!important}.waste-team{width:auto;flex:1 1 0;min-width:0}.waste-lines{order:10;flex-basis:100%!important}.sched-team{width:auto;flex:1 1 150px}.sched-days{padding-left:0}.form-cols{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important}.form-cols label{white-space:normal!important}.overlay{padding:8px}.modal{max-height:100%;border-radius:var(--r-lg)}.modal-head{padding:14px 16px}.modal-body{padding:16px}.modal-foot{padding:12px 16px;gap:10px}}
