:root{color:#f7f1e7;font-synthesis:none;--bg:#10110e;--panel:#191a16;--panel2:#20211c;--line:#303129;--muted:#a6a99f;--accent:#f57757;--cream:#f7f1e7;background:#10110e;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);min-width:320px;margin:0}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}input,textarea{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;outline:none}input[type=number]{appearance:textfield}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.app{min-height:100vh}.centered{place-items:center;display:grid}.brand,.primary,.ghost,.cook,.add-row{justify-content:center;align-items:center;gap:9px;display:inline-flex}.brand{color:var(--cream);letter-spacing:-.04em;font-size:21px;font-weight:850;text-decoration:none}.brand>span,.brand-mark{background:var(--accent);color:#2b120c;border-radius:14px;place-items:center;width:40px;height:40px;display:grid}.primary{background:var(--accent);color:#24110c;border:0;border-radius:14px;min-height:48px;padding:0 20px;font-weight:800;text-decoration:none}.ghost{min-height:44px;color:var(--cream);background:#20211c;border:1px solid #383a31;border-radius:13px;padding:0 15px}.icon{color:#c4c7bd;background:#22231e;border:1px solid #373930;border-radius:13px;place-items:center;width:44px;height:44px;display:grid}.danger{color:#ff8d80}.eyebrow{color:#ff9b83;letter-spacing:.14em;align-items:center;gap:7px;font-size:11px;font-weight:850;display:inline-flex}.topbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#10110ee8;border-bottom:1px solid #272821;grid-template-columns:220px minmax(280px,520px) 1fr;align-items:center;gap:24px;height:76px;padding:0 max(24px,50vw - 640px);display:grid;position:sticky;top:0}.search{color:#898d83;background:#1c1d18;border:1px solid #303129;border-radius:14px;align-items:center;gap:10px;height:44px;padding:0 14px;display:flex}.search:focus-within{border-color:#82736b;box-shadow:0 0 0 3px #f5775714}.search input{width:100%;color:var(--cream);background:0 0;border:0}.account{justify-self:end;align-items:center;gap:10px;display:flex}.avatar{color:#28251f;background:#e9dfcb;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.who{color:#c4c7bd;font-size:13px}.hero{height:min(650px,72vh);min-height:500px;position:relative;overflow:hidden}.hero>img{object-fit:cover;width:100%;height:100%}.shade{background:linear-gradient(90deg,#10110ef2 0%,#10110f9e 47%,#10110f13 80%),linear-gradient(#0000 70%,#10110f 100%);position:absolute;inset:0}.hero-copy{max-width:650px;position:absolute;top:50%;left:max(24px,50vw - 640px);transform:translateY(-48%)}.hero h1{letter-spacing:-.055em;margin:18px 0;font-family:Georgia,Noto Serif SC,serif;font-size:clamp(48px,6vw,82px);font-weight:500;line-height:1.02}.hero-copy>p{color:#c7c9c1;max-width:470px;font-size:16px;line-height:1.8}.hero-stats{color:#b3b6ac;align-items:center;gap:14px;margin-top:20px;font-size:12px;display:flex}.hero-stats b{color:#fff;font-size:16px}.hero-stats i{background:#66685f;width:1px;height:16px}.hero-actions{gap:11px;margin-top:27px;display:flex}.hero-actions button{color:#1c1c18;background:#f5ede0;border:0;border-radius:14px;align-items:center;gap:8px;min-height:50px;padding:0 19px;font-weight:800;display:flex}.hero-actions .ghost{color:#fff;background:#23241edb;border:1px solid #4a4b42}.browse{max-width:1328px;margin:auto;padding:52px 24px 110px}.section-head{justify-content:space-between;align-items:end;margin-bottom:22px;display:flex}.section-head small{color:var(--accent);letter-spacing:.15em;font-weight:850}.section-head h2{margin:7px 0 0;font-family:Georgia,Noto Serif SC,serif;font-size:34px;font-weight:500}.section-head>span{color:#989c91;font-size:13px}.chips{scrollbar-width:none;gap:9px;padding:2px 1px 24px;display:flex;overflow:auto}.chips button{white-space:nowrap;color:#aeb2a7;background:#1b1c18;border:1px solid #34362e;border-radius:999px;min-height:42px;padding:0 16px}.chips button.active{color:#201f1a;background:#ede3d1;border-color:#ede3d1;font-weight:750}.chips .favorite-filter{margin-left:auto}.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid}.card{background:#181915;border:1px solid #292a24;border-radius:22px;min-width:0;transition:all .25s;overflow:hidden}.card:hover{border-color:#44463c;transform:translateY(-4px);box-shadow:0 18px 50px #0006}.photo{aspect-ratio:1.12;background:#23241e;position:relative;overflow:hidden}.photo img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.card:hover .photo img{transform:scale(1.04)}.placeholder{color:#65695e;background:radial-gradient(circle at 50% 20%,#38392f,#20211c);place-items:center;height:100%;display:grid}.photo>span{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#171812d9;border-radius:999px;padding:6px 10px;font-size:11px;position:absolute;bottom:12px;left:12px}.heart{color:#fff;background:#12130fa8;border:1px solid #ffffff26;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:10px;right:10px}.heart[aria-pressed=true]{color:#ff8067}.card-body{padding:17px}.card h3{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:19px;overflow:hidden}.card-body>p{color:#9ca096;height:40px;font-size:13px;line-height:1.55}.meta{color:#bbbfb4;flex-wrap:wrap;gap:12px;margin:14px 0;font-size:11px;display:flex}.meta span{align-items:center;gap:5px;display:flex}.tags{gap:6px;height:24px;display:flex;overflow:hidden}.tags span{color:#d79b88;white-space:nowrap;background:#2d211d;border-radius:7px;padding:5px 8px;font-size:10px}.card-actions{gap:8px;margin-top:15px;display:flex}.cook{color:#28251f;background:#ede3d1;border:0;border-radius:12px;flex:1;min-height:44px;font-weight:800}.banner{color:#ffc2b8;background:#351e1b;border:1px solid #6c3934;border-radius:14px;align-items:center;gap:10px;margin:0 0 20px;padding:13px 14px;display:flex}.banner span{flex:1}.banner button{color:inherit;background:0 0;border:0;align-items:center;gap:6px;font-weight:700;display:flex}.empty{text-align:center;background:#171814;border:1px dashed #373930;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;min-height:330px;padding:30px;display:flex}.empty-icon{color:#e89b80;background:#27281f;border-radius:22px;place-items:center;width:64px;height:64px;display:grid}.empty h3{margin:18px 0 7px;font-family:Georgia,Noto Serif SC,serif;font-size:25px;font-weight:500}.empty p{color:var(--muted);max-width:380px;line-height:1.7}.skeleton-card{background:#191a16;border-radius:22px;height:390px;overflow:hidden}.skeleton-card i,.skeleton-card span,.skeleton-card b{background:linear-gradient(90deg,#24251f,#303129,#24251f) 0 0/200%;animation:1.4s infinite shimmer;display:block}.skeleton-card i{height:58%}.skeleton-card span{height:19px;margin:20px 18px 12px}.skeleton-card b{width:64%;height:12px;margin-left:18px}@keyframes shimmer{to{background-position:-200%}}.fab{z-index:15;background:var(--accent);color:#25110c;border:0;border-radius:19px;width:58px;height:58px;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 35px #0008}.boot-screen{color:#aeb1a7;align-content:center;gap:14px}.loader{border:2px solid #393a32;border-top-color:var(--accent);border-radius:50%;width:24px;height:24px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login{grid-template-columns:1.1fr .9fr;min-height:100vh;display:grid}.login-visual{min-height:100vh;position:relative}.login-visual>img{object-fit:cover;filter:saturate(.85);width:100%;height:100%}.login-visual:after{content:"";background:linear-gradient(90deg,#0003,#10110e);position:absolute;inset:0}.login-quote{z-index:1;border-left:2px solid var(--accent);max-width:430px;padding:22px;font-family:Georgia,Noto Serif SC,serif;font-size:23px;line-height:1.55;position:absolute;bottom:8%;left:7%}.login-quote svg{color:var(--accent)}.login-card{align-self:center;max-width:650px;padding:8vw}.login-card .brand{margin-bottom:15vh}.login-card>.eyebrow{margin-bottom:20px;display:flex}.login-card h1{margin:0 0 22px;font-family:Georgia,Noto Serif SC,serif;font-size:clamp(39px,4vw,61px);font-weight:500;line-height:1.15}.login-card>p{color:#aaa;max-width:430px;line-height:1.8}.login-card .primary{margin-top:24px}.problem{color:#ffada1}.modal{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#070805cf;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.panel{background:#1b1c18;border:1px solid #3b3c34;border-radius:24px;width:min(620px,100%);max-height:calc(100dvh - 48px);padding:30px;position:relative;overflow:auto;box-shadow:0 30px 90px #000b}.close{z-index:4;color:#ddd;background:#23241f;border:1px solid #3b3d34;border-radius:14px;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:18px;right:18px}.editor{background:#151612;width:min(980px,100%);padding:0;overflow:auto}.editor>.close{display:none}.editor-head{border-bottom:1px solid var(--line);background:#181914;padding:30px 38px 25px}.editor-head h2{margin:8px 0 6px;font-family:Georgia,Noto Serif SC,serif;font-size:34px;font-weight:500}.editor-head p{color:var(--muted);margin:0}.editor-content{padding:28px 38px 15px}.editor-section{border-bottom:1px solid var(--line);margin-bottom:34px;padding:0 0 38px}.editor-section:last-child{border-bottom:0}.editor-section-head{gap:14px;margin-bottom:22px;display:flex}.section-icon{color:#f09273;background:#2d251f;border-radius:15px;flex:0 0 44px;place-items:center;height:44px;display:grid}.editor-section-head small{color:#d48168;letter-spacing:.1em;font-weight:800}.editor-section-head h3{margin:3px 0;font-size:21px}.editor-section-head p{color:#8f9388;margin:0;font-size:12px}.field{flex-direction:column;gap:7px;margin-bottom:15px;display:flex}.field>span{color:#b9bcb2;font-size:12px;font-weight:700}.field>small{color:#777b71;font-size:11px}.field input,.field textarea{color:#f5efe5;resize:vertical;background:#20211c;border:1px solid #36382f;border-radius:12px;width:100%;min-height:48px;padding:12px 14px}.field input:focus,.field textarea:focus{border-color:#c26e55;box-shadow:0 0 0 3px #f5775712}.field-title input{min-height:58px;font-size:20px}.field-grid{gap:14px;display:grid}.field-grid.two{grid-template-columns:1fr 1fr}.field-grid.three{grid-template-columns:repeat(3,1fr)}.favorite-toggle{color:#d5d7cf;border:1px solid #34362e;border-radius:13px;align-items:center;gap:10px;min-height:48px;padding:0 14px;display:flex}.favorite-toggle input{width:18px;height:18px;accent-color:var(--accent)}.metric{background:#1e1f1a;border:1px solid #34362e;border-radius:16px;padding:15px;position:relative}.metric>svg{color:#d8896e}.metric div{align-items:baseline;display:flex}.metric input{background:0 0;border:0;min-width:0;padding:0;font-size:28px}.metric b{color:#8d9187;font-size:11px}.editor-stack{flex-direction:column;gap:12px;display:flex}.ingredient-card,.step-card{background:#1e1f1a;border:1px solid #34362e;border-radius:18px;grid-template-columns:50px 1fr 44px;gap:12px;padding:16px;display:grid;position:relative}.item-number,.step-number{color:#e28c6f;font-family:Georgia,serif;font-size:20px}.ingredient-detail{grid-template-columns:1fr 1fr 2fr}.ingredient-card .field,.step-card .field{margin-bottom:0}.remove-item{align-self:start}.step-number{flex-direction:column;display:flex}.step-number small{letter-spacing:.12em;color:#777a70;font:800 8px Inter}.timer-input{grid-template-columns:20px auto 1fr;align-items:center;display:grid;position:relative}.timer-input svg{color:#888c81;width:16px}.timer-input input{min-height:44px}.add-row{color:#e7a48d;background:0 0;border:1px dashed #4a4c40;border-radius:14px;width:100%;min-height:48px;margin-top:13px;font-weight:750}.cover-editor{grid-template-columns:240px 1fr;align-items:center;gap:20px;display:grid}.cover-editor img,.cover-empty{aspect-ratio:16/10;object-fit:cover;border-radius:17px;width:100%}.cover-empty{color:#777b70;background:#1d1e19;border:1px dashed #414339;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:11px;display:flex}.cover-editor .field{margin:0}.save-bar{z-index:3;padding:16px 38px max(16px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#191a16ed;border-top:1px solid #383a31;align-items:center;gap:10px;display:flex;position:sticky;bottom:0}.save-bar>div{flex-direction:column;flex:1;display:flex}.save-bar>div span{font-weight:750}.save-bar>div small{color:#7e8277}.save-bar .problem{margin:0}.confirm{text-align:center;width:min(450px,100%);padding:40px}.confirm-icon{color:#ff8e80;background:#3a201d;border-radius:18px;place-items:center;width:58px;height:58px;margin:0 auto 14px;display:grid}.confirm h2{font-family:Georgia,Noto Serif SC,serif;font-size:28px;font-weight:500}.confirm p{color:#aaa;line-height:1.7}.confirm .actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:25px;display:grid}.cook-panel{background:#141510;width:min(1100px,100%);padding:0;overflow:auto}.cook-panel>.close{display:none}.cook-head{border-bottom:1px solid var(--line);align-items:center;gap:22px;padding:25px 30px;display:flex}.cook-head h2{flex:1;margin:0;font-family:Georgia,Noto Serif SC,serif;font-weight:500}.cook-head button{color:#fff;background:#24251f;border:0;border-radius:14px;width:44px;height:44px}.cook-progress{align-items:center;gap:15px;padding:24px 7% 0;display:flex}.progress{background:#34362e;border-radius:5px;flex:1;height:4px;overflow:hidden}.progress i{background:var(--accent);height:100%;transition:width .3s;display:block}.cook-progress small{color:#a9aca2}.cook-stage{min-height:360px;padding:6vh 8%;position:relative}.giant-step{color:#27281f;font-family:Georgia,serif;font-size:100px;line-height:1}.cook-stage .lead{max-width:900px;margin:0;font-family:Georgia,Noto Serif SC,serif;font-size:clamp(28px,4vw,52px);line-height:1.45;position:relative}.timer{background:#20211b;border:1px solid #3d3f35;border-radius:18px;justify-content:space-between;align-items:center;margin-top:35px;padding:16px 18px;display:flex}.timer>span{font-variant-numeric:tabular-nums;align-items:center;gap:10px;font-size:27px;display:flex}.timer>div{gap:8px;display:flex}.timer svg{width:18px}.timer.running{border-color:#8e5948}.cook-actions{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:12px;padding:20px 7%;display:grid}.cook-actions button{min-height:54px}.cook-ingredients{border:1px solid #34362e;border-radius:20px;margin:8px 7% 34px;overflow:hidden}.cook-ingredients>div{background:#20211b;align-items:center;gap:10px;padding:17px 20px;display:flex}.cook-ingredients h3{flex:1;margin:0}.cook-ingredients ul{margin:0;padding:0 20px;list-style:none}.cook-ingredients li{border-bottom:1px solid #2e3028;grid-template-columns:30px 1fr auto;align-items:center;min-height:51px;display:grid}.cook-ingredients li:last-child{border:0}.cook-ingredients li i{color:#d9876d;font-style:normal}.cook-ingredients em{color:#999d92;font-size:12px;font-style:normal}.cook-empty{text-align:center;color:#aaa;padding:90px 30px}.cook-empty h3{color:#fff;font-size:25px}@media (width<=1000px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.login{grid-template-columns:1fr 1fr}.topbar{grid-template-columns:180px 1fr auto}.who{display:none}}@media (width<=760px){.topbar{grid-template-columns:auto 1fr auto;gap:10px;height:auto;min-height:64px;padding:10px 15px}.brand{font-size:0}.brand>span{width:38px;height:38px;font-size:18px}.search{height:44px}.account .ghost{width:44px;padding:0;font-size:0}.avatar,.who{display:none}.hero{height:610px;min-height:0}.shade{background:linear-gradient(#10110f66,#10110f2b 32%,#10110f 98%),linear-gradient(90deg,#10110fa8,#0000)}.hero-copy{inset:auto 19px 40px;transform:none}.hero h1{font-size:44px}.hero-copy>p{font-size:14px;line-height:1.65}.hero-stats{display:none}.hero-actions{margin-top:21px}.hero-actions button{min-height:48px}.browse{padding:30px 15px 100px}.section-head h2{font-size:29px}.section-head>span{display:none}.chips{margin-right:-15px}.chips .favorite-filter{margin-left:0}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.card{border-radius:17px}.photo{aspect-ratio:1}.card-body{padding:12px}.card h3{font-size:15px}.card-body>p{height:34px;margin:7px 0;font-size:11px}.meta{gap:7px;margin:9px 0}.meta span:last-child,.tags{display:none}.card-actions{margin-top:9px}.card-actions .icon{display:none}.cook{font-size:11px}.heart{width:44px;height:44px}.fab{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.login{display:block;position:relative}.login-visual{min-height:100vh;position:absolute;inset:0}.login-visual:after{background:linear-gradient(#10110f5e,#10110f83 35%,#10110f 93%)}.login-quote{display:none}.login-card{z-index:1;min-height:100dvh;padding:28px 22px max(42px,env(safe-area-inset-bottom));flex-direction:column;justify-content:flex-end;display:flex;position:relative}.login-card .brand{margin:0;font-size:20px;position:absolute;top:24px;left:22px}.login-card h1{font-size:39px}.login-card .primary{width:100%}.modal{padding:0;display:block}.panel{border-radius:24px 24px 0 0;width:100%;max-height:92dvh;padding:25px 20px;position:absolute;bottom:0}.editor,.cook-panel{border:0;border-radius:0;width:100%;height:100dvh;max-height:none;position:fixed;inset:0}.editor-head{z-index:3;padding:22px 62px 19px 20px;position:sticky;top:0}.editor-head h2{font-size:27px}.editor>.close{display:grid;position:fixed;top:17px;right:16px}.editor-content{padding:22px 15px 10px}.editor-section{margin-bottom:27px;padding-bottom:28px}.editor-section-head{gap:11px}.section-icon{flex-basis:42px;height:42px}.field-grid.three{grid-template-columns:1fr}.metric{grid-template-columns:30px 1fr 1fr;align-items:center;margin-bottom:0;display:grid}.metric>span{font-size:13px}.metric div{justify-content:flex-end}.metric input{text-align:right;font-size:23px}.ingredient-card,.step-card{grid-template-columns:35px 1fr;gap:8px;padding:14px 12px}.remove-item{background:0 0;border:0;position:absolute;top:8px;right:8px}.ingredient-fields,.step-fields{margin-left:-35px;padding-top:38px}.ingredient-detail{grid-template-columns:1fr 1fr}.ingredient-detail .field:last-child{grid-column:1/-1}.cover-editor{grid-template-columns:1fr}.save-bar{padding:11px 15px max(11px,env(safe-area-inset-bottom));gap:8px}.save-bar>div{display:none}.save-bar .ghost{width:84px}.save-bar .primary{flex:1}.save-bar .problem{background:#40231f;border-radius:10px;padding:10px;position:absolute;bottom:100%;left:15px;right:15px}.cook-head{padding:17px 18px}.cook-head .eyebrow{display:none}.cook-head h2{font-size:20px}.cook-stage{min-height:46vh;padding:35px 20px}.giant-step{font-size:72px}.cook-stage .lead{font-size:29px}.timer{flex-direction:column;align-items:flex-start;gap:13px}.timer>div{width:100%}.timer .ghost:first-child{flex:1}.cook-actions{padding:13px 15px max(13px,env(safe-area-inset-bottom));background:#151612;position:sticky;bottom:0}.cook-ingredients{margin:12px 15px 30px}.cook-ingredients li{grid-template-columns:25px 1fr}.cook-ingredients em{grid-column:2}.confirm{padding:38px 22px max(28px,env(safe-area-inset-bottom))}}@media (width<=390px){.hero{height:520px}.hero h1{font-size:39px}.hero-actions{grid-template-columns:1fr 1fr;display:grid}.hero-actions button{padding:0 10px;font-size:12px}.grid{grid-template-columns:1fr 1fr}.card-body{padding:10px}.meta,.photo>span{font-size:9px}.editor-section-head p{max-width:235px}.editor-content{padding-bottom:84px}}
