:root{--primary:#63131d;--accent:#9a2333;--bg:#f8f0db;--card:#fff;--text:#17211e;--muted:#66746f;--border:#dfe7e4;--danger:#b42318;--shadow:0 18px 50px rgba(21,42,36,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.shell{width:min(1180px,calc(100% - 32px));margin:auto}.topbar{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}.topbar-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:10px;font-weight:850;letter-spacing:-.03em}.brand img{width:38px;height:38px;border-radius:12px}.nav-actions{display:flex;gap:8px;align-items:center}.link-btn,.btn{border:0;border-radius:13px;padding:11px 15px;font-weight:750}.link-btn{background:#edf4f1}.btn{background:var(--primary);color:#fff}.btn.secondary{background:#e9eefc;color:#173b92}.btn.ghost{background:#eef4f2;color:var(--text)}.btn.danger{background:#feeceb;color:var(--danger)}.btn.small{padding:8px 11px;font-size:.9rem}.hero{position:relative;overflow:hidden;isolation:isolate;padding:64px 0 34px}.hero:before{content:"";position:absolute;inset:0 0 auto 0;height:min(560px,100%);background-image:linear-gradient(180deg,rgba(248,240,219,.18) 0%,rgba(248,240,219,.24) 28%,rgba(248,240,219,.58) 90%,rgba(248,240,219,.95) 100%),url("../img/hero-food-bg.png");background-size:cover; background-repeat:no-repeat; background-position:center top; opacity:.72; z-index:-2; pointer-events:none}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:170px;background:linear-gradient(180deg,rgba(248,240,219,0) 0%,rgba(248,240,219,.76) 55%,var(--bg) 100%);z-index:-1;pointer-events:none}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:center}.eyebrow{display:inline-flex;padding:7px 10px;border-radius:999px;background:#e7f4ef;color:var(--primary);font-size:.82rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.hero h1{font-size:clamp(2.35rem,5vw,4.7rem);line-height:.95;letter-spacing:-.065em;margin:16px 0}.hero p{font-size:1.08rem;color:var(--muted);max-width:700px;line-height:1.65}.food-panel{min-height:320px;border-radius:30px;padding:26px;background:linear-gradient(145deg,var(--primary),#143f58);color:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.food-panel:before,.food-panel:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.1)}.food-panel:before{width:270px;height:270px;right:-90px;top:-80px}.food-panel:after{width:180px;height:180px;left:-60px;bottom:-80px}.food-panel strong{font-size:2.15rem;letter-spacing:-.04em;z-index:1}.food-panel span{opacity:.85;margin-top:7px;z-index:1}.filters{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:12px;background:#fff;border:1px solid var(--border);border-radius:22px;padding:14px;box-shadow:var(--shadow);margin:26px 0}.field label{display:block;font-size:.78rem;font-weight:800;color:var(--muted);margin:0 0 6px 4px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--border);background:#fbfcfc;border-radius:12px;padding:11px 12px;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(20,108,90,.12)}.section-head{display:flex;justify-content:space-between;gap:15px;align-items:end;margin:34px 0 17px}.section-head h2{margin:0;font-size:1.7rem;letter-spacing:-.04em}.muted{color:var(--muted)}.restaurant-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-bottom:70px}.restaurant-card{background:var(--card);border:1px solid var(--border);border-radius:22px;overflow:hidden;box-shadow:0 8px 24px rgba(22,42,36,.05);transition:opacity .22s ease,transform .22s ease,box-shadow .22s ease}.restaurant-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.restaurant-card.is-hiding{opacity:0;transform:scale(.97)}.card-cover{height:170px;background:linear-gradient(145deg,#eaf3ef,#dde9f5);display:grid;place-items:center;overflow:hidden}.card-cover img{width:100%;height:100%;object-fit:cover}.fallback-logo{font-weight:900;font-size:2.2rem;color:var(--primary)}.card-body{padding:17px}.card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.card-body h3{margin:0;font-size:1.14rem}.badges{display:flex;gap:6px;flex-wrap:wrap;margin:11px 0}.badge{font-size:.73rem;font-weight:850;border-radius:999px;padding:5px 8px;background:#edf4f2;color:var(--primary)}.badge.plus{background:#fff2c8;color:#795800}.badge.new{background:#e9f7ee;color:#126b35}.badge.updated{background:#eaf0ff;color:#244eaa}.meta{font-size:.9rem;color:var(--muted);line-height:1.5}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.chip{font-size:.76rem;padding:6px 8px;border-radius:999px;background:#f2f5f4;color:#50605b}.empty{padding:45px 20px;text-align:center;background:#fff;border:1px dashed var(--border);border-radius:18px;color:var(--muted);grid-column:1/-1}
.detail-hero{padding:35px 0 18px}.detail-card{background:#fff;border:1px solid var(--border);border-radius:26px;padding:22px;display:grid;grid-template-columns:130px 1fr auto;gap:20px;align-items:center}.detail-logo{width:130px;height:130px;border-radius:22px;object-fit:cover;background:#eef4f2}.detail-card h1{margin:0 0 7px;font-size:2rem;letter-spacing:-.045em}.detail-actions{display:flex;gap:8px;flex-wrap:wrap}.notice{background:#eaf4ff;border:1px solid #cfe4fb;border-radius:16px;padding:14px 16px;margin:14px 0}.menu-layout{display:grid;grid-template-columns:210px 1fr;gap:18px;padding-bottom:70px}.page-list{background:#fff;border:1px solid var(--border);border-radius:18px;padding:10px;align-self:start;position:sticky;top:90px;max-height:calc(100vh - 120px);overflow:auto}.page-choice{width:100%;border:0;background:transparent;padding:11px 12px;text-align:left;border-radius:10px;font-weight:750}.page-choice.active{background:var(--primary);color:#fff}.menu-viewer{background:#fff;border:1px solid var(--border);border-radius:22px;padding:14px;min-height:560px}.menu-viewer img{display:block;width:100%;max-height:78vh;object-fit:contain;border-radius:12px;background:#f4f5f5}.viewer-nav{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px}
.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top left,#e6f6ef,transparent 44%),var(--bg)}.auth-card{width:min(460px,100%);background:#fff;border:1px solid var(--border);border-radius:28px;padding:28px;box-shadow:var(--shadow)}.auth-card .brand{margin-bottom:25px}.auth-card h1{margin:0 0 8px;font-size:2rem}.auth-card .field{margin:14px 0}.message{padding:11px 13px;border-radius:12px;margin:10px 0;background:#eef4f2}.message.error{background:#feeceb;color:#8f1c15}
.dashboard{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:#102a25;color:#fff;padding:22px;position:sticky;top:0;height:100vh}.sidebar .brand{margin-bottom:26px}.side-nav{display:grid;gap:7px}.side-nav button{border:0;border-radius:11px;background:transparent;color:#dbe8e4;padding:11px;text-align:left;font-weight:750}.side-nav button.active,.side-nav button:hover{background:rgba(255,255,255,.11);color:#fff}.dashboard-main{padding:28px;width:min(1100px,100%)}.panel{background:#fff;border:1px solid var(--border);border-radius:20px;padding:20px;margin-bottom:18px}.panel h2,.panel h3{margin-top:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-grid .full{grid-column:1/-1}.toggle-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.check{display:flex;gap:8px;align-items:center}.menu-admin-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:15px}.menu-admin-item{background:#f7f9f8;border:1px solid var(--border);border-radius:15px;padding:9px;cursor:grab}.menu-admin-item img{width:100%;height:180px;object-fit:cover;border-radius:10px}.menu-admin-item .actions{display:flex;gap:6px;margin-top:8px}.dropzone{border:2px dashed #bad0c8;border-radius:17px;padding:25px;text-align:center;background:#f8fbfa}.hours-grid{display:grid;gap:8px}.hour-row{display:grid;grid-template-columns:120px 85px repeat(4,1fr);gap:8px;align-items:center}.hour-row input{min-width:0}.specialty-pills{display:flex;gap:8px;flex-wrap:wrap}.specialty-pills label{padding:8px 10px;background:#f1f5f3;border-radius:999px;border:1px solid var(--border)}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:10px 8px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.admin-table th{font-size:.78rem;color:var(--muted);text-transform:uppercase}.color-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.color-field input{height:50px;padding:4px}.modal{position:fixed;inset:0;background:rgba(9,22,18,.72);display:grid;place-items:center;padding:20px;z-index:80}.modal-card{background:#fff;border-radius:20px;width:min(960px,100%);max-height:92vh;overflow:auto;padding:18px}.editor-stage{height:min(65vh,680px);background:#151b19;border-radius:12px;overflow:hidden}.editor-stage img{max-width:100%;display:block}.modal-actions{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:12px}.group{display:flex;gap:8px;flex-wrap:wrap}.footer{padding:30px 0;color:var(--muted);border-top:1px solid var(--border)}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.food-panel{min-height:220px}.restaurant-grid{grid-template-columns:repeat(2,1fr)}.detail-card{grid-template-columns:100px 1fr}.detail-logo{width:100px;height:100px}.detail-actions{grid-column:1/-1}.menu-layout{grid-template-columns:1fr}.page-list{position:static;display:flex;overflow:auto;max-height:none}.page-choice{min-width:max-content}.dashboard{grid-template-columns:1fr}.sidebar{position:static;height:auto}.side-nav{display:flex;overflow:auto}.side-nav button{white-space:nowrap}.menu-admin-list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.shell{width:min(100% - 20px,1180px)}.topbar-inner{height:62px}.nav-actions .desktop-only{display:none}.hero{padding-top:36px;padding-bottom:22px}.hero:before{height:100%;background-position:center top;opacity:.68}.hero:after{height:120px}.filters{grid-template-columns:1fr}.restaurant-grid{grid-template-columns:1fr}.detail-card{grid-template-columns:72px 1fr;padding:15px}.detail-logo{width:72px;height:72px;border-radius:15px}.detail-card h1{font-size:1.45rem}.menu-viewer{padding:8px;min-height:300px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.menu-admin-list{grid-template-columns:repeat(2,1fr)}.menu-admin-item img{height:145px}.hour-row{grid-template-columns:1fr 70px 1fr 1fr}.hour-row .second-slot{grid-column:3/5}.color-row{grid-template-columns:1fr}.dashboard-main{padding:14px}.panel{padding:15px}.admin-table{font-size:.86rem}.admin-table th:nth-child(2),.admin-table td:nth-child(2){display:none}}
.backend-state{text-align:center;padding:16px 0 4px}.backend-state h1{margin:12px 0 8px}.status-dot{width:18px;height:18px;border-radius:50%;margin:18px auto}.status-dot.checking{border:3px solid #d7e4df;border-top-color:var(--primary);animation:zwspin .8s linear infinite}.maintenance-icon{font-size:3rem;line-height:1;margin:10px 0}.maintenance-retry{margin-left:8px;cursor:pointer}@keyframes zwspin{to{transform:rotate(360deg)}}
/* Original ZW-Menu Farbwelt: Bordeauxrot + Creme */
:root{--primary:#63131d;--accent:#9a2333;--bg:#f8f0db;--card:#fffaf0;--text:#352724;--muted:#75645e;--border:#dbcea0;--danger:#b42318;--shadow:0 18px 50px rgba(99,19,29,.13)}
.topbar{background:rgba(248,240,219,.92)}.link-btn{background:#f1dfc8}.btn.secondary{background:#ead7bc;color:#63131d}.btn.ghost{background:#f3e7d4;color:#4d211d}.eyebrow{background:#ead8c4;color:#63131d}.food-panel{background:linear-gradient(145deg,#63131d,#3d0d14)}.field input,.field select,.field textarea{background:#fffdf7}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:0 0 0 3px rgba(99,19,29,.14)}.card-cover{background:linear-gradient(145deg,#f5e8d4,#ead5bc)}.badge{background:#f2e2cd;color:#63131d}.chip,.specialty-pills label{background:#f3e7d4}.notice{background:#fff4df;border-color:#e7cfaa}.auth-wrap{background:radial-gradient(circle at top left,#ead6bb,transparent 44%),var(--bg)}.sidebar{background:#3d0d14}.menu-admin-item{background:#fff8eb}.dropzone{border-color:#c9ab88;background:#fff9ed}.page-choice.active{background:#63131d}.zw-dragging{opacity:.65;transform:scale(.98);box-shadow:0 20px 45px rgba(99,19,29,.22)}
.menu-admin-item{touch-action:pan-y}

/* 2026 mobile-first refinements */
:root{--success:#147a3f;--closed:#b42318;--notice-bg:#fff;--danger-soft:#fdecec}
.hero h1{font-size:clamp(2rem,4vw,3.55rem);line-height:1.02;letter-spacing:-.055em}
.hero p{max-width:760px}
.restaurant-grid{align-items:stretch}
.restaurant-card{display:grid;grid-template-rows:170px 1fr;height:100%}
.card-body{display:grid;grid-template-rows:minmax(50px,auto) 28px 42px 30px 42px;gap:4px;min-height:218px}
.card-title-row{min-width:0}.card-body h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.28}
.badges{min-height:28px;margin:2px 0 0;align-items:center;overflow:hidden;flex-wrap:nowrap}
.card-address{font-size:.88rem;color:var(--muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.service-info{display:flex;align-items:center;gap:7px;min-height:28px;font-size:.9rem;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.service-info .price{font-weight:700;color:var(--text)}.service-info .sep{color:#a2aaa7}.service-status.open{color:var(--success)}.service-status.closed{color:var(--closed)}
.chips{margin-top:0;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;white-space:nowrap;padding:4px 0 6px;scrollbar-width:none;overscroll-behavior-inline:contain}.chips::-webkit-scrollbar{display:none}.chip{flex:0 0 auto}
.notice.restaurant-notice{background:var(--notice-bg);border:1px solid #ead9dc;border-left:4px solid var(--primary);box-shadow:0 8px 24px rgba(62,19,29,.06);padding:16px 17px}
.notice-title{display:flex;align-items:center;gap:9px;font-size:1.08rem;font-weight:900;color:var(--primary);margin-bottom:6px}.notice-icon{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--primary);color:#fff;font-size:.82rem;font-weight:900}
.notice.vacation-notice{background:#fff5f5;border-color:#f5caca;color:#7f1d1d}
.detail-actions .btn{white-space:nowrap}
.menu-layout.menu-stack-layout{display:block;padding-bottom:70px}.menu-stack{display:grid;gap:18px}.menu-page{margin:0;background:#fff;border:1px solid var(--border);border-radius:18px;padding:10px;box-shadow:0 8px 28px rgba(27,31,29,.05)}.menu-page img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:11px}.menu-page figcaption{text-align:center;color:var(--muted);font-size:.8rem;padding:8px 4px 0}
.info-modal-card{width:min(720px,100%)}.modal-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.modal-close{border:0;background:#f1f3f2;border-radius:999px;width:38px;height:38px;font-size:1.3rem;line-height:1}.restaurant-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:14px 0 18px}.info-box{background:#f8f8f7;border:1px solid var(--border);border-radius:13px;padding:12px}.info-box strong{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:4px}.hours-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.hours-table{display:grid;gap:6px}.hours-line{display:grid;grid-template-columns:110px 1fr;gap:10px;font-size:.9rem;padding:5px 0;border-bottom:1px solid #eef0ef}.hours-line:last-child{border-bottom:0}
.stale-alert{position:relative;background:#8f1f2d;color:#fff;border-radius:16px;padding:15px 46px 15px 16px;margin:0 0 18px;box-shadow:0 8px 24px rgba(99,19,29,.16)}.stale-alert strong{font-size:1rem}.stale-alert .stale-public-close{position:absolute;right:10px;top:8px;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;font-size:1.2rem}
.legal-page{padding:34px 0 70px}.legal-card{background:#fff;border:1px solid var(--border);border-radius:22px;padding:clamp(18px,4vw,36px);box-shadow:var(--shadow);line-height:1.65}.legal-card h1{margin-top:0}.legal-card h2{font-size:1.25rem;margin-top:30px}.legal-card h3{font-size:1.05rem;margin-top:22px}.legal-card p,.legal-card li{color:#37433f}.legal-card a{color:var(--primary);font-weight:750;text-decoration:underline;text-underline-offset:2px}.legal-card ul{padding-left:21px}
.footer-links{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;align-items:center}.footer-links a{font-weight:700}.footer-copy{text-align:center;margin-top:8px;font-size:.88rem}
.consent-wrap{min-height:100vh;padding:22px;display:grid;place-items:center;background:var(--bg)}.consent-card{width:min(760px,100%);background:#fff;border:1px solid var(--border);border-radius:24px;padding:clamp(20px,4vw,32px);box-shadow:var(--shadow)}.consent-card h1{margin:0 0 10px;font-size:clamp(1.65rem,5vw,2.2rem)}.consent-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.consent-link{border:1px solid var(--border);border-radius:14px;padding:14px;background:#fafafa;font-weight:800}.consent-checks{display:grid;gap:12px;margin:20px 0}.consent-check{display:flex;gap:10px;align-items:flex-start;background:#f8f8f7;border-radius:13px;padding:13px}.consent-check input{margin-top:4px}.consent-actions{display:flex;gap:10px;flex-wrap:wrap}
.legal-status{display:flex;align-items:center;gap:6px;font-size:.85rem}.legal-status input{accent-color:var(--primary)}
@media(max-width:900px){.food-panel{display:none}.hero-grid{display:block}.hero{padding:34px 0 12px}.hours-columns{grid-template-columns:1fr}.restaurant-info-grid{grid-template-columns:1fr}.detail-actions{grid-column:1/-1}}
@media(max-width:620px){.topbar-inner{height:58px}.brand span{font-size:.95rem}.hero{padding-top:22px}.hero h1{font-size:1.85rem;line-height:1.08;margin:10px 0}.hero p{font-size:.96rem;line-height:1.55;margin-bottom:10px}.eyebrow{font-size:.71rem;padding:6px 8px}.filters{margin:14px 0 22px;padding:11px;border-radius:17px;gap:9px}.section-head{margin:24px 0 13px}.restaurant-card{grid-template-rows:145px 1fr;border-radius:18px}.card-body{padding:14px;grid-template-rows:minmax(48px,auto) 28px 40px 29px 40px;min-height:207px}.card-cover{height:145px}.detail-hero{padding-top:20px}.detail-card{border-radius:18px}.detail-card h1{font-size:1.5rem}.detail-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.detail-actions .btn{padding:10px 9px;text-align:center}.menu-page{border-radius:13px;padding:6px}.menu-stack{gap:12px}.modal{padding:10px}.modal-card{padding:14px;border-radius:16px}.hours-line{grid-template-columns:92px 1fr;font-size:.85rem}.consent-wrap{padding:12px}.consent-links{grid-template-columns:1fr}.consent-actions{display:grid}.consent-actions .btn{width:100%}.footer{padding:24px 0}.footer-links{font-size:.9rem;gap:10px}.admin-table{min-width:880px}}

/* 2026-08 public list/layout refinements */
.card-cover{position:relative}
.card-badges{position:absolute;left:10px;top:10px;display:flex;flex-wrap:wrap;gap:5px;max-width:calc(100% - 20px)}
.card-badges .badge{margin:0;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.restaurant-card{grid-template-rows:170px 184px}
.card-body{display:grid;grid-template-rows:2.65em 2.75em 1.85em 2.25em;gap:6px;min-height:0;padding:15px 17px}
.card-title-row,.card-address,.service-info,.chips{min-width:0}
.card-title-row{align-items:start}
.card-address{font-size:.88rem;color:var(--muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.service-info{min-height:0}
.chips{align-self:end;padding:2px 0 4px}
.public-stale-alert{margin-bottom:14px}
.public-stale-alert>div{margin-top:4px;line-height:1.45}
.terms-details{margin:18px 0;border:1px solid var(--border);border-radius:15px;background:#faf9f5;overflow:hidden}
.terms-details summary{cursor:pointer;padding:14px 16px;font-weight:850;color:var(--primary);list-style:none}
.terms-details summary::-webkit-details-marker{display:none}
.terms-details summary:after{content:'+';float:right;font-size:1.2rem}
.terms-details[open] summary:after{content:'−'}
.terms-body{border-top:1px solid var(--border);padding:4px 16px 16px;max-height:52vh;overflow:auto;line-height:1.55}
.terms-body h2{font-size:1.2rem}.terms-body h3{font-size:1rem;margin:20px 0 5px}.terms-body p{margin:6px 0;color:#37433f}
.consent-links.single{grid-template-columns:1fr}
@media(max-width:620px){.restaurant-card{grid-template-rows:145px 176px}.card-body{grid-template-rows:2.55em 2.65em 1.8em 2.15em;gap:5px;padding:13px 14px}.card-badges{left:8px;top:8px}.public-stale-alert{border-radius:13px;padding:13px 42px 13px 14px}.terms-body{max-height:46vh}}

/* 2026-08 v3: mobile-first Betreiber/Admin + kompakte Restaurantkarten */
.restaurant-card{grid-template-rows:170px 1fr;height:100%}
.card-body{display:flex;flex-direction:column;min-height:0;padding:15px 17px;gap:0}
.card-title-row{min-height:0}.card-body h3{display:block;overflow:visible;line-height:1.28;margin:0}
.card-address{display:block;overflow:visible;margin-top:8px;line-height:1.35;min-height:0}
.service-info{display:flex;align-items:center;gap:12px;min-height:0;margin-top:18px;white-space:normal;overflow:visible}
.service-piece{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.service-icon{display:block;width:11px;height:11px;object-fit:contain;flex:0 0 11px}.service-info .price{font-weight:750}.status-piece{font-weight:800}
.chips{align-self:stretch;margin-top:10px;padding:0 0 2px;min-height:28px}
.card-badges .badge.plus{background:#fff2c8;color:#795800}

/* Moderne Schalter */
.toggle-switch{position:relative;display:inline-flex;align-items:center;flex:0 0 auto;width:46px;height:26px;cursor:pointer}.toggle-switch input{position:absolute;opacity:0;pointer-events:none}.toggle-slider{position:absolute;inset:0;border-radius:999px;background:#cfc7bd;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05);transition:.2s ease}.toggle-slider:after{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.22);transition:.2s ease}.toggle-switch input:checked+.toggle-slider{background:var(--primary)}.toggle-switch input:checked+.toggle-slider:after{transform:translateX(20px)}.toggle-switch input:focus-visible+.toggle-slider{outline:3px solid rgba(99,19,29,.22);outline-offset:2px}

/* Adminübersicht */
.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.panel-head h2,.panel-head p{margin-top:0}.compact-form{align-items:end}.form-action{align-self:end}.admin-create-form{padding:14px;border:1px solid var(--border);border-radius:16px;background:#fffaf2;margin-bottom:18px}.admin-restaurant-list{display:grid;gap:10px}.admin-restaurant-card{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(360px,2fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:16px;background:#fffdf8}.admin-restaurant-title{min-width:0}.admin-restaurant-title strong{display:block;font-size:1rem}.admin-restaurant-title span{display:block;color:var(--muted);font-size:.84rem;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-control-grid{display:grid;grid-template-columns:repeat(4,minmax(78px,1fr));gap:8px}.admin-control{min-height:58px;padding:8px 10px;border-radius:12px;background:#f7efe2;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:5px}.admin-control>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);font-weight:850}.access-symbol{font-size:1.15rem;line-height:1}.access-symbol.yes{color:var(--success)}.access-symbol.no{color:#988f87}.admin-card-action{text-align:right}

/* Dashboard mobile-first Inhaltsblöcke */
.dashboard-main{min-width:0}.settings-section{padding:20px 0;border-top:1px solid var(--border)}.settings-section:first-of-type{border-top:0;padding-top:4px}.settings-section h3{margin:0 0 13px}.settings-toggle-list{display:grid;gap:9px}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--border);background:#fffaf2;border-radius:14px;padding:12px 13px}.settings-toggle-row>div{min-width:0}.settings-toggle-row strong{display:block;font-size:.93rem}.settings-toggle-row span{display:block;color:var(--muted);font-size:.8rem;margin-top:3px;line-height:1.35}.vacation-toggle{background:#fff5f4}.form-save{margin:16px 0 0}.logo-editor-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.logo-editor-row .field{flex:1;min-width:220px}.admin-updated-footer{margin-top:24px;padding:14px 15px;border-top:1px solid var(--border);background:#f8f1e5;border-radius:13px;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:.88rem;font-weight:800}.narrow-form{max-width:620px}.field small{display:block;margin:6px 3px 0;color:var(--muted);font-size:.76rem}
.dashboard-vacation-alert{display:flex;flex-direction:column;gap:4px;background:#fff2d8;border:1px solid #e8c783;border-left:5px solid #b97800;color:#5f4308;border-radius:15px;padding:14px 16px;margin:0 0 16px}.dashboard-vacation-alert strong{font-size:.98rem}.dashboard-vacation-alert span{font-size:.88rem;line-height:1.4}

/* Spezialitäten als moderne Auswahlfelder */
.modern-pills label{position:relative;display:inline-flex;align-items:center;gap:7px;cursor:pointer;background:#f3e7d4;border:1px solid var(--border);padding:8px 11px;border-radius:999px;transition:.18s ease}.modern-pills label input{position:absolute;opacity:0;pointer-events:none}.modern-pills label span{display:none}.modern-pills label:has(input:checked){background:var(--primary);border-color:var(--primary);color:#fff}.modern-pills label:has(input:checked) span{display:inline;font-weight:900}

/* Öffnungszeiten */
.hours-service-block{margin-top:20px}.hours-service-block+.hours-service-block{margin-top:38px;padding-top:30px;border-top:2px solid #eadcca}.hours-service-head h3{margin-bottom:4px}.hours-service-head p{margin:0 0 12px}.hours-grid{display:grid;gap:10px}.hour-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:14px;background:#fffdf8}.hour-row-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.closed-control{display:flex;align-items:center;gap:7px;font-size:.76rem;color:var(--muted);font-weight:800}.closed-control .toggle-switch{width:40px;height:23px}.closed-control .toggle-slider:after{width:17px;height:17px}.closed-control .toggle-switch input:checked+.toggle-slider:after{transform:translateX(17px)}.time-fields{display:grid;grid-template-columns:repeat(4,minmax(92px,1fr));gap:8px}.time-fields label{display:grid;gap:4px}.time-fields label span{font-size:.67rem;text-transform:uppercase;color:var(--muted);font-weight:800}.time-fields input{width:100%;min-width:0;border:1px solid var(--border);border-radius:10px;padding:9px;background:#fff}.hour-row.is-closed{background:#f4f0ea}.hour-row.is-closed .time-fields{display:none}

/* Speisekartenverwaltung */
.menu-admin-list{grid-template-columns:repeat(4,minmax(0,1fr))}.menu-admin-item{cursor:default;overflow:hidden}.menu-thumb{height:190px;display:grid;place-items:center;background:#eee7db;border-radius:10px;overflow:hidden}.menu-admin-item img{width:100%;height:100%;object-fit:contain;border-radius:0}.menu-item-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px}.drag-handle{display:grid;place-items:center;width:34px;height:32px;border-radius:9px;background:#efe1cf;color:var(--primary);font-weight:900;cursor:grab;touch-action:none}.menu-admin-item .actions{display:grid;grid-template-columns:1fr 1fr}.menu-admin-item .actions .btn{width:100%;padding-left:7px;padding-right:7px}.menu-editor-card{width:min(1020px,100%)}.editor-mode-select{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 12px}.editor-mode-btn{border:1px solid var(--border);background:#f5eee3;border-radius:11px;padding:10px;font-weight:800;color:var(--text)}.editor-mode-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.editor-stage{height:auto;min-height:0;max-height:none;background:#151b19;border-radius:12px;overflow:auto;padding:10px;display:grid;place-items:center}.editor-stage>img{display:block;width:auto;max-width:100%;height:auto;max-height:68vh;margin:auto}.editor-stage .cropper-container{max-width:100%;max-height:68vh}.editor-actions{align-items:center}.editor-actions>.btn{margin-left:auto}

/* Admin Zugang */
.access-state{display:flex;flex-direction:column;gap:4px;padding:13px 14px;border-radius:14px;margin:12px 0 18px;border:1px solid var(--border)}.access-state.active{background:#eef8f1;border-color:#bcdcc7}.access-state.inactive{background:#fff5f3;border-color:#edc9c5}.access-state span{font-size:.84rem;color:var(--muted)}

@media(max-width:900px){
  .dashboard{display:block;min-height:100vh}.sidebar{position:sticky;top:0;z-index:60;height:auto;padding:10px 12px;display:flex;align-items:center;gap:10px;box-shadow:0 5px 18px rgba(61,13,20,.17)}.sidebar .brand{margin:0;flex:0 0 auto}.sidebar .brand img{width:32px;height:32px}.side-nav{display:flex;gap:5px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;flex:1}.side-nav::-webkit-scrollbar{display:none}.side-nav button{flex:0 0 auto;white-space:nowrap;padding:9px 10px;font-size:.82rem}.dashboard-main{width:100%;padding:16px}.admin-restaurant-card{grid-template-columns:1fr}.admin-control-grid{grid-template-columns:repeat(4,1fr)}.admin-card-action{text-align:left}.admin-card-action .btn{width:100%;text-align:center}.menu-admin-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:620px){
  .sidebar{padding:8px}.sidebar .brand span{display:none}.side-nav button{font-size:.78rem;padding:8px 9px}.dashboard-main{padding:10px}.panel{padding:14px;border-radius:16px}.panel h2{font-size:1.35rem}.panel-head{display:grid;gap:8px}.panel-head .btn{justify-self:start}.form-grid{gap:10px}.settings-section{padding:17px 0}.settings-toggle-row{padding:11px}.admin-updated-footer{margin-top:20px}.admin-create-form{grid-template-columns:1fr}.admin-control-grid{grid-template-columns:1fr 1fr}.admin-control{min-height:60px}.admin-restaurant-card{padding:11px;gap:11px}.admin-card-action .btn{min-height:42px;display:grid;place-items:center}.hours-service-block+.hours-service-block{margin-top:34px;padding-top:26px}.hour-row{grid-template-columns:1fr;gap:10px;padding:11px}.hour-row-head{width:100%}.time-fields{grid-template-columns:1fr 1fr;gap:8px}.time-fields input{font-size:16px;padding:10px 8px}.menu-admin-list{grid-template-columns:1fr 1fr;gap:9px}.menu-thumb{height:170px}.menu-admin-item{padding:8px}.menu-admin-item .actions{grid-template-columns:1fr;gap:5px}.menu-editor-card{padding:12px}.editor-mode-select{grid-template-columns:1fr}.editor-stage{padding:5px}.editor-stage>img{max-height:62vh}.editor-actions{display:grid;gap:9px}.editor-actions .group{display:grid;grid-template-columns:1fr 1fr;width:100%}.editor-actions .group .btn,.editor-actions>.btn{width:100%;margin:0}.logo-editor-row{display:grid}.logo-editor-row .field{min-width:0}.restaurant-card{grid-template-rows:145px auto;height:auto}.card-body{padding:13px 14px}.card-address{margin-top:6px}.service-info{margin-top:14px;gap:10px}.chips{margin-top:9px;min-height:0}.service-icon{width:10px;height:10px;flex-basis:10px}
}

/* v4 – klare Formabstände, Toasts, Administration und Historie */
.form-stack{display:grid;gap:18px}.form-stack .field{margin:0}.form-stack .form-save{margin:2px 0 0}.narrow-form.form-stack{max-width:680px}.logo-section{border-top:1px solid var(--border)!important;padding-top:22px!important;margin-top:22px}.section-intro{margin:-5px 0 16px}.admin-access-section{padding:6px 0 22px}.admin-access-section h3{margin:0 0 14px}.admin-contact-section{margin-top:4px}.danger-zone{padding-bottom:0}.danger-zone .btn{margin-top:2px}

.toast-host{position:fixed;z-index:200;right:18px;bottom:18px;width:min(410px,calc(100vw - 28px));pointer-events:none}.save-toast{pointer-events:auto;display:flex;align-items:center;gap:14px;justify-content:space-between;background:#fff;border:1px solid #d9e5dc;border-left:5px solid #23824b;border-radius:15px;padding:13px 13px 13px 15px;box-shadow:0 18px 45px rgba(33,29,24,.22);animation:zwToastIn .2s ease both}.save-toast.error{border-left-color:var(--danger);background:#fff8f7}.save-toast.leaving{opacity:0;transform:translateY(8px);transition:.18s ease}.save-toast-text{font-size:.9rem;font-weight:750;line-height:1.35}.save-toast-ok{flex:0 0 auto;border:0;border-radius:10px;background:var(--primary);color:#fff;font-weight:800;padding:8px 11px}.save-toast.error .save-toast-ok{background:var(--danger)}@keyframes zwToastIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.admin-specialty-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:9px;margin:16px 0 22px}.admin-specialty-item{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f7efe2;border:1px solid var(--border);border-radius:13px;padding:9px 10px 9px 13px;font-weight:750}.specialty-delete{width:32px;height:32px;border:0;border-radius:9px;background:#feeceb;color:var(--danger);font-size:1.25rem;font-weight:900;line-height:1}.specialties-add-form{margin-top:8px}

.history-list{display:grid;gap:11px}.history-card{border:1px solid var(--border);background:#fffdf8;border-radius:15px;padding:14px}.history-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.history-top strong{display:block}.history-top span{display:block;color:var(--muted);font-size:.78rem;margin-top:3px}.history-top time{white-space:nowrap;color:var(--muted);font-size:.78rem}.history-action{font-weight:850;margin-top:12px}.history-field{display:inline-flex;margin-top:7px;border-radius:999px;background:#f3e7d4;padding:5px 8px;font-size:.75rem;font-weight:800;color:#6c3e32}.history-values{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.history-value{background:#f7f3ed;border-radius:11px;padding:9px 10px;min-width:0}.history-value span{display:block;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.65rem;font-weight:850;margin-bottom:4px}.history-value div{font-size:.83rem;line-height:1.4;overflow-wrap:anywhere;white-space:pre-wrap}.history-link{display:inline-flex;margin-top:10px;padding:8px 10px;border-radius:10px;background:#eef4f2;color:var(--primary);font-size:.82rem;font-weight:850}.empty-history{padding:26px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:14px}

@media(max-width:620px){
  .form-stack{gap:16px}.toast-host{right:10px;bottom:10px;width:calc(100vw - 20px)}.save-toast{padding:12px}.save-toast-text{font-size:.86rem}.admin-specialty-list{grid-template-columns:1fr}.history-top{display:grid;gap:5px}.history-top time{white-space:normal}.history-values{grid-template-columns:1fr}.admin-access-section{padding-top:2px}.settings-section h3{margin-bottom:14px}.access-state{margin-bottom:22px}.danger-zone .btn{width:100%}
}

/* v5 – Prioritäten, kompakte Restaurantkarten, zwei Logos, Portrait-Editor und Cookie-Hinweis */
.restaurant-grid{align-items:stretch}.restaurant-card{height:100%}.card-body{display:flex;flex-direction:column;gap:0}.card-body h3{margin:0;line-height:1.28}.card-address{margin-top:7px}.service-info{margin-top:15px;display:flex;align-items:center;gap:10px 12px;flex-wrap:wrap}.service-piece{min-width:0}.travel-piece .price{font-size:.83rem}.service-icon.car-icon{width:12px;height:12px;flex-basis:12px}.chips{display:flex;flex-wrap:nowrap;overflow:hidden;gap:6px;margin-top:10px;min-width:0}.chips .chip:not(.chip-more){max-width:calc((100% - 48px)/3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-more{flex:0 0 auto;font-weight:900;padding-left:9px;padding-right:9px}.menu-page figcaption{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;align-items:center}.menu-page figcaption span{color:var(--muted)}

.priority-control input{width:72px;max-width:100%;border:1px solid var(--border);border-radius:9px;padding:6px 8px;background:#fff}.admin-control-grid{grid-template-columns:repeat(5,minmax(76px,1fr))}.admin-meta-section{padding-top:2px}.restaurant-delete-zone{margin-top:24px;padding-top:24px;border-top:2px solid #efd3cf}.restaurant-delete-zone h3{color:var(--danger)}.danger-confirm-box{background:#fff0ee;border:1px solid #efc4bf;color:#8c241c;border-radius:12px;padding:11px 12px;margin:14px 0}.confirm-delete-card{width:min(520px,100%)}

.logo-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.logo-choice{border:1px solid var(--border);background:#fffdf8;border-radius:16px;padding:14px}.logo-choice h4{margin:0 0 3px}.logo-choice small{display:block;color:var(--muted);line-height:1.35}.logo-choice-head{margin-bottom:12px}.start-logo-preview{width:100%;height:130px;object-fit:cover;border-radius:12px;background:#f1ece4}.square-preview{width:110px;height:110px}.logo-placeholder{height:110px;border:1px dashed var(--border);border-radius:12px;display:grid;place-items:center;color:var(--muted);background:#f7f3ed}.logo-editor-row{align-items:center}

.menu-upload-actions{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:stretch}.compact-dropzone{display:grid;place-items:center;text-align:center;cursor:pointer;padding:18px}.compact-dropzone span{font-size:.78rem;color:var(--muted);margin-top:4px}.compact-dropzone input{display:none}.camera-upload-btn{min-width:220px}.menu-page-name{display:grid;gap:5px;margin-top:9px}.menu-page-name label{font-size:.7rem;font-weight:800;color:var(--muted)}.menu-page-name input{width:100%;border:1px solid var(--border);border-radius:9px;padding:8px 9px;background:#fff}.menu-page-name .btn{width:100%}

.menu-editor-card{width:min(760px,100%)}.portrait-editor-wrap{width:min(100%,520px);aspect-ratio:3/4;margin:14px auto;background:#25211d;border-radius:16px;padding:9px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}#editorCanvas{display:block;width:100%;height:100%;background:#fff;border-radius:10px;touch-action:none;cursor:grab}#editorCanvas:active{cursor:grabbing}.editor-toolbar{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:12px}.zoom-slider{display:flex;align-items:center;gap:8px;background:#f4ede3;border-radius:11px;padding:8px 10px}.zoom-slider span{font-size:.78rem;font-weight:800;color:var(--muted)}.zoom-slider input{width:140px}.menu-editor-card .modal-actions{justify-content:flex-end}.camera-card{width:min(620px,100%)}.camera-stage{position:relative;background:#111;border-radius:15px;overflow:hidden;aspect-ratio:3/4;max-height:70vh;margin:auto}.camera-stage video{width:100%;height:100%;object-fit:cover}.camera-guide{position:absolute;inset:7%;border:3px solid rgba(255,255,255,.92);border-radius:8px;box-shadow:0 0 0 999px rgba(0,0,0,.18);pointer-events:none}.camera-guide:before,.camera-guide:after,.camera-guide span:before,.camera-guide span:after{content:"";position:absolute;width:28px;height:28px;border-color:#fff}.camera-guide:before{left:-4px;top:-4px;border-left:5px solid;border-top:5px solid}.camera-guide:after{right:-4px;top:-4px;border-right:5px solid;border-top:5px solid}.camera-guide span:before{left:-4px;bottom:-4px;border-left:5px solid;border-bottom:5px solid}.camera-guide span:after{right:-4px;bottom:-4px;border-right:5px solid;border-bottom:5px solid}

.cookie-overlay{position:fixed;inset:0;z-index:500;background:rgba(39,25,17,.28);display:flex;align-items:flex-end;justify-content:center;padding:14px}.cookie-banner{width:min(980px,100%);background:#fff;border:1px solid var(--border);border-radius:18px;padding:17px 18px;box-shadow:0 20px 55px rgba(44,28,19,.25);display:flex;align-items:center;justify-content:space-between;gap:18px}.cookie-banner strong{display:block;font-size:1.05rem}.cookie-banner p{margin:6px 0;font-size:.88rem;color:var(--muted);line-height:1.45}.cookie-banner a{font-size:.84rem;font-weight:800;color:var(--primary);text-decoration:underline}.cookie-banner .btn{flex:0 0 auto}

@media(max-width:900px){.admin-control-grid{grid-template-columns:repeat(3,1fr)}.logo-choice-grid{grid-template-columns:1fr}.menu-upload-actions{grid-template-columns:1fr}.camera-upload-btn{min-width:0}}
@media(max-width:620px){.card-body{display:block}.card-address{margin-top:5px}.service-info{margin-top:11px}.chips{margin-top:8px}.restaurant-card{height:auto}.admin-control-grid{grid-template-columns:1fr 1fr}.priority-control input{width:100%}.logo-choice{padding:12px}.logo-choice-grid{gap:12px}.menu-admin-list{grid-template-columns:1fr}.menu-thumb{height:auto;aspect-ratio:3/4}.camera-upload-btn{width:100%}.portrait-editor-wrap{width:min(100%,390px)}.editor-toolbar{display:grid;grid-template-columns:1fr 1fr}.zoom-slider{grid-column:1/-1}.zoom-slider input{width:100%}.cookie-banner{display:grid;gap:10px;padding:14px}.cookie-banner .btn{width:100%}.service-info{gap:8px 10px}.service-piece{font-size:.82rem}.travel-piece .price{font-size:.78rem}.chips .chip:not(.chip-more){max-width:calc((100% - 44px)/3)}}

/* v6.5.9 – automatische Wochenanzeige in der Adminübersicht */
@media(min-width:901px){.admin-control-grid{grid-template-columns:repeat(6,minmax(70px,1fr))}}
.updated-weeks-value{font-size:1.15rem;line-height:1;color:var(--text)}

/* v6.5.9 – Korrekturen für Dashboard auf iPhone und anderen Mobilgeräten */
.dashboard-stale-prompt{padding-right:16px}
.dashboard-stale-prompt .stale-alert-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%}
.dashboard-stale-prompt .stale-alert-actions .btn{position:static;inset:auto;width:100%;height:auto;min-height:42px;border-radius:11px;padding:9px 8px;font-size:.82rem;line-height:1.2;white-space:normal}
@media(max-width:620px){
  .time-fields{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0}
  .time-fields label{min-width:0;max-width:100%;overflow:hidden}
  .time-fields input[type="time"]{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;inline-size:100%;min-inline-size:0;padding:8px 4px;font-size:16px;-webkit-appearance:none;appearance:none}
  .menu-admin-item{touch-action:pan-y}
  .menu-admin-list .menu-thumb{height:210px;min-height:0;max-height:210px;aspect-ratio:auto}
}
/* v5 detail-logo: quadratisches Logo bevorzugt, Startseitenlogo als unbeschnittener Fallback */
.detail-logo{object-fit:contain;background:#fff;padding:4px}


/* v6 – Feinschliff, breiteres Dashboard, Animationen und mobile Speisekartenverwaltung */
.dashboard-main{width:100%;max-width:none;padding-right:clamp(18px,3vw,44px)}
.panel{box-shadow:0 10px 34px rgba(75,43,30,.045)}
.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.settings-section{padding:22px 0}
.settings-section+.settings-section{border-top:1px solid var(--border)}
.visitor-info-first{margin-top:22px;border-top:1px solid var(--border)}
.admin-meta-section{padding-bottom:26px}
.admin-meta-section+.admin-access-section{margin-top:18px;padding-top:30px;border-top:2px solid #eadcca}
.admin-access-section+.admin-contact-section{margin-top:18px;padding-top:30px;border-top:2px solid #eadcca}
.admin-contact-section+.settings-section{margin-top:18px;padding-top:30px}
.danger-zone{margin-top:20px;padding-top:26px!important;border-top:1px solid #efd8d3!important}
.restaurant-delete-zone{margin-top:30px!important;padding-top:30px!important}
.form-save{margin-top:16px}
#security .form-stack{margin-top:22px}
#security .form-stack .field+.field{margin-top:4px}

.logo-choice-grid{position:relative}
.logo-choice{position:relative}
.logo-choice+.logo-choice:before{content:"";position:absolute;left:-10px;top:12px;bottom:12px;width:1px;background:var(--border)}
.logo-choice small{text-transform:none}

.menu-panel-head{margin-bottom:18px}
.menu-upload-section{display:grid;grid-template-columns:1fr;gap:14px;margin:6px 0 24px}
.compact-dropzone{min-height:92px;padding:20px;border-radius:16px}
.camera-upload-btn{display:none}
.menu-admin-list{gap:16px;margin-top:0}
.menu-admin-item{padding:12px;border-radius:17px;background:#fffaf0;box-shadow:0 8px 22px rgba(73,48,31,.045)}
.menu-thumb{height:210px;border-radius:12px;margin-bottom:12px}
.menu-item-head{margin:0 0 12px;align-items:flex-start}
.menu-item-head>div{display:grid;gap:3px;min-width:0}
.menu-item-head>div>strong{font-size:1rem}
.menu-item-head>div>small{color:var(--muted);font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.menu-page-name{gap:8px;margin-top:0}
.menu-page-name label{font-size:.78rem}
.menu-page-name input{padding:10px 11px;border-radius:10px;font-size:.95rem}
.menu-page-name .btn{margin-top:2px}
.menu-card-divider{height:1px;background:var(--border);margin:13px 0}
.menu-admin-item .actions{margin-top:0;gap:8px}
.menu-admin-item .actions .btn{min-height:40px}
.drag-handle{flex:0 0 auto}
.menu-editor-card .modal-header-row{margin-bottom:16px}
.portrait-editor-wrap{margin-top:18px}
.editor-toolbar{margin-top:16px}
.menu-editor-card .modal-actions{margin-top:18px}

.admin-restaurants-head{margin-bottom:20px}
.edit-icon-btn{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#f3e7d4;color:var(--primary);transition:.18s ease;border:1px solid transparent}
.edit-icon-btn:hover{background:var(--primary);color:#fff;transform:translateY(-1px);box-shadow:0 8px 20px rgba(99,19,29,.17)}
.edit-icon-btn svg{width:19px;height:19px;fill:currentColor}
.admin-card-action{display:flex;justify-content:flex-end;align-items:center}
.create-restaurant-card{width:min(680px,100%)}
.create-service-section{border-top:1px solid var(--border);padding-top:20px}
.create-service-section h4{margin:0 0 12px;font-size:1.02rem}
.create-restaurant-card .modal-actions{margin-top:4px}

.color-row{grid-template-columns:repeat(4,minmax(0,1fr))}
.login-cookie-note{margin-top:20px;padding:13px 14px;background:#f7f0e5;border:1px solid var(--border);border-radius:13px;font-size:.82rem;line-height:1.45}
.login-cookie-note strong{display:block;margin-bottom:3px}
.login-cookie-note p{margin:0 0 5px;color:var(--muted)}
.login-cookie-note a{font-weight:800;color:var(--primary);text-decoration:underline}

.detail-card .badges .badge{font-size:.84rem;padding:7px 11px;box-shadow:0 4px 14px rgba(51,33,28,.08)}
.restaurant-card:hover{transform:translateY(-7px);box-shadow:0 22px 48px rgba(99,19,29,.20)}
.restaurant-card:hover .card-cover img{transform:scale(1.025)}
.card-cover img{transition:transform .35s cubic-bezier(.2,.8,.2,1)}

/* Scroll-Reveal */
.reveal-on-scroll{opacity:0;transform:translateY(24px) scale(.988);filter:blur(1px);transition:opacity .62s cubic-bezier(.2,.8,.2,1) var(--reveal-delay,0ms),transform .62s cubic-bezier(.2,.8,.2,1) var(--reveal-delay,0ms),filter .45s ease var(--reveal-delay,0ms)}
.reveal-on-scroll.is-revealed{opacity:1;transform:none;filter:none}
.menu-page.reveal-on-scroll{transform:translateY(34px) scale(.982)}
.menu-page.reveal-on-scroll.is-revealed{transform:none}
.page-is-entering body{opacity:0;transform:scale(.992)}
body{transition:opacity .28s ease,transform .28s ease}
.page-is-leaving body{opacity:.72;transform:scale(.985);pointer-events:none}
.page-transition-veil{position:fixed;inset:0;z-index:9999;pointer-events:none;background:radial-gradient(circle at 50% 45%,rgba(154,35,51,.25),rgba(61,13,20,.93) 70%);opacity:0;transform:scale(1.08);transition:opacity .25s ease,transform .28s ease}
.page-transition-veil.active{opacity:1;transform:scale(1)}
.page-transition-mark{position:absolute;left:50%;top:50%;width:54px;height:54px;border:3px solid rgba(255,255,255,.30);border-top-color:#fff;border-radius:50%;transform:translate(-50%,-50%);animation:zwspin .72s linear infinite}

@media(max-width:900px){
  .dashboard-main{width:100%;max-width:none;padding-right:16px}
  .color-row{grid-template-columns:repeat(2,1fr)}
  .logo-choice+.logo-choice:before{display:none}
  .logo-choice+.logo-choice{margin-top:2px;border-top:2px solid #eadcca;padding-top:18px}
  .admin-restaurants-head{display:grid;gap:12px}
  .admin-restaurants-head .btn{justify-self:start}
}
@media(max-width:620px){
  .dashboard-main{padding:10px}
  .settings-section{padding:20px 0}
  .visitor-info-first{margin-top:18px;padding-top:22px}
  .admin-meta-section+.admin-access-section,.admin-access-section+.admin-contact-section{margin-top:14px;padding-top:24px}
  .danger-zone{margin-top:18px;padding-top:22px!important}
  .restaurant-delete-zone{margin-top:24px!important;padding-top:24px!important}
  .menu-upload-section{gap:12px;margin-bottom:18px}
  .compact-dropzone{min-height:86px;padding:17px}
  .camera-upload-btn{display:block;width:100%;margin-top:2px}
  .menu-admin-list{grid-template-columns:1fr;gap:14px}
  .menu-admin-item{padding:11px}
  .menu-thumb{height:auto;aspect-ratio:3/4;max-height:390px}
  .menu-page-name{gap:7px}
  .menu-admin-item .actions{grid-template-columns:1fr 1fr}
  .menu-admin-item .actions .btn{min-height:42px}
  .editor-toolbar{grid-template-columns:1fr 1fr}
  .color-row{grid-template-columns:1fr 1fr}
  .admin-card-action{justify-content:flex-start}
  .edit-icon-btn{width:44px;height:44px}
  .detail-card .badges .badge{font-size:.8rem;padding:6px 9px}
}
@media(prefers-reduced-motion:reduce){
  .reveal-on-scroll,.restaurant-card,.card-cover img,body,.page-transition-veil{transition:none!important;animation:none!important;transform:none!important;filter:none!important;opacity:1!important}
}

/* Theme-Farbe „Karten / Felder“ */
.panel,.restaurant-card,.detail-card,.menu-page,.auth-card,.consent-card,.legal-card,.modal-card,.logo-choice,.menu-admin-item,.admin-restaurant-card,.hour-row,.field input,.field select,.field textarea{background-color:var(--card)}

/* v6.2: Betreiberzugang actions */
.access-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.access-actions .btn{margin:0}
@media(max-width:520px){.access-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.access-actions .btn{width:100%;padding-inline:10px}}

/* v6.4 – Restaurant-ID / DB-ID */
.restaurant-id-grid{align-items:start}
.restaurant-id-grid .db-id-field input{background:#f2eee7;color:#6f625d;font-weight:800;cursor:not-allowed}
.restaurant-id-grid .restaurant-id-field input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:750}
.restaurant-id-grid small{display:block;margin-top:6px;line-height:1.4}
@media(max-width:620px){.restaurant-id-grid{grid-template-columns:1fr 110px}.restaurant-id-grid .field:first-child{min-width:0}}


/* v6.4.3 – moderner Service-Umschalter auf der Startseite */
.service-filter-field{min-width:0}
.service-switch{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:46px;padding:4px;border:1px solid #dfc993;border-radius:14px;background:#fffaf0;overflow:hidden;isolation:isolate;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.service-switch-slider{position:absolute;z-index:0;left:4px;top:4px;bottom:4px;width:calc(50% - 4px);border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--accent));box-shadow:0 6px 16px rgba(99,19,29,.18);transition:transform .26s cubic-bezier(.2,.8,.2,1)}
.service-switch[data-mode="pickup"] .service-switch-slider{transform:translateX(100%)}
.service-switch-option{position:relative;z-index:1;min-width:0;min-height:38px;padding:8px 12px;border:0;border-radius:10px;background:transparent;color:#725f58;font-weight:800;white-space:nowrap;transition:color .2s ease,transform .18s ease}
.service-switch-option:hover{color:var(--primary)}
.service-switch-option.active{color:#fff}
.service-switch-option:active{transform:scale(.98)}
.service-switch-option:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
@media(max-width:620px){.service-switch{min-height:48px}.service-switch-option{min-height:40px;padding-inline:8px;font-size:.91rem}}
@media(prefers-reduced-motion:reduce){.service-switch-slider,.service-switch-option{transition:none!important}}

/* v6.5 – Admin-Suche, mobile Drawer-Navigation, globaler Aktualisierungsmodus und Partner-Footer */
.partner-page{min-height:100vh;display:flex;flex-direction:column}.partner-page>.dashboard,.partner-page>.auth-wrap,.partner-page>.consent-wrap{flex:1}.partner-page>.auth-wrap{min-height:0;padding-top:34px;padding-bottom:34px}.partner-footer{background:rgba(255,253,247,.72);margin-top:auto}.partner-footer-label{text-align:center;margin-top:5px;font-size:.78rem;font-weight:800;letter-spacing:.035em;color:var(--primary)}
.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.mobile-nav-toggle{display:none;width:42px;height:42px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.10);padding:10px;align-items:center;justify-content:center;flex-direction:column;gap:4px}.mobile-nav-toggle span{display:block;width:20px;height:2px;border-radius:99px;background:#fff;transition:transform .2s ease,opacity .2s ease}.sidebar.nav-open .mobile-nav-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}.sidebar.nav-open .mobile-nav-toggle span:nth-child(2){opacity:0}.sidebar.nav-open .mobile-nav-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.side-nav{display:flex;flex-direction:column;gap:7px}.side-nav button,.side-nav a{border:0;border-radius:11px;background:transparent;color:#dbe8e4;padding:11px;text-align:left;font-weight:750;font:inherit}.side-nav button.active,.side-nav button:hover,.side-nav a:hover{background:rgba(255,255,255,.11);color:#fff}.side-nav-overview{display:flex!important;align-items:center;gap:7px;background:#f1d690!important;color:#4a2500!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 7px 18px rgba(0,0,0,.12);margin-bottom:5px}.side-nav-overview:hover{background:#f7e2aa!important;color:#3d1d00!important}.side-nav-overview.hidden{display:none!important}
.nav-update-control{margin-top:auto;border-top:1px solid rgba(255,255,255,.16);padding:15px 8px 4px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#fff}.nav-update-control.hidden{display:none!important}.nav-update-control strong{display:block;font-size:.82rem}.nav-update-control small{display:block;margin-top:2px;color:#d7c4c6;font-size:.68rem;line-height:1.25}.nav-update-control .toggle-switch{flex:0 0 auto}
.mobile-nav-backdrop{display:none}
.admin-restaurant-search{margin:18px 0 20px;padding:14px;background:#fff8ec;border:1px solid var(--border);border-radius:16px}.admin-restaurant-search>label{display:block;margin:0 0 8px 3px;font-size:.8rem;font-weight:850;color:var(--muted)}.admin-search-box{display:flex;align-items:center;gap:9px;border:1px solid #dcc8a8;background:var(--card);border-radius:13px;padding:0 12px;transition:border-color .18s ease,box-shadow .18s ease}.admin-search-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(99,19,29,.10)}.admin-search-box>span{font-size:1.25rem;color:var(--primary);transform:rotate(-15deg)}.admin-search-box input{width:100%;border:0!important;box-shadow:none!important;background:transparent!important;padding:12px 0!important;outline:0}.admin-restaurant-search small{display:block;margin:7px 3px 0;color:var(--muted);font-size:.75rem}.ftp-sync-btn{white-space:nowrap}

@media(max-width:900px){
  .dashboard{display:block;min-height:0}.sidebar{position:sticky;top:0;z-index:90;height:58px;padding:8px 10px;display:block;background:#3d0d14;box-shadow:0 5px 18px rgba(61,13,20,.17)}.sidebar-head{height:42px}.sidebar .brand{margin:0}.sidebar .brand img{width:32px;height:32px}.mobile-nav-toggle{display:flex}.mobile-nav-backdrop{display:block;position:fixed;z-index:78;inset:58px 0 0;background:rgba(25,12,10,.45);opacity:0;visibility:hidden;transition:opacity .24s ease,visibility .24s ease}.side-nav{position:fixed;z-index:80;left:0;top:58px;bottom:0;width:min(330px,88vw);height:auto;padding:14px 12px 18px;background:#3d0d14;overflow-y:auto;overflow-x:hidden;transform:translateX(-105%);transition:transform .28s cubic-bezier(.2,.8,.2,1);box-shadow:18px 0 38px rgba(33,12,14,.24);display:flex;flex-direction:column;gap:7px}.side-nav button,.side-nav a{width:100%;flex:0 0 auto;white-space:normal;padding:12px 13px;font-size:.9rem}.sidebar.nav-open .side-nav{transform:translateX(0)}.sidebar.nav-open .mobile-nav-backdrop{opacity:1;visibility:visible}.dashboard-nav-open{overflow:hidden}.nav-update-control{margin-top:auto;padding-top:16px}.dashboard-main{padding-top:16px}.partner-footer{position:relative;z-index:1}.menu-panel-head{align-items:center}.ftp-sync-btn{justify-self:start}
}
@media(max-width:620px){.admin-restaurant-search{margin:14px 0 16px;padding:11px}.admin-search-box input{font-size:16px}.menu-panel-head{display:grid;gap:12px}.ftp-sync-btn{width:100%}.partner-footer{padding:20px 0}.partner-footer .footer-links{font-size:.86rem}}


/* v6.5.2 – Inhaltsfooter, dauerhafte Aktualitätsabfrage */
.dashboard-content{min-width:0;min-height:100vh;display:flex;flex-direction:column}.dashboard-content>.dashboard-main{flex:1}.dashboard-content>.partner-footer{margin-top:auto;width:100%}.dashboard-content>.partner-footer .shell{width:min(1180px,calc(100% - 32px));margin:auto}.dashboard-stale-prompt{position:relative}.stale-alert-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.stale-alert-actions .btn{min-height:42px}.access-state{display:flex;flex-direction:column;gap:4px}.access-state span{font-size:.84rem;color:var(--muted)}
@media(max-width:900px){.dashboard-content{min-height:calc(100vh - 58px)}.dashboard-content>.partner-footer .shell{width:min(100% - 24px,1180px)}}
@media(max-width:620px){.stale-alert-actions{display:grid;grid-template-columns:1fr}.stale-alert-actions .btn{width:100%}.dashboard-content>.partner-footer .shell{width:min(100% - 20px,1180px)}}

/* v6.5.9 – finale Mobile-Korrekturen; bewusst am Dateiende für höchste Priorität */
.dashboard-stale-prompt{padding:15px 16px!important}
.dashboard-stale-prompt .stale-alert-actions{position:static!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;margin-top:14px!important}
.dashboard-stale-prompt .stale-alert-actions button{position:static!important;inset:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:auto!important;min-height:42px!important;margin:0!important;padding:9px 7px!important;border-radius:11px!important;font-size:.8rem!important;line-height:1.2!important;white-space:normal!important}
.menu-order-controls{display:flex;align-items:center;gap:7px}.mobile-order-actions{display:none}
@media(max-width:620px){
  .hour-row{overflow:hidden}
  .time-fields{display:flex!important;flex-flow:row wrap!important;justify-content:center!important;gap:12px 8px!important;width:100%!important;min-width:0!important;padding:0 6px!important;box-sizing:border-box!important}
  .time-fields label{flex:1 1 120px!important;width:calc(50% - 4px)!important;max-width:125px!important;min-width:0!important;overflow:hidden!important}
  .time-fields input[type="time"]{display:block!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:125px!important;height:44px!important;padding:6px 5px!important;font-size:16px!important;line-height:1!important;-webkit-appearance:none!important;appearance:none!important}
  .menu-admin-item{touch-action:pan-y!important;user-select:auto!important;-webkit-user-select:auto!important}
  .menu-admin-list .menu-thumb{height:170px!important;min-height:0!important;max-height:170px!important;aspect-ratio:auto!important;touch-action:pan-y!important}
  .menu-admin-list .menu-thumb img{pointer-events:none}
  .drag-handle{display:none!important}
  .mobile-order-actions{display:flex;gap:6px}
  .mobile-order-actions button{display:grid;place-items:center;width:38px;height:36px;border:1px solid var(--border);border-radius:10px;background:#efe1cf;color:var(--primary);font-size:1.15rem;font-weight:900;touch-action:manipulation}
  .mobile-order-actions button:disabled{opacity:.3}
}

/* v6.5.9 – Zeitfenster stets als zwei vollständige Von/Bis-Zeilen */
.time-fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 8px!important;width:100%!important;min-width:0!important;max-width:540px!important;box-sizing:border-box!important}
.time-fields label{display:grid!important;grid-template-rows:auto 44px!important;gap:5px!important;width:100%!important;max-width:none!important;min-width:0!important;overflow:visible!important}
.time-fields input[type="time"]{display:block!important;box-sizing:border-box!important;width:100%!important;max-width:none!important;min-width:0!important;height:44px!important;margin:0!important;padding:0 8px!important;line-height:44px!important;text-align:center!important;font-size:16px!important}
.time-fields input[type="time"]::-webkit-date-and-time-value{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;min-height:100%!important;margin:0!important;padding:0!important;text-align:center!important}
.time-fields input[type="time"]::-webkit-datetime-edit{display:flex!important;align-items:center!important;justify-content:center!important;height:100%!important;margin:0!important;padding:0!important}
@media(max-width:620px){
  .time-fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,125px))!important;justify-content:center!important;gap:14px 10px!important;padding:0 5px!important}
  .time-fields label{display:grid!important;grid-template-rows:auto 44px!important;max-width:125px!important}
  .time-fields input[type="time"]{width:100%!important;max-width:125px!important;height:44px!important;line-height:44px!important;padding-block:0!important}
}

/* v6.5.9 – eindeutiger Servicemodus und geschlossene Tage */
.service-mode-section{padding-bottom:24px}
.service-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 18px}
.service-mode-option{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;min-height:86px;padding:14px;border:1px solid #ddcaa5;border-radius:15px;background:#fffaf0;color:var(--text);cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}
.service-mode-option:hover{border-color:var(--primary);transform:translateY(-1px)}
.service-mode-option input{position:absolute;opacity:0;pointer-events:none}
.service-mode-option.active{border-color:var(--primary);background:linear-gradient(145deg,var(--primary),var(--accent));color:#fff;box-shadow:0 9px 24px rgba(99,19,29,.18)}
.service-mode-option:has(input:focus-visible){outline:3px solid rgba(99,19,29,.2);outline-offset:2px}
.service-mode-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#f0e1cc;color:var(--primary);font-size:1.2rem;font-weight:900}
.service-mode-option.active .service-mode-icon{background:rgba(255,255,255,.18);color:#fff}
.service-mode-copy{display:grid;gap:4px;min-width:0}.service-mode-copy strong{font-size:.94rem;line-height:1.25}.service-mode-copy small{font-size:.76rem;line-height:1.35;color:var(--muted)}.service-mode-option.active .service-mode-copy small{color:rgba(255,255,255,.82)}
.service-pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:15px;border:1px solid var(--border);border-radius:15px;background:#fffdf8}
.hours-columns>section:only-child{grid-column:1/-1}
.hour-row.is-closed .time-fields{display:none!important}
@media(max-width:620px){
  .service-mode-switch{grid-template-columns:1fr;gap:9px}
  .service-mode-option{min-height:78px;padding:12px}
  .service-pricing-grid{grid-template-columns:1fr;padding:12px}
}

/* v6.5.9 – WhatsApp-Integration */
.whatsapp-integration-section{margin-top:8px;padding-top:28px!important;padding-bottom:28px!important;border-top:2px solid #eadcca!important;border-bottom:1px solid var(--border)}
.whatsapp-toggle-row{background:#f0f8f1;border-color:#c8dec9}
.whatsapp-number-wrap{margin-top:14px;padding:15px;border:1px solid #c8dec9;border-radius:14px;background:#f7fcf7}
.whatsapp-number-wrap .field{max-width:520px}.whatsapp-number-wrap input{font-size:16px}
.btn.whatsapp-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#25d366;color:#fff;box-shadow:0 7px 18px rgba(18,140,70,.18)}
.btn.whatsapp-btn:hover{background:#1fbd5b;transform:translateY(-1px)}
.btn.whatsapp-btn svg{width:19px;height:19px;fill:currentColor;flex:0 0 19px}
@media(max-width:620px){.whatsapp-integration-section{padding-top:24px!important;padding-bottom:24px!important}.whatsapp-number-wrap{padding:12px}.detail-actions .whatsapp-btn{flex:1 1 auto}}

/* v6.5.11 – Start-Dashboard und Hilfe */
.side-nav button.side-nav-help{margin-top:10px;box-shadow:inset 0 1px rgba(255,255,255,.12)}
#start.panel,#help.panel{overflow:hidden}
.dashboard-welcome{position:relative;isolation:isolate;margin:-20px -20px 24px;padding:28px;background:linear-gradient(135deg,#3d0d14 0%,var(--primary) 58%,#982d3a 100%);color:#fff;overflow:hidden}
.dashboard-welcome:after{content:"";position:absolute;z-index:-1;right:-65px;top:-90px;width:230px;height:230px;border:44px solid rgba(255,255,255,.07);border-radius:50%}
.dashboard-welcome-kicker{display:inline-block;margin-bottom:8px;color:#f1d690;font-size:.72rem;line-height:1.2;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.dashboard-welcome h2{margin:0 0 9px;font-size:clamp(1.55rem,3vw,2.15rem);line-height:1.15}
.dashboard-welcome p{max-width:780px;margin:0;color:rgba(255,255,255,.86);line-height:1.58}
.dashboard-welcome p strong{color:#fff}
.dashboard-area-head{margin-bottom:14px}.dashboard-area-head h3{margin:0 0 4px}.dashboard-area-head p{margin:0}
.dashboard-area-list{display:grid;gap:10px}
.dashboard-area-link{display:grid;grid-template-columns:52px minmax(0,1fr) 28px;align-items:center;gap:14px;width:100%;min-height:84px;padding:13px 15px;border:1px solid #e5d5bd;border-radius:15px;background:#fffaf2;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}
.dashboard-area-link:hover{transform:translateY(-2px);border-color:#cda879;background:#fff;box-shadow:0 10px 25px rgba(61,13,20,.09)}
.dashboard-area-link:focus-visible,.support-contact-card:focus-visible{outline:3px solid rgba(99,19,29,.22);outline-offset:2px}
.dashboard-area-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:linear-gradient(145deg,#f1dfc0,#ead0a6);color:var(--primary)}
.dashboard-area-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dashboard-area-copy{display:grid;gap:4px;min-width:0}.dashboard-area-copy strong{font-size:1rem}.dashboard-area-copy small{color:var(--muted);font-size:.82rem;line-height:1.42}
.dashboard-area-arrow{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f0e1cc;color:var(--primary);font-size:1rem;font-weight:900;transition:transform .18s ease}
.dashboard-area-link:hover .dashboard-area-arrow{transform:translateX(3px)}
.help-hero{padding:4px 2px 22px;border-bottom:1px solid var(--border)}.help-hero h2{margin:0 0 10px}.help-hero p{max-width:850px;margin:8px 0;color:var(--muted);line-height:1.58}.help-hero .dashboard-welcome-kicker{color:var(--primary)}
.support-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}
.support-contact-card{display:grid;justify-items:center;align-content:center;gap:6px;min-height:190px;padding:20px 14px;border:1px solid var(--border);border-radius:17px;background:#fffaf2;color:var(--text);text-align:center;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.support-contact-card:hover{transform:translateY(-3px);border-color:#cfad7f;box-shadow:0 11px 28px rgba(61,13,20,.1)}
.support-contact-icon{display:grid;place-items:center;width:72px;height:72px;margin-bottom:7px;border-radius:22px;background:#f0e1cc;color:var(--primary)}
.support-contact-icon svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.support-contact-card strong{font-size:1.05rem}.support-contact-card>span:last-child{color:var(--muted);font-size:.86rem;overflow-wrap:anywhere}
.support-phone .support-contact-icon{background:#f6e2e4;color:#8f1f2d}.support-whatsapp .support-contact-icon{background:#ddf7e6;color:#168a47}.support-whatsapp .support-contact-icon svg{fill:currentColor;stroke:none}
.help-closing{padding:20px;border:1px solid #e2d0b5;border-left:5px solid var(--primary);border-radius:15px;background:#fff8ec}.help-closing h3{margin:0 0 9px}.help-closing p{margin:7px 0;color:var(--muted);line-height:1.55}.help-closing p strong{color:var(--text)}
@media(max-width:700px){.support-contact-grid{grid-template-columns:1fr}.support-contact-card{min-height:155px}.dashboard-welcome{margin:-14px -14px 20px;padding:22px 18px}.dashboard-area-link{grid-template-columns:46px minmax(0,1fr) 24px;gap:11px;padding:12px}.dashboard-area-icon{width:46px;height:46px;border-radius:12px}.dashboard-area-icon svg{width:23px;height:23px}.dashboard-area-copy small{font-size:.78rem}.help-closing{padding:16px}}
