/* DÖs Rezept-Küche – Website-Stile */
@font-face{font-family:"Andika";font-weight:400;font-display:swap;src:url(../app/fonts/andika-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Andika";font-weight:700;font-display:swap;src:url(../app/fonts/andika-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Fredoka";font-weight:500;font-display:swap;src:url(../app/fonts/fredoka-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Fredoka";font-weight:600;font-display:swap;src:url(../app/fonts/fredoka-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Fredoka";font-weight:700;font-display:swap;src:url(../app/fonts/fredoka-latin-700-normal.woff2) format("woff2")}
/* Theme-Stile von der Küche fernhalten: alles auf Browser-Standard zurück, danach greifen nur die Küchen-Stile */
html body .doek :not(svg, svg *){all:revert;box-sizing:border-box}
html body .doek :not(svg, svg *)::before,html body .doek :not(svg, svg *)::after{box-sizing:border-box}

/* Layout: sticky brand bar, DÖ hero, category chips, card grid; detail + forms as full-height sheets */
html body .doek{
  --bg:#FFF8E7; --surface:#FFFDF6; --ink:#3B1F14; --muted:#8A5A3C; --brown:#4A2418; --yellow:#FBC93D;
  --line:#4A2418; --chipbg:#FFF1C9; --warn:#C92A2A; --warnbg:#FFE3E3; --ok:#2B8A3E; --okbg:#EBFBEE;
  --c-heiss:#E8590C; --c-kalt:#1C7ED6; --c-kuchen:#C2410C; --c-muffins:#D6336C; --c-kekse:#9C6B30;
  --shadow:#4A2418; --sheet:#FFFBF0;
  --f-display:"Fredoka","Baloo 2","Trebuchet MS",sans-serif; --f-body:"Andika","Verdana",sans-serif;
}
@media (prefers-color-scheme: dark){html body .doek:not([data-theme="light"]){
  --bg:#1E120C; --surface:#2B1A12; --ink:#FBEFD9; --muted:#D9B48F; --brown:#FBC93D; --yellow:#FBC93D;
  --line:#6B4430; --chipbg:#3A2418; --warn:#FF8787; --warnbg:#3B1C1C; --ok:#8CE99A; --okbg:#18301E;
  --c-heiss:#FF8A4C; --c-kalt:#4DABF7; --c-kuchen:#FF922B; --c-muffins:#F783AC; --c-kekse:#E0A96D;
  --shadow:#0E0805; --sheet:#24160F; color-scheme:dark}}
html body .doek[data-theme="dark"]{
  --bg:#1E120C; --surface:#2B1A12; --ink:#FBEFD9; --muted:#D9B48F; --brown:#FBC93D; --yellow:#FBC93D;
  --line:#6B4430; --chipbg:#3A2418; --warn:#FF8787; --warnbg:#3B1C1C; --ok:#8CE99A; --okbg:#18301E;
  --c-heiss:#FF8A4C; --c-kalt:#4DABF7; --c-kuchen:#FF922B; --c-muffins:#F783AC; --c-kekse:#E0A96D;
  --shadow:#0E0805; --sheet:#24160F; color-scheme:dark}
html body .doek *{box-sizing:border-box}
html body .doek [hidden]{display:none!important}
html body .doek{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.45}
html body .doek::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:30;background:#FBC93D}
html body .doek h1,html body .doek h2,html body .doek h3,html body .doek .fd{font-family:var(--f-display);text-wrap:balance;margin:0}
html body .doek button{font:inherit;cursor:pointer}
html body .doek :focus-visible{outline:3px solid #339AF0;outline-offset:2px}
html body .doek .wrap{max-width:1100px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
/* top bar */
html body .doek .bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:#FBC93D;border-bottom:3px solid #4A2418}
html body .doek .bar .wrap{display:flex;align-items:center;gap:12px;padding-block:10px}
html body .doek .logo{font-family:var(--f-display);font-weight:700;font-size:1.45rem;color:#4A2418;display:flex;align-items:center;gap:8px;flex:1;min-width:0}
html body .doek .logo svg{width:44px;height:44px;flex:none}
html body .doek .logo span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body .doek .btn{border:2.5px solid #4A2418;background:#4A2418;color:#FFF8E7;border-radius:14px;padding:9px 16px;font-family:var(--f-display);font-weight:600;box-shadow:3px 3px 0 #2A1209;white-space:nowrap}
html body .doek .btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 #2A1209}
html body .doek .btn.light{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:3px 3px 0 var(--shadow)}
html body .doek .btn.ok{background:#2B8A3E;border-color:#1B5E28;box-shadow:3px 3px 0 #1B5E28;color:#fff}
html body .doek .btn.no{background:#C92A2A;border-color:#8B1A1A;box-shadow:3px 3px 0 #8B1A1A;color:#fff}
html body .doek .lg{}
@media (max-width:480px){html body .doek .lg{display:none}}
html body .doek .btn.small{padding:6px 12px;font-size:.92rem;border-radius:11px}
/* hero */
html body .doek .hero{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:end;padding-block:18px 6px}
html body .doek .hero .doe{width:150px}
html body .doek .hero h1{font-size:clamp(1.7rem,4.6vw,2.7rem);line-height:1.05;color:var(--brown)}
html body .doek .hero p{margin:8px 0 12px;color:var(--muted);max-width:52ch}
html body .doek .search{display:flex;gap:8px;max-width:520px}
html body .doek .search input{flex:1;min-width:0;font:inherit;padding:11px 14px;border-radius:14px;border:2.5px solid var(--line);background:var(--surface);color:var(--ink)}
@media (max-width:560px){html body .doek .hero{grid-template-columns:96px 1fr;gap:10px}html body .doek .hero .doe{width:96px}}
/* tabs */
html body .doek .tabs{display:flex;gap:9px;overflow-x:auto;padding-block:14px 12px;scrollbar-width:none}
html body .doek .tabs::-webkit-scrollbar{display:none}
html body .doek .tab{flex:none;display:flex;align-items:center;gap:7px;border:2.5px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:6px 14px 6px 8px;font-family:var(--f-display);font-weight:600;font-size:1rem;box-shadow:2px 2px 0 var(--shadow)}
html body .doek .tab svg{width:30px;height:30px}
html body .doek .tab[aria-selected="true"]{background:var(--tc,#4A2418);color:#fff;border-color:#4A2418}
html body .doek .tab .n{font-size:.8rem;opacity:.75;font-weight:500}
/* grid */
html body .doek .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;padding-block:6px 30px}
html body .doek .card{position:relative;text-align:left;border:2.5px solid var(--line);background:var(--surface);color:var(--ink);border-radius:20px;padding:0;overflow:hidden;box-shadow:4px 4px 0 var(--shadow);display:flex;flex-direction:column;transition:transform .12s}
html body .doek .card:hover{transform:translateY(-2px)}
html body .doek .card .top{height:104px;background:var(--cc);display:flex;align-items:center;justify-content:space-between;padding:0 14px;position:relative;overflow:hidden}
html body .doek .card .top .big{width:92px;height:92px;flex:none;margin-right:46px;align-self:flex-end}
html body .doek .card .top .dots{position:absolute;inset:0;opacity:.18;background-image:radial-gradient(#fff 3px,transparent 3.5px);background-size:22px 22px}
html body .doek .card .top .cat{position:relative;font-family:var(--f-display);font-weight:600;font-size:.85rem;color:#fff;background:rgba(0,0,0,.22);padding:3px 10px;border-radius:99px;align-self:flex-start;margin-top:12px;white-space:nowrap}
html body .doek .card .body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
html body .doek .card h3{font-size:1.18rem;line-height:1.15;font-weight:600}
html body .doek .meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.88rem;color:var(--muted);align-items:center}
html body .doek .pill{font-family:var(--f-display);font-weight:600;font-size:.78rem;border-radius:99px;padding:2px 9px;border:1.5px solid currentColor}
html body .doek .pill.buch{color:#9C6B30}
html body .doek .pill.com{color:#1C7ED6}
html body .doek .pill.warn{color:var(--warn);background:var(--warnbg)}
html body .doek .pill.hid{color:#fff;background:#868E96;border-color:#868E96}
html body .doek .pill.pend{color:#E67700}
html body .doek .stars{position:relative;display:inline-flex;vertical-align:-3px;flex:none}
html body .doek .stars .off,html body .doek .stars .on{display:inline-flex;gap:1px;white-space:nowrap}
html body .doek .stars .on{position:absolute;left:0;top:0;bottom:0;overflow:hidden}
html body .doek .stars svg{width:18px;height:18px;flex:none}
html body .doek .stars .off path,html body .doek .pick .off path{fill:transparent;stroke:var(--muted);opacity:.45}
html body .doek .partyrow{margin-top:10px;padding-top:10px;border-top:2px dashed var(--line)}
html body .doek .cnt{font-family:var(--f-display);font-weight:600;color:var(--muted);font-size:.9rem}
html body .doek .card{isolation:isolate}
html body .doek .card .open{position:absolute;inset:0;z-index:1;background:none;border:0;border-radius:18px;padding:0}
html body .doek .fav{position:absolute;top:10px;right:10px;z-index:2;width:42px;height:42px;border-radius:50%;border:2.5px solid #4A2418;background:#FFF8E7;display:grid;place-items:center;padding:0;box-shadow:2px 2px 0 #2A1209}
html body .doek .fav svg{width:24px;height:24px}
html body .doek .fav.on{background:#FFE3EC}
html body .doek .phead .fav{position:static;width:42px;height:42px}
html body .doek .phead .hbtns{display:flex;gap:8px}
html body .doek .card .top img,html body .doek .hero-img{width:100%;height:100%;object-fit:cover;display:block}
html body .doek .card .top.photo{padding:0}
html body .doek .card .top.photo .cat{position:absolute;left:12px;top:0}
html body .doek .hero-img{height:auto;max-height:340px;border-radius:16px;border:2.5px solid var(--line);aspect-ratio:4/3}
html body .doek .photo-prev{display:flex;gap:10px;align-items:center}
html body .doek .photo-prev img{width:96px;height:72px;object-fit:cover;border-radius:10px;border:2px solid var(--line)}
html body .doek .empty{grid-column:1/-1;text-align:center;padding:30px 10px;color:var(--muted)}
html body .doek .empty .doe{width:140px;margin:0 auto}
html body .doek .figav.big{width:130px;height:130px;margin:0 auto 10px}
html body .doek .phead .dav{flex:none;aspect-ratio:1}
/* sheets */
html body .doek .sheet{position:fixed;inset:0;z-index:40;background:rgba(30,15,8,.55);display:flex;justify-content:center;align-items:flex-start;overflow-y:auto;padding:max(12px,env(safe-area-inset-top,0px)) max(10px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))}
html body .doek .panel{width:100%;max-width:760px;margin-bottom:var(--tpad,0px)!important;background:var(--sheet);border:3px solid var(--line);border-radius:24px;box-shadow:6px 6px 0 var(--shadow);overflow:hidden;margin-block:8px}
html body .doek .phead{background:var(--cc,#FBC93D);padding:16px 18px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start;color:#fff;position:relative}
html body .doek .phead h2{font-size:clamp(1.5rem,4.4vw,2.1rem);line-height:1.08;text-shadow:0 2px 0 rgba(0,0,0,.18)}
html body .doek .phead .x{background:rgba(0,0,0,.25);color:#fff;border:0;border-radius:12px;width:42px;height:42px;font-size:1.4rem;line-height:1}
html body .doek .phead .sub{font-family:var(--f-display);font-weight:500;opacity:.92;margin-top:4px}
html body .doek .pbody{padding:16px 18px 22px;display:flex;flex-direction:column;gap:16px}
html body .doek .storyrow{display:grid;grid-template-columns:1fr 110px;gap:12px;align-items:end}
html body .doek .storyrow .doe{width:110px}
html body .doek .figav{width:110px;height:110px;border-radius:50%;overflow:hidden;background:var(--mc,#FBC93D);border:3px solid #4A2418;box-shadow:3px 3px 0 #4A2418;align-self:center}
html body .doek .figav svg{width:100%;height:100%;display:block}
html body .doek .story{background:var(--chipbg);border-radius:16px;padding:12px 14px;font-size:.97rem}
html body .doek .facts{display:grid;grid-template-columns:1fr;gap:8px}
html body .doek .fact{border:2px solid var(--line);border-radius:14px;padding:10px 14px;background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left}
html body .doek .fact b{display:block;font-family:var(--f-display);font-weight:600;font-size:.85rem;color:var(--muted);flex:none}
html body .doek .fact span{font-family:var(--f-display);font-weight:600;font-size:.98rem;text-align:right}
html body .doek .fact.langnote{background:#FFF3BF;border-color:#E6B800;font-size:.9rem;justify-content:flex-start}
html body .doek .fact.drtip{cursor:pointer;justify-content:flex-start;background:#E7F5FF;border-color:#74C0FC;font:inherit;color:inherit;width:100%;transition:transform .12s,box-shadow .12s}
html body .doek .fact.drtip:hover{transform:translateY(-1px);box-shadow:0 3px 0 #74C0FC}
html body .doek .fact.drtip .dav{width:54px;height:54px;flex:none;border-radius:50%;background:#D0EBFF;overflow:hidden;display:grid;place-items:center}
html body .doek .fact.drtip .dav svg,html body .doek .fact.drtip .dav img{width:100%;height:100%}
html body .doek .fact.drtip .dtx{flex:1;min-width:0;text-align:left}
html body .doek .fact.drtip .dtx b{color:#1864AB;font-size:.8rem}
html body .doek .fact.drtip .dtx strong{display:block;font-family:var(--f-display);font-size:1.02rem;line-height:1.25}
html body .doek .fact.drtip .dtx small{display:block;color:var(--muted);font-size:.82rem}
html body .doek .fact.drtip .go{font-family:var(--f-display);font-weight:700;color:#1864AB;font-size:1.3rem;flex:none}
html body .doek .drpop{position:fixed;inset:0;z-index:100085;background:rgba(40,20,10,.55);display:flex;align-items:safe center;justify-content:center;padding:clamp(12px,4vw,40px);overflow:auto}
html body .doek .drpop[hidden]{display:none}
html body .doek .drbox{background:var(--surface,#fff);color:var(--ink,#4A2418);border-radius:22px;max-width:640px;width:100%;padding:20px clamp(16px,4vw,28px) 22px;border:3px solid #74C0FC;box-shadow:0 10px 40px rgba(0,0,0,.25);position:relative;margin:auto}
html body .doek .drbox .drh{display:flex;gap:14px;align-items:center;margin-bottom:6px}
html body .doek .drbox .drh .dav{width:72px;height:72px;border-radius:50%;background:#D0EBFF;overflow:hidden;flex:none}
html body .doek .drbox .drh .dav svg,html body .doek .drbox .drh .dav img{width:100%;height:100%}
html body .doek .drbox h3{font-family:var(--f-display);margin:0;font-size:1.3rem}
html body .doek .drbox h4{font-family:var(--f-display);margin:18px 0 6px;font-size:1.08rem;color:#1864AB}
html body .doek .drbox p,html body .doek .drbox li{line-height:1.5}html body .doek .drbox p{margin:6px 0}html body .doek .drbox ul{margin:6px 0;padding-left:20px}
html body .doek .drbox table{width:100%;border-collapse:collapse;margin:8px 0;font-size:.95rem}
html body .doek .drbox th,html body .doek .drbox td{text-align:left;padding:7px 8px;border-bottom:1px solid var(--line)}
html body .doek .drbox th{font-family:var(--f-display);font-size:.85rem;color:var(--muted)}
html body .doek .drbox .drsmall{font-size:.82rem;color:var(--muted)}
html body .doek .drbox .drx{position:absolute;top:10px;right:12px;border:0;background:#E7F5FF;color:#1864AB;width:38px;height:38px;border-radius:50%;font-size:1.3rem;cursor:pointer}
html body .doek .drbox .drsec{border-top:2px dashed #D0EBFF;margin-top:14px}
@media (max-width:560px){html body .doek .storyrow{grid-template-columns:1fr 80px}html body .doek .storyrow .doe{width:80px}html body .doek .figav{width:80px;height:80px}}
html body .doek .sec h3{font-size:1.3rem;color:var(--brown);margin-bottom:8px}
html body .doek .sec h4{font-family:var(--f-display);color:var(--c-kuchen);margin:8px 0 4px;font-size:1.02rem}
html body .doek .ing{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}
@media (max-width:560px){html body .doek .ing{grid-template-columns:1fr}}
html body .doek .ing li{display:flex;align-items:center;gap:8px;min-width:0}
html body .doek .ing input{width:22px;height:22px;accent-color:#2B8A3E;flex:none}
html body .doek .ing svg{width:34px;height:34px;flex:none}
html body .doek .ing label{min-width:0;cursor:pointer}
html body .doek .ing input:checked ~ label{text-decoration:line-through;opacity:.55}
html body .doek .tools{display:flex;flex-wrap:wrap;gap:6px}
html body .doek .tools span{background:var(--chipbg);border:1.5px solid var(--line);border-radius:10px;padding:2px 9px;font-size:.92rem}
html body .doek .steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;counter-reset:s}
html body .doek .steps li{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:start}
html body .doek .steps li .n{width:34px;height:34px;border-radius:50%;border:2px solid var(--line);color:#fff;font-family:var(--f-display);font-weight:700;display:grid;place-items:center}
html body .doek .steps li.sub{display:block;font-family:var(--f-display);font-weight:600;color:var(--c-kuchen)}
html body .doek .adult{display:inline-block;font-family:var(--f-display);font-weight:600;font-size:.82em;background:var(--warnbg);color:var(--warn);border:1.5px solid var(--warn);border-radius:9px;padding:0 7px;white-space:nowrap}
html body .doek .tip{background:#FFF3BF;color:#3B1F14;border-radius:16px;padding:12px 14px;border:2px solid #E6B800}
html body .doek .tip b{font-family:var(--f-display)}
html body .doek .rate{border:2.5px dashed var(--line);border-radius:18px;padding:14px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;background:var(--okbg)}
html body .doek .rate .pick{display:flex;gap:4px}
html body .doek .rate .pick button{background:none;border:0;padding:2px}
html body .doek .rate .pick svg{width:42px;height:42px;transition:transform .1s}
html body .doek .rate .pick button:hover svg{transform:scale(1.12)}
html body .doek .rate .avg{font-family:var(--f-display);font-weight:600}
@media (max-width:560px){html body .doek .rate{grid-template-columns:1fr}}
html body .doek .rule{font-size:.88rem;color:var(--muted)}
html body .doek .statusbox{border-radius:14px;padding:10px 12px;font-size:.93rem}
html body .doek .statusbox.warn{background:var(--warnbg);color:var(--warn)}
html body .doek .statusbox.hid{background:#E9ECEF;color:#343A40}
html body .doek .statusbox.new{background:var(--okbg);color:var(--ok)}
/* form */
html body .doek form{display:flex;flex-direction:column;gap:12px}
html body .doek .f{display:flex;flex-direction:column;gap:4px}
html body .doek .f label{font-family:var(--f-display);font-weight:600}
html body .doek .f small{color:var(--muted)}
html body .doek .f input,html body .doek .f select,html body .doek .f textarea{font:inherit;font-size:16px;padding:10px 12px;border-radius:12px;border:2px solid var(--line);background:var(--surface);color:var(--ink);width:100%}
html body .doek .f textarea{min-height:110px;resize:vertical}
html body .doek .frow{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
@media (max-width:560px){html body .doek .frow{grid-template-columns:1fr}}
html body .doek .err{color:var(--warn);font-family:var(--f-display);font-weight:600}
html body .doek .note{background:var(--chipbg);border-radius:14px;padding:10px 12px;font-size:.93rem}
html body .doek .mine{display:flex;flex-direction:column;gap:6px}
html body .doek .mine div{display:flex;justify-content:space-between;gap:10px;border-bottom:1.5px dashed var(--line);padding-bottom:6px}
/* chef area */
html body .doek .chef{border:3px solid var(--line);border-radius:22px;background:var(--surface);padding:16px;margin-bottom:34px;display:flex;flex-direction:column;gap:14px}
html body .doek .chef h2{color:var(--brown);font-size:1.5rem}
html body .doek .chef .row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
html body .doek .sub-item{border:2px solid var(--line);border-radius:16px;padding:10px 12px;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
html body .doek .sub-item .acts{display:flex;gap:8px;flex-wrap:wrap}
html body .doek .timetravel{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
html body .doek .timetravel input{flex:1;min-width:160px;accent-color:#E8590C}
html body .doek .toast{position:fixed;left:50%;transform:translateX(-50%);bottom:max(18px,env(safe-area-inset-bottom,0px));z-index:60;background:#4A2418;color:#FFF8E7;font-family:var(--f-display);font-weight:600;padding:10px 18px;border-radius:14px;box-shadow:3px 3px 0 #2A1209;max-width:calc(100% - 32px)}
html body .doek .offline{margin:10px 0;background:var(--warnbg);color:var(--warn);border-radius:14px;padding:10px 14px}
html body .doek footer{padding-block:10px calc(30px + var(--tpad,0px));color:var(--muted);font-size:.85rem}

/* side menu */
html body .doek .avimg{width:100%;height:100%;object-fit:cover;display:block}
html body .doek .mi .short{display:none}
html body .doek .layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px;align-items:start}
html body .doek .side{position:sticky;top:calc(env(safe-area-inset-top,0px) + 74px);max-height:calc(100vh - 90px);overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding-block:16px 20px;scrollbar-width:thin}
html body .doek .content{min-width:0}
html body .doek .mi{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;text-align:left;border:2.5px solid transparent;background:transparent;color:var(--ink);border-radius:18px;padding:5px 8px 5px 5px;position:relative}
html body .doek .mi:hover{background:var(--chipbg)}
html body .doek .mi .av{width:54px;height:54px;border-radius:50%;overflow:hidden;background:var(--mc,#FBC93D);border:2.5px solid #4A2418;display:block}
html body .doek .mi .av svg{width:100%;height:100%;display:block}
html body .doek .mi .lab{font-family:var(--f-display);font-weight:600;font-size:1rem;line-height:1.1;min-width:0}
html body .doek .mi .lab small{display:block;font-weight:500;font-size:.76rem;color:var(--muted);margin-top:2px}
html body .doek .mi .n{font-family:var(--f-display);font-size:.78rem;color:var(--muted)}
html body .doek .mi .badge{background:#E03131;color:#fff;border-radius:99px;font-family:var(--f-display);font-size:.75rem;padding:1px 7px}
html body .doek .mi[aria-current="true"]{background:var(--surface);border-color:var(--line);box-shadow:3px 3px 0 var(--shadow)}
html body .doek .mi.hl{background:#FFE3EC;border-color:#E03131;color:#3B1F14}
html body .doek .mi.hl .lab small{color:#C92A2A}
html body .doek .side .sep{height:2px;background:var(--line);opacity:.25;margin:6px 10px;border-radius:2px}
html body .doek .cathead{display:flex;align-items:center;gap:12px;padding-block:14px 8px;scroll-margin-top:calc(env(safe-area-inset-top,0px) + 80px)}
html body .doek .cathead .av{width:64px;height:64px;border-radius:50%;overflow:hidden;background:var(--mc);border:3px solid #4A2418;flex:none}
html body .doek .cathead .av svg{width:100%;height:100%;display:block}
html body .doek .cathead h2{font-size:1.6rem;color:var(--brown);line-height:1.1}
html body .doek .cathead p{margin:2px 0 0;color:var(--muted)}
@media (max-width:767px){
  html body .doek .layout{grid-template-columns:70px minmax(0,1fr);gap:8px}
  html body .doek .side{top:calc(env(safe-area-inset-top,0px) + 70px);gap:4px;padding-block:10px 16px}
  html body .doek .mi{grid-template-columns:1fr;justify-items:center;text-align:center;padding:4px 2px;gap:2px;border-radius:14px}
  html body .doek .mi .av{width:46px;height:46px}
  html body .doek .mi .lab{font-size:.64rem;line-height:1.05}
  html body .doek .mi .full{display:none}html body .doek .mi .short{display:inline}
  html body .doek .hero h1{font-size:1.35rem}html body .doek .hero p{font-size:.92rem}
  html body .doek .content{overflow-x:clip}
  html body .doek .layout.wrap{padding-left:max(6px,env(safe-area-inset-left,0px));padding-right:max(6px,env(safe-area-inset-right,0px))}
  html body .doek .search{max-width:100%}html body .doek .card{max-width:100%}
  html body .doek .hero>div{min-width:0}html body .doek .hero p{overflow-wrap:anywhere}html body .doek .search input{width:100%}
  html body .doek .mi .lab small,html body .doek .mi .n{display:none}
  html body .doek .mi .badge{position:absolute;top:0;right:4px}
  html body .doek .hero{grid-template-columns:1fr}html body .doek .hero .doe{display:none}
  html body .doek .cathead .av{width:52px;height:52px}html body .doek .cathead h2{font-size:1.3rem}
  html body .doek .grid{grid-template-columns:1fr}
}
html body .doek .sidehead{display:none}
html body .doek .menubtn{display:none;align-items:center;gap:7px}
html body .doek .sideback{display:none}
@media (max-width:767px){
  html body .doek #addBtn{display:none}html body .doek .menubtn{display:inline-flex}
  html body .doek .layout{grid-template-columns:minmax(0,1fr)}
  html body .doek #side{position:fixed;top:var(--doek-drop-top,0px)!important;left:0;right:0;bottom:auto;width:auto;max-width:none;height:auto;max-height:calc(100vh - var(--doek-drop-top,0px));max-height:calc(100dvh - var(--doek-drop-top,0px));overflow-y:auto;z-index:2147482000;background:var(--doek-drawer-bg,var(--bg))!important;border:3px solid #4A2418;border-top:0;border-radius:0 0 22px 22px;box-shadow:0 8px 0 rgba(74,36,24,.25);padding:6px max(10px,env(safe-area-inset-right,0px)) 22px max(10px,env(safe-area-inset-left,0px));gap:4px;transform:translateY(-14px);opacity:0;visibility:hidden;transform-origin:top center;transition:transform .22s ease,opacity .22s ease,visibility 0s linear .22s;overscroll-behavior:contain}
  html body .doek #side.menu-open{transform:none;opacity:1;visibility:visible;transition:transform .22s ease,opacity .22s ease}
  html body .doek #side .mi{grid-template-columns:50px 1fr auto;justify-items:stretch;text-align:left;padding:5px 8px 5px 5px;gap:10px;border-radius:16px}
  html body .doek #side .mi .av{width:50px;height:50px}
  html body .doek #side .mi .lab{font-size:1rem;line-height:1.1}
  html body .doek #side .mi .full{display:inline}html body .doek #side .mi .short{display:none}
  html body .doek #side .mi .lab small{display:block}html body .doek #side .mi .n{display:inline}
  html body .doek #side .mi .badge{position:static}
  html body .doek #side .sidehead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 4px 8px 8px;font-family:var(--f-display);font-weight:700;font-size:1.35rem;color:var(--brown)}
  html body .doek #side .sidehead .x,html body .doek #side .sidehead .x:hover,html body .doek #side .sidehead .x:focus{background:#FBC93D!important;color:#4A2418!important;border-color:#4A2418!important}
  html body .doek #side .sidehead .x{flex:none;width:42px;height:42px;padding:0;border-radius:12px;border:2.5px solid #4A2418;background:#FBC93D;color:#4A2418;font-family:var(--f-display);font-size:1.5rem;font-weight:700;line-height:1;display:grid;place-items:center;box-shadow:2px 2px 0 #4A2418;cursor:pointer}
  html body .doek #sideBack{display:block;position:fixed;inset:0;top:var(--doek-drop-top,0px);background:rgba(42,18,9,.45);z-index:2147481999}
  html body .doek #sideBack[hidden]{display:none}
}
html body .doek .morerow{grid-column:1/-1;display:flex;justify-content:center;padding:8px 0 4px}
html body .doek .morebtn .n{font-weight:500;opacity:.8;font-size:.9em}
html body .doek .side .mgap{flex:none;height:64px}
html body .doek .side .mgroup{display:flex;flex-direction:column;gap:6px;padding:6px;border:2.5px solid rgba(74,36,24,.22);border-radius:20px;background:rgba(255,255,255,.55)}
@media (max-width:767px){html body .doek #side .mgap{height:60px}html body .doek #side .mgroup{gap:4px}}
/* toolbar + filters */
html body .doek .toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
@media (max-width:560px){html body .doek .tool{flex:1 1 auto;justify-content:center}}
html body .doek .tool{display:flex;align-items:center;gap:7px;border:2.5px solid var(--line);background:var(--surface);color:var(--ink);border-radius:14px;padding:6px 12px 6px 7px;font-family:var(--f-display);font-weight:600;box-shadow:2px 2px 0 var(--shadow);position:relative}
html body .doek .tool svg{width:28px;height:28px;flex:none}
html body .doek .tool small{display:block;font-weight:500;font-size:.75rem;color:var(--muted);line-height:1}
html body .doek .tool .badge{background:#E03131;color:#fff;border-radius:99px;font-size:.75rem;padding:1px 7px}
html body .doek .filters{display:flex;flex-wrap:wrap;gap:7px;padding-bottom:10px}
html body .doek .fchip{border:2px dashed var(--line);background:transparent;color:var(--ink);border-radius:99px;padding:4px 12px;font-family:var(--f-display);font-weight:600;font-size:.9rem}
html body .doek .fchip[aria-pressed="true"]{background:#2B8A3E;border:2px solid #1B5E28;color:#fff}
html body .doek .fchip.clear{border-style:solid;color:var(--muted)}
html body .doek #allergyNote{margin:0 0 10px}
html body .doek .intro{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:start;border:3px solid var(--line);border-radius:22px;padding:14px 16px;margin-bottom:14px;box-shadow:4px 4px 0 var(--shadow)}
html body .doek .intro p{margin:4px 0}html body .doek .intro h3{font-size:1.35rem;color:var(--brown)}
html body .doek .intro .iav{width:72px;height:72px}html body .doek .intro .iav svg{width:100%;height:100%;display:block}
html body .doek .intro .iav.round{border-radius:50%;overflow:hidden;border:3px solid #4A2418}
html body .doek .intro.party{background:linear-gradient(135deg,#FFE3EC,#FFF3BF);color:#3B1F14}html body .doek .intro.party h3{color:#C2255C}
html body .doek .intro.ohne{background:var(--surface)}
html body .doek .achips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
html body .doek .achip{display:flex;align-items:center;gap:6px;border:2.5px solid var(--line);background:var(--surface);color:var(--ink);border-radius:14px;padding:4px 12px 4px 6px;font-family:var(--f-display);font-weight:600}
html body .doek .achip svg{width:30px;height:30px}
html body .doek .achip[aria-pressed="true"]{background:#1C7ED6;border-color:#0B4F8A;color:#fff;box-shadow:2px 2px 0 #0B4F8A}
html body .doek .adisc{font-size:.85rem;color:var(--muted);background:var(--chipbg);border-radius:12px;padding:8px 10px}
html body .doek .ghead{grid-column:1/-1;border-radius:16px;padding:8px 14px;margin-top:4px}
html body .doek .ghead h3{font-size:1.2rem}html body .doek .ghead p{margin:2px 0 0;font-size:.9rem}html body .doek .ghead .n{font-size:.9rem;opacity:.7}
html body .doek .ghead.ok{background:var(--okbg);color:var(--ok)}html body .doek .ghead.care{background:#FFF3BF;color:#8A5A00}
html body .doek .blocked{grid-column:1/-1;border:2px dashed var(--line);border-radius:16px;padding:10px 14px}
html body .doek .blocked summary{cursor:pointer;color:var(--warn)}
html body .doek .grid.inner{padding-top:12px}
html body .doek .pill.okp{color:var(--ok);background:var(--okbg)}html body .doek .pill.carep{color:#8A5A00;background:#FFF3BF}html body .doek .pill.nop{color:var(--warn);background:var(--warnbg)}
html body .doek .smode{display:inline-flex;border:2.5px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:8px}
html body .doek .smode button{border:0;background:var(--surface);color:var(--ink);font-family:var(--f-display);font-weight:600;padding:5px 12px}
html body .doek .smode button[aria-pressed="true"]{background:#FBC93D;color:#4A2418}
html body .doek .fspacer{flex:1}
html body .doek .sortl{font-family:var(--f-display);font-weight:600;font-size:.88rem;align-self:center}
html body .doek .sortsel{font:inherit;font-size:.92rem;border:2px solid var(--line);border-radius:10px;padding:3px 8px;background:var(--surface);color:var(--ink)}
html body .doek .fchip.surprise{border-style:solid;background:#FFE3EC;color:#C2255C;border-color:#C2255C}
html body .doek .meas{border:2.5px solid var(--line);border-radius:16px;padding:12px;background:var(--chipbg);margin-bottom:14px}
html body .doek .convrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}
html body .doek .convrow input,html body .doek .convrow select{font:inherit;border:2px solid var(--line);border-radius:10px;padding:4px 8px;background:var(--surface);color:var(--ink)}
html body .doek .convrow input{width:80px}
html body .doek .ufoav g{animation:ufoHue 6s linear infinite}@keyframes ufoHue{from{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}@media (prefers-reduced-motion:reduce){html body .doek .ufoav g{animation:none}}
html body .doek .drtabs{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 12px}
html body .doek .drtab{border:2px solid #74C0FC;background:#E7F5FF;color:#1864AB;border-radius:14px;padding:8px 14px;font-family:var(--f-display);font-weight:700;font-size:1rem;cursor:pointer;text-align:left;line-height:1.2}
html body .doek .drtab small{display:block;font-family:var(--f-body,inherit);font-weight:400;font-size:.8rem;color:var(--muted)}
html body .doek .drtab:hover{background:#D0EBFF}
html body .doek .applink{border:2px dashed var(--line);border-radius:14px;padding:10px 14px;margin:12px 0}
html body .doek .applink h4{margin:0 0 4px;font-family:var(--f-display)}
html body .doek .applink-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
html body .doek .applink-url{width:100%;min-width:200px;font:inherit;font-size:.9rem;padding:8px;border:2px solid var(--line);border-radius:10px;margin-bottom:8px;background:#fff}
html body .doek .mtab{border-collapse:collapse;font-size:.9rem;margin:6px 0}html body .doek .sugtab td,html body .doek .sugtab th{border-bottom:1px solid var(--line);padding:5px 10px}html body .doek .mtab th,html body .doek .mtab td{padding:2px 10px;text-align:left}html body .doek .mtab th{font-family:var(--f-display)}
html body .doek .cspeak{display:flex;gap:12px;align-items:center;justify-content:center;padding-top:8px}
html body .doek .planday{border-bottom:2px dashed var(--line);padding-bottom:8px}
html body .doek .planday h4{font-size:1.05rem;color:var(--brown);margin:0 0 4px}
html body .doek .planitem{display:grid;grid-template-columns:36px 1fr auto;gap:8px;align-items:center;margin:4px 0}
html body .doek .planitem .ic svg{width:34px;height:34px}html body .doek .planitem button[data-id]{background:none;border:0;text-align:left;font-family:var(--f-display);font-weight:600;color:var(--ink);padding:0}
html body .doek .cclist{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:8px}
html body .doek .cclist li{background:var(--chipbg);border-radius:12px;padding:8px 12px}
html body .doek .ccform{display:flex;gap:8px;align-items:flex-end}html body .doek .ccform textarea{flex:1;min-height:60px;font:inherit;border:2px solid var(--line);border-radius:12px;padding:8px;background:var(--surface);color:var(--ink)}
html body .doek .pill.extra{color:#1C7ED6;background:#E7F5FF}
html body .doek .drcheck{border:2.5px solid #1C7ED6;border-radius:16px;padding:10px 12px;background:var(--surface)}
html body .doek .drhead{display:grid;grid-template-columns:56px 1fr;gap:10px;align-items:center;margin-bottom:6px}
html body .doek .dav{width:56px;height:56px;border-radius:50%;overflow:hidden;background:#D0EBFF;border:2.5px solid #4A2418;display:block}html body .doek .dav svg{width:100%;height:100%;display:block}
html body .doek .drtab{width:100%;border-collapse:collapse;font-size:.92rem}
html body .doek .drtab th{font-family:var(--f-display);font-weight:600;color:var(--muted);text-align:center;font-size:.8rem}
html body .doek .drtab td{padding:3px 4px;border-top:1px dashed var(--line)}
html body .doek .drtab td:first-child{display:flex;align-items:center;gap:6px}html body .doek .drtab td svg{width:24px;height:24px}
html body .doek .drtab td:not(:first-child){text-align:center}html body .doek .drtab input{width:20px;height:20px}
html body .doek .allwarn{border-radius:14px;padding:10px 12px;font-size:1rem}
html body .doek .allwarn.no{background:var(--warnbg);color:var(--warn);border:2.5px solid var(--warn)}
html body .doek .allwarn.care{background:#FFF3BF;color:#6B4500;border:2.5px solid #E8A400}
html body .doek .allwarn.ok{background:var(--okbg);color:var(--ok);border:2.5px solid var(--ok)}
html body .doek .allbox{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.95rem}
html body .doek .allbox>div{flex-basis:100%}
html body .doek .atag{display:inline-flex;align-items:center;gap:4px;border:1.5px solid var(--line);border-radius:10px;padding:1px 8px 1px 3px;background:var(--surface);font-family:var(--f-display);font-weight:600;font-size:.88rem}
html body .doek .atag svg{width:22px;height:22px}html body .doek .atag.mine{background:var(--warnbg);color:var(--warn);border-color:var(--warn)}
/* detail extras */
html body .doek .actions{display:flex;flex-wrap:wrap;gap:8px}
html body .doek .btn.big{font-size:1.1rem;padding:12px 20px;border-radius:16px}
html body .doek .factor{display:inline-flex;border:2.5px solid var(--line);border-radius:12px;overflow:hidden;vertical-align:middle;margin-left:8px}
html body .doek .factor button{border:0;background:var(--surface);color:var(--ink);font-family:var(--f-display);font-weight:600;padding:4px 11px;border-right:2px solid var(--line)}
html body .doek .factor button:last-child{border-right:0}
html body .doek .factor button[aria-pressed="true"]{background:#FBC93D;color:#4A2418}
html body .doek .sec h3 .factorlab{font-size:.85rem;color:var(--muted);font-weight:500;margin-left:6px}
html body .doek .tmr{border:2px solid #1C7ED6;background:#E7F5FF;color:#1864AB;border-radius:10px;font-family:var(--f-display);font-weight:600;font-size:.92em;padding:0 7px;white-space:nowrap}
html body .doek .lexw{border:0;background:none;padding:0;color:inherit;font:inherit;text-decoration:underline dotted 2px;text-underline-offset:3px;text-decoration-color:#E8590C;cursor:help}
html body .doek .cookedrow{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;border:2.5px solid var(--line);border-radius:18px;padding:12px 14px;background:var(--surface)}
html body .doek .note-area{width:100%;min-height:80px;font:inherit;padding:10px 12px;border-radius:12px;border:2px solid var(--line);background:var(--surface);color:var(--ink)}
html body .doek .copyfb{width:100%;min-height:120px;font:inherit;font-size:.85rem;border-radius:12px;border:2px solid var(--line);background:var(--surface);color:var(--ink);padding:8px}
html body .doek .sharerow{display:flex;flex-wrap:wrap;gap:8px}
html body .doek .cookedrow.ready{border-color:#2B8A3E;background:var(--okbg)}
html body .doek .cookedrow.confirm{border-color:#E67700;background:#FFF3BF;color:#3B1F14}
html body .doek .cookedrow .btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}
html body .doek .ingbar{height:8px;background:var(--chipbg);border-radius:8px;overflow:hidden;margin-top:6px;max-width:260px}html body .doek .ingbar i{display:block;height:100%;background:#2B8A3E}
html body .doek .rate.lockedrate{opacity:.85;border-style:dotted;background:var(--surface)}
html body .doek .photos{display:flex;flex-direction:column;gap:8px}
html body .doek .gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}
html body .doek .gimg{padding:0;border:2px solid var(--line);border-radius:12px;overflow:hidden;aspect-ratio:1;background:var(--chipbg)}
html body .doek .gimg img,html body .doek .gpend img{width:100%;height:100%;object-fit:cover;display:block}
html body .doek .gpend{border:2px solid var(--line);border-radius:12px;padding:6px;display:flex;flex-direction:column;gap:4px}
html body .doek .gpend img{aspect-ratio:1;border-radius:8px}
html body .doek #inviteLinkBox{font-size:.9rem}
/* glossary */
html body .doek #lexPop{position:fixed;left:0;right:0;bottom:0;z-index:80;display:flex;justify-content:center;padding:0 max(10px,env(safe-area-inset-right,0px)) max(10px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))}
html body .doek .lexcard{max-width:560px;width:100%;background:#FFF3BF;color:#3B1F14;border:3px solid #4A2418;border-radius:20px;box-shadow:4px 4px 0 #2A1209;padding:12px 14px;display:grid;grid-template-columns:64px 1fr auto;gap:10px;align-items:start}
html body .doek .lexcard p{margin:4px 0 0}
html body .doek .lexdoe{width:64px}
html body .doek .x2{background:#4A2418;color:#fff;border:0;border-radius:10px;width:34px;height:34px;font-size:1.2rem}
html body .doek .lexlist{margin:0;display:flex;flex-direction:column;gap:10px}
html body .doek .lexlist div{border-bottom:1.5px dashed var(--line);padding-bottom:8px}
html body .doek .lexlist dt{font-weight:600;font-size:1.1rem;color:var(--brown)}
html body .doek .lexlist dd{margin:2px 0 0}
/* timers */
html body .doek #timers{position:fixed;right:max(12px,env(safe-area-inset-right,0px));bottom:max(12px,env(safe-area-inset-bottom,0px));z-index:70;display:flex;flex-direction:column;gap:8px;width:min(360px,calc(100% - 24px))}
html body .doek .timer{display:grid;grid-template-columns:54px 1fr auto;gap:8px;align-items:center;background:#FFF8E7;color:#3B1F14;border:3px solid #4A2418;border-radius:18px;box-shadow:3px 3px 0 #2A1209;padding:6px 10px}
html body .doek .timer.ring{background:#FFE066;animation:wob .5s ease-in-out infinite alternate}
@keyframes wob{from{transform:rotate(-1.5deg)}to{transform:rotate(1.5deg)}}
html body .doek .tdoe{width:54px}
html body .doek .tlab{font-size:.78rem;color:#8A5A3C;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body .doek .tmid{min-width:0}
html body .doek .tclock{font-size:1.6rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}
html body .doek .tbar{height:7px;background:#F1E3C0;border-radius:9px;overflow:hidden}html body .doek .tbar i{display:block;height:100%;background:#E8590C}
html body .doek .tbtns{display:flex;gap:6px}
/* cook mode */
html body .doek #cook{position:fixed;inset:0;z-index:50;background:var(--sheet);color:var(--ink);display:flex;flex-direction:column;padding:env(safe-area-inset-top,0px) max(16px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) max(16px,env(safe-area-inset-left,0px))}
html body .doek .cbar{display:flex;align-items:center;gap:10px;background:var(--cc);color:#fff;margin:0 calc(-1*max(16px,env(safe-area-inset-left,0px)));padding:10px max(16px,env(safe-area-inset-left,0px))}
html body .doek .cbar b{flex:1;min-width:0;font-size:1.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body .doek .cbar .x{background:rgba(0,0,0,.25);color:#fff;border:0;border-radius:12px;width:44px;height:44px;font-size:1.5rem}
html body .doek .cprog{font-family:var(--f-display);font-weight:600;white-space:nowrap}
html body .doek .cdots{display:flex;gap:5px;justify-content:center;padding:12px 0;flex-wrap:wrap}
html body .doek .cdots i{width:10px;height:10px;border-radius:50%;background:var(--line);opacity:.3}html body .doek .cdots i.on{opacity:1;background:var(--cc)}
html body .doek .cbody{flex:1;overflow-y:auto;max-width:780px;width:100%;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;padding-block:10px}
html body .doek .cnum{width:72px;height:72px;border-radius:50%;border:3px solid var(--line);color:#fff;font:700 2.2rem/66px var(--f-display);flex:none}
html body .doek .ctext{font-size:clamp(1.45rem,4.6vw,2.2rem);line-height:1.35;margin:0;text-wrap:pretty}
html body .doek .chead{font-family:var(--f-display);font-weight:600;color:var(--c-kuchen);font-size:1.2rem}
html body .doek .ctitle{font-size:clamp(1.8rem,5vw,2.6rem);color:var(--brown)}
html body .doek .csub{color:var(--muted);margin:0;font-size:1.1rem}
html body .doek .cing{width:100%;text-align:left;font-size:1.15rem}
html body .doek .cing .ing svg{width:40px;height:40px}html body .doek .cing .ing input{width:26px;height:26px}
html body .doek .cdoe{width:160px}
html body .doek .cbtns{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
html body .doek .cnav{display:flex;justify-content:space-between;gap:12px;padding:12px 0 calc(16px + var(--tpad,0px));max-width:780px;width:100%;margin:0 auto}
html body .doek .cnav .btn{flex:1;max-width:300px}
html body .doek .cnav .btn:disabled{opacity:.35}
/* party */
html body .doek #party{position:fixed;inset:0;z-index:90;background:rgba(30,15,8,.6);display:flex;align-items:center;justify-content:center;padding:16px;overflow:hidden}
html body .doek .pcard{position:relative;z-index:2;background:#FFF8E7;color:#3B1F14;border:3px solid #4A2418;border-radius:26px;box-shadow:6px 6px 0 #2A1209;max-width:520px;width:100%;max-height:100%;overflow-y:auto;padding:18px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
html body .doek .pcard h2{font-size:2rem;color:#4A2418}
html body .doek .pdoe{width:120px}
html body .doek .ptitle{margin:0;font-size:1.1rem}
html body .doek .pmedals{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
html body .doek .pmedals div{width:150px;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:.85rem}
html body .doek .pmedals svg{width:84px}
html body .doek .confetti i{position:absolute;top:-20px;width:10px;height:16px;border-radius:3px;animation:fall 2.6s linear infinite}
@keyframes fall{to{transform:translateY(110vh) rotate(540deg)}}
/* pass */
html body .doek .passhead{display:grid;grid-template-columns:100px 1fr;gap:14px;align-items:center}
html body .doek .passdoe{width:100px}
html body .doek .ptitle2{font-size:1.7rem;font-weight:700;color:var(--brown);line-height:1.1}
html body .doek .pbar{height:14px;background:var(--chipbg);border:2px solid var(--line);border-radius:10px;overflow:hidden;margin:6px 0 4px}html body .doek .pbar i{display:block;height:100%;background:#2B8A3E}
html body .doek .passstats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
html body .doek .passstats div{border:2px solid var(--line);border-radius:14px;padding:8px;text-align:center;background:var(--surface)}
html body .doek .passstats b{display:block;font-size:1.6rem}html body .doek .passstats span{font-size:.85rem;color:var(--muted)}
html body .doek .medals{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}
html body .doek .mcell{display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;font-size:.8rem;border-radius:14px;padding:8px 6px;background:var(--surface);border:2px solid var(--line)}
html body .doek .mcell b{font-size:.88rem;line-height:1.15}html body .doek .mcell span{color:var(--muted)}
html body .doek .mcell svg.medal{width:70px}
html body .doek .fb{position:relative;display:inline-block;width:84px;height:84px;flex:none;margin:6px 6px 4px}
html body .doek .fb .fbav{position:absolute;inset:0;border-radius:50%;overflow:hidden;background:var(--mc);border:4px solid #F5C431;box-shadow:0 0 0 2.5px #4A2418,3px 3px 0 2.5px #4A2418}
html body .doek .fb .fbav svg{width:100%;height:100%;display:block}
html body .doek .fb svg.fbp{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
html body .doek .fb .fbn{position:absolute;top:-8px;left:-8px;background:#E03131;color:#fff;font-family:var(--f-display);font-weight:700;font-size:.85rem;min-width:28px;height:28px;padding:0 4px;border-radius:99px;display:grid;place-items:center;border:2.5px solid #4A2418;box-sizing:border-box}
html body .doek .fb.fb-fig .fbav{border-color:#CC5DE8}
html body .doek .fb.locked .fbav,html body .doek .fb.locked svg.fbp{filter:grayscale(1);opacity:.45}
html body .doek .fb.locked .fbn{background:#868E96}
html body .doek .fb svg.lock{position:absolute;right:-6px;bottom:-6px;width:30px;height:34px}
html body .doek .pmedals .fb{width:96px;height:96px}
html body .doek .mcell .mnum{font-size:.75rem;color:var(--ink);font-weight:700}
html body .doek .mcell .mnum.lockt{color:var(--muted)}
html body .doek .mcell .mprog{display:block;width:80%;height:8px;border-radius:6px;background:var(--chipbg);border:1.5px solid var(--line);overflow:hidden;margin-top:2px}
html body .doek .mcell .mprog i{display:block;height:100%;background:#2B8A3E}
html body .doek .mcell.lockedfig{border-style:dashed}
html body .doek .parents .sec h3{display:flex;align-items:center;gap:8px}
html body .doek .parents .pnum{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#7048E8;color:#fff;font-size:1rem;flex:none}
html body .doek .parents .psteps{margin:6px 0 10px;padding-left:1.4em}html body .doek .parents .psteps li{margin:4px 0}
html body .doek .parents .pintro{background:#F3F0FF;border:2.5px solid #B197FC;border-radius:16px;padding:12px}
html body .doek .parents .pok{color:#2B8A3E;font-weight:700}
html body .doek .parents .pnote{background:var(--chipbg);border-radius:12px;padding:10px}
html body .doek .parents .pqr{width:min(260px,100%);margin:10px auto;background:#fff;border:3px solid #4A2418;border-radius:14px;padding:6px}
html body .doek .parents .pqr svg{display:block;width:100%;height:auto}
html body .doek .parents .pqr.small{width:140px;height:auto;margin:0;flex:none}html body .doek .applink-row>div:last-child{flex:1;min-width:200px}
html body .doek .parents textarea{width:100%;font:inherit;font-size:.9rem;padding:9px 12px;border:2.5px solid #4A2418;border-radius:12px;resize:vertical;word-break:break-all}
html body .doek .parents .gate{text-align:center}html body .doek .parents .gate .certrow{max-width:420px;margin:0 auto}
html body .doek .parents .gateword{font-size:2rem;color:#7048E8;margin:6px 0 12px;word-break:break-word}
html body .doek .parents .pease{background:#FFF3BF;border:2.5px solid #E8A90C;border-radius:16px;padding:12px;margin:0 0 10px}
html body .doek .parents .pease h4{font-family:var(--f-display);font-size:1.05rem;margin:0 0 8px}
html body .doek .parents .pease p{margin:8px 0 0}
html body .doek .parents .ptable{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;font-size:.95rem}
html body .doek .parents .ptable th,html body .doek .parents .ptable td{border:2px solid #E8D9A8;padding:8px 10px;text-align:left;vertical-align:top}
html body .doek .parents .ptable th{background:#FBC93D;color:#4A2418;font-family:var(--f-display)}
html body .doek .parents .ptable td:first-child{width:34%}
html body .doek .parents .pfaq details{border:2px solid var(--line);border-radius:12px;padding:8px 12px;margin:6px 0;background:var(--surface)}
html body .doek .parents .pfaq summary{cursor:pointer;font-family:var(--f-display);font-weight:600}
html body .doek .parents .pfaq details p{margin:6px 0 0}
html body .doek .certsec{background:#FFF3BF;border:3px solid #E8A90C;border-radius:16px;padding:12px}
html body .doek .certrow{display:flex;gap:8px;flex-wrap:wrap}html body .doek .certrow input{flex:1 1 180px;min-width:0;font:inherit;padding:9px 12px;border:2.5px solid #4A2418;border-radius:12px}
html body .doek .freundesec{background:#FFE3EC;color:#3B1F14;border:2.5px solid #E03131;border-radius:18px;padding:12px}
html body .doek .freundesec h3{color:#C92A2A!important}html body .doek .freundesec .rule{color:#8A3A3A}
html body .doek .recent{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
html body .doek .recent li{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;border:2px solid var(--line);border-radius:14px;padding:6px 10px;background:var(--surface)}
html body .doek .recent .ic svg{width:40px;height:40px}
html body .doek .recent button{background:none;border:0;padding:0;text-align:left;color:var(--ink);font-family:var(--f-display);font-weight:600;font-size:1.02rem}
html body .doek .recent h4{font-family:var(--f-display);color:var(--muted);margin:6px 0 0}
html body .doek .medal.locked{filter:grayscale(1);opacity:.45}
html body .doek .log{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
html body .doek .log li{display:flex;justify-content:space-between;gap:10px;border-bottom:1.5px dashed var(--line);padding-bottom:5px}
@media (prefers-reduced-motion:reduce){html body .doek .confetti{display:none}html body .doek .timer.ring{animation:none}}
@media (prefers-reduced-motion:reduce){html body .doek *{transition:none!important}}

/* layout polish */
html body .doek .panel:focus{outline:none}
html body .doek .fspacer{flex:1 1 0}
html body .doek .sortgrp{display:inline-flex;align-items:center;gap:7px;flex-wrap:nowrap}
html body .doek .sortl{font-family:var(--f-display);font-weight:600;font-size:.9rem;color:var(--muted)}
html body .doek .sortsel{font:inherit;font-size:.92rem;padding:5px 8px;border-radius:10px;border:2px solid var(--line);background:var(--surface);color:var(--ink)}
@media (max-width:1100px){html body .doek .fspacer{display:none}html body .doek .sortgrp{flex:1 1 100%}}
@media (max-width:767px){
  html body .doek .smode{display:flex;width:100%}html body .doek .smode button{flex:1 1 0;padding:7px 6px;font-size:.9rem;white-space:nowrap}
  html body .doek .fchip{font-size:.82rem;padding:3px 10px}
  html body .doek .sortgrp{gap:6px}html body .doek .sortsel{flex:1 1 auto;min-width:0}
}
@media (max-width:480px){html body .doek .logo{font-size:1.15rem;gap:6px}html body .doek .logo svg{width:36px;height:36px}html body .doek .bar .wrap{gap:8px}}
@media (max-width:480px){html body .doek .sortgrp{flex-wrap:wrap}html body .doek .sortsel{flex:0 1 auto}}
html body .doek .fchip.surprise{white-space:nowrap}
html body .doek .toast{width:max-content;max-width:calc(100vw - 32px);text-align:center}

/* Rechtschreibprüfung */
html body .doek .spellbox{border:2.5px solid #2F9E44;background:#EBFBEE;border-radius:14px;padding:12px 14px;color:#1B4332}
html body .doek .spellbox .spell-ok{margin:0;font-family:var(--f-display);font-weight:600;color:#2B8A3E}
html body .doek .spellhead{display:flex;gap:10px;align-items:center;margin-bottom:8px}
html body .doek .spellhead .dav{width:52px;height:52px;flex:none;border-radius:50%;overflow:hidden;border:2.5px solid #4A2418}
html body .doek .spellhead .dav svg{width:100%;height:100%;display:block}
html body .doek .spelllist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
html body .doek .spelllist li{background:#fff;border:2px solid #FFC9C9;border-radius:12px;padding:8px 10px;color:#3B1F14}
html body .doek .spelllist mark{background:#FFE3E3;color:#C92A2A;text-decoration:underline wavy #C92A2A;border-radius:4px;padding:0 2px}
html body .doek .spellrep{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
html body .doek .spell-bad{border-color:#E03131!important;box-shadow:0 0 0 3px rgba(224,49,49,.18)!important}

/* ---- Website-Modus ---- */
html body .doek{box-sizing:border-box;max-width:100%;font-family:var(--f-body);color:var(--ink);font-size:17px;line-height:1.45;text-align:left;-webkit-font-smoothing:antialiased}
/* Theme-Einstellungen nicht in die Küche durchlassen */
html body .doek :where(button,input,select,textarea){text-transform:none;letter-spacing:normal;font-family:inherit;line-height:1.2;min-height:0;text-decoration:none;text-shadow:none}
html body .doek :where(h1,h2,h3,h4){text-transform:none;letter-spacing:normal;font-family:var(--f-display);color:inherit}
html body .doek :where(a){color:inherit}
html body .doek :where(img,svg){max-width:none}
html body .doek :where(ul,ol){padding-left:0}
html body .doek :where(p){margin-top:0}
.doek-inline{background-color:#FFF8E7;background-image:linear-gradient(rgba(255,248,231,.45),rgba(255,248,231,.45)),url(../app/img/muster-kueche.webp);background-repeat:repeat;background-size:auto,620px;width:100%}
@media (max-width:760px){.doek-inline{background-size:auto,440px}}
html body .doek-inline .side{background:rgba(255,248,231,.92);border-radius:18px;box-shadow:0 0 0 2px rgba(74,36,24,.08)}
@media (max-width:767px){html body .doek-inline .layout .side{background:#FFF8E7;border-radius:0 22px 22px 0;box-shadow:6px 0 0 rgba(74,36,24,.25)}}
html body .doek-inline main footer{background:rgba(255,248,231,.85);border-radius:12px;padding:8px 12px}
html body .doek-inline .bar{position:sticky;top:var(--doek-top,0px)}
body.admin-bar{--doek-top:32px}
@media (max-width:782px){body.admin-bar{--doek-top:0px}}
/* Einzelnes Rezept direkt auf der Seite */
html body .doek-recipe{padding:28px 16px 48px}
html body .doek #doek-page{max-width:980px;margin:0 auto;position:relative;width:100%}
html body .doek #doek-page .phead .x{display:none}
html body .doek #doek-page:not(.doek-ready){background:var(--sheet);border:3px solid #4A2418;border-radius:22px;padding:24px;box-shadow:6px 6px 0 #4A2418}
html body .doek #doek-page:not(.doek-ready) h1{font-size:clamp(1.8rem,4vw,2.6rem);color:#4A2418;margin:0 0 10px}
html body .doek #doek-page:not(.doek-ready) h2{font-size:1.3rem;margin:18px 0 8px;color:#4A2418}
html body .doek #doek-page:not(.doek-ready) ul,html body .doek #doek-page:not(.doek-ready) ol{padding-left:22px}
html body .doek .doek-seo-img{width:100%;max-height:420px;object-fit:cover;border-radius:16px;margin:8px 0 14px}
/* Hilfs-Gerüst der App (unsichtbar auf Rezeptseiten) */
html body .doek .doek-hidden{display:none!important}
/* Hinweis im Elementor-Editor */
html body .doek .doek-editor-note{background:#FFF1C9;border:2px dashed #C2410C;border-radius:12px;padding:10px 14px;margin:0 auto 12px;max-width:980px;font-size:14px;color:#4A2418}

/* Einzelne Elementor-Bausteine */
html body .doek.doek-hidden{display:none!important}
html body .doek-part{width:100%}
html body .doek-part .side{position:static;max-height:calc(100vh - 140px)}
html body .doek-part .hero,html body .doek-part footer{display:none}
html body .doek-part .smode{margin-bottom:8px}
html body .doek-part .filters{padding-bottom:4px}
html body .doek-part .grid{padding-block:6px 10px}
@media (min-width:768px){html body .doek-part #sideBack{display:none!important}}

/* Rezeptseite aus Elementor-Bausteinen */
html body .doek-rslot{width:100%}
html body .doek-rslot .doek-slotpanel{max-width:none;width:100%;margin:0;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible}
html body .doek-rslot .doek-slotpanel>.pbody{padding:0}
html body .doek-rslot .phead .x{display:none}
html body .doek-rslot.doek-slot-empty{display:none}
html body .doek-rslot:not(.doek-ready) .doek-seo h1{font-size:clamp(1.6rem,4vw,2.4rem);color:#4A2418;margin:0}
html body .doek-rslot:not(.doek-ready) .doek-seo ul,html body .doek-rslot:not(.doek-ready) .doek-seo ol{padding-left:22px}
html body .doek-rslot .phead .doek-back{display:inline-flex;align-items:center;gap:4px;height:42px;padding:0 14px;border-radius:12px;background:rgba(0,0,0,.25);color:#fff;font-family:var(--f-display);font-weight:600;font-size:1rem;text-decoration:none;white-space:nowrap}
html body .doek-rslot .phead .doek-back:hover{background:rgba(0,0,0,.38)}
html body .doek-rslot .phead .hbtns{align-items:center}
@media (max-width:480px){html body .doek-rslot .phead .doek-back{padding:0 10px;font-size:.92rem}}
html body .doek-rslot .phead h1.doek-rtitle{font-size:clamp(1.5rem,4.4vw,2.1rem);line-height:1.08;text-shadow:0 2px 0 rgba(0,0,0,.18);margin:0;color:inherit;font-family:var(--f-display);font-weight:700}
/* Menü-Baustein scrollt auf Desktop & Tablet mit (bleibt neben den Rezepten sichtbar) */
body .elementor-element.elementor-widget.elementor-widget-doe_part_menu{position:sticky!important;top:calc(var(--doek-top,0px) + var(--doek-menu-top,128px));z-index:5;align-self:flex-start}
@media (min-width:768px){body .elementor-widget-doe_part_menu .side{max-height:calc(100vh - var(--doek-top,0px) - var(--doek-menu-top,128px) - 16px)!important;overflow-y:auto}}
@media (max-width:1024px){body .elementor-element.elementor-widget.elementor-widget-doe_part_menu{--doek-menu-top:112px}}
@media (max-width:767px){body .elementor-element.elementor-widget.elementor-widget-doe_part_menu{position:static!important}}
/* Hintergrundbild des Elementor-Containers überall durchscheinen lassen */
html body .doek.doek-part,html body .doek.doek-rslot{background:transparent}
html body .doek-part .side{background:transparent;box-shadow:none}
/* Fenster (Kacheln) über allem anzeigen – auch über der WordPress-Leiste und der gelben Leiste – und mittig mit Abstand */
html body .doek-overlays .sheet{z-index:100040;padding:clamp(16px,4vh,48px) max(12px,env(safe-area-inset-right,0px)) clamp(16px,4vh,48px) max(12px,env(safe-area-inset-left,0px))}
html body .doek-overlays .sheet{align-items:flex-start;align-items:safe center}
html body .doek-overlays .sheet>.panel{flex:none}
html body .doek-overlays #cook{z-index:100050}
html body .doek-overlays #timers{z-index:100070}
html body .doek-overlays #lexPop{z-index:100080}
html body .doek-overlays #party{z-index:100090}
html body .doek-overlays .toast{z-index:100100}
@media (max-width:767px){html body .doek-overlays .sheet{padding:max(10px,env(safe-area-inset-top,0px)) 8px max(10px,env(safe-area-inset-bottom,0px))}}
