:root{--bg:#f8f7f3;--paper:#fff;--ink:#2d3026;--olive:#555442;--olive-dark:#414331;--muted:#888b7e;--line:#e8e8df;--cream:#f0eee4;--green:#61704a;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font-family:var(--sans);font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a6ad82;outline-offset:3px}button{border:0}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400}h1{font-size:43px;letter-spacing:-1.4px;line-height:1.15;margin-bottom:13px}h2{font-size:26px;line-height:1.25}h3{font-size:17px;line-height:1.4}p{line-height:1.7}small{font-size:11px}input,select{border:1px solid #dcded3;border-radius:7px;background:#fff;color:var(--ink);padding:12px 13px;width:100%;min-height:44px}input::placeholder{color:#a0a095}input[type=checkbox]{width:17px;min-height:17px;accent-color:var(--olive)}label{display:block;font-size:12px;font-weight:600;color:#57594e;margin:0 0 18px}label input,label select{margin-top:7px;font-weight:400}button{transition:background .15s,transform .15s}button:active:not(:disabled){transform:translateY(1px)}.primary,.secondary,.light-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:43px;padding:11px 19px;border-radius:7px;font-size:12px;font-weight:600;white-space:nowrap}.primary{background:var(--olive);color:#fff}.primary:hover:not(:disabled){background:var(--olive-dark)}.secondary{background:#fff;border:1px solid #dedfd5;color:#555749}.secondary:hover{background:#f1f1e9}.small{padding:7px 13px;min-height:34px;font-size:11px}.full{width:100%;justify-content:space-between}.text-button{background:none;color:#575d45;padding:10px;font-size:12px;font-weight:600}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;border-right:1px solid var(--line);background:#fdfdf9;display:flex;flex-direction:column;padding:36px 23px 0;z-index:10}.brand{display:flex;align-items:center;gap:11px}.brand>span{font-family:var(--serif);font-weight:bold;font-size:24px;letter-spacing:-1px;line-height:1.1}.brand small{font-family:var(--sans);display:block;font-size:7px;letter-spacing:2px;font-weight:400;margin-top:8px}.workspace-label{font-size:9px;letter-spacing:1.7px;color:#989b8e;margin:49px 12px 16px}nav{display:flex;flex-direction:column;gap:6px}.nav-link{background:none;color:#7a7e70;display:flex;align-items:center;text-align:left;border-radius:7px;padding:13px 12px;gap:12px;font-size:12px;font-weight:500;min-height:46px}.nav-link>span{font-size:21px;line-height:1;width:23px;text-align:center}.nav-link.active{background:#eceee3;color:#444e32;font-weight:600}.nav-link i{margin-left:auto;background:#fff;border-radius:4px;min-width:20px;text-align:center;font-size:10px;font-style:normal;color:#81856f}.nav-link:not(.active):hover{background:#f1f2eb}.sidebar-note{margin:auto 8px 30px;border-top:1px solid var(--line);padding:27px 4px 2px;color:#8b8e7c}.twig{font-size:45px;font-family:var(--serif);line-height:1;display:block;color:#90967c;margin-bottom:14px}.sidebar-note strong{font-family:var(--serif);font-size:22px;font-weight:400;line-height:1.3;display:block;color:#62684f}.sidebar-note p{font-size:11px;line-height:1.8;margin-top:12px}.account{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);margin:0 -23px;padding:22px 20px;min-width:0}.avatar{width:35px;height:35px;border-radius:50%;background:#e9ebdf;display:inline-flex;align-items:center;justify-content:center;color:#656c50;font-size:11px;font-weight:bold;flex:none}.account>div{min-width:0;flex:1}.account strong{font-size:11px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account small{font-size:10px;color:#929486;display:block;margin-top:3px}.account button{background:none;color:#7a806c;font-size:22px;padding:5px}.main{margin-left:238px}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 42px;font-size:11px;color:#979a8f;background:#fbfcf8}.topbar b{font-weight:400;color:#c4c6bc;margin:0 13px}.topbar>div{display:flex;align-items:center;gap:8px}.top-date{margin-left:18px;padding-left:22px;border-left:1px solid var(--line)}.live-dot{width:6px;height:6px;background:#919c71;border-radius:50%}main{padding:40px 42px 30px;max-width:1550px;margin:auto}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:31px}.eyebrow{font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:2.2px;color:#8a8d7c;margin-bottom:14px}.subtitle{font-size:12px;color:#8a8d80;margin-bottom:0}.heading-actions{display:flex;align-items:center;gap:10px}.brand-chip{border:1px solid #e4e5db;padding:9px 15px;border-radius:30px;font-size:10px;color:#7b8267;white-space:nowrap;background:#f5f6ee}.week{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px;margin-bottom:18px;gap:5px}.days{display:grid;grid-template-columns:repeat(5,1fr);flex:1;gap:5px}.day{background:none;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:82px;padding:6px 10px;position:relative;color:#97998e}.day>span{font-size:10px;text-transform:capitalize}.day strong{font-size:17px;font-weight:500;color:#484c3e;margin-top:3px}.day i{font-size:8px;font-style:normal;min-height:12px;line-height:1;display:block;margin-top:5px}.day .available{color:#969b85}.day.selected{background:var(--olive);color:#d2d3c5}.day.selected strong,.day.selected i{color:white}.day:hover:not(.selected){background:#f3f4ed}.week-arrow{background:none;font-size:17px;color:#9a9e8d;width:29px;min-height:44px}.calendar-label{border-left:1px solid var(--line);padding:0 14px;margin:0 0 0 8px;color:#898d7c;font-size:9px;width:156px}.calendar-label input{padding:5px;border:0;font-size:11px;min-height:30px;margin-top:3px}.notice{display:flex;align-items:center;gap:13px;border:1px solid #e2e5d8;background:#eff2e8;border-radius:7px;padding:13px 17px;margin-bottom:28px;color:#727b5d;font-size:11px}.notice>span{font-size:19px;flex:none}.notice>div{flex:1}.notice strong{font-weight:600;display:block;font-size:11px}.notice div>span{font-size:10px;display:block;margin-top:2px;color:#8e967c}.notice.locked{background:#f2eee3;border-color:#e9e2d2;color:#897951}.notice.locked div>span{color:#9c9177}.notice p{margin:0;font-size:11px}.notice.compact{align-items:flex-start;line-height:1.6}.menu-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:27px}.menu-layout.admin-menu{display:block}.section-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.section-top h2{font-size:24px;text-transform:capitalize;margin:0}.section-top>span{font-size:10px;color:#999c91}.filters{display:flex;gap:7px;margin-bottom:17px}.filters button{font-size:10px;border-radius:20px;padding:7px 13px;color:#8b8e80;background:none;border:1px solid transparent}.filters button.on{background:#fff;border:1px solid #e1e4d7;color:#586044}.meal-list{display:flex;flex-direction:column;gap:12px}.meal-card{padding:23px 20px;background:white;border:1px solid var(--line);border-radius:9px;display:flex;align-items:center;gap:17px;min-height:151px}.meal-card.chosen{border-color:#ccd2bc;background:#fefefb}.meal-number{width:45px;height:53px;flex:none;border-radius:6px;background:#f1f1e9;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:24px;color:#a0a58d}.meal-number.soup{background:#f6f0e4;color:#b7a27d;font-size:30px}.meal-content{flex:1;min-width:0}.meal-category{font-size:8px;letter-spacing:1.4px;color:#a0a38e;display:block;margin-bottom:6px}.chosen-dot{font-size:7px;letter-spacing:0;margin-left:10px;color:#879568}.meal-content h3{font-size:16px;font-weight:500;margin-bottom:5px;letter-spacing:-.2px}.meal-content p{font-size:10px;color:#898d7f;line-height:1.6;margin-bottom:8px}.meal-content small{font-size:8px;color:#afb1a5}.meal-right{display:flex;flex-direction:column;align-items:flex-end;gap:17px;flex:none}.meal-right>strong{font-size:15px;font-weight:500}.stepper{display:flex;height:31px;border:1px solid #e2e4d9;border-radius:5px;overflow:hidden;background:#fff}.stepper button{background:none;width:29px;padding:0;color:#7b8465;font-size:15px}.stepper button:hover:not(:disabled){background:#eef0e7}.stepper input{appearance:textfield;-moz-appearance:textfield;width:32px;padding:0;text-align:center;border:0;border-radius:0;min-height:29px;height:29px;font-size:11px;border-left:1px solid #edf0e6;border-right:1px solid #edf0e6;margin:0}.stepper input::-webkit-inner-spin-button{appearance:none}.menu-bottom{display:flex;align-items:center;justify-content:center;gap:14px;color:#a6ac96;margin:30px 0}.menu-bottom>span{font-size:33px}.menu-bottom p{margin:0;font-size:9px;line-height:1.9}.menu-bottom strong{font-weight:400;color:#858f71}.basket{background:#fff;border:1px solid #e2e5d8;border-radius:10px;padding:24px;position:sticky;top:22px}.basket-header{position:relative;border-bottom:1px solid var(--line);padding-bottom:20px}.basket-header .eyebrow{font-size:8px;letter-spacing:1.7px}.basket-header h2{font-size:27px;margin:9px 0 7px}.basket-header p{font-size:10px;color:#989d8b;text-transform:capitalize;margin:0}.basket-icon{position:absolute;right:0;top:0;font-size:26px;color:#afb79b}.basket-items{padding:18px 0 10px;min-height:75px}.basket-item{display:flex;gap:9px;align-items:flex-start;font-size:10px;padding:9px 0}.basket-item>b{color:#87946d;font-weight:600;flex:none}.basket-item span{flex:1;color:#707760;font-size:10px;line-height:1.7}.basket-item strong{font-size:10px;font-weight:500;white-space:nowrap}.basket-details{border-top:1px solid var(--line);padding:16px 0}.basket-details>div{display:flex;justify-content:space-between;font-size:10px;margin-bottom:10px;color:#a0a590;gap:5px}.basket-details b{font-weight:400;color:#747d5c;text-align:right}.basket-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:19px 0 22px}.basket-total span{font-size:12px;color:#7b826a}.basket-total strong{font-family:var(--serif);font-size:29px;font-weight:400}.basket .primary{font-size:10px;min-height:43px}.basket-foot{color:#a4aa98;font-size:9px;text-align:center;line-height:1.8;margin:13px 0 0}.company-note{display:flex;align-items:center;gap:12px;margin:17px 8px;color:#a2aa91}.company-note>span{font-size:26px}.company-note p{font-size:9px;line-height:1.8;margin:0}.company-note strong{font-weight:500;color:#778264}.unsaved{font-size:10px;color:#a38952;text-align:center;margin:12px 0 0}.muted{font-size:11px;color:#969d89}.badge{display:inline-flex;align-items:center;padding:6px 10px;background:#f1eddf;border-radius:20px;color:#9a8658;font-size:10px;white-space:nowrap}.badge.green{background:#edf1e5;color:#7a885d}.dashboard-date{display:flex;align-items:center;gap:14px;margin-bottom:23px}.dashboard-date input{width:160px;font-size:12px;min-height:38px;padding:8px 12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px}.stats article{background:#fff;border:1px solid var(--line);border-radius:9px;padding:22px 25px}.stats article>span{font-size:11px;color:#8d937d}.stats strong{display:block;font-family:var(--serif);font-weight:400;font-size:43px;margin:9px 0}.stats small{font:11px var(--sans);margin-left:10px;color:#a1a68f}.stats p{margin:0;font-size:10px;color:#a1a68f}.dashboard-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:24px;margin-bottom:32px}.panel{background:#fff;border:1px solid var(--line);border-radius:9px;padding:24px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px}.panel-title h2{font-size:25px;margin-bottom:8px}.panel-title>span{font-size:8px;letter-spacing:1.5px;color:#9da48b}.kitchen-row{display:flex;align-items:center;gap:13px;border-top:1px solid var(--line);padding:14px 0}.row-index{font-family:var(--serif);color:#a8b096;font-size:20px}.kitchen-row>strong{font-size:12px;font-weight:500;flex:1}.kitchen-row>b{font-size:21px;font-weight:500;text-align:right;color:#5a6545}.kitchen-row small,.delivery-head>strong small{display:block;font-size:8px;font-weight:400;color:#a2ab91}.olive-panel{background:var(--olive);color:#f8f7ed;border:0;padding:29px}.olive-panel .eyebrow{color:#bec2a8;font-size:8px}.olive-panel h2{font-size:31px;margin:18px 0}.olive-panel p{font-size:11px;color:#c0c4ac;line-height:1.9}.report-status{font-size:10px;background:#ffffff0b;padding:13px;border:1px solid #ffffff18;border-radius:5px;margin:20px 0;color:#e0e3ca}.light-button{color:#e9ecd9;background:#ffffff0d;border:1px solid #ffffff24;width:100%;font-size:10px}.delivery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:19px}.delivery-head{display:flex;align-items:center;gap:12px;margin-bottom:19px}.delivery-head>div{flex:1}.delivery-head h3{font-size:13px;margin:0}.delivery-head p{font-size:10px;color:#a0a68f;margin:5px 0 0}.delivery-head>strong{font-size:24px;font-weight:400;text-align:right}.delivery-row{display:flex;gap:10px;font-size:11px;padding:9px 0;border-top:1px solid #f0f1eb;align-items:center}.delivery-row b{color:#86926d}.delivery-row>span{flex:1}.delivery-row small{color:#9aa28a;font-size:8px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:21px}.toolbar input{max-width:340px}.toolbar>span{font-size:11px;color:#959c84}.table-wrap{padding:0;overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px;white-space:nowrap}th{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#929c7d;font-weight:500;padding:18px 22px;background:#fcfcf8}td{padding:22px;border-top:1px solid var(--line);color:#798468}td strong{font-size:12px;color:#4e5940;font-weight:500}td small{display:block;font-size:10px;color:#9ca58c;margin-top:5px}.footnote{color:#9aA38b;font-size:10px;line-height:1.9;margin-top:16px}.history-list{display:flex;flex-direction:column;gap:18px;max-width:950px}.history-row{display:flex;gap:14px;padding:12px 0;border-top:1px solid var(--line);font-size:12px}.history-row b{color:#8a9871}.history-row span{flex:1}.history-row strong{font-weight:500}.history-total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-top:8px;font-size:12px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.form-panel{padding:28px}.form-panel h2{font-size:25px}.form-panel>p{font-size:11px;color:#959e84;margin-bottom:25px}.empty{padding:50px 25px;text-align:center;border:1px dashed #dbe0cf;border-radius:9px;background:#fcfdf7}.empty>span{font-size:38px;color:#a6b38a}.empty h3{font-family:var(--serif);font-size:25px;font-weight:400;color:#697956;margin:12px 0}.empty p{font-size:12px;color:#a1ad8e;margin-bottom:0}footer{font-size:9px;color:#a7ad9b;border-top:1px solid var(--line);margin:0 42px;padding:20px 0;display:flex;justify-content:space-between}.login-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.login-story{background:var(--olive);color:#f3f0e2;padding:48px 65px;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;position:relative;overflow:hidden}.login-story:after{content:'↟';font-family:var(--serif);position:absolute;font-size:500px;bottom:-165px;right:-45px;color:#ffffff04;pointer-events:none}.login-story .brand small{color:#c5c8b2}.login-story .brand img{border:1px solid #ffffff30;border-radius:12px}.login-story>div:not(.brand){padding:60px 0}.login-story .eyebrow{color:#b8bea2}.login-story h1{font-size:63px;line-height:1.15;letter-spacing:-2px;margin:25px 0}.login-story p{font-size:15px;color:#bfc4ad;line-height:1.9}.story-lines{font-size:11px;color:#c2c8ab;margin-top:45px;padding-top:28px;border-top:1px solid #ffffff20}.login-story>small{font-size:8px;letter-spacing:2px;color:#b5bda0}.login-form{display:flex;align-items:center;justify-content:center;padding:55px;background:#fafbf6}.login-inner{width:100%;max-width:380px}.login-inner h2{font-size:34px;letter-spacing:-.8px;margin-bottom:16px}.login-inner>p:not(.eyebrow){font-size:12px;color:#98a087;line-height:1.9;margin-bottom:30px}.login-inner form{margin-bottom:28px}.login-inner label{font-size:11px}.login-inner input{min-height:47px}.login-inner .full{margin-top:10px;min-height:46px}.demo-box{border:1px solid #e0e5d5;border-radius:8px;background:#f0f3e9;padding:20px;margin:20px 0}.demo-box>span{font-size:8px;letter-spacing:1.5px;color:#829367}.demo-box p{font-size:11px;color:#83916e;margin:8px 0 13px}.demo-box>div{display:flex;flex-direction:column;gap:8px}.demo-box .secondary{justify-content:space-between;font-size:11px}.demo-box small{display:block;font-size:8px;color:#9da98b;margin-top:13px}.back-site{font-size:10px;color:#98a186;display:inline-block;margin-top:8px}.form-error{font-size:12px;color:#b75e45;line-height:1.6;margin:12px 0 0}.form-error:empty{display:none}dialog{border:1px solid #e1e5d7;border-radius:13px;padding:35px;width:min(550px,calc(100% - 24px));max-height:90vh;color:var(--ink);box-shadow:0 25px 100px #27320c25}dialog::backdrop{background:#292e2266;backdrop-filter:blur(3px)}dialog h2{font-size:30px;margin-bottom:12px}dialog>p:not(.eyebrow):not(.form-error){font-size:12px;color:#909c7e}dialog form{margin-top:25px}.modal-close{position:absolute;top:12px;right:15px;background:none;color:#98a18a;font-size:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.checkbox{display:flex;align-items:center;gap:8px}.checkbox input{margin:0}.danger-link{color:#b9745b;background:none;font-size:11px;display:block;margin:14px auto 0;padding:8px}.upload{background:#f3f6eb;border:1px dashed #ccd5bb;padding:22px;color:#7c8f5f;text-align:center;border-radius:7px}.upload input{font-size:11px;background:none;border:0}.import-rows{max-height:230px;overflow:auto;margin-bottom:20px}.import-rows p{font-size:10px;padding:7px 0;border-bottom:1px solid var(--line);margin:0}.loading{padding:20vh 20px;text-align:center;font-family:var(--serif);font-size:28px;color:var(--olive)}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);max-width:calc(100vw - 30px);background:#4c5a37;color:white;padding:14px 23px;border-radius:8px;box-shadow:0 5px 25px #0002;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:1000}#toast.show{opacity:1;transform:translate(-50%,0)}#toast.error{background:#a85e47}
@media(min-width:1600px){main{padding-top:48px}.meal-card{padding:28px;min-height:166px}.meal-content h3{font-size:18px}.meal-content p{font-size:12px}.meal-content small{font-size:10px}.menu-layout{grid-template-columns:minmax(0,1fr) 330px;gap:30px}}
@media(max-width:1200px){.sidebar{width:210px;padding-left:17px;padding-right:17px}.main{margin-left:210px}.account{margin:0 -17px;padding:20px 15px}.brand>span{font-size:21px}.brand img{width:36px;height:36px}main{padding:32px 25px}.topbar{padding:0 25px}.menu-layout{grid-template-columns:minmax(0,1fr) 265px;gap:18px}.meal-card{padding:18px 14px;gap:12px}.meal-number{width:34px;height:43px;font-size:21px}.meal-content h3{font-size:14px}.meal-right>strong{font-size:13px}.basket{padding:20px}.chosen-dot{display:none}.calendar-label{display:none}.brand-chip{display:none}h1{font-size:38px}.heading-actions .primary,.heading-actions .secondary{padding:10px 12px}.login-story{padding:40px}.login-story h1{font-size:50px}.top-date{display:none}}
@media(max-width:950px){.sidebar{width:180px;padding-left:13px;padding-right:13px}.brand>span{font-size:19px}.brand{gap:8px}.brand img{width:31px}.brand small{font-size:6px;letter-spacing:1px}.main{margin-left:180px}.nav-link{font-size:10px;gap:6px;padding:12px 8px}.account{margin:0 -13px;padding:17px 12px}.account strong{font-size:9px}.menu-layout{grid-template-columns:1fr}.basket{position:static}.menu-layout>aside{max-width:none}.basket-items{min-height:0}.menu-bottom{display:none}.menu-layout>aside{margin-top:8px}.dashboard-grid{grid-template-columns:1fr}.delivery-grid{grid-template-columns:1fr}.stats{gap:12px}.stats article{padding:18px 15px}.stats p{font-size:9px}.settings-grid{grid-template-columns:1fr}.heading{align-items:flex-start}.heading-actions{flex-direction:column}.login-story h1{font-size:43px}.login-form{padding:35px}.login-inner h2{font-size:29px}}
@media(max-width:650px){body{font-size:13px}.sidebar{position:sticky;top:0;width:100%;height:auto;display:block;padding:14px 16px 0;border-right:0;border-bottom:1px solid var(--line);background:#fdfdfbf5;backdrop-filter:blur(12px)}.sidebar>.brand{height:36px}.sidebar .brand>span{font-size:22px}.sidebar .brand img{width:33px;height:33px}.sidebar .brand small{font-size:6px}.workspace-label,.sidebar-note{display:none}.account{position:absolute;top:13px;right:12px;padding:0;margin:0;border:0;gap:6px}.account .avatar{display:none}.account strong{max-width:110px;font-size:9px}.account small{font-size:8px}.account button{font-size:23px}.sidebar nav{flex-direction:row;margin-top:14px;gap:2px;justify-content:space-between;overflow:auto}.nav-link{flex:1;justify-content:center;border-radius:5px 5px 0 0;min-height:40px;font-size:10px;padding:8px 5px;gap:5px;white-space:nowrap}.nav-link>span{font-size:16px;width:16px}.nav-link i{display:none}.main{margin:0}.topbar{height:43px;padding:0 18px;font-size:8px}.topbar b{margin:0 5px}.topbar>div{font-size:8px;gap:5px}main{padding:25px 16px}.heading{margin-bottom:23px;gap:12px;flex-wrap:wrap}.heading-actions{flex-direction:row;flex-wrap:wrap}.heading-actions .secondary,.heading-actions .primary{font-size:10px;min-height:38px}.eyebrow{font-size:7px;letter-spacing:1.8px;margin-bottom:10px}h1{font-size:34px;letter-spacing:-1px}.subtitle{font-size:11px;line-height:1.8}.week{padding:5px;gap:1px}.days{gap:2px}.day{padding:5px 3px;min-height:76px}.day>span{font-size:8px}.day strong{font-size:15px}.day i{font-size:7px}.week-arrow{width:18px;font-size:13px}.notice{padding:12px;gap:9px;margin-bottom:24px}.notice strong{font-size:10px}.notice div>span{font-size:9px;line-height:1.7}.notice .text-button{display:none}.section-top h2{font-size:22px}.section-top>span{font-size:8px}.filters button{font-size:9px}.meal-card{padding:17px 12px;gap:11px;min-height:145px;position:relative}.meal-number{width:29px;height:37px;font-size:17px;align-self:flex-start;margin-top:22px}.meal-number.soup{font-size:26px}.meal-content h3{font-size:14px;margin-bottom:7px}.meal-category{font-size:6px;letter-spacing:1px}.meal-content p{font-size:9px;line-height:1.6}.meal-content small{font-size:7px}.meal-right{gap:17px;min-width:76px}.meal-right>strong{font-size:13px}.stepper button{width:24px}.stepper input{width:27px}.meal-content{min-width:0}.basket{padding:23px}.basket-item,.basket-item span,.basket-item strong,.basket-details>div{font-size:12px}.basket-header p{font-size:11px}.basket .primary{font-size:12px;min-height:48px}.basket-foot{font-size:10px}.company-note p{font-size:10px}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stats article{padding:15px 10px}.stats article>span{font-size:9px;line-height:1.6;display:block;min-height:28px}.stats strong{font-size:31px}.stats small{font-size:8px;margin-left:4px}.stats p{font-size:8px;line-height:1.6}.panel{padding:20px}.panel-title h2{font-size:24px}.panel-title>span{font-size:7px}.kitchen-row>strong{font-size:11px}.kitchen-row>b{font-size:20px}.dashboard-grid{gap:17px}.olive-panel h2{font-size:31px}.dashboard-date{gap:8px}.dashboard-date .badge{font-size:8px;white-space:normal}.delivery-head h3{font-size:12px}.delivery-head p{font-size:9px}.delivery-row{font-size:10px}.table-wrap{padding:0}th,td{padding:16px}.toolbar input{font-size:12px}.toolbar>span{font-size:10px;white-space:nowrap}.history-list .panel-title{align-items:flex-start;flex-direction:column}.history-row{font-size:11px}.history-total{font-size:11px}.form-panel{padding:22px}footer{margin:0 16px;font-size:8px}footer span{display:none}.login-layout{display:block}.login-story{min-height:auto;padding:25px}.login-story>div:not(.brand){padding:35px 0 0}.login-story h1{font-size:42px;margin:15px 0}.login-story p{font-size:12px}.login-story .eyebrow{font-size:7px}.login-story>small,.story-lines{display:none}.login-form{padding:35px 25px}.login-inner{max-width:420px}.login-inner h2{font-size:31px}.login-inner>p:not(.eyebrow){margin-bottom:25px}.demo-box{padding:17px}dialog{padding:28px 22px}.form-row{gap:12px}dialog label{font-size:11px}.form-row input{min-width:0;font-size:12px}.upload{padding:15px}.company-note{margin-bottom:0}.stepper{height:35px}.stepper input{height:33px}.stepper button{min-height:33px}}
@media print{.sidebar,.topbar,footer,.heading-actions,.dashboard-date,.olive-panel,.notice,.secondary,.primary{display:none!important}.main{margin:0}main{padding:0}.dashboard-grid,.delivery-grid{display:block}.panel{break-inside:avoid;margin-bottom:15px;box-shadow:none;border-color:#aaa}.stats{margin-bottom:15px}.heading{margin-bottom:15px}body{background:white;color:black}.dashboard-grid{margin-bottom:15px}h1{font-size:30px}}

/* Jednoduchý nový vzhled: stejná systémová typografie jako fitness appka,
   výrazná hnědá a bílá. Třídy výše zůstávají pro administraci. */
:root{--brown:#1463d7;--brown-dark:#0b48a9;--ink:#10203a;--muted:#63738a;--line:#dce6f3;--soft:#f3f8ff}body{background:#fff}.secondary{border-color:#bdd3ef}.simple-brand,.simple-nav button.selected,.ordered-label,.has-order .summary-status,.summary-lines b,.password-details summary,.quantity-picker button,.plain-notice{color:var(--brown)}.simple-days button.selected,.primary,.olive-panel{background:var(--brown);border-color:var(--brown)}
@media(max-width:700px){.header-inner{padding:18px 18px 13px}.simple-brand{font-size:18px}.simple-brand img{width:31px;height:31px}.signed-name{max-width:125px;font-size:11px}.simple-nav{padding:0 18px;gap:0;justify-content:space-between}.simple-nav button{flex:1;font-size:14px;padding:12px 5px}.simple-content{padding:26px 18px 34px}.simple-title h1{font-size:27px}.simple-days{gap:5px}.simple-days button{min-height:74px}.simple-days button span{font-size:11px}.simple-days button b{font-size:13px}.simple-meal{padding:18px 16px;align-items:flex-start;gap:12px}.simple-meal h3{font-size:16px}.simple-meal-text p{font-size:12px}.simple-meal-text small{font-size:10px}.simple-meal-action{min-width:100px;padding-top:22px}.simple-meal-action>strong{font-size:16px}.simple-meal-action>button{min-width:98px;font-size:12px;padding:10px 12px}.simple-day-total{display:block;padding:18px}.simple-day-total button{width:100%;margin-top:15px}.summary-day{padding:18px}.summary-top{align-items:flex-start}.summary-top h2{font-size:17px;max-width:58%}.summary-status{font-size:11px;max-width:42%}.summary-lines>div{font-size:12px;gap:8px}.summary-bottom{gap:12px}.summary-bottom p,.summary-bottom>span{font-size:12px}.summary-bottom .primary,.summary-bottom .secondary{min-width:100px;font-size:11px;padding:10px;white-space:normal}.simple-login{margin:42px auto}.simple-login h1{font-size:27px}}
/* Finální čitelnost a ovládání pro každodenní objednávání. */
.section-top h2,.basket-header p{text-transform:none}.section-top h2::first-letter,.basket-header p::first-letter{text-transform:uppercase}.subtitle,.meal-content p,.muted{color:#747969}.meal-content small{color:#818873}.topbar{color:#777f6b}.basket-foot{color:#7f896f}.basket-details>div{color:#7b856b}.company-note p{color:#7d896b}.meal-content h3{font-weight:500}.meal-category{color:#7e886a}.eyebrow{color:#7f886f}.section-top>span{color:#858e74}.basket-item span{color:#657153}
@media(max-width:650px){.meal-content p{font-size:10px}.meal-content small{font-size:8px}.stepper{height:44px}.stepper button{width:28px;min-height:42px}.stepper input{width:28px;height:42px}.meal-right{min-width:86px}.meal-category{font-size:7px}.filters button{min-height:36px}.basket-foot{font-size:11px}}

/* Barevný systém: bílá plocha, černá typografie a modrá pro akce. */
:root{--brown:#1463d7;--brown-dark:#0b48a9;--ink:#0b0f19;--muted:#596579;--line:#d9e2ef;--soft:#f4f8ff}
body,.simple-shell,.simple-main{background:#fff;color:#0b0f19}
.simple-header,.simple-nav,.simple-meal,.summary-day,.simple-day-total,.simple-login,.password-card{background:#fff;border-color:var(--line)}
.simple-brand,.simple-title h1,.simple-title h2,.simple-meal h3,.summary-top h2,.signed-name,.simple-login h1,.password-details h2{color:#0b0f19}
.simple-title p,.simple-meal-text p,.simple-meal-text small,.summary-status,.summary-lines,.account-email,.password-details p{color:#596579}
.simple-days button{background:#fff;border-color:#d9e2ef;color:#0b0f19}
.simple-days button.selected,.primary,.olive-panel{background:#1463d7;border-color:#1463d7;color:#fff}
.simple-nav button.selected,.ordered-label,.has-order .summary-status,.summary-lines b,.password-details summary,.quantity-picker button,.plain-notice{color:#1463d7}
.secondary{background:#fff;border-color:#b9cce6;color:#0b0f19}
.secondary:hover{background:#f4f8ff}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:#1463d7}

/* Aplikace Srub Podkozí — mobilní základ podle fitness aplikace. */
:root{--fitness-bg:#f7f8fa;--fitness-surface:#fff;--fitness-line:#dce2ea;--fitness-text:#101828;--fitness-muted:#667085;--fitness-blue:#1463d7;--fitness-blue-strong:#0b4eb9;--fitness-blue-soft:#edf5ff}
html{-webkit-text-size-adjust:100%}
body{background:var(--fitness-bg);color:var(--fitness-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}
.fitness-shell{min-height:100dvh;background:var(--fitness-bg)}
.fitness-header{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--fitness-line);position:sticky;top:0;z-index:25;backdrop-filter:blur(14px)}
.fitness-brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;letter-spacing:-.35px;color:var(--fitness-text)}
.fitness-brand img{width:36px;height:36px;border-radius:10px}.fitness-brand small{display:block;margin-top:2px;color:var(--fitness-muted);font-size:9px;letter-spacing:.7px;font-weight:700}.fitness-user{font-size:12px;font-weight:700;color:var(--fitness-muted);max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fitness-content{width:min(760px,100%);margin:0 auto;padding:24px 16px calc(94px + env(safe-area-inset-bottom))}.fitness-content .heading{margin-bottom:22px}.fitness-content .heading h1,.simple-title h1{font-family:inherit;color:var(--fitness-text);font-size:28px;line-height:1.16;font-weight:800;letter-spacing:-.65px;margin:0 0 7px}.fitness-content .eyebrow{color:var(--fitness-blue);font-size:11px;font-weight:800;letter-spacing:.9px;margin-bottom:7px}.fitness-content .subtitle,.simple-title p{font-size:14px;color:var(--fitness-muted);line-height:1.5}.simple-title{margin-bottom:22px}.simple-title h1{margin-top:0}
.fitness-bottom-nav{position:fixed;z-index:40;inset:auto 0 0;background:rgba(255,255,255,.96);border-top:1px solid var(--fitness-line);padding-bottom:env(safe-area-inset-bottom);backdrop-filter:blur(16px)}.fitness-bottom-nav>div{display:flex;max-width:760px;margin:auto;overflow-x:auto}.fitness-bottom-nav button{position:relative;flex:1;min-width:88px;min-height:62px;padding:7px 6px 6px;background:transparent;color:var(--fitness-muted);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:700}.fitness-bottom-nav button.selected{color:var(--fitness-blue)}.fitness-bottom-nav button.selected::before{content:"";height:3px;width:30px;border-radius:3px;position:absolute;top:0;background:var(--fitness-blue)}.fitness-nav-icon{font-size:20px;line-height:1;height:22px;font-weight:600}
.simple-week{border:0;background:transparent;padding:0;margin:0 0 22px}.week-switch{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.week-switch strong{font-size:14px;color:var(--fitness-text);font-weight:800}.week-switch .secondary{width:44px;min-height:44px;padding:0;border-radius:10px}.simple-days{display:flex;gap:7px;overflow-x:auto;padding-bottom:2px}.simple-days button{flex:1;min-width:64px;min-height:64px;border:1px solid var(--fitness-line);background:var(--fitness-surface);border-radius:12px;padding:8px 5px;color:var(--fitness-text);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px}.simple-days button span{font-size:11px;color:var(--fitness-muted);text-transform:capitalize}.simple-days button b{font-size:13px}.simple-days button.selected{background:var(--fitness-blue);border-color:var(--fitness-blue);color:#fff}.simple-days button.selected span{color:#fff}
.simple-day-heading{margin:0 0 13px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.simple-day-heading h2{font-family:inherit;font-size:17px;font-weight:800;letter-spacing:-.2px;color:var(--fitness-text);margin:0;text-transform:capitalize}.cutoff{border-radius:999px;background:var(--fitness-blue-soft);color:var(--fitness-blue-strong);font-size:11px;font-weight:700;padding:5px 8px;white-space:nowrap}.plain-notice{border:1px solid #b8d3fa;background:var(--fitness-blue-soft);border-radius:12px;padding:12px 14px;margin:0 0 14px;color:var(--fitness-blue-strong);font-size:13px;font-weight:650}
.simple-meals{display:grid;gap:10px}.simple-meal{min-height:0;border:1px solid var(--fitness-line);border-radius:14px;background:var(--fitness-surface);padding:16px;display:flex;gap:12px;box-shadow:0 1px 2px #10182808}.simple-meal-text{min-width:0;flex:1}.meal-type{display:inline-block;color:var(--fitness-blue);font-size:10px;line-height:1.2;font-weight:800;letter-spacing:.7px;text-transform:uppercase;margin-bottom:5px}.simple-meal h3{font-family:inherit;color:var(--fitness-text);font-size:16px;font-weight:800;line-height:1.28;letter-spacing:-.2px;margin:0 0 5px}.simple-meal-text p{margin:0 0 7px;color:var(--fitness-muted);font-size:13px;line-height:1.45}.simple-meal-text small{display:block;color:var(--fitness-muted);font-size:11px}.simple-meal-action{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:16px;min-width:110px}.simple-meal-action>strong{font-size:15px;font-weight:800;color:var(--fitness-text);white-space:nowrap}.simple-meal-action>button,.primary,.secondary{min-height:48px;border-radius:10px;font-size:14px;font-weight:800;padding:11px 14px}.simple-meal-action>button{min-width:110px}.primary{background:var(--fitness-blue);border:1px solid var(--fitness-blue);color:#fff}.primary:hover:not(:disabled){background:var(--fitness-blue-strong)}.secondary{background:#fff;border:1px solid var(--fitness-line);color:var(--fitness-text)}.secondary:hover{background:var(--fitness-blue-soft);border-color:#b8d3fa}.ordered-label{margin-top:9px;color:var(--fitness-blue-strong);font-weight:800;font-size:12px}.simple-day-total,.summary-day,.panel,.simple-login{border:1px solid var(--fitness-line);border-radius:14px;background:var(--fitness-surface);box-shadow:0 1px 2px #10182808}.simple-day-total{margin-top:14px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:14px}.simple-day-total strong{font-size:14px}.simple-day-total p{margin:4px 0 0;color:var(--fitness-muted);font-size:12px}.simple-day-total button{flex:none}.simple-summary{display:grid;gap:10px}.summary-day{padding:16px}.summary-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.summary-top h2{font-family:inherit;font-size:16px;font-weight:800;letter-spacing:-.2px;margin:0;text-transform:capitalize;color:var(--fitness-text)}.summary-status{font-size:11px;font-weight:750;color:var(--fitness-muted);text-align:right}.has-order .summary-status{color:var(--fitness-blue-strong)}.summary-lines{border-top:1px solid var(--fitness-line);border-bottom:1px solid var(--fitness-line);margin:13px 0;padding:8px 0;color:var(--fitness-text)}.summary-lines>div{padding:5px 0;font-size:13px}.summary-lines b{color:var(--fitness-blue);font-weight:800}.summary-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.summary-bottom p,.summary-bottom>span{margin:0;color:var(--fitness-muted);font-size:13px;line-height:1.45}.summary-bottom small{display:block;margin-top:3px}.summary-bottom button{flex:none}
.account-info,.password-details{padding:18px}.account-info h2,.password-details h2{font-family:inherit;font-size:19px;font-weight:800;color:var(--fitness-text)}.account-info p,.password-details p{color:var(--fitness-muted);font-size:13px}.account-info .secondary{margin-top:8px}.password-details summary{cursor:pointer;color:var(--fitness-blue);font-weight:800}.password-details form{margin-top:20px}.fitness-content .panel{padding:18px}.fitness-content input,.fitness-content select{min-height:48px;border-color:var(--fitness-line);border-radius:10px;color:var(--fitness-text)}.fitness-content label{color:var(--fitness-text);font-size:13px}
@media(min-width:768px){.fitness-shell{padding-left:224px}.fitness-header{padding:0 28px}.fitness-content{max-width:980px;padding:32px 28px}.fitness-bottom-nav{inset:0 auto 0 0;width:224px;border-top:0;border-right:1px solid var(--fitness-line);padding:18px 12px}.fitness-bottom-nav>div{height:100%;display:flex;flex-direction:column;gap:4px}.fitness-bottom-nav button{flex:none;min-height:52px;flex-direction:row;justify-content:flex-start;gap:12px;border-radius:10px;padding:10px 13px;font-size:14px}.fitness-bottom-nav button.selected{background:var(--fitness-blue-soft)}.fitness-bottom-nav button.selected::before{width:3px;height:28px;left:0;top:12px}.fitness-nav-icon{width:22px;text-align:center}.simple-meals{grid-template-columns:repeat(2,minmax(0,1fr))}.simple-meal{min-height:185px;flex-direction:column}.simple-meal-action{width:100%;flex-direction:row;align-items:center}.simple-meal-action>button{min-width:auto}.simple-days button{min-height:74px}}
@media(max-width:390px){.fitness-header{padding:0 14px}.fitness-user{max-width:94px}.fitness-content{padding-left:12px;padding-right:12px}.simple-meal{padding:14px}.simple-meal-action{min-width:100px}.simple-meal-action>button{min-width:100px;padding-left:8px;padding-right:8px;font-size:13px}.simple-days{gap:5px}.simple-days button{min-width:58px}.fitness-bottom-nav button{min-width:78px;font-size:10px}}

/* Dočasný vývojový přepínač, stejný princip jako ve fitness aplikaci. */
.dev-switcher{position:sticky;top:0;z-index:60;border-bottom:1px solid #9ac0f5;background:#edf5ff;color:var(--fitness-text)}.dev-switcher summary{height:48px;display:flex;align-items:center;gap:8px;padding:0 16px;cursor:pointer;list-style:none;font-weight:800;font-size:14px}.dev-switcher summary::-webkit-details-marker{display:none}.dev-switcher summary span{color:var(--fitness-blue);font-size:18px}.dev-switcher summary small{color:var(--fitness-muted);font-size:12px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dev-switcher summary b{margin-left:auto;color:var(--fitness-muted);font-size:18px}.dev-switcher[open] summary b{transform:rotate(180deg)}.dev-switcher>div{padding:0 16px 14px;max-height:65dvh;overflow:auto}.dev-switcher p{margin:0 0 12px;color:var(--fitness-muted);font-size:13px}.dev-switcher section+section{margin-top:12px}.dev-switcher section>strong{display:block;margin-bottom:7px;font-size:12px;color:var(--fitness-muted)}.dev-switcher section>span{display:flex;flex-wrap:wrap;gap:8px}.dev-switcher button{min-height:44px;padding:8px 13px;border:1px solid var(--fitness-line);border-radius:10px;background:#fff;color:var(--fitness-text);font-size:13px;font-weight:800}.dev-switcher button:disabled{background:var(--fitness-blue);border-color:var(--fitness-blue);color:#fff;opacity:1}.dev-switcher:has(+.fitness-shell) + .fitness-shell .fitness-header{top:48px}

/* Horní lišta a karty podle předaného mobilního vzoru. */
.fitness-header{height:62px;background:#fff}.fitness-account{display:flex;align-items:center;gap:12px;color:var(--fitness-text);font-size:13px;font-weight:750}.fitness-account>span{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fitness-account button{min-height:40px;padding:6px 0;background:transparent;color:var(--fitness-text);font-size:13px;font-weight:800;display:flex;align-items:center;gap:5px}.fitness-content{padding-top:20px}.fitness-content::before{content:"";display:block;position:absolute;top:62px;left:0;right:0;height:138px;z-index:0;background:linear-gradient(180deg,#eef8ff 0%,rgba(247,248,250,0) 100%);pointer-events:none}.fitness-content>*{position:relative;z-index:1}.simple-title h1,.fitness-content .heading h1{border-left:6px solid var(--fitness-blue);padding-left:12px}.simple-title p,.fitness-content .subtitle{max-width:540px}.simple-week,.simple-meals,.simple-summary{position:relative}.simple-meal{border-radius:15px}.simple-meal-action>button{min-height:46px}.simple-day-total{border-color:#c9dcf6;background:#f5f9ff}.fitness-bottom-nav button{min-height:66px}.fitness-nav-icon{font-size:19px}.dev-switcher:has(+.fitness-shell) + .fitness-shell .fitness-header{top:48px}.dev-switcher:has(+.fitness-shell) + .fitness-shell .fitness-content::before{top:110px}
@media(max-width:500px){.fitness-account>span{display:none}.fitness-account button b{display:none}.fitness-account button{font-size:21px}.simple-title h1,.fitness-content .heading h1{font-size:26px}.fitness-content{padding-top:19px}.simple-meal{padding:15px}.simple-meal-action{min-width:104px}.simple-meal-action>button{min-width:104px}.simple-day-heading{margin-top:2px}}

/* Přímé použití designových tokenů fitness aplikace. */
:root{--fitness-bg:#f7f8f5;--fitness-surface:#fff;--fitness-line:#dde1db;--fitness-text:#111411;--fitness-muted:#626961;--fitness-blue:#aef000;--fitness-blue-strong:#5f8500;--fitness-blue-soft:#f1fad9}
body{background:var(--fitness-bg);color:var(--fitness-text);background-image:radial-gradient(circle at 50% -10rem,rgb(174 240 0 / .16),transparent 31rem)}
.fitness-shell{background:var(--fitness-bg)}
.fitness-header{background:rgba(255,255,255,.95);border-color:var(--fitness-line)}
.fitness-brand,.fitness-account,.fitness-account button,.simple-title h1,.fitness-content .heading h1,.simple-day-heading h2,.simple-meal h3,.summary-top h2{color:var(--fitness-text)}
.fitness-brand small,.simple-title p,.fitness-content .subtitle,.simple-meal-text p,.simple-meal-text small,.summary-status,.summary-bottom p,.summary-bottom>span,.account-info p,.password-details p{color:var(--fitness-muted)}
.fitness-content::before{background:linear-gradient(180deg,#f4ffdf 0%,rgba(247,248,245,0) 100%)}
.simple-title h1,.fitness-content .heading h1{border-left-color:var(--fitness-blue)}
.fitness-bottom-nav{background:rgba(255,255,255,.96);border-color:var(--fitness-line)}.fitness-bottom-nav button{color:var(--fitness-muted)}.fitness-bottom-nav button.selected{color:var(--fitness-blue-strong)}.fitness-bottom-nav button.selected::before{background:var(--fitness-blue)}
.fitness-bottom-nav button.selected{background:transparent}.fitness-nav-icon{font-weight:800}
.primary,.simple-days button.selected{background:var(--fitness-blue);border-color:var(--fitness-blue);color:#10130d}.primary:hover:not(:disabled){background:#9cda00}.secondary{background:var(--fitness-surface);border-color:var(--fitness-line);color:var(--fitness-text)}.secondary:hover{background:#f1f5ed;border-color:#cbd3c4}
.simple-days button{background:#fff;border-color:var(--fitness-line);color:var(--fitness-text)}.simple-days button span{color:var(--fitness-muted)}.simple-days button.selected span{color:#10130d}.cutoff,.plain-notice{background:#f1fad9;border-color:#d8e7af;color:#476600}.meal-type,.ordered-label,.has-order .summary-status,.summary-lines b,.password-details summary{color:var(--fitness-blue-strong)}
.simple-meal,.simple-day-total,.summary-day,.panel,.simple-login{border-color:var(--fitness-line);box-shadow:none}.simple-day-total{background:#f4fbe8;border-color:#dce8c5}.summary-lines{border-color:var(--fitness-line)}
.dev-switcher{background:#f1fad9;border-color:#c5e27a}.dev-switcher summary span{color:var(--fitness-blue-strong)}.dev-switcher button:disabled{background:var(--fitness-blue);border-color:var(--fitness-blue);color:#10130d}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:#87bd00}
@media(min-width:768px){.fitness-bottom-nav button.selected{background:#f1fad9}.fitness-bottom-nav button.selected::before{background:var(--fitness-blue)}}

/* Čitelnost a proporce podle skutečné fitness aplikace. */
.fitness-header{height:72px;padding:0 20px}.fitness-brand{font-size:18px;gap:11px}.fitness-brand img{width:40px;height:40px}.fitness-brand small{font-size:10px;letter-spacing:.6px;margin-top:3px}.fitness-account{font-size:14px}.fitness-account button{font-size:14px;gap:7px}.logout-icon{font-size:23px;line-height:1}.fitness-content{padding:28px 16px calc(102px + env(safe-area-inset-bottom))}.fitness-content::before{top:72px;height:172px}.simple-title h1,.fitness-content .heading h1{font-size:30px;line-height:1.15;letter-spacing:-.7px;border-left-width:6px;padding-left:12px;margin-bottom:11px}.simple-title p,.fitness-content .subtitle{font-size:16px;line-height:1.55;margin-bottom:0}.fitness-content .eyebrow{display:none}.simple-title{margin-bottom:26px}.simple-week{margin-bottom:26px}.week-switch strong{font-size:16px}.week-switch .secondary{width:48px;min-height:48px;font-size:20px}.simple-days{gap:8px}.simple-days button{min-height:74px;border-radius:13px}.simple-days button span{font-size:12px;font-weight:650}.simple-days button b{font-size:15px}.simple-day-heading{margin-bottom:15px}.simple-day-heading h2{font-size:19px;line-height:1.35}.cutoff{font-size:12px;padding:6px 9px}.simple-meals{gap:12px}.simple-meal{padding:19px 17px;border-radius:15px;min-height:174px}.meal-type{font-size:11px;margin-bottom:7px;letter-spacing:.75px}.simple-meal h3{font-size:18px;line-height:1.28;margin-bottom:7px}.simple-meal-text p{font-size:14px;line-height:1.5;margin-bottom:9px}.simple-meal-text small{font-size:12px}.simple-meal-action{min-width:122px}.simple-meal-action>strong{font-size:17px}.simple-meal-action>button,.primary,.secondary{min-height:50px;font-size:15px;border-radius:11px}.simple-meal-action>button{min-width:120px}.ordered-label{font-size:13px;margin-top:11px}.simple-day-total,.summary-day,.panel{border-radius:15px}.simple-day-total{padding:19px}.simple-day-total strong{font-size:16px}.simple-day-total p{font-size:13px}.summary-day{padding:19px}.summary-top h2{font-size:18px}.summary-status{font-size:12px}.summary-lines>div,.summary-bottom p,.summary-bottom>span{font-size:14px}.fitness-bottom-nav button{min-height:70px;font-size:12px;gap:4px}.fitness-nav-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center}.fitness-nav-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.fitness-bottom-nav button.selected::before{width:34px;height:3px}.demo-label{font-size:11px}
@media(min-width:768px){.fitness-header{height:78px;padding:0 30px}.fitness-content{padding:34px 30px 44px}.fitness-content::before{top:78px}.fitness-bottom-nav button{font-size:15px}.fitness-nav-icon svg{width:23px;height:23px}.simple-title h1,.fitness-content .heading h1{font-size:34px}.simple-meal h3{font-size:19px}}
@media(max-width:390px){.fitness-header{padding:0 14px}.fitness-brand{font-size:16px}.fitness-brand img{width:36px;height:36px}.fitness-account>span{display:none}.fitness-content{padding-left:14px;padding-right:14px}.simple-title h1,.fitness-content .heading h1{font-size:28px}.simple-meal{padding:16px 14px;min-height:164px}.simple-meal h3{font-size:16px}.simple-meal-action{min-width:108px}.simple-meal-action>button{min-width:106px;font-size:14px}.fitness-bottom-nav button{min-width:82px}}

/* Přesná mobilní stavba spodní navigace z fitness appky. */
.fitness-bottom-nav{height:auto;min-height:56px;padding:0;padding-bottom:env(safe-area-inset-bottom);background:rgba(255,255,255,.95);border-top:1px solid #dde1db;box-shadow:0 -1px 4px rgb(16 24 40 / .03)}
.fitness-bottom-nav>div{display:flex;align-items:stretch;overflow-x:auto;width:100%;max-width:none;margin:0}
.fitness-bottom-nav button{position:relative;display:flex;flex:1 0 72px;min-width:72px;min-height:56px;height:56px;align-items:center;justify-content:center;flex-direction:column;gap:2px;padding:4px 8px 3px;border-radius:0;background:transparent;color:#626961;font-size:11px;line-height:1.1;font-weight:700;text-align:center;white-space:nowrap}
.fitness-bottom-nav button:hover{background:transparent;color:#111411}.fitness-bottom-nav button.selected{background:transparent;color:#5f8500}.fitness-bottom-nav button.selected::before{content:"";position:absolute;top:0;left:12px;right:12px;width:auto;height:2px;border-radius:2px;background:#aef000}
.fitness-nav-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center}.fitness-nav-icon svg{width:20px;height:20px;stroke-width:1.8}
.fitness-content{padding-bottom:calc(82px + env(safe-area-inset-bottom))}
@media(min-width:768px){.fitness-bottom-nav{height:auto;min-height:0;padding:18px 12px}.fitness-bottom-nav>div{display:flex;flex-direction:column;gap:4px}.fitness-bottom-nav button{flex:0 0 52px;min-width:0;min-height:52px;height:52px;flex-direction:row;justify-content:flex-start;gap:12px;padding:10px 13px;font-size:14px;border-radius:10px}.fitness-bottom-nav button.selected{background:#f1fad9}.fitness-bottom-nav button.selected::before{top:12px;bottom:12px;left:0;right:auto;width:3px;height:auto}.fitness-nav-icon svg{width:21px;height:21px}}

/* Přehled restaurace — stejné velké bloky a hierarchie jako ve fitness appce. */
.restaurant-overview{max-width:760px;margin:0 auto}.overview-header{position:relative;margin:0 0 20px}.overview-header h1{font-size:31px;line-height:1.15;letter-spacing:-.8px;margin:0 0 7px;padding-left:12px;border-left:6px solid #aef000;color:#111411}.overview-header>p{margin:0;color:#626961;font-size:16px;text-transform:capitalize}.overview-actions{display:flex;align-items:center;gap:9px;margin-top:17px}.overview-actions input{width:auto;max-width:155px;min-height:46px;padding:8px 10px;font-size:13px}.overview-download{min-height:46px;display:inline-flex;align-items:center;padding:9px 13px;border:1px solid #dde1db;border-radius:10px;background:#fff;color:#111411;font-size:13px;font-weight:800}.overview-total{padding:21px 20px;border:1px solid #d9e8b8;border-radius:16px;background:#f2fadf;margin:0 0 28px}.overview-total>span{display:inline-flex;padding:5px 9px;border-radius:999px;background:#fff;color:#5f8500;font-size:12px;font-weight:800}.overview-total>strong{display:block;margin:13px 0 2px;color:#111411;font-size:49px;line-height:1;font-weight:850;letter-spacing:-2px}.overview-total>strong small{font-size:17px;letter-spacing:-.4px}.overview-total p{margin:0;color:#46513e;font-size:15px;font-weight:650}.overview-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 12px}.overview-section-title h2{margin:0;color:#111411;font-family:inherit;font-size:21px;font-weight:850;letter-spacing:-.35px}.overview-section-title span{font-size:12px;font-weight:700;color:#626961}.prep-section,.delivery-section{margin-top:28px}.prep-cards,.delivery-cards{display:grid;gap:10px}.prep-card{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid #dde1db;border-radius:15px;background:#fff}.prep-card>span{width:38px;height:38px;flex:0 0 38px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#f1fad9;color:#5f8500;font-size:13px;font-weight:900}.prep-card>div{flex:1;min-width:0}.prep-card h3{margin:0 0 3px;color:#111411;font-size:17px;line-height:1.3;font-weight:820}.prep-card p{margin:0;color:#626961;font-size:13px}.prep-card>strong{font-size:24px;white-space:nowrap;color:#111411;letter-spacing:-.5px}.prep-card>strong small{font-size:12px;font-weight:700;letter-spacing:0}.delivery-card{border:1px solid #dde1db;border-radius:15px;background:#fff;overflow:hidden}.delivery-company{display:flex;align-items:center;gap:12px;padding:16px}.delivery-company>span{width:40px;height:40px;flex:0 0 40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f1fad9;color:#5f8500;font-size:12px;font-weight:900}.delivery-company>div{flex:1;min-width:0}.delivery-company h3{margin:0 0 3px;font-size:17px;color:#111411;font-weight:820}.delivery-company p{margin:0;color:#626961;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delivery-company>strong{font-size:18px;color:#111411;white-space:nowrap}.delivery-company>strong small{font-size:11px}.delivery-items{border-top:1px solid #edf0ec;padding:7px 16px 10px}.delivery-items p{display:grid;grid-template-columns:39px 1fr auto;gap:8px;align-items:start;margin:8px 0;color:#111411;font-size:14px}.delivery-items b{color:#5f8500}.delivery-items small{color:#626961;font-size:11px;text-align:right}.overview-empty{padding:20px;border:1px dashed #cfd7ca;border-radius:14px;color:#626961;text-align:center}
@media(min-width:700px){.prep-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:390px){.overview-header h1{font-size:28px}.overview-total>strong{font-size:44px}.overview-actions{align-items:stretch}.overview-actions input{max-width:136px;font-size:12px}.overview-download{font-size:12px;padding:9px}.prep-card{padding:14px}.prep-card h3,.delivery-company h3{font-size:16px}.delivery-items p{grid-template-columns:34px 1fr}.delivery-items small{grid-column:2;text-align:left}}

/* Potvrzená spodní navigace: pět stejně širokých položek a oranžová aktivní sekce. */
.fitness-bottom-nav{background:#fff;border-top-color:#eee2cf;box-shadow:none}.fitness-bottom-nav button{flex:1 1 20%;min-width:0;color:#776b58;font-size:10px;font-weight:600}.fitness-bottom-nav button.selected{color:#ffb000}.fitness-bottom-nav button.selected::before{left:10px;right:10px;background:#ffb000;height:2px}.fitness-nav-icon{width:20px;height:20px}.fitness-nav-icon svg{width:18px;height:18px;stroke-width:1.8}@media(min-width:768px){.fitness-bottom-nav button.selected{background:#fff7e3;color:#b36c00}.fitness-bottom-nav button.selected::before{background:#ffb000}}

/* Finální barevný systém Srub Podkozí podle potvrzeného oranžového rozhraní. */
:root{--fitness-bg:#fffbf6;--fitness-surface:#fffdfa;--fitness-text:#231f18;--fitness-muted:#776b58;--fitness-line:#eee2cf;--fitness-blue:#ffb000;--fitness-blue-strong:#a96c00;--fitness-blue-soft:#fff3d5}
body,.fitness-shell{background:var(--fitness-bg);color:var(--fitness-text);background-image:none}.fitness-header{background:#fffdfa;border-color:var(--fitness-line)}.fitness-content::before{background:linear-gradient(180deg,#fff5d8 0%,rgba(255,251,246,0) 100%)}
.fitness-brand,.fitness-account,.fitness-account button,.simple-title h1,.fitness-content .heading h1,.simple-day-heading h2,.simple-meal h3,.summary-top h2,.overview-header h1,.overview-section-title h2,.prep-card h3,.delivery-company h3{color:var(--fitness-text)}
.fitness-brand small,.simple-title p,.fitness-content .subtitle,.simple-meal-text p,.simple-meal-text small,.summary-status,.summary-bottom p,.summary-bottom>span,.account-info p,.password-details p{color:var(--fitness-muted)}
.primary,.simple-days button.selected{background:#ffb000;border-color:#ffb000;color:#231f18}.primary:hover:not(:disabled){background:#e99f00}.secondary{background:#fffdfa;border-color:var(--fitness-line);color:#231f18}.secondary:hover{background:#fff3d5;border-color:#f2ca79}.simple-days button{background:#fffdfa;border-color:var(--fitness-line);color:#231f18}.simple-days button.selected span{color:#231f18}.cutoff,.plain-notice{background:#fff3d5;border-color:#f2d495;color:#8b5d00}.meal-type,.ordered-label,.has-order .summary-status,.summary-lines b,.password-details summary{color:#a96c00}.simple-day-total{background:#fff6df;border-color:#f1dba8}.simple-meal,.summary-day,.panel,.simple-login{background:#fffdfa;border-color:var(--fitness-line)}
.restaurant-overview{color:#231f18}.overview-header h1{border-left-color:#ffb000}.overview-header>p,.overview-section-title span,.prep-card p,.delivery-company p,.delivery-items small{color:#776b58}.overview-download{background:#fffdfa;border-color:#eee2cf;color:#231f18}.overview-total{background:#fff1cf;border-color:#f1d795}.overview-total>span{color:#8b5d00;background:#fffdfa}.overview-total p{color:#776b58}.prep-card,.delivery-card{background:#fffdfa;border-color:#eee2cf}.prep-card>span,.delivery-company>span{background:#fff0c9;color:#a96c00}.prep-card>strong,.delivery-company>strong,.delivery-items{color:#231f18}.delivery-items b{color:#a96c00}
.fitness-bottom-nav{background:#fffdfa;border-top-color:#eee2cf}.fitness-bottom-nav button{color:#776b58}.fitness-bottom-nav button.selected{color:#ffb000}.fitness-bottom-nav button.selected::before{background:#ffb000}.dev-switcher{background:#fff3d5;border-color:#f2d495}.dev-switcher summary span{color:#a96c00}.dev-switcher button:disabled{background:#ffb000;border-color:#ffb000;color:#231f18}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:#ffb000}
@media(min-width:768px){.fitness-bottom-nav button.selected{background:#fff4dd;color:#a96c00}.fitness-bottom-nav button.selected::before{background:#ffb000}}

/* Finální obrazovka přehledu: rytmus podle schválené mobilní předlohy, bez fotek jídel. */
.fitness-content{max-width:470px;margin:0 auto;padding:14px 14px calc(76px + env(safe-area-inset-bottom));}
.fitness-content::before{display:none}
.photo-layout{width:100%;max-width:390px;margin:0 auto;padding:2px 0 6px}
.photo-layout-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:3px 1px 12px}
.photo-layout-head h1{margin:0;color:#17130e;font-size:25px;line-height:1.06;letter-spacing:-1.1px;font-weight:850}
.photo-layout-head p{margin:3px 0 0;color:#8c8172;font-size:12px;line-height:1.2}
.photo-layout-meta{display:flex;align-items:center;gap:7px;padding-top:2px;color:#685e51}
.photo-layout-meta small{font-size:10px;font-weight:700;text-transform:capitalize}
.photo-bell{display:grid;place-items:center;width:28px;min-height:28px;padding:0;border:0;background:transparent;color:#3d362d;font-size:18px}
.photo-date{display:flex;justify-content:flex-end;margin:-3px 0 10px}
.photo-date label{display:flex;align-items:center;gap:6px;min-height:31px;padding:0 10px;border:1px solid #eee2cf;border-radius:10px;background:#fffdfa;color:#3b342b;font-size:10px;font-weight:750}
.photo-date label>span{font-size:12px;color:#a96c00}.photo-date input{width:102px;min-height:25px;padding:0;border:0;background:transparent;color:#3b342b;font:inherit}.photo-date input:focus{outline:0}
.photo-total{display:flex;justify-content:space-between;align-items:center;min-height:109px;padding:15px 17px 13px;border:1px solid #f1daa3;border-radius:11px;background:#fff1cf}
.photo-total span{display:block;margin-bottom:2px;color:#8f6206;font-size:9px;font-weight:800;letter-spacing:.35px}
.photo-total strong{display:block;color:#17130e;font-size:52px;line-height:.94;font-weight:900;letter-spacing:-3px}
.photo-total strong small{font-size:17px;letter-spacing:-.4px;font-weight:800}
.photo-total p{margin:8px 0 0;color:#695c48;font-size:10px;font-weight:650}
.photo-total-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#ffe7a9;color:#bd7700;font-size:28px}
.photo-section{margin-top:18px}.photo-section-head{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:8px}
.photo-section-head h2{margin:0;color:#242019;font-size:15px;line-height:1.2;font-weight:850;letter-spacing:-.35px}
.photo-add,.photo-show{min-height:28px;padding:4px 10px;border-radius:9px;font-size:10px;font-weight:800;white-space:nowrap}
.photo-add{border:1px solid #ffb000;background:#ffb000;color:#2a1b00}.photo-show{border:1px solid #eee2cf;background:#fffdfa;color:#4d453a}
.photo-list{display:grid;gap:6px}.photo-meal,.photo-company{display:flex;align-items:center;gap:10px;min-height:56px;padding:7px 10px;border:1px solid #f0e6d6;border-radius:10px;background:#fffdfa;box-shadow:0 2px 7px rgb(43 31 12 / .035)}
.photo-meal-mark,.photo-company-mark{display:grid;place-items:center;width:35px;height:35px;flex:0 0 35px;border-radius:9px;background:#fff0cd;color:#a96c00;font-size:10px;font-weight:900}
.photo-meal>div,.photo-company>div{flex:1;min-width:0}.photo-meal h3,.photo-company h3{margin:0;overflow:hidden;color:#2b251e;font-size:12px;line-height:1.25;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.photo-meal p,.photo-company p{margin:2px 0 0;overflow:hidden;color:#887b6a;font-size:9px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.photo-meal>strong{display:flex;flex-direction:column;align-items:flex-end;color:#241f18;font-size:17px;line-height:.9;letter-spacing:-.6px}.photo-meal>strong small{margin-top:3px;color:#887b6a;font-size:8px;font-weight:700;letter-spacing:0}
.photo-arrow{color:#8b7d6a;font-size:21px;font-weight:400;line-height:1}.photo-firms{margin-top:19px}.photo-company{min-height:51px}.photo-company-mark{background:#f7f2e9;color:#776b58;font-size:16px}.photo-status{display:inline-flex;align-items:center;gap:3px;padding:5px 7px;border-radius:999px;background:#fff0c9;color:#8f6206;font-size:8px;font-weight:850;white-space:nowrap}.photo-status::first-letter{color:#ffb000}.photo-empty{margin:0;padding:16px;border:1px dashed #eadbc2;border-radius:10px;color:#776b58;font-size:12px;text-align:center}
.fitness-bottom-nav{min-height:57px;background:#fffdfa}.fitness-bottom-nav button{height:57px;min-height:57px;padding:3px 3px 2px;gap:1px;color:#665e54;font-size:8px;font-weight:650}.fitness-bottom-nav button.selected{color:#d28700}.fitness-bottom-nav button.selected::before{left:13px;right:13px;height:2px;background:#ffb000}.fitness-nav-icon{width:18px;height:18px}.fitness-nav-icon svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.fitness-bottom-nav button.selected .fitness-nav-icon svg:first-child{stroke:#d28700}
@media(min-width:768px){.fitness-content{max-width:540px;padding-top:22px}.fitness-bottom-nav{padding:0}.fitness-bottom-nav>div{display:flex;flex-direction:row}.fitness-bottom-nav button{height:57px;min-height:57px;flex-direction:column;justify-content:center;gap:1px;padding:3px;font-size:9px;border-radius:0}.fitness-bottom-nav button.selected{background:#fffdfa;color:#d28700}.fitness-bottom-nav button.selected::before{top:0;bottom:auto;left:13px;right:13px;width:auto;height:2px}.fitness-nav-icon svg{width:17px;height:17px}}
@media(max-width:355px){.photo-total strong{font-size:47px}.photo-total{padding-left:14px;padding-right:12px}.photo-total-mark{width:51px;height:51px}.photo-company{gap:7px}.photo-status{padding:4px;font-size:7px}.photo-layout-head h1{font-size:23px}}

/* Spodní navigace odpovídá nízkému panelu ze schválené předlohy. */
.fitness-bottom-nav{height:50px;min-height:50px;padding:0;background:#fffdfa;border-top:1px solid #eee2cf}
.fitness-bottom-nav>div{height:50px;overflow:hidden}
.fitness-bottom-nav button{height:50px;min-height:50px;padding:3px 2px 2px;gap:0;font-size:8px;line-height:1.05;font-weight:650}
.fitness-nav-icon{width:21px;height:21px;margin-bottom:1px}
.fitness-nav-icon svg{width:19px;height:19px;stroke-width:1.85}
.fitness-bottom-nav button.selected::before{left:15px;right:15px;height:2px}
.fitness-content{padding-bottom:calc(68px + env(safe-area-inset-bottom))}
@media(min-width:768px){.fitness-bottom-nav{height:50px;min-height:50px;padding:0}.fitness-bottom-nav>div{height:50px;flex-direction:row;gap:0}.fitness-bottom-nav button{height:50px;min-height:50px;flex:1 1 20%;padding:3px 2px 2px;gap:0;font-size:8px;justify-content:center}.fitness-nav-icon{width:21px;height:21px;margin-bottom:1px}.fitness-nav-icon svg{width:19px;height:19px}.fitness-bottom-nav button.selected{background:#fffdfa}.fitness-bottom-nav button.selected::before{top:0;left:15px;right:15px;width:auto;height:2px}}

/* Větší text a vzdušnější bloky pro pohodlné čtení na mobilu. */
body{font-size:16px}
.simple-title p,.fitness-content .subtitle{font-size:17px;line-height:1.5}
.simple-day-heading h2{font-size:22px}.cutoff{font-size:13px;padding:7px 10px}
.simple-meals{gap:16px}.simple-meal{padding:20px 18px;min-height:190px}.meal-type{font-size:12px}.simple-meal h3{font-size:20px;line-height:1.25}.simple-meal-text p{font-size:15px;line-height:1.5}.simple-meal-text small{font-size:13px}.simple-meal-action{min-width:128px}.simple-meal-action>strong{font-size:18px}.simple-meal-action>button,.primary,.secondary{font-size:16px;min-height:52px}.simple-meal-action>button{min-width:126px}.ordered-label{font-size:14px}
.simple-summary{gap:16px}.summary-day{padding:21px}.summary-top h2{font-size:20px}.summary-status{font-size:13px}.summary-lines{margin:16px 0;padding:10px 0}.summary-lines>div{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;padding:9px 0;font-size:16px;line-height:1.35}.summary-bottom{padding-top:2px;align-items:flex-start}.summary-bottom p,.summary-bottom>span{font-size:15px;line-height:1.45}.summary-bottom button{font-size:15px}
.meal-list{gap:15px}.meal-card{padding:22px 18px;min-height:168px}.meal-content h3{font-size:20px}.meal-content p{font-size:15px}.meal-content small{font-size:13px}.meal-category{font-size:11px}.meal-right>strong{font-size:18px}.filters button,.section-top>span{font-size:13px}.notice{font-size:14px}.notice strong{font-size:14px}.notice div>span{font-size:13px}
.photo-total strong{font-size:42px;letter-spacing:-2.3px}.photo-total strong small{font-size:16px}.photo-total p{font-size:11px}.photo-section-head h2{font-size:18px}.photo-add,.photo-show{min-height:34px;font-size:12px}.photo-list{gap:10px}.photo-meal,.photo-company{min-height:66px;padding:9px 11px}.photo-meal-mark,.photo-company-mark{width:39px;height:39px;flex-basis:39px;font-size:12px}.photo-meal h3,.photo-company h3{font-size:15px}.photo-meal p,.photo-company p{font-size:11px}.photo-meal>strong{font-size:19px}.photo-meal>strong small{font-size:10px}.photo-company{min-height:61px}.photo-status{font-size:10px;padding:6px 8px}
.delivery-view{max-width:460px;margin:0 auto}.delivery-view-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin:3px 0 18px}.delivery-view-head h1{margin:0;color:#231f18;font-size:29px;line-height:1.1;letter-spacing:-.8px}.delivery-view-head p{margin:5px 0 0;color:#776b58;font-size:16px;text-transform:capitalize}.delivery-view-head label{width:126px;margin:0;color:#776b58;font-size:11px;font-weight:800}.delivery-view-head input{min-height:34px;margin-top:4px;padding:4px 6px;border-color:#eee2cf;font-size:12px}.delivery-view-note{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding:14px 16px;border:1px solid #f1d795;border-radius:14px;background:#fff3d5}.delivery-view-note>span{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#ffb000;color:#231f18;font-size:22px;font-weight:900}.delivery-view-note p{margin:0;color:#443a2e;font-size:15px;font-weight:800;line-height:1.4}.delivery-view-note small{color:#776b58;font-size:12px;font-weight:650}.delivery-route{display:grid;gap:13px}.route-stop{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #eee2cf;border-radius:14px;background:#fffdfa}.route-number{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#fff0c9;color:#a96c00;font-size:14px;font-weight:900}.route-stop-main{min-width:0;flex:1}.route-stop h2{margin:0;color:#231f18;font-size:18px;line-height:1.25}.route-stop-main>p{margin:4px 0 10px;color:#776b58;font-size:13px}.route-meals{display:grid;gap:5px}.route-meals span{color:#4d4438;font-size:14px;line-height:1.3}.route-meals b{color:#a96c00}.route-stop>strong{display:flex;flex-direction:column;align-items:flex-end;color:#231f18;font-size:20px;line-height:1}.route-stop>strong small{margin-top:4px;color:#776b58;font-size:10px;white-space:nowrap}
@media(max-width:390px){.simple-meal{padding:18px 15px}.simple-meal h3{font-size:18px}.simple-meal-text p{font-size:14px}.simple-meal-action{min-width:115px}.simple-meal-action>button{min-width:112px;font-size:14px}.summary-lines>div{font-size:14px}.photo-meal h3,.photo-company h3{font-size:14px}.photo-status{display:none}}

/* Stejná systémová bezpatková typografie jako ve fitness aplikaci. */
body{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,p,button,input,select,textarea,label,.photo-layout-head h1,.photo-section-head h2,.delivery-view-head h1,.route-stop h2{font-family:inherit}

/* Proporce ikon a popisků přesně podle mobilního navigačního vzoru. */
.fitness-bottom-nav button{font-size:8px;font-weight:600;letter-spacing:-.12px;overflow:visible}
.fitness-nav-icon{width:20px;height:20px;margin:0 0 1px}
.fitness-nav-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}

/* Větší potvrzená varianta spodní navigace. */
.fitness-bottom-nav{height:58px;min-height:58px}
.fitness-bottom-nav>div{height:58px}
.fitness-bottom-nav button{height:58px;min-height:58px;padding:5px 2px 4px;gap:2px;font-size:9px;line-height:1.1}
.fitness-nav-icon{width:23px;height:23px;margin:0}
.fitness-nav-icon svg{width:20px;height:20px;stroke-width:1.8}
.fitness-content{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
@media(min-width:768px){.fitness-bottom-nav,.fitness-bottom-nav>div{height:58px;min-height:58px}.fitness-bottom-nav button{height:58px;min-height:58px;padding:5px 2px 4px;gap:2px;font-size:9px}.fitness-nav-icon{width:23px;height:23px}.fitness-nav-icon svg{width:20px;height:20px}}

.company-overview,.company-delivery{max-width:460px;margin:0 auto}.company-overview-card,.company-delivery-card{margin:0 0 22px;padding:19px;border:1px solid #f1d795;border-radius:15px;background:#fff3d5}.company-overview-card>span,.company-delivery-card>span{font-size:11px;color:#a96c00;font-weight:850;letter-spacing:.6px}.company-overview-card strong{display:block;margin:8px 0 3px;font-size:42px;line-height:1;letter-spacing:-1.6px}.company-overview-card strong small{font-size:16px;letter-spacing:0}.company-overview-card p,.company-delivery-card p{margin:6px 0 0;color:#776b58;font-size:14px;line-height:1.45}.company-delivery-card h2{margin:7px 0 0;font-size:21px}.company-overview-list h2{margin:0 0 9px;font-size:19px}.company-overview-list>div{display:flex;align-items:center;gap:12px;padding:14px 3px;border-bottom:1px solid #eee2cf}.company-overview-list b{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#fff0c9;color:#a96c00;font-size:13px}.company-overview-list span{flex:1;color:#231f18;font-size:15px;font-weight:750}.company-overview-list small{display:block;margin-top:2px;color:#776b58;font-size:12px;font-weight:500}.company-overview-list strong{font-size:14px;white-space:nowrap}
/* Denní firemní soupis objednávek pro restauraci. */
.admin-orders{max-width:560px;margin:0 auto}.admin-orders-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:4px 0 16px}.admin-orders-head h1{margin:0;font-size:30px;letter-spacing:-.9px}.admin-orders-head p{margin:4px 0 0;color:#776b58;font-size:16px;text-transform:capitalize}.admin-orders-head input{width:130px;min-height:40px;padding:7px;border-color:#eee2cf;border-radius:10px;font-size:12px}.admin-order-stats{display:flex;gap:8px;margin-bottom:13px}.admin-order-stats span{flex:1;padding:11px 13px;border-radius:11px;background:#fff3d5;color:#776b58;font-size:13px}.admin-order-stats b{color:#231f18;font-size:20px;margin-right:4px}.admin-order-list{display:grid;gap:9px}.admin-order-list article{display:flex;align-items:flex-start;gap:11px;padding:13px 12px;border:1px solid #eee2cf;border-radius:13px;background:#fffdfa}.admin-order-index{display:grid;place-items:center;width:31px;height:31px;flex:0 0 31px;border-radius:8px;background:#fff0c9;color:#a96c00;font-size:11px;font-weight:900}.admin-order-list article>div{flex:1;min-width:0}.admin-order-list h2{margin:0;color:#231f18;font-size:16px;line-height:1.25}.admin-order-list p{margin:3px 0 0;color:#776b58;font-size:12px;line-height:1.35}.admin-order-list>article>strong{font-size:15px;white-space:nowrap;color:#231f18}.admin-orders-total{display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding:17px;border-radius:14px;background:#ffb000;color:#231f18}.admin-orders-total span{font-size:15px;font-weight:800}.admin-orders-total small{display:block;margin-top:3px;font-size:12px;font-weight:600}.admin-orders-total strong{font-size:23px;letter-spacing:-.7px}
.admin-meal-totals{margin-top:18px;padding:16px;border:1px solid #eee2cf;border-radius:14px;background:#fff8e8}.admin-meal-totals h2{margin:0;color:#231f18;font-size:19px}.admin-meal-totals>p{margin:4px 0 12px;color:#776b58;font-size:13px}.admin-meal-totals>div{display:grid;gap:7px}.admin-meal-totals article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid #eadfc9}.admin-meal-totals span{font-size:15px;font-weight:700;color:#231f18}.admin-meal-totals strong{font-size:16px;white-space:nowrap;color:#a96c00}
.admin-orders-route .route-stop h2 small{color:#a96c00;font-size:12px}.admin-orders-route .admin-meal-totals{margin-top:20px}
.simple-days button{min-height:80px}.simple-days button span{font-size:14px;font-weight:750}.simple-days button b{font-size:17px}.week-switch .secondary{width:54px;min-height:54px;font-size:24px}.admin-orders-route .simple-week{margin:0 0 20px}
.admin-order-list h2 small{color:#a96c00;font-size:12px}.admin-meal-totals>div{display:grid;gap:0}.admin-meal-totals article,.admin-meal-totals .meal-total-head{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;gap:8px;align-items:center;padding:10px 0;border-top:1px solid #eadfc9}.admin-meal-totals .meal-total-head{padding:0 0 7px;border:0;color:#776b58;font-size:12px;font-weight:800}.admin-meal-totals .meal-total-head b{text-align:right}.admin-meal-totals strong{font-size:16px;text-align:right;color:#a96c00}

/* Klientské Objednávky ve stejném provedení jako pohled restaurace */
.company-summary .route-stop{align-items:flex-start}
.company-summary .route-stop.has-order{border-color:#f1d795;background:#fffaf0}
.company-summary .route-meals span{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.company-summary .route-meals span i{flex:none;color:#231f18;font-style:normal;font-weight:800;white-space:nowrap}
.company-summary .route-meals b{flex:none;margin-right:6px}
.company-summary .route-stop-main>button{margin-top:11px}
.company-summary .route-stop-main>p{margin:6px 0 0;color:#776b58;font-size:13px;line-height:1.45}
.company-summary .route-stop>strong small{color:#776b58;font-size:11px;font-weight:650}

/* Jídelníček: čitelnější odlišení jídel */
.simple-meal .meal-type{background:#fff3d5;color:#a96c00;border-radius:999px;padding:4px 9px;margin-bottom:8px}
.simple-meal.is-ordered{border-color:#f1d795;background:#fffaf0;box-shadow:inset 3px 0 0 #ffb000}
.simple-meal.is-ordered .meal-type{background:#ffe6ab}
.simple-meal h3{color:#231f18;font-weight:800}
.simple-meal-action>strong{color:#231f18;font-size:21px;font-weight:900;letter-spacing:-.4px}
.simple-meal .ordered-label{display:inline-block;background:#ffb000;color:#231f18;border-radius:999px;padding:3px 10px}
.company-summary .route-stop h2{text-transform:capitalize}
.company-summary .route-stop h2 small{text-transform:none}
.company-summary .route-meals span em{flex:1;min-width:0;font-style:normal;text-align:left}
/* Součtový pruh je <footer>, nesmí ho schovat globální "footer span{display:none}" na mobilu */
.admin-orders-total span{display:block}

/* ---- Sjednocení klienta a restaurace ---- */
/* Oranžový 3D pruh na kartách dnů/firem u obou rolí */
.admin-orders-route .route-stop,
.company-summary .route-stop.has-order{border-color:#f1d795;background:#fffaf0;box-shadow:inset 3px 0 0 #ffb000}
.company-summary .route-stop{background:var(--fitness-surface)}
.company-summary .route-stop.has-order{background:#fffaf0}

/* Kategorie jako štítek i v jídelníčku restaurace */
.meal-card .meal-category,.simple-meal .meal-type{background:#fff3d5;color:#a96c00;border-radius:999px;padding:4px 9px}

/* Jednotná váha tučného písma podle tabulky "Připravit do kuchyně" (700) */
.simple-title h1,.fitness-content .heading h1{font-weight:700}
.company-overview-card span,.company-overview-card strong,
.company-overview-list span,.company-overview-list strong,
.company-overview-list h2{font-weight:700}
.simple-meal h3,.simple-meal .meal-type,.simple-meal .ordered-label{font-weight:700}
.route-stop h2,.route-stop>strong,.delivery-view-note p{font-weight:700}
.admin-orders-total span,.admin-orders-total strong{font-weight:700}
.route-number,.delivery-view-note>span,.admin-order-index,
.simple-meal-action>strong,.company-overview-list b{font-weight:800}
/* Podtitul u klienta je věta, ne datum – nesmí ho chytit capitalize pro datum */
.company-summary .delivery-view-head p{text-transform:none}
/* Štítek kategorie musí být pilulka na šířku textu, ne pruh přes celou kartu */
.meal-card .meal-category,.simple-meal .meal-type{display:inline-block;width:fit-content;max-width:100%;justify-self:start;align-self:start}
/* Segoe UI má jen jeden tučný řez – "tlustost" v přehledu dělá velikost a stažené prostrkání */
.company-overview-card strong{font-size:34px;letter-spacing:-.5px}
.company-overview-card strong small{font-size:15px}
.simple-title h1,.fitness-content .heading h1{letter-spacing:-.3px}
.delivery-view-note>span{font-size:20px;letter-spacing:-.3px}
/* Stejné doladění velkého čísla i v přehledu restaurace */
.photo-total strong{font-size:34px;letter-spacing:-.5px}
.photo-total strong small{font-size:15px}

/* Akční řádek nad týdnem (import/přidat jídlo, datum, stažení souhrnu) */
.simple-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 16px}
.simple-actions .secondary,.simple-actions .primary{min-height:40px;padding:9px 15px;font-size:13px}
.overview-date{display:flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--fitness-line);border-radius:10px;background:var(--fitness-surface);color:#776b58;font-size:12px;font-weight:700}
.overview-date input{width:auto;min-height:32px;padding:4px 6px;border:0;background:transparent;font-size:13px;font-weight:700;color:#231f18}
.overview-more{margin-top:12px;width:100%}

/* 3D pruh i na kartách jídelníčku restaurace */
.simple-meals.admin-menu .simple-meal{border-color:#f1d795;background:#fffaf0;box-shadow:inset 3px 0 0 #ffb000}

/* Stavové řádky na Přehledu (obě role) */
.state-list{margin-top:22px}
.state-list h2{margin:0 0 9px;font-size:19px;font-weight:700}
.state-row{display:flex;align-items:center;gap:12px;padding:13px 3px;border-bottom:1px solid #eee2cf}
.state-row:last-child{border-bottom:0}
.state-row b{display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;border-radius:9px;background:#fff0c9;color:#a96c00;font-size:13px;font-weight:800}
.state-row span{flex:1;min-width:0;color:#231f18;font-size:15px;font-weight:700}
.state-row strong{color:#776b58;font-size:13px;font-weight:700;text-align:right;white-space:nowrap}
.state-row.is-open b{background:#e6f4d4;color:#5f8500}
.state-row.is-open strong{color:#5f8500}
.state-row.is-warn b{background:#ffe0d0;color:#b4501a}
.state-row.is-warn strong{color:#b4501a}
.state-row.is-locked b{background:#ece7de;color:#776b58}
/* Patka Přehledu: hlavní akce + nenápadné stažení souhrnu */
.overview-foot{margin-top:14px;display:grid;gap:8px;justify-items:center}
.overview-foot .overview-more{margin-top:0}
.overview-foot .text-button{color:#a96c00;font-size:13px;font-weight:700;background:transparent;padding:6px 4px}

/* Upravit: kompaktní tlačítko zaražené do pravého dolního rohu karty */
.simple-meals.admin-menu .simple-meal-action{align-self:stretch;justify-content:space-between;align-items:flex-end;min-width:96px}
.simple-meals.admin-menu .simple-meal-action>button{width:auto;min-width:0;height:34px;min-height:34px;padding:0 14px;border-radius:8px;font-size:13px;font-weight:700}

/* ---- Kompaktnější karty na obou účtech ---- */
.simple-meals .simple-meal{min-height:0;padding:14px 15px;gap:10px}
.simple-meals .simple-meal h3{font-size:17px;line-height:1.25;margin-bottom:0}
.simple-meal .meal-meta{margin:5px 0 0;color:#776b58;font-size:13px;line-height:1.45}
.simple-meal .meal-meta small{font-size:13px;color:#8a7d6a}
.simple-meal .meal-meta span{margin:0 3px;color:#cbb794}
.simple-meal .ordered-label{margin-top:8px}
.simple-meals .simple-meal-action{align-self:stretch;justify-content:space-between;align-items:flex-end;min-width:92px}
.simple-meals .simple-meal-action>strong{font-size:19px}
.simple-meals .simple-meal-action>button{width:auto;min-width:0;height:34px;min-height:34px;padding:0 14px;border-radius:8px;font-size:13px;font-weight:700}

/* Tlačítka na kartách dnů/firem v Objednávkách taky doprava dolů */
.company-summary .route-stop{padding:14px}
.company-summary .route-stop-main{display:flex;flex-direction:column}
.company-summary .route-stop-main>button{align-self:flex-end;width:auto;min-width:0;height:34px;min-height:34px;margin-top:10px;padding:0 14px;border-radius:8px;font-size:13px;font-weight:700}
/* Oddělovač drží u alergenů, ať nezůstane viset na konci řádku */
.simple-meal .meal-meta small::before{content:"· ";color:#cbb794}
.simple-meals .simple-meal-action{min-width:84px}
/* Tlačítko zarovnat na roh celé karty, ne jen sloupce s jídly */
.company-summary .route-stop{position:relative}
.company-summary .route-stop-main{padding-bottom:44px}
.company-summary .route-stop-main>button{position:absolute;right:14px;bottom:14px;margin-top:0}

/* Logo Srub Podkozí drží svůj poměr stran 156:99, není to čtverec */
.fitness-brand img,.simple-brand img{width:auto;height:36px;border-radius:8px;object-fit:contain}
.simple-login .simple-brand img{height:56px}
.fitness-brand img{height:46px}

/* Plné názvy krabiček místo zkratek JK/VK potřebují širší sloupce */
.admin-meal-totals article,.admin-meal-totals .meal-total-head{grid-template-columns:minmax(0,1fr) 82px 62px}
.admin-meal-totals .meal-total-head b{font-size:11px;letter-spacing:-.2px}

/* ---- Kuchyňský list ---- */
.kitchen-sheet{max-width:1100px;margin:0 auto}
.ks-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 0 18px}
.ks-head h1{margin:0;font-size:26px;font-weight:700}
.ks-head p{margin:4px 0 0;color:#776b58;font-size:15px;text-transform:capitalize}
.ks-head-right{text-align:right}
.ks-head-right>strong{display:block;font-size:26px;font-weight:700;color:#231f18}
.ks-head-right small{font-size:13px;color:#776b58;font-weight:650}
.ks-actions{display:flex;gap:7px;justify-content:flex-end;margin-top:8px}
.ks-block{margin-bottom:22px}
.ks-block h2{margin:0 0 9px;font-size:17px;font-weight:700}
.ks-block h2 small{color:#776b58;font-size:12px;font-weight:650;margin-left:6px}
.ks-empty{margin:0;color:#776b58;font-size:14px}
.ks-scroll{overflow-x:auto;border:1px solid #eee2cf;border-radius:12px;background:#fffdfa}
.ks-table{border-collapse:collapse;width:100%;font-size:13px}
.ks-table th,.ks-table td{border-bottom:1px solid #f0e6d3;border-right:1px solid #f0e6d3;padding:8px 6px;text-align:center;white-space:nowrap}
.ks-table th:last-child,.ks-table td:last-child{border-right:0}
.ks-table tbody tr:last-child td{border-bottom:0}
.ks-table thead th{background:#fff3d5;color:#5c4a1e;font-weight:700;font-size:11px;line-height:1.2;vertical-align:bottom}
.ks-table thead th span{display:inline-block;max-width:78px;white-space:normal}
.ks-dish{text-align:left!important;font-weight:700;color:#231f18;position:sticky;left:0;background:#fffdfa;min-width:150px}
.ks-table thead .ks-dish{background:#fff3d5}
.ks-sum{background:#fff8e6;font-weight:800;color:#a96c00}
.ks-soup td{background:#f6f7ee}
.ks-soup .ks-dish{background:#f6f7ee}
.ks-zero{color:#c9bda8}
.ks-table tfoot td{background:#fff3d5;font-weight:800;color:#5c4a1e;border-top:2px solid #eadfc9}
.ks-final .ks-table{font-size:14px}
.ks-open{margin-left:auto;flex:none}

@media print{
 .fitness-header,.fitness-bottom-nav,.dev-switcher,.demo-label,.ks-actions,.ks-open{display:none!important}
 .fitness-shell,.fitness-content{padding:0!important;background:#fff!important}
 body,.fitness-shell{background:#fff!important}
 .kitchen-sheet{max-width:none}
 .ks-scroll{overflow:visible!important;border:1px solid #000;border-radius:0}
 .ks-table th,.ks-table td{border-color:#000!important;padding:6px 5px}
 .ks-table thead th,.ks-sum,.ks-table tfoot td,.ks-soup td,.ks-dish{background:#fff!important;color:#000!important}
 .ks-head h1,.ks-head p,.ks-head-right>strong{color:#000!important}
 @page{size:A4 landscape;margin:10mm}
}
/* Kuchyňský list je široká tabulka – nesmí ho svírat úzký obsahový sloupec */
.fitness-content:has(.kitchen-sheet){max-width:none!important}
@media print{.fitness-content,.fitness-content:has(.kitchen-sheet){max-width:none!important;padding:0!important}}
/* Kuchyňský list je ranní akce – na Přehledu hned pod souhrnem */
.ks-cta{margin-top:14px;justify-content:space-between}
/* Kuchyňský list vsazený přímo do Přehledu */
.ks-inline{margin-top:18px}
.ks-inline-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.ks-inline-head h2{margin:0;font-size:19px;font-weight:700}
.ks-inline .ks-block h2{font-size:15px}
/* Řádek se souhrnem dne přetékal na úzkých displejích */
.simple-day-total{flex-wrap:wrap;gap:10px}
.simple-day-total>div{flex:1 1 160px;min-width:0}
.simple-day-total>button{flex:0 0 auto;max-width:100%;height:34px;min-height:34px;padding:0 14px;border-radius:8px;font-size:13px;font-weight:700;margin-left:auto}

/* Nastavení a správa firem */
.set-card{background:var(--fitness-surface);border:1px solid var(--fitness-line);border-radius:14px;padding:15px;margin-bottom:14px}
.set-card h2{margin:0 0 6px;font-size:17px;font-weight:700}
.set-card p{margin:0 0 10px;color:#776b58;font-size:14px;line-height:1.5}
.set-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.set-card-head h2{margin:0}
.set-card form label{margin-bottom:10px}
.firm-actions{display:flex;gap:6px;flex:none}
.firm-actions .secondary{height:32px;min-height:32px;padding:0 11px;font-size:12px;border-radius:8px}
.firm-actions .danger{color:#a33417;border-color:#f0cdbd}
.firm-actions .danger:hover{background:#fdefe8}
.toolbar{margin-bottom:14px}

/* Čtyři sjednané ceny hlavních jídel vedle sebe */
.price-grid{border:1px solid var(--fitness-line);border-radius:12px;padding:12px 13px 4px;margin:0 0 18px;background:#fffdfa}
.price-grid legend{padding:0 6px;font-size:12px;font-weight:700;color:#57594e}
.price-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.price-row label{margin-bottom:6px}
.price-grid .footnote{margin:2px 0 8px}
@media(max-width:420px){.price-row{grid-template-columns:repeat(2,1fr)}}

/* Tlačítko karty patří do pravého dolního rohu */
.set-card-foot{display:flex;justify-content:flex-end;margin-top:12px}
.set-card-foot .primary,.set-card-foot .secondary{height:34px;min-height:34px;padding:0 14px;border-radius:8px;font-size:13px;font-weight:700}
.set-card form label{display:block;margin-bottom:10px}
.set-card .footnote{margin:2px 0 0}

/* Modál firmy do stejné palety jako zbytek appky */
#modal{border:0;border-radius:16px;padding:20px 18px;max-width:520px;width:calc(100% - 28px);background:var(--fitness-surface);color:var(--fitness-text)}
#modal::backdrop{background:rgba(35,31,24,.45)}
#modal h2{font-size:23px;font-weight:700;margin:0 0 4px;color:#231f18}
#modal .eyebrow{margin:0 0 6px;color:#a96c00;font-size:11px;font-weight:800;letter-spacing:.7px}
#modal label{font-size:12px;font-weight:700;color:#57594e}
#modal input,#modal select{border:1px solid var(--fitness-line);border-radius:9px;background:#fff}
#modal input:focus-visible,#modal select:focus-visible{outline:3px solid #ffd98a;outline-offset:2px}
#modal .primary{background:#ffb000;color:#231f18}
#modal .primary:hover:not(:disabled){background:#f0a600}
#modal .secondary{background:#fff;border:1px solid var(--fitness-line);color:#57594e}
#modal .modal-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:9px;background:#fff3d5;color:#a96c00;font-size:20px;line-height:1}
#modal .footnote{color:#776b58;font-size:12px;line-height:1.5}

/* ---- Notebooková verze: obsah využije šířku, tabulky se nemusí posouvat ---- */
@media(min-width:1000px){
 .fitness-content{max-width:1180px!important;padding-left:32px;padding-right:32px}
 .kitchen-sheet,.delivery-view,.company-overview,.simple-meals{max-width:none}
 .ks-scroll{overflow-x:visible}
 .ks-table{table-layout:auto;font-size:14px}
 .ks-table th,.ks-table td{padding:9px 8px}
 .ks-table thead th span{max-width:none;white-space:nowrap}
 .ks-dish{position:static;min-width:0}
 /* dlaždice vedle sebe, ať stránka není jeden dlouhý sloupec */
 .simple-meals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .set-card{max-width:720px}
 .price-row{grid-template-columns:repeat(4,1fr)}
 .delivery-route{grid-template-columns:repeat(2,minmax(0,1fr))}
 .state-list{max-width:720px}
}
@media(min-width:1400px){
 .fitness-content{max-width:1320px!important}
 .simple-meals{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:1000px){.fitness-content{width:auto!important}}

/* Ceny M1–M4: dvě na řádek, ať se vejde celý text pole */
.price-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(min-width:560px){.price-row{grid-template-columns:repeat(4,minmax(0,1fr))}}
.price-row input{padding-left:11px;padding-right:11px}
.price-row input::placeholder{font-size:12px}

/* Typ krabiček a příplatek musí být zarovnané i při zalomeném popisku */
#modal .form-row{align-items:end;gap:12px}
#modal .form-row label{margin-bottom:0;display:flex;flex-direction:column;justify-content:flex-end;height:100%}
#modal .form-row select,#modal .form-row input{margin-top:7px;width:100%}

/* Skupiny polí ve formuláři firmy */
.form-group{border:1px solid var(--fitness-line);border-radius:12px;padding:12px 13px 4px;margin:0 0 16px;background:#fffdfa}
.form-group legend{padding:0 6px;font-size:12px;font-weight:700;color:#57594e}
.form-group .footnote{margin:2px 0 10px}
.form-group label{margin-bottom:12px}

/* ---- Karta dne v Objednávkách: vzdušná hlavička, tlačítko bez díry pod ním ---- */
.company-summary .route-stop{padding:15px 15px 13px;position:static;column-gap:11px}
.company-summary .route-stop-main{padding-bottom:0;display:block}
.company-summary .route-stop h2{margin:0 0 3px;line-height:1.2}
.company-summary .stop-tag{display:inline-block;margin:0 0 10px;padding:3px 9px;border-radius:999px;background:#ffe6ab;color:#8a5800;font-size:11px;font-weight:700}
.company-summary .route-meals{gap:7px;padding-top:2px;border-top:1px solid #f2e4c8;margin-top:2px}
.company-summary .route-meals span{padding-top:5px}
.company-summary .route-stop-main>button{position:static;align-self:auto;float:right;margin:11px 0 0}
.company-summary .route-stop-main::after{content:"";display:block;clear:both}
.company-summary .route-stop>strong{padding-top:1px}
/* Karta dne jako mřížka: číslo | obsah | porce, tlačítko vlastní řádek vpravo */
.company-summary .route-stop{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:start;column-gap:11px;row-gap:0}
.company-summary .route-stop>.route-number{grid-column:1;grid-row:1}
.company-summary .route-stop>.route-stop-main{grid-column:2;grid-row:1;flex:none}
.company-summary .route-stop>strong{grid-column:3;grid-row:1}
.company-summary .route-stop>.stop-action{grid-column:1/-1;grid-row:2;justify-self:end;float:none;margin:12px 0 0}
.company-summary .route-stop-main::after{content:none}

/* Štítek a tlačítko sdílí spodní řádek karty – karta je tím kompaktnější */
.company-summary .route-stop{padding:13px 14px 11px;row-gap:0}
.company-summary .route-stop h2{margin:0 0 7px}
.company-summary .route-meals{gap:6px}
.company-summary .stop-foot{grid-column:1/-1;grid-row:2;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px}
.company-summary .stop-tag{margin:0;padding:2px 8px;font-size:11px}
.company-summary .stop-action{height:28px;min-height:28px;padding:0 11px;border-radius:7px;font-size:12px;font-weight:700;margin:0;justify-self:auto}
/* Stav odesílání: krátký štítek vpravo, vysvětlení samostatně pod řádkem */
.set-card .state-row{padding:11px 0}
.set-card .state-row strong{white-space:nowrap}
.mail-note{margin:8px 0 14px;color:#776b58;font-size:12px;line-height:1.5}

/* ---- Náhled nahraného jídelníčku ---- */
.import-loading{margin:14px 0;color:#776b58;font-size:14px}
.import-note{margin:12px 0;padding:10px 12px;border-radius:10px;background:#fff3d5;color:#5c4a1e;font-size:13px;line-height:1.5}
.import-note.warn{background:#ffe6d6;color:#8a3c14}
#import-preview h3{margin:16px 0 8px;font-size:16px;font-weight:700}
.import-day{margin-bottom:14px}
.import-day h4{margin:0 0 6px;font-size:13px;font-weight:700;color:#a96c00;text-transform:capitalize}
.import-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:6px}
.import-cat{flex:none;width:22px;height:22px;display:grid;place-items:center;border-radius:6px;background:#fff0c9;color:#a96c00;font-size:11px;font-weight:800}
.import-row input{flex:1 1 130px;min-height:34px;padding:6px 9px;font-size:13px}
.import-row .import-price{flex:0 0 78px}
.import-row.has-warn input{border-color:#e8a06f;background:#fff8f3}
.import-warn{flex:1 1 100%;color:#a3521f;font-size:11px;padding-left:29px}

/* Týden rozpoznaný z nahraného lístku */
.import-week{margin:12px 0;padding:10px 12px;border-radius:10px;background:#e6f4d4;color:#3f5a0e;font-size:13px}

/* ---- Úprava jídla ---- */
#modal .modal-sub{margin:0 0 14px;color:#776b58;font-size:14px}
#modal .modal-sub::first-letter{text-transform:uppercase}
#modal .form-group input,#modal .form-group select{height:44px;min-height:44px}
#modal .form-group .form-row{margin-bottom:6px}
#modal .meal-delete{margin-top:10px;color:#a33417;border-color:#f0cdbd;background:#fff}
#modal .meal-delete:hover{background:#fdefe8}
#modal .footnote.center{text-align:center;margin:6px 0 0}

/* ---- Výběr jako dlaždice místo rozbalovacího seznamu ---- */
.choice{margin:0 0 14px}
.choice-label{display:block;margin:0 0 7px;font-size:12px;font-weight:700;color:#57594e}
.choice-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px}
#modal .choice-option{position:relative;display:block;margin:0;cursor:pointer}
#modal .choice-option input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;opacity:0;cursor:pointer}
.choice-option span{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:8px 10px;border:1.5px solid var(--fitness-line);border-radius:11px;background:#fff;color:#57594e;font-size:13px;font-weight:700;text-align:center;line-height:1.25;transition:border-color .15s,background .15s,color .15s}
.choice-option:hover span{border-color:#f1d795;background:#fffaf0}
.choice-option input:checked + span{border-color:#ffb000;background:#fff3d5;color:#231f18;box-shadow:inset 0 0 0 1px #ffb000}
.choice-option input:checked + span::before{content:"✓";color:#a96c00;font-weight:900}
.choice-option input:focus-visible + span{outline:3px solid #ffd98a;outline-offset:2px}
.fee-field[hidden]{display:none!important}

/* ---- Nahrávání lístku: plocha pro přetažení ---- */
#modal .dropzone{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;margin:6px 0 12px;padding:26px 16px 22px;border:2px dashed #eadbb8;border-radius:16px;background:#fffaf0;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}
#modal .dropzone:hover,#modal .dropzone.is-over{border-color:#ffb000;background:#fff3d5}
#modal .dropzone input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;opacity:0;cursor:pointer}
#modal .dropzone:focus-within{outline:3px solid #ffd98a;outline-offset:2px}
.dropzone-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:8px;border-radius:14px;background:#ffb000;color:#231f18;font-size:22px;font-weight:900}
.dropzone-title{font-size:16px;font-weight:700;color:#231f18}
.dropzone-hint{font-size:13px;font-weight:500;color:#776b58}
.dropzone-types{display:flex;gap:6px;margin-top:10px}
.dropzone-types b{padding:3px 9px;border:1px solid #eee2cf;border-radius:999px;background:#fff;color:#a96c00;font-size:11px;font-weight:700}
.dropzone-file{margin-top:10px;padding:4px 10px;border-radius:8px;background:#e6f4d4;color:#3f5a0e;font-size:12px;font-weight:700}
.dropzone-file:empty{display:none}

/* ---- Průběh čtení: kolečko s procenty ---- */
.read-progress{display:grid;justify-items:center;gap:8px;padding:18px 0 6px}
.read-dial{position:relative;width:96px;height:96px}
.read-ring{width:100%;height:100%;transform:rotate(-90deg)}
.read-ring circle{fill:none;stroke-width:6}
.read-ring-bg{stroke:#f2e6cf}
.read-ring-fg{stroke:#ffb000;stroke-linecap:round;transition:stroke-dashoffset .5s ease}
.read-ring-spin{stroke:#fffaf0;stroke-linecap:round;opacity:.9}
.read-spin{transform-box:view-box;transform-origin:32px 32px;animation:read-spin 1.2s linear infinite}
.read-pct{position:absolute;inset:0;display:grid;place-items:center;color:#231f18;font-size:19px;font-weight:800}
.read-text{margin:0;color:#776b58;font-size:13px;font-weight:600}
@keyframes read-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.read-spin{animation:none;display:none}.read-ring-fg{transition:none}}

/* ---- Přihlašovací stránka ---- */
.login-page{min-height:100dvh;display:grid;place-items:center;max-width:none;margin:0;padding:28px 14px;background:radial-gradient(120% 55% at 50% 0%,#fff3d5 0%,var(--fitness-bg) 62%)}
.login-card{width:100%;max-width:440px;padding:28px 24px 24px;border:1px solid var(--fitness-line);border-radius:20px;background:#fffdfa;box-shadow:0 18px 40px -24px rgba(35,31,24,.35)}
.login-brand{display:flex;align-items:center;gap:14px;margin:0 0 26px}
.login-logo{flex:none;width:auto;height:64px;border-radius:12px}
.login-brand strong{display:block;color:#231f18;font-size:24px;font-weight:800;line-height:1.1;letter-spacing:-.4px}
.login-brand span{display:block;margin-top:5px;color:#776b58;font-size:13px;font-weight:600}
.login-card h1{margin:0 0 4px;color:#231f18;font-family:inherit;font-size:22px;font-weight:700;letter-spacing:-.3px}
.login-sub{margin:0 0 18px;color:#776b58;font-size:14px;line-height:1.5}
.login-card label{margin:0 0 14px;color:#57594e;font-size:12px;font-weight:700}
.login-card input{height:48px;min-height:48px;border:1px solid var(--fitness-line);border-radius:12px;background:#fff;font-size:15px}
.login-card input:focus-visible{border-color:#ffb000;outline:3px solid #ffd98a;outline-offset:1px}
.login-card .primary.full{height:50px;min-height:50px;margin-top:4px;justify-content:center;border-radius:12px;background:#ffb000;color:#231f18;font-size:15px;font-weight:800}
.login-card .primary.full:hover:not(:disabled){background:#f0a600}
.login-card .form-error{margin:12px 0 0;text-align:center}
.login-demo{margin-top:22px;padding-top:18px;border-top:1px solid #f0e6d3}
.login-demo strong{display:block;color:#231f18;font-size:14px;font-weight:700}
.login-demo p{margin:3px 0 10px;color:#776b58;font-size:12px}
.login-demo-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.login-demo-choices .secondary{height:44px;min-height:44px;justify-content:center;border:1.5px solid var(--fitness-line);border-radius:11px;background:#fff;color:#57594e;font-size:13px;font-weight:700}
.login-demo-choices .secondary:hover{border-color:#f1d795;background:#fffaf0;color:#231f18}
@media(max-width:380px){.login-brand strong{font-size:21px}.login-logo{height:56px}.login-card{padding:24px 18px 20px}}

/* ---- Očko pro zobrazení hesla ---- */
.pw-field{margin:0 0 14px}
.login-card .pw-label{display:block;margin:0 0 7px;color:#57594e;font-size:12px;font-weight:700}
.pw-wrap{position:relative}
.pw-wrap input{padding-right:50px}
.pw-toggle{position:absolute;top:50%;right:5px;transform:translateY(-50%);display:grid;place-items:center;width:40px;height:40px;padding:0;border-radius:9px;background:transparent;color:#776b58;cursor:pointer}
.pw-toggle:active:not(:disabled){transform:translateY(-50%)}
.pw-toggle:hover{background:#fff3d5;color:#a96c00}
.pw-toggle:focus-visible{outline:3px solid #ffd98a;outline-offset:1px}
.pw-toggle[aria-pressed="true"]{color:#a96c00}
.pw-toggle svg{display:block}

/* Cena jídla a pod ní příplatek za jednorázovou krabičku */
.price-stack{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}
.simple-meals .simple-meal-action .price-stack strong{color:#231f18;font-size:19px;font-weight:800;letter-spacing:-.4px;line-height:1.1}
.box-fee{color:#776b58;font-size:11px;font-weight:600;white-space:nowrap}

/* Karty v Objednávkách: tlačítko nahoře vpravo u nadpisu, dole součet za den (klient) nebo za firmu (srub) */
.delivery-route .route-stop{display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:11px;align-items:start}
.delivery-route .route-stop>.route-stop-main{grid-column:2;grid-row:1;display:block;padding-bottom:0}
.delivery-route .stop-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px;margin-bottom:6px}
.delivery-route .stop-head h2{margin:0;line-height:1.2}
.delivery-route .stop-head .stop-action{flex:none;height:28px;min-height:28px;margin:0;padding:0 11px;border-radius:7px;font-size:12px;font-weight:700}
.delivery-route .route-meals span{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.delivery-route .route-meals span em{flex:1;min-width:0;font-style:normal;text-align:left}
.delivery-route .route-meals span i{flex:none;color:#231f18;font-style:normal;font-weight:800;white-space:nowrap}
.delivery-route .route-meals b{flex:none;margin-right:6px}
.delivery-route .stop-total{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:9px;border-top:1px dashed #e6cf9c}
.delivery-route .stop-count{display:flex;align-items:center;gap:8px;color:#776b58;font-size:12px;font-weight:650}
.delivery-route .stop-count .stop-tag{margin:0;padding:2px 8px;border-radius:999px;background:#ffe6ab;color:#8a5800;font-size:11px;font-weight:700}
.delivery-route .stop-sum{color:#776b58;font-size:12px;font-weight:650;white-space:nowrap}
.delivery-route .stop-sum b{margin-left:7px;color:#231f18;font-size:17px;font-weight:800;letter-spacing:-.3px}

/* Navigace sekcí: na mobilu a tabletu spodní lišta, na počítači panel vlevo vedle obsahu.
   Starší vrstvy tlačily lištu do levého horního rohu pod přepínač účtů, kde nebyla vidět. */
@media (min-width:768px) and (max-width:999px){
 .fitness-shell{padding-left:0!important}
 .fitness-bottom-nav{top:auto!important;left:0!important;right:0!important;bottom:0!important;width:auto!important;border-right:0!important;border-top:1px solid #eee2cf!important}
 .fitness-content{padding-bottom:90px!important}
}
@media (min-width:1000px){
 .fitness-shell{display:grid!important;grid-template-columns:248px minmax(0,1fr);grid-template-rows:auto 1fr auto;padding-left:0!important;padding-right:0!important;padding-bottom:0!important}
 .fitness-shell>.fitness-header{grid-column:2;grid-row:1}
 .fitness-shell>.fitness-content{grid-column:2;grid-row:2}
 .fitness-shell>.demo-label{grid-column:2;grid-row:3}
 .fitness-bottom-nav{grid-column:1;grid-row:1/-1;position:sticky!important;top:0!important;left:auto!important;right:auto!important;bottom:auto!important;align-self:start;width:auto!important;height:100vh!important;min-height:0!important;padding:22px 14px!important;border-top:0!important;border-left:0!important;border-right:1px solid #eee2cf!important;background:#fffdfa!important;box-shadow:none!important;backdrop-filter:none!important}
 .fitness-bottom-nav>div{display:flex!important;flex-direction:column!important;gap:6px!important;height:auto!important;overflow:visible!important}
 .fitness-bottom-nav button{flex:0 0 auto!important;width:100%!important;height:50px!important;min-height:50px!important;flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;gap:12px!important;padding:0 16px!important;border-radius:10px!important;color:#665e54!important;font-size:15px!important;font-weight:650!important;letter-spacing:0!important;line-height:1.2!important}
 .fitness-bottom-nav button:hover{background:#fff4dd!important;color:#231f18!important}
 .fitness-bottom-nav button.selected{background:#fff4dd!important;color:#a96c00!important;font-weight:750!important}
 .fitness-bottom-nav button.selected::before{content:""!important;left:0!important;right:auto!important;top:11px!important;bottom:11px!important;width:3px!important;height:auto!important;border-radius:3px!important;background:#ffb000!important}
 .fitness-nav-icon{width:24px!important;height:24px!important;margin:0!important}
 .fitness-nav-icon svg{width:21px!important;height:21px!important}
}
@media print{.fitness-shell{display:block!important;padding:0!important}}

/* Objednávky restaurace po firmách: dlaždice s firmami, týdenní výpis nebo měsíc po týdnech */
.firm-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:8px;margin:14px 0 20px}
.firm-picker button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:54px;height:auto;padding:9px 11px;border:1px solid #eee2cf;border-radius:10px;background:#fff;color:#231f18;text-align:left;box-shadow:none}
.firm-picker button span{font-size:13px;font-weight:700;line-height:1.2}
.firm-picker button small{color:#8b7f6c;font-size:11px;font-weight:600}
.firm-picker button:hover{border-color:#ffb000;background:#fffaf0}
.firm-picker button.selected{border-color:#ffb000;background:#ffb000;color:#231f18}
.firm-picker button.selected small{color:#5c3d00}
.firm-title{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin:0 0 10px}
.firm-title h2{margin:0;font-size:22px;font-weight:800;color:#231f18}
.firm-title span{color:#776b58;font-size:13px;font-weight:600}
.month-weeks{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:14px 0}
.month-weeks article{display:flex;flex-direction:column;gap:3px;padding:14px;border:1px solid #eee2cf;border-radius:14px;background:#fff}
.month-weeks article.has-order{border-color:#f1d795;background:#fffaf0;box-shadow:inset 3px 0 0 #ffb000}
.month-weeks .week-label{color:#a96c00;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}
.month-weeks .week-range{color:#776b58;font-size:13px;font-weight:600}
.month-weeks strong{margin-top:6px;color:#231f18;font-size:22px;font-weight:800;letter-spacing:-.4px}
.month-weeks small{color:#776b58;font-size:12px;font-weight:600}

/* Týdny měsíční firmy jsou klikací a otevřou okno se dny jako u týdenních firem */
.month-weeks .month-week{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;height:auto;min-height:0;padding:14px;border:1px solid #eee2cf;border-radius:14px;background:#fff;color:#231f18;text-align:left;box-shadow:none;cursor:pointer;font:inherit}
.month-weeks .month-week.has-order{border-color:#f1d795;background:#fffaf0;box-shadow:inset 3px 0 0 #ffb000}
.month-weeks .month-week:hover{border-color:#ffb000;background:#fff4dd}
.month-weeks .month-week:focus-visible{outline:3px solid #ffd98a;outline-offset:2px}
.month-weeks .week-open{margin-top:8px;color:#a96c00;font-size:12px;font-weight:700}
#modal.week-modal{max-width:920px}
#modal .week-detail{margin-top:12px}
#modal .week-detail .admin-orders-total{margin-top:14px}

/* Křížek v okně s týdnem zůstává při rolování nahoře */
#modal.week-modal .modal-close{position:sticky;top:0;float:right;z-index:3;margin:-6px -6px 0 10px;box-shadow:0 2px 8px rgb(35 31 24 / .12)}

/* Telefon pro změnu jídla pod datem v jídelníčku firmy */
.change-call{margin:-4px 0 14px;color:#776b58;font-size:13px;font-weight:600}
.change-call a{color:#a96c00;font-weight:800;text-decoration:none;white-space:nowrap}
.change-call a:hover{text-decoration:underline}

/* Stejná šířka obsahu ve všech sekcích a dnech. Obsah je v mřížce vedle levého panelu
   a okraje "auto" ho v mřížce smršťovaly na šířku obsahu – každá sekce pak byla jinak široká. */
@media (min-width:1000px){
 .fitness-shell>.fitness-content{width:100%!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box}
}
@media (min-width:1400px){
 .fitness-shell>.fitness-content{max-width:1320px!important}
}
/* Nadpis v Objednávkách vypadá stejně jako v ostatních sekcích */
.delivery-view-head h1{margin:0 0 11px;padding-left:12px;border-left:6px solid #ffb000;color:#231f18;font-size:28px;font-weight:700;line-height:1.15;letter-spacing:-.3px}
.delivery-view-head p{margin:0;color:#776b58;font-size:17px;font-weight:400}
@media (min-width:768px){.delivery-view-head h1{font-size:34px}}
/* Místo pro posuvník je vždy rezervované, takže krátká a dlouhá stránka nejsou různě široké */
html{scrollbar-gutter:stable}
/* Široký kuchyňský list se posouvá uvnitř svého rámečku, stránka do strany nikdy */
.ks-scroll{max-width:100%;overflow-x:auto!important}

/* Levý panel sekcí drží při rolování na místě. Když je nahoře přepínač účtů,
   panel se zastaví pod ním – jinak mu přepínač zakryl horní položky. */
@media (min-width:1000px){
 .dev-switcher + .fitness-shell .fitness-bottom-nav{top:49px!important;height:calc(100vh - 49px)!important}
}

/* ================================================================
   Tablet a počítač. Mobil (do 767 px) zůstává beze změny.
   Starší vrstvy byly psané pro mobil a na větších displejích nechávaly
   bloky zúžené na 460–720 px, takže stránka působila uříznutě.
   ================================================================ */
@media (min-width:768px){
 /* Sekce vyplní celou šířku obsahu, všechny se stejnými okraji */
 .fitness-content>section,.fitness-content>.company-overview,.fitness-content>.delivery-view{max-width:none!important;width:100%!important;margin-left:0!important;margin-right:0!important}
 .state-list,.set-card,.company-overview-list,.company-overview-card,.admin-orders-total{max-width:none!important}
 .admin-orders-total{width:auto!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box}
 .simple-title p{max-width:none}
 .month-weeks{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
}

/* Tablet */
@media (min-width:768px) and (max-width:999px){
 .fitness-content{width:100%!important;max-width:820px!important;padding:24px 28px 100px!important;box-sizing:border-box}
 .simple-meals{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .delivery-route{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .fitness-content:has(> .set-card){display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
}

/* Počítač */
@media (min-width:1000px){
 .fitness-content{padding:30px 34px 48px!important;box-sizing:border-box}
 .fitness-account>span{max-width:none!important}

 /* Přehled: dva sloupce pro kratší bloky, dlouhé bloky přes celou šířku */
 .company-overview{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;align-items:start}
 .company-overview>*{grid-column:1/-1}
 .company-overview:has(> .company-overview-list)>.state-list{grid-column:1}
 .company-overview:has(> .state-list)>.company-overview-list{grid-column:2}
 .company-overview:not(:has(> .ks-inline))>.company-overview-card{grid-column:1;margin-top:0}
 .company-overview:not(:has(> .ks-inline))>.state-list{grid-column:2;margin-top:0}
 .company-overview>.state-list,.company-overview>.company-overview-list{margin-top:18px}
 .overview-foot{display:flex!important;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}
 .overview-foot .overview-more,.company-overview>.overview-more{width:auto!important;min-width:220px;padding:0 24px!important;justify-self:start}

 /* Nastavení: karty ve dvou sloupcích */
 .fitness-content:has(> .set-card){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
 .fitness-content:has(> .set-card)>*{margin:0!important}
 .fitness-content:has(> .set-card)>.simple-title{grid-column:1/-1;margin-bottom:4px!important}
}

/* Tlačítko pro rozbalení firem bez objednávky */
.missing-toggle{display:block;width:100%;height:auto;min-height:44px;margin-top:8px;padding:10px 14px;border:1px dashed #e6cf9c;border-radius:10px;background:#fffdfa;color:#a96c00;font-size:14px;font-weight:700;cursor:pointer;box-shadow:none}
.missing-toggle:hover{border-style:solid;border-color:#ffb000;background:#fff4dd}

/* Nastavení: mezery uvnitř karet */
.set-card .mail-note{margin:8px 0 14px!important}
.set-card form>label{margin-bottom:0}
.set-card-foot{gap:10px!important;flex-wrap:wrap;justify-content:flex-end}

/* Nastavení na počítači: dva sloupce, karty se skládají pod sebe bez děr pod kratšími kartami */
@media (min-width:1000px){
 .fitness-content:has(> .set-card){display:block!important;column-count:2;column-gap:18px}
 .fitness-content:has(> .set-card)>.simple-title{column-span:all;margin:0 0 18px!important}
 .fitness-content:has(> .set-card)>.set-card{display:block;width:100%;break-inside:avoid;margin:0 0 18px!important;box-sizing:border-box}
}
/* Tlačítko pro uložení hesla stejně velké a zarovnané jako ostatní tlačítka v Nastavení */
.set-card form>button.primary:not(.small){display:flex;width:auto!important;height:34px;min-height:34px;margin:12px 0 0 auto;padding:0 14px;border-radius:8px;font-size:13px}

/* Úprava objednávky restaurací a poznámka o úpravě u dne */
.edit-note{margin:2px 0 8px;color:#a96c00;font-size:12px;font-weight:700}
.admin-edit-list{display:grid;gap:8px;margin:14px 0 16px}
.admin-edit-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #eee2cf;border-radius:12px;background:#fff}
.admin-edit-row>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.admin-edit-row b{color:#231f18;font-size:14px;font-weight:700}
.admin-edit-row small{color:#776b58;font-size:12px}
.admin-edit-qty{display:flex;align-items:center;gap:6px;flex:none}
.admin-edit-qty button{width:34px;min-width:34px;height:34px;min-height:34px;padding:0;border-radius:8px;font-size:18px;font-weight:700}
.admin-edit-qty input{width:56px;height:34px;min-height:34px;margin:0;padding:0 6px;text-align:center;font-size:15px;font-weight:700}
.stop-head .stop-action[data-admin-edit]{flex:none}

/* Počet porcí v úpravě objednávky: číslo přesně uprostřed, bez šipek prohlížeče */
#modal .admin-edit-qty input{flex:none;width:56px;min-width:0;height:36px;min-height:36px;padding:0!important;text-align:center;font-size:16px;font-weight:800;font-variant-numeric:tabular-nums;line-height:36px;color:#231f18;-moz-appearance:textfield;appearance:textfield}
#modal .admin-edit-qty input::-webkit-outer-spin-button,#modal .admin-edit-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
#modal .admin-edit-qty button{width:36px;min-width:36px;height:36px;min-height:36px;display:grid;place-items:center;line-height:1}

/* Hláška po akci – karta s ikonou, nadpisem, popisem a pruhem zbývajícího času */
#toast{position:fixed;left:50%;right:auto;top:auto;bottom:calc(58px + 14px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(420px,calc(100vw - 24px));max-width:none;padding:0;border-radius:0;background:none;box-shadow:none;color:inherit;font-size:inherit;opacity:1;pointer-events:none;transition:none;z-index:1000}
.toast-card{pointer-events:auto;position:relative;display:flex;align-items:flex-start;gap:12px;padding:14px 42px 17px 14px;border:1px solid #f1d795;border-radius:16px;background:#fffdf8;color:#231f18;box-shadow:0 18px 40px -12px rgb(35 31 24 / .35),0 2px 6px rgb(35 31 24 / .08);overflow:hidden;opacity:0;transform:translateY(14px) scale(.97);transition:opacity .22s ease,transform .34s cubic-bezier(.2,.9,.3,1.15)}
.toast-card.is-in{opacity:1;transform:none}
.toast-card.is-leaving{opacity:0;transform:translateY(8px) scale(.98);transition:opacity .2s ease,transform .2s ease}
.toast-icon{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#ffb000;color:#231f18;box-shadow:0 4px 12px -4px rgb(255 176 0 / .8)}
.toast-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.toast-card.is-ok .toast-icon path{stroke-dasharray:24;stroke-dashoffset:24}
.toast-card.is-ok.is-in .toast-icon path{stroke-dashoffset:0;transition:stroke-dashoffset .38s ease .12s}
.toast-body{display:flex;flex-direction:column;gap:3px;min-width:0;padding-top:1px}
.toast-body strong{font-size:15px;font-weight:800;line-height:1.25;letter-spacing:-.1px}
.toast-body span{color:#5d5447;font-size:13px;line-height:1.45}
.toast-close{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:28px;height:28px;min-width:0;min-height:0;padding:0;border:0;border-radius:8px;background:transparent;color:#8b7f6c;font-size:19px;line-height:1;box-shadow:none;cursor:pointer}
.toast-close:hover{background:#f5ecd9;color:#231f18}
.toast-close:focus-visible{outline:3px solid #ffd98a;outline-offset:1px}
.toast-bar{position:absolute;left:0;bottom:0;width:100%;height:3px;background:#ffb000;transform-origin:left center;animation:toast-bar var(--toast-ms,4500ms) linear forwards}
.toast-card.is-paused .toast-bar{animation-play-state:paused}
.toast-card.is-error{border-color:#efc3b6;background:#fff8f5}
.toast-card.is-error .toast-icon{background:#c9492f;color:#fff;box-shadow:0 4px 12px -4px rgb(201 73 47 / .7)}
.toast-card.is-error .toast-bar{background:#c9492f}
@keyframes toast-bar{from{transform:scaleX(1)}to{transform:scaleX(0)}}
@media (min-width:1000px){#toast{left:auto;right:28px;bottom:28px;transform:none}}
@media (prefers-reduced-motion:reduce){.toast-card,.toast-card.is-leaving{transition:opacity .15s linear;transform:none}.toast-card.is-ok .toast-icon path{stroke-dashoffset:0;transition:none}}
/* Hláška jako popover ve vrchní vrstvě – bez výchozího rámečku a pozadí prohlížeče */
#toast[popover]{inset:auto;left:50%;bottom:calc(58px + 14px + env(safe-area-inset-bottom));margin:0;border:0;padding:0;background:none;overflow:visible;color:inherit}
@media (min-width:1000px){#toast[popover]{left:auto;right:28px;bottom:28px}}

/* Počet porcí při objednávce firmy: velká tlačítka − a + pro prst, číslo mezi nimi uprostřed */
#modal .quantity-picker{display:grid;grid-template-columns:60px minmax(0,1fr) 60px;align-items:center;gap:16px;margin:10px 0 20px}
#modal .quantity-picker button{display:grid;place-items:center;width:60px;min-width:60px;height:60px;min-height:60px;margin:0;padding:0;border:1px solid #f1d795;border-radius:18px;background:#fff4dd;color:#a96c00;font-size:30px;font-weight:700;line-height:1;box-shadow:none;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,background-color .12s ease}
#modal .quantity-picker button:hover{background:#ffe6ab}
#modal .quantity-picker button:active{transform:scale(.93);background:#ffd98a}
#modal .quantity-picker button:focus-visible{outline:3px solid #ffd98a;outline-offset:2px}
#modal .quantity-picker input{width:100%;min-width:0;height:60px;min-height:60px;margin:0;padding:0!important;border-radius:18px;text-align:center;font-size:26px;font-weight:800;font-variant-numeric:tabular-nums;color:#231f18;-moz-appearance:textfield;appearance:textfield}
#modal .quantity-picker input::-webkit-outer-spin-button,#modal .quantity-picker input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
