:root{--bg:#fffaf5;--surface:#ffffff;--surface-2:#fbf3ea;--border:#ecdfd2;--text:#2a211b;--text-soft:#6b5d51;--primary:#e05d20;--primary-dark:#c14a15;--primary-soft:#fbe6d9;--accent:#2f7d54;--accent-soft:#e0f0e6;--shadow:0 1px 2px rgba(42,33,27,0.06),0 8px 24px rgba(42,33,27,0.06);--radius:14px;--radius-sm:9px;--maxw:1120px}@media (prefers-color-scheme:dark){:root{--bg:#17130f;--surface:#211b16;--surface-2:#2a221b;--border:#382e25;--text:#f3ece4;--text-soft:#b6a698;--primary:#f2703a;--primary-dark:#e05d20;--primary-soft:#3a2418;--accent:#55b483;--accent-soft:#1e3328;--shadow:0 1px 2px rgba(0,0,0,0.3),0 10px 30px rgba(0,0,0,0.35)}}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3{line-height:1.2;margin:0 0 .5em;font-weight:750;letter-spacing:-.01em}img{max-width:100%;display:block}.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--border)}.site-header .bar{gap:20px;height:64px}.brand,.site-header .bar{display:flex;align-items:center}.brand{gap:9px;font-weight:800;font-size:1.28rem;letter-spacing:-.02em}.brand-logo{height:38px;width:auto;display:block;filter:brightness(0) saturate(100%)}:root[data-theme=dark] .brand-logo{filter:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .brand-logo{filter:none}}.nav{display:flex;gap:6px;margin-left:auto;align-items:center}.nav a{padding:8px 12px;border-radius:999px;color:var(--text-soft);font-weight:600;font-size:.94rem}.nav a:hover{background:var(--surface-2);color:var(--text)}.badge-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;margin-left:5px;background:var(--primary);color:#fff;font-size:.72rem;font-weight:700}.badge-count,.btn{border-radius:999px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border:1px solid transparent;font-weight:650;font-size:.95rem;cursor:pointer;transition:transform .05s ease,background .15s ease;background:var(--surface-2);color:var(--text)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-ghost{background:transparent;border-color:var(--border);color:var(--text)}.btn-ghost:hover{background:var(--surface-2)}.btn-block{width:100%}.hero{padding:46px 0 30px}.hero h1{font-size:clamp(1.9rem,4.5vw,3rem);max-width:16ch}.typing-headline{max-width:22ch;min-height:3.6em}.type-cursor{display:inline-block;width:3px;height:.95em;margin-left:4px;transform:translateY(2px);background:var(--primary);animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero p{color:var(--text-soft);font-size:1.1rem;max-width:52ch;margin-top:-2px}.searchbox{display:flex;gap:8px;margin-top:22px;max-width:620px}.searchbox input{flex:1 1;min-width:0;padding:14px 18px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:1rem}.searchbox input:focus{outline:2px solid var(--primary);border-color:transparent}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.chip{padding:7px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--text-soft);font-size:.88rem;font-weight:600}.chip.active,.chip:hover{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-dark)}.section-title{display:flex;align-items:baseline;justify-content:space-between;margin:30px 0 16px}.section-title h2{font-size:1.4rem;margin:0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:20px;gap:20px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .12s ease,box-shadow .12s ease}.card:hover{transform:translateY(-3px);box-shadow:0 6px 14px rgba(42,33,27,.1),0 18px 40px rgba(42,33,27,.12)}.card .thumb{aspect-ratio:16/10;background:var(--surface-2);position:relative;overflow:hidden}.card .thumb img{width:100%;height:100%;object-fit:cover}.card .body{padding:14px 15px 16px;display:flex;flex-direction:column;gap:9px;flex:1 1}.card h3{font-size:1.06rem;margin:0}.card .meta{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:auto;color:var(--text-soft);font-size:.86rem}.card .meta .cost{color:var(--accent);font-weight:700}.tag-row{display:flex;flex-wrap:wrap;gap:6px}.tag{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--primary-dark);background:var(--primary-soft);padding:3px 8px;border-radius:6px}.recipe-hero{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:28px;gap:28px;align-items:start;margin:22px 0 8px}.recipe-hero .cover{border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;background:var(--surface-2);box-shadow:var(--shadow)}.recipe-hero .cover img{width:100%;height:100%;object-fit:cover}.recipe-title{font-size:clamp(1.6rem,3.5vw,2.4rem)}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px;margin:18px 0}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;text-align:center}.stat .k{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft);font-weight:700}.stat .v{font-size:1.12rem;font-weight:750;margin-top:2px}.stat .v.cost{color:var(--accent)}.recipe-body{display:grid;grid-template-columns:340px 1fr;grid-gap:34px;gap:34px;margin-top:20px;align-items:start}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.ingredients-panel{position:-webkit-sticky;position:sticky;top:82px}.ingredient{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid var(--border);align-items:baseline}.ingredient:last-child{border-bottom:none}.ingredient .ing-name{flex:1 1;min-width:0}.ingredient .qty{font-weight:700;color:var(--primary-dark);white-space:nowrap;margin-left:auto;text-align:right;padding-left:10px}.ingredient .opt{font-size:.76rem;color:var(--text-soft);font-style:italic}.steps{counter-reset:step;flex-direction:column}.step,.steps{display:flex;gap:16px}.step .num{counter-increment:step;flex:none;width:34px;height:34px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;font-weight:800}.step .num:before{content:counter(step)}.step h3{font-size:1.05rem;margin:4px 0}.step p{margin:0;color:var(--text-soft)}.servings-ctl{display:flex;align-items:center;gap:10px;margin-bottom:14px}.stepper{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;overflow:hidden}.stepper button{width:34px;height:34px;border:none;background:var(--surface-2);color:var(--text);font-size:1.2rem;cursor:pointer}.stepper button:hover{background:var(--primary-soft)}.stepper .val{min-width:44px;text-align:center;font-weight:750}.ad-slot{border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-soft);text-align:center;padding:18px;font-size:.8rem;margin:22px 0}.affiliate{border:1px solid var(--border);border-radius:var(--radius);padding:16px;background:var(--surface)}.affiliate h4{margin:0 0 4px;font-size:1rem}.affiliate .disclosure{font-size:.74rem;color:var(--text-soft)}.empty,.muted{color:var(--text-soft)}.empty{text-align:center;padding:60px 20px}.breadcrumb{font-size:.85rem;color:var(--text-soft);margin:18px 0 6px;display:flex;gap:6px;flex-wrap:wrap}.breadcrumb a:hover{color:var(--primary)}.filters{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 22px;align-items:center}.filters input,.filters select{padding:9px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.9rem}.site-footer{border-top:1px solid var(--border);margin-top:60px;padding:30px 0;color:var(--text-soft);font-size:.9rem}.site-footer .bar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}@media (max-width:860px){.recipe-body,.recipe-hero{grid-template-columns:1fr}.ingredients-panel{position:static}.stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.nav a span.label,.user-btn .label,.user-btn .user-caret{display:none}.user-btn{padding:5px;gap:0}.site-header .bar{gap:10px}.nav{gap:2px}.nav a{padding:8px 9px}}.admin-shell{max-width:900px;margin:0 auto;padding:24px 20px 80px}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.field label{font-weight:650;font-size:.9rem}.field input,.field select,.field textarea{padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.95rem;font-family:inherit}.field textarea{min-height:80px;resize:vertical}.row-2{grid-template-columns:1fr 1fr;grid-gap:14px}.row-2,.row-3{display:grid;gap:14px}.row-3{grid-template-columns:1fr 1fr 1fr;grid-gap:14px}.repeater-row{display:grid;grid-gap:8px;gap:8px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:8px;background:var(--surface-2)}.admin-table{width:100%;border-collapse:collapse}.admin-table td,.admin-table th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);font-size:.92rem}.pill{font-size:.74rem;font-weight:700;padding:3px 9px;border-radius:999px}.pill.PUBLICADA{background:var(--accent-soft);color:var(--accent)}.pill.RASCUNHO{background:var(--primary-soft);color:var(--primary-dark)}.pill.INATIVA{background:var(--surface-2);color:var(--text-soft)}.pill.ATIVO{background:var(--accent-soft);color:var(--accent)}.pill.BLOQUEADO{background:#fde2e0;color:#c0362c}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--text);color:var(--bg);padding:12px 20px;border-radius:999px;font-weight:600;font-size:.9rem;box-shadow:var(--shadow);z-index:100;max-width:calc(100vw - 28px);text-align:center;animation:toast-in .2s ease-out}.toast-error{background:#c0362c;color:#fff;border-radius:14px;display:flex;align-items:center;gap:8px}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.nav a{gap:6px}.card .meta span,.nav a{display:inline-flex;align-items:center}.card .meta span{gap:5px}.page-title{display:flex;align-items:center;gap:10px}.page-title svg{color:var(--primary)}.stat{position:relative}.stat-icon{color:var(--primary);margin-bottom:4px}.recipe-actions{display:flex;gap:8px;margin-top:18px;position:relative;flex-wrap:wrap}.share-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:40;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:6px;min-width:200px}.share-menu-head{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;font-size:.8rem;font-weight:700;color:var(--text-soft);text-transform:uppercase;letter-spacing:.03em}.share-menu-head button{color:var(--text-soft);display:inline-flex}.share-link,.share-menu-head button{border:none;background:none;cursor:pointer}.share-link{display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;border-radius:7px;font-size:.92rem;font-weight:600;color:var(--text);text-align:left}.share-link:hover{background:var(--surface-2);color:var(--primary-dark)}.steps-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.steps-head h2{margin:0}.reset-steps{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);background:var(--surface);color:var(--text-soft);border-radius:999px;padding:5px 12px;font-size:.82rem;font-weight:600;cursor:pointer}.reset-steps:hover{background:var(--surface-2);color:var(--primary-dark)}.steps-hint{font-size:.86rem;margin:4px 0 14px}.step-btn{width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-sm);padding:8px;cursor:pointer;align-items:flex-start;transition:background .12s ease}.step-btn:hover{background:var(--surface-2)}.step-btn .num{counter-increment:none;transition:background .15s ease}.step-btn .num:before{content:none}.step-text{display:flex;flex-direction:column;gap:3px;color:var(--text-soft)}.step-title{color:var(--text);font-size:1.02rem}.step-btn.is-current{background:var(--primary-soft)}.step-btn.is-current .num{box-shadow:0 0 0 4px var(--primary-soft)}.step-btn.is-done .num{background:var(--accent)}.step-btn.is-done .step-text{opacity:.55;text-decoration:line-through}.related{margin-top:44px;padding-top:8px;border-top:1px solid var(--border)}@media print{.ad-slot,.affiliate,.ingredients-panel .btn,.no-print,.recipe-actions,.reset-steps,.servings-ctl,.site-footer,.site-header,.steps-hint{display:none!important}body{background:#fff;color:#000}.recipe-body{grid-template-columns:1fr 1fr;gap:24px}.card,.panel{box-shadow:none;border-color:#ccc}.step-btn{page-break-inside:avoid;break-inside:avoid}a{text-decoration:none;color:#000}}.tier-row{margin:6px 0 4px}.tier-badge{gap:8px}.tier-badge,.tier-hats{display:inline-flex;align-items:center}.tier-hats{gap:1px;color:var(--primary)}.tier-hats .hat.off{color:var(--border)}.tier-label{font-size:.82rem;font-weight:700;color:var(--text-soft);text-transform:uppercase;letter-spacing:.03em}.tier-TOP .tier-hats{color:#e0a800}.tier-TOP .tier-label{color:#b98900}.tier-NAO_COMPENSA .tier-hats{color:#b6b0a8}.tier-compact,.tier-compact .tier-hats{gap:0}.chip-event{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.chip-event:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.recipe-video{margin:18px 0 4px}.recipe-video h2{margin-bottom:12px}.video-embed{position:relative;width:100%;max-width:760px;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:#000;box-shadow:var(--shadow)}.video-embed iframe,.video-embed video{position:absolute;inset:0;width:100%;height:100%;border:0}.product-list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.product-item{display:flex;gap:12px;align-items:center;padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);transition:background .12s ease}.product-item:hover,.product-thumb{background:var(--surface-2)}.product-thumb{flex:none;width:56px;height:56px;border-radius:8px;overflow:hidden}.product-thumb img{width:100%;height:100%;object-fit:cover}.product-info{display:flex;flex-direction:column;gap:2px;min-width:0}.product-info strong{font-size:.95rem}.product-price{color:var(--accent);font-weight:700;font-size:.9rem}.product-cta{display:inline-flex;align-items:center;gap:4px;color:var(--primary-dark);font-size:.82rem;font-weight:600}.affiliate-generic{margin:10px 0 0;padding-left:18px;color:var(--text-soft);font-size:.9rem}.dropzone{display:flex;align-items:center;gap:12px;padding:20px;border:2px dashed var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text-soft);cursor:pointer;margin-bottom:22px;transition:border-color .15s ease,background .15s ease}.dropzone.over,.dropzone:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-dark)}.dropzone strong{color:var(--text)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:16px;gap:16px}.gallery-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;display:flex;flex-direction:column}.gallery-thumb{aspect-ratio:1/1;background:var(--surface-2);overflow:hidden}.gallery-thumb img{width:100%;height:100%;object-fit:cover}.gallery-info{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px 2px}.gallery-name{font-size:.82rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-actions{display:flex;gap:6px;padding:6px 10px 10px}.gallery-actions .btn{flex:1 1}.gallery-actions .btn:last-child{flex:0 0 auto}.img-upload-field{display:flex;flex-direction:column;gap:8px}.img-upload-row{display:flex;gap:8px;align-items:stretch}.img-upload-row input{flex:1 1;min-width:0}.img-upload-row .btn{flex:0 0 auto;white-space:nowrap;padding:0 14px}.img-upload-preview{width:120px;height:84px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border)}.field-err{color:#d33;font-size:.82rem}.recipe-byline{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin:8px 0 6px;font-size:.9rem;color:var(--text-soft)}.remix-credit{display:inline-flex;align-items:center;gap:5px;color:var(--primary-dark);font-weight:600}.remix-credit a{color:var(--primary-dark);text-decoration:underline}.card-author{font-size:.8rem;color:var(--text-soft)}.btn-login{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;background:var(--primary);color:#fff;font-weight:650;font-size:.9rem}.btn-login:hover{background:var(--primary-dark);color:#fff}.user-menu{position:relative}.user-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-weight:600;font-size:.9rem;cursor:pointer}.user-btn:hover{background:var(--surface-2)}.user-avatar{flex:none;width:24px;height:24px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:.8rem;font-weight:800;line-height:1}.user-btn .label{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown{position:absolute;right:0;top:calc(100% + 8px);min-width:190px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:6px;z-index:60;display:flex;flex-direction:column}.user-dropdown a,.user-dropdown button{text-align:left;padding:9px 12px;border:none;background:none;border-radius:7px;font-size:.92rem;font-weight:600;color:var(--text);cursor:pointer}.user-dropdown a:hover,.user-dropdown button:hover{background:var(--surface-2);color:var(--primary-dark)}.auth-shell{max-width:400px;margin:0 auto;padding:40px 0 80px}.auth-shell h1{font-size:1.7rem}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:640px){.row-2,.row-3{grid-template-columns:1fr}.admin-shell{padding:18px 16px 64px}.admin-shell h1{font-size:1.4rem}.img-upload-row{flex-wrap:wrap}.img-upload-row input{flex-basis:100%}.img-upload-row .btn{flex:1 1}.repeater-row{padding:10px 8px}.table-scroll .admin-table{min-width:480px}.admin-toolbar{flex-wrap:wrap;gap:8px}.admin-toolbar .toolbar-actions{width:100%;flex-wrap:wrap}.field textarea{min-height:70px}}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.toolbar-actions{display:flex;gap:8px}.mod-list{display:flex;flex-direction:column;gap:12px}.mod-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:14px 16px}.mod-head{align-items:flex-start;justify-content:space-between;gap:12px}.mod-actions,.mod-head{display:flex;flex-wrap:wrap}.mod-actions{gap:6px}.mod-reject{margin-top:12px;display:flex;flex-direction:column;gap:8px}.mod-reject textarea{width:100%;min-height:70px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:inherit;font-size:.95rem}.mod-preview{margin-top:14px;padding-top:14px;border-top:1px solid var(--border);font-size:.92rem}.mod-preview h4{margin:12px 0 4px;font-size:.95rem}.mod-preview ol,.mod-preview ul{margin:0;padding-left:20px;color:var(--text-soft)}.mod-cover{width:100%;max-width:320px;border-radius:var(--radius-sm);aspect-ratio:16/10;object-fit:cover}.pill.mod-APROVADA{background:var(--accent-soft);color:var(--accent)}.pill.mod-PENDENTE{background:#fff2d6;color:#a9740a}.pill.mod-REJEITADA{background:#fde2e0;color:#c0362c}.reject-reason{margin-top:4px;font-size:.82rem;color:#c0362c}.profile-head{display:flex;align-items:center;gap:16px;margin:28px 0 4px}.profile-avatar{width:60px;height:60px;border-radius:50%;background:var(--primary-soft);color:var(--primary-dark);display:grid;place-items:center;flex:none}.author-link{color:var(--primary-dark);font-weight:700;text-decoration:underline}.rating-widget{display:flex;flex-wrap:wrap;gap:24px 40px;align-items:flex-start;margin:32px 0;padding:20px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.rating-label{font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;color:var(--text-soft);margin-bottom:6px}.rating-avg{display:flex;align-items:center;gap:8px;font-size:1.05rem}.rating-avg .tier-hats{color:#e0a800}.hat-picker{display:flex;gap:4px}.hat-btn{border:none;background:none;cursor:pointer;color:var(--border);padding:2px;line-height:0;transition:color .1s ease,transform .05s ease}.hat-btn.on{color:#e0a800}.hat-btn:active{transform:scale(.9)}.rating-hint{font-size:.85rem;margin-top:4px}.rating-saved{color:var(--accent);font-weight:600}.composer-hint{margin:6px 0 18px;font-size:.9rem}.composer-cover{cursor:pointer;position:relative}.composer-cover-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text-soft);border:2px dashed var(--border);border-radius:var(--radius);font-weight:600;font-size:.9rem}.composer-cover:hover .composer-cover-empty{border-color:var(--primary);color:var(--primary-dark);background:var(--primary-soft)}.composer-title{width:100%;border:none;border-bottom:2px solid var(--border);background:transparent;color:var(--text);font-size:clamp(1.5rem,3.5vw,2.2rem);font-weight:750;letter-spacing:-.01em;padding:4px 0;margin-bottom:10px}.composer-title:focus{outline:none;border-bottom-color:var(--primary)}.composer-desc{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:8px 10px;font-size:.98rem;min-height:52px;margin-bottom:16px}.composer-desc,.stat-input{width:100%;color:var(--text);font-family:inherit}.stat-input{border:none;background:transparent;font-size:1.05rem;font-weight:700;text-align:center;margin-top:2px}.stat-input:focus{outline:none}.composer .stat{cursor:text}.composer-cats{margin-top:16px}.composer-ing{display:flex;gap:6px;align-items:center;padding:5px 0}.composer-ing input{border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text);padding:7px 8px;font-size:.9rem}.ci-qty{width:58px}.ci-unit{width:82px}.ci-name{flex:1 1;min-width:0}.ci-del{border:none;background:none;color:var(--text-soft);cursor:pointer;padding:4px;flex:none;display:inline-flex}.ci-del:hover{color:#d33}.composer-step{align-items:flex-start}.composer-step .num{counter-increment:none}.composer-step .num:before{content:none}.composer-step textarea{flex:1 1;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:8px 10px;font-family:inherit;font-size:.95rem;min-height:56px}.composer-notes{margin-top:24px}.composer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.recipe-note{display:flex;gap:12px;align-items:flex-start;background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 22%,transparent);border-radius:var(--radius-sm);padding:14px 16px;margin:20px 0}.recipe-note svg{flex:none;color:var(--primary-dark);margin-top:2px}.recipe-note .rn-body{min-width:0}.recipe-note .rn-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--primary-dark);margin:0 0 3px}.recipe-note p:last-child{margin:0;white-space:pre-wrap;line-height:1.55}.step-handle{flex:none;display:inline-flex;align-items:center;align-self:stretch;color:var(--text-soft);cursor:-webkit-grab;cursor:grab;padding:6px 2px;touch-action:none}.step-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.composer-step{gap:10px;padding:4px;border-radius:var(--radius-sm);transition:box-shadow .12s,background .12s}.composer-step.drag-over{background:color-mix(in srgb,var(--primary) 8%,transparent);box-shadow:inset 0 0 0 2px var(--primary)}.step-tools{flex:none;display:flex;flex-direction:column;align-items:center;gap:2px}.step-move{border:none;background:none;color:var(--text-soft);cursor:pointer;padding:2px;display:inline-flex;border-radius:5px}.step-move:hover:not(:disabled){color:var(--primary);background:var(--surface-2,rgba(0,0,0,.05))}.step-move:disabled{opacity:.3;cursor:default}.bebbis-frame{position:relative;margin:18px 0 44px;border:3px solid #2b8fff;border-radius:24px;padding:30px 22px 26px;background:radial-gradient(130% 90% at 50% -10%,rgba(43,143,255,.16),transparent 70%),color-mix(in srgb,#2b8fff 7%,var(--surface));box-shadow:0 14px 46px rgba(43,143,255,.2);overflow:hidden}.bebbis-frame:after,.bebbis-frame:before{content:"";position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.5),rgba(43,143,255,.25));pointer-events:none}.bebbis-frame:before{width:70px;height:70px;top:14px;right:24px;opacity:.5}.bebbis-frame:after{width:42px;height:42px;bottom:20px;left:26px;opacity:.4}.bebbis-hero{text-align:center;padding:6px 0 24px;position:relative}.bebbis-eyebrow{display:inline-block;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:#1a73e8;padding:5px 15px;border-radius:999px;box-shadow:0 4px 14px rgba(26,115,232,.4)}.bebbis-wordmark{font-size:clamp(3rem,13vw,6.2rem);line-height:.92;margin:14px 0 8px;font-weight:800;letter-spacing:-.035em;background:linear-gradient(180deg,#59abff,#0b5bd3);-webkit-background-clip:text;background-clip:text;color:transparent;transform:rotate(-2.5deg);filter:drop-shadow(0 6px 14px rgba(11,91,211,.28));transform-origin:center;animation:bebbis-float 5s ease-in-out infinite}@keyframes bebbis-float{0%{transform:rotate(-3deg) translateY(0)}25%{transform:rotate(0deg) translateY(-7px)}50%{transform:rotate(3deg) translateY(0)}75%{transform:rotate(0deg) translateY(-7px)}to{transform:rotate(-3deg) translateY(0)}}@media (prefers-reduced-motion:reduce){.bebbis-wordmark{animation:none}}.bebbis-tag{color:var(--text-soft);max-width:46ch;margin:0 auto;font-size:1.03rem}.bebbis-back{text-align:center;margin:24px 0 2px}.bebbis-back a{color:var(--text-soft);font-weight:600}.bebbis-back a:hover{color:#2b8fff}.bebbis-header{background:color-mix(in srgb,#2b8fff 10%,var(--bg))}.brand-bebbis span{font-weight:800;font-size:1.45rem;letter-spacing:-.02em;font-style:italic;color:#1a73e8}:root[data-theme=dark] .brand-bebbis span{color:#5cabff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .brand-bebbis span{color:#5cabff}}.assistant-cta{display:inline-flex;align-items:center;gap:7px;margin-top:12px;padding:9px 16px;border-radius:999px;border:1px solid var(--primary);color:var(--primary-dark);background:var(--primary-soft);font-weight:650;font-size:.92rem}.assistant-cta:hover{background:var(--primary);color:#fff}.assistant-beta{font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.assistant{display:flex;flex-direction:column;margin-top:6px}.assistant-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.assistant-badge{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-dark)}.assistant-thread{gap:14px;min-height:320px;max-height:62vh;overflow-y:auto;padding:6px 2px 10px}.assistant-thread,.chat-msg{display:flex;flex-direction:column}.chat-msg{gap:8px;max-width:88%}.chat-msg.user{align-self:flex-end;align-items:flex-end}.chat-msg.assistant{align-self:flex-start}.bubble{padding:11px 15px;border-radius:16px;line-height:1.5;font-size:.96rem;white-space:pre-wrap}.chat-msg.user .bubble{background:var(--primary);color:#fff;border-bottom-right-radius:5px}.chat-msg.assistant .bubble{background:var(--surface-2);color:var(--text);border-bottom-left-radius:5px}.bubble.is-error{background:#fde2e0;color:#c0362c}.bubble.typing{display:inline-flex;gap:4px;align-items:center}.bubble.typing span{width:7px;height:7px;border-radius:50%;background:var(--text-soft);opacity:.5;animation:chatdot 1s ease-in-out infinite}.bubble.typing span:nth-child(2){animation-delay:.15s}.bubble.typing span:nth-child(3){animation-delay:.3s}@keyframes chatdot{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.chat-recs{display:flex;flex-direction:column;gap:8px;width:100%}.chat-rec{display:flex;align-items:center;gap:12px;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.chat-rec:hover{border-color:var(--primary)}.chat-rec-thumb{flex:none;width:52px;height:52px;border-radius:9px;background:var(--surface-2) center/cover no-repeat}.chat-rec-body{display:flex;flex-direction:column;gap:3px;min-width:0}.chat-rec-body strong{font-size:.94rem;color:var(--text)}.chat-rec-meta{display:inline-flex;align-items:center;gap:5px;font-size:.8rem;color:var(--text-soft)}.assistant-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.assistant-suggestions .chip{cursor:pointer}.assistant-input{display:flex;gap:8px;margin-top:14px}.assistant-input input{flex:1 1;min-width:0;padding:12px 16px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.96rem}.assistant-input input:focus{outline:2px solid var(--primary);border-color:transparent}.assistant-input .btn{flex:none;padding:0 18px}.assistant-quota{text-align:right;font-size:.8rem;margin:8px 2px 0}.report-head{display:flex;align-items:flex-start;gap:14px;margin:8px 0 20px}.report-icon{flex:none;width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-dark)}.report-form{display:flex;flex-direction:column}.report-label{font-weight:650;font-size:.9rem;margin:12px 0 5px}.report-input,.report-textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:10px 12px;font-family:inherit;font-size:.96rem}.report-textarea{resize:vertical;min-height:120px}.report-error{background:#fde2e0;color:#c0362c;border-radius:var(--radius-sm);padding:9px 12px;font-size:.9rem;margin-bottom:6px}.report-done{text-align:center;padding:32px 22px}.report-done-icon{color:var(--accent)}.report-list{display:flex;flex-direction:column;gap:12px;margin-top:14px}.report-card.is-resolved{opacity:.66}.report-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.report-date{font-size:.8rem}.report-message{margin:0 0 10px;white-space:pre-wrap;line-height:1.5}.report-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:.85rem;margin-bottom:12px}.report-meta a{display:inline-flex;align-items:center;gap:4px;color:var(--primary);word-break:break-all}.report-actions{display:flex;gap:8px;border-top:1px solid var(--border);padding-top:10px}.report-actions .btn{padding:6px 12px}.cookie-consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:200;max-width:720px;margin:0 auto;display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 30px rgba(0,0,0,.16);padding:14px 18px}.cookie-text{flex:1 1;min-width:220px;margin:0;font-size:.86rem;color:var(--text-soft)}.cookie-actions{display:flex;gap:8px;flex:none}.cookie-actions .btn{padding:8px 16px}.saved-count{display:flex;align-items:center;justify-content:center;gap:5px;font-size:.82rem;color:var(--text-soft);margin:2px 0 0}.saved-count svg,.tag-remix{color:var(--primary)}.tag-remix{display:inline-flex;align-items:center;gap:3px;background:color-mix(in srgb,var(--primary) 14%,transparent)}@media (max-width:640px){.composer .stats{grid-template-columns:repeat(2,1fr)}.composer-actions .btn{flex:1 1 100%}}@media (max-width:480px){.composer-ing{flex-wrap:wrap;row-gap:6px}.composer-ing .ci-name{flex-basis:100%;order:3}.composer-ing .ci-qty,.composer-ing .ci-unit{flex:1 1;width:auto}.composer-step{gap:8px}.composer-step .step-handle{display:none}}