@import"https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Inter:wght@400;500;600;700&display=swap";:root{font-family:Inter,system-ui,sans-serif;color:#f7f1ff;background:#0d0913;line-height:1.5;font-synthesis:none}*{box-sizing:border-box}html{background:#0d0913}body{margin:0;background:radial-gradient(circle at 72% 12%,#28163a 0,#0d0913 36%),#0d0913;min-height:100vh;animation:bgDrift 28s ease-in-out infinite alternate}button,input,select,textarea{font:inherit}button{border:0;border-radius:14px;padding:11px 16px;background:#a86bff;color:#150b20;font-weight:700;cursor:pointer}button:hover{filter:brightness(1.08)}button:disabled{opacity:.4;cursor:not-allowed}.ghost{background:transparent;color:#d8c8e9;border:1px solid #40334d}.brand{font-weight:700;letter-spacing:-.03em;color:#eadcff}.brand-button{background:transparent;padding:0;color:#eadcff}header{height:74px;display:flex;align-items:center;gap:30px;padding:0 5vw;border-bottom:1px solid #251b2e;background:#0d0913cc;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:sticky;top:0;z-index:5}nav{display:flex;gap:4px;flex:1;overflow:auto}.nav{background:transparent;color:#9f93aa;padding:9px 12px;white-space:nowrap}.nav.active{color:#fff;background:#21152d}.user{display:flex;gap:12px;align-items:center;color:#a99caf;font-size:13px}.account-chip{display:flex;align-items:center;gap:8px;background:transparent;color:#d8c8e9;padding:4px 8px}.account-chip img,.avatar-mini{width:30px;height:30px;border-radius:50%;object-fit:cover}.avatar-mini{display:grid;place-items:center;background:#2b1c38;color:#c797ff}.page{width:min(1120px,90vw);margin:0 auto;padding:52px 0 90px}.hero{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:30px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:#a86bff;font-size:11px;font-weight:700;margin:0 0 9px}.hero h1,h1,h2{font-family:"DM Serif Display",serif;font-weight:400;line-height:1.02;margin:0}.hero h1{font-size:clamp(54px,8vw,96px);letter-spacing:-.04em}.hero em{color:#bb8aff;font-style:normal}.lede{max-width:610px;color:#a99caf;margin-top:22px}.orb{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#a86bff 0,#4d2c69 38%,#1a1022 70%);font:56px "DM Serif Display";box-shadow:0 0 70px #7f42a355;animation:orbFloat 7s ease-in-out infinite}.orb small{display:block;font:11px Inter;color:#e3d5ec;text-transform:uppercase;letter-spacing:.12em}.glass{background:#17101fbb;border:1px solid #33263d;box-shadow:0 20px 70px #0003;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:22px}.grid{display:grid;gap:14px}.three{grid-template-columns:repeat(3,1fr);margin-bottom:50px}.two{grid-template-columns:repeat(2,1fr)}.stat{padding:22px}.stat strong{display:block;font:38px "DM Serif Display"}.stat span,.muted{color:#94879d;font-size:13px}.section-head{display:flex;justify-content:space-between;align-items:end;margin:0 0 18px;gap:15px}.section-head h1{font-size:54px}.section-head h2{font-size:30px}.section-head>span{color:#6f6477;font-size:13px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.recipe{padding:22px;display:flex;flex-direction:column;min-height:330px}.recipe-top{display:flex;justify-content:space-between;gap:10px}.recipe h3{font:27px "DM Serif Display";margin:10px 0 0;line-height:1.05}.pill{font-size:10px;text-transform:uppercase;letter-spacing:.1em;padding:5px 8px;border-radius:999px;background:#2b1c38;color:#c8a9e8;display:inline-block}.pill-row{display:flex;gap:6px;flex-wrap:wrap}.score{font:25px "DM Serif Display";color:#c797ff;text-align:right}.score small{display:block;font:9px Inter;text-transform:uppercase;color:#76697e;letter-spacing:.1em}.score.big{font-size:42px}.ingredients{display:flex;flex-wrap:wrap;gap:5px;margin:20px 0}.ingredients span{font-size:11px;padding:5px 7px;border:1px solid #33263d;border-radius:8px;color:#b7aabd}.recipe p{font-size:13px;color:#b5a9bc}.actions{display:flex;gap:8px;margin-top:auto}.actions button{font-size:12px}.ai{font-size:10px;color:#a887bb;margin-bottom:12px}.recipe-click{display:block;text-align:left;background:transparent;color:inherit;padding:0;border-radius:0;flex:1}.recipe-click:hover{filter:none}.form-card{padding:14px;margin-bottom:18px}.form-card form{display:grid;grid-template-columns:2fr 1fr .7fr 1fr auto;gap:9px}.form-wide{padding:26px;display:flex;flex-direction:column;gap:18px}.form-wide label,.auth-card label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#a99caf}.form-wide input,.form-wide textarea,.form-wide select,.form-card input,.form-card select,.auth-card input,.ingredient-edit select,.ingredient-edit input,.step-edit textarea{width:100%;border:1px solid #3b2d46;background:#0f0a15;color:#eee4f5;border-radius:11px;padding:11px;outline:none}.form-wide input:focus,.form-wide textarea:focus,.form-card input:focus,.form-card select:focus,.auth-card input:focus,.step-edit textarea:focus{border-color:#a86bff}.list{display:flex;flex-direction:column;gap:9px}.row{padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px}.row strong{display:block}.row span{display:block;color:#8d8195;font-size:12px;margin-top:3px}.urgent{border-color:#6e3c63}.notice{position:fixed;right:22px;bottom:22px;background:#21152d;border:1px solid #5c3973;border-radius:13px;padding:12px 16px;color:#e7d9ef;z-index:10}.notice.inline{position:static;margin:0 0 15px}.empty{padding:35px;text-align:center;color:#897d91}.auth{min-height:100vh;display:grid;place-items:center;padding:20px}.auth>.brand{position:absolute;top:28px;left:5vw}.auth-card{width:min(460px,92vw);padding:32px}.auth-card h1{font-size:48px;margin:8px 0 25px}.auth-card form{display:flex;flex-direction:column;gap:15px}.error{background:#321927;border:1px solid #6d344d;color:#f0b8cc;padding:10px;border-radius:10px;font-size:12px}.check{flex-direction:row!important;align-items:center}.check input{width:auto}.ingredient-edit{display:grid;grid-template-columns:2fr 1fr .8fr auto;gap:8px;align-items:center}.helper{font-size:11px;color:#776b80;margin:10px 2px 0}.link-button{background:transparent;color:#bda9ce;padding:7px 0;font-size:12px}.back{margin-bottom:18px}.recipe-page h1{font-size:clamp(44px,7vw,76px);margin-top:15px}.recipe-detail{padding:30px}.detail-head{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid #33263d;padding-bottom:25px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px;padding-top:28px}.detail-grid h2{font-size:30px;margin:0 0 14px}.detail-ingredients{margin:0 0 30px}.steps{display:flex;flex-direction:column;gap:8px}.step{border:1px solid #33263d;border-radius:14px;overflow:hidden;background:#120c18}.step>button{width:100%;background:transparent;color:#e9def0;display:flex;align-items:center;gap:12px;text-align:left;border-radius:0}.step>button span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#2b1c38;color:#c797ff}.step>button strong{flex:1}.step>button b{font-size:20px;color:#a88bba}.step-body{padding:0 20px 18px 62px;color:#b7aabd;font-size:14px}.step.open{border-color:#5c3973}.aside-card{padding:20px}.step-edit{display:grid;grid-template-columns:35px 1fr auto;gap:10px;align-items:start}.step-edit>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#2b1c38;color:#c797ff;margin-top:5px}.profile-preview{display:flex;align-items:center;gap:15px;padding:5px 0 10px}.profile-preview img,.avatar-large{width:76px;height:76px;border-radius:50%;object-fit:cover}.avatar-large{display:grid;place-items:center;background:#2b1c38;color:#c797ff;font:34px "DM Serif Display"}.profile-preview span{display:block;color:#8d8195;font-size:12px;margin-top:3px}.account-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}.account-stack{display:flex;flex-direction:column;gap:14px}.secret{display:block;overflow:auto;padding:10px;background:#0f0a15;border-radius:10px;color:#c797ff}.qr{width:220px;height:220px;background:#fff;border-radius:12px;padding:8px}.fallback-link{padding:14px;margin-top:12px}.fallback-link a{display:block;color:#c797ff;margin-top:7px;word-break:break-all}.admin-banner{padding:20px;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}@keyframes bgDrift{0%{background-position:72% 12%;background-size:100% 100%}50%{background-position:68% 16%;background-size:108% 108%}to{background-position:76% 10%;background-size:102% 102%}}@keyframes orbFloat{50%{transform:translateY(-5px) scale(1.02)}}@media(max-width:800px){header{height:auto;flex-wrap:wrap;padding:15px 5vw;gap:10px}nav{order:3;width:100%}.user{margin-left:auto}.hero{align-items:flex-start}.orb{width:105px;height:105px;font-size:40px}.three,.cards,.two,.account-grid,.detail-grid{grid-template-columns:1fr}.form-card form{grid-template-columns:1fr 1fr}.form-card button{grid-column:1/-1}.page{padding-top:30px}.section-head h1{font-size:44px}.detail-head{align-items:flex-start}.step-edit{grid-template-columns:32px 1fr}.step-edit button{grid-column:2}}@media(max-width:520px){.hero{display:block}.orb{margin-top:25px}.form-card form{grid-template-columns:1fr}.recipe{min-height:0}.actions{flex-wrap:wrap}.auth-card{padding:23px}.ingredient-edit{grid-template-columns:1fr 1fr}.ingredient-edit input:first-child,.ingredient-edit button{grid-column:1/-1}.admin-banner{display:block}.admin-banner button{margin-top:12px}}.tabs{display:flex;gap:4px;margin:-8px 0 18px;background:#100b15;padding:4px;border-radius:12px}.tab{flex:1;background:transparent;color:#877b90;padding:8px}.tab.active{background:#2a1b36;color:#fff}.admin-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px;margin-bottom:30px}.admin-subhead{font-size:30px;margin:0 0 14px}@media(max-width:800px){.admin-grid{grid-template-columns:1fr}}.home{min-height:100vh;display:grid;place-items:center;padding:32px;background:radial-gradient(circle at 75% 25%,rgba(199,151,255,.16),transparent 34%),radial-gradient(circle at 20% 80%,rgba(111,214,190,.1),transparent 30%)}.home-hero{width:min(1120px,100%);min-height:620px;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:48px;padding:64px;border-radius:32px;position:relative;overflow:hidden;background:#120c1b85;border:1px solid rgba(255,255,255,.09);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.home-copy h1{font-size:clamp(56px,8vw,100px);line-height:.9;margin:12px 0 28px;letter-spacing:-.055em}.home-copy h1 em{font-style:normal}.home-copy .lede{max-width:650px;font-size:20px;line-height:1.6}.home-orb{width:320px;height:320px;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:28px;line-height:1.1;justify-self:center;box-shadow:0 0 100px #c797ff24}@media(max-width:760px){.home{padding:16px}.home-hero{grid-template-columns:1fr;padding:36px 24px;min-height:auto}.home-orb{width:220px;height:220px;font-size:22px}.home-copy h1{font-size:56px}}.setup-heading{font:25px "DM Serif Display";margin:10px 0 -3px;color:#eee4f5}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:520px){.setup-grid{grid-template-columns:1fr}}button,.brand-button,.actions,.step>button,.row,.account-chip{display:inline-flex;align-items:center;gap:7px}body{background:radial-gradient(circle at 18% 12%,#32164f 0,#0d0913 34%),radial-gradient(circle at 82% 72%,#241139 0,#0d0913 42%),#0d0913;animation:bgDrift 20s ease-in-out infinite alternate}@media(max-width:700px){header{position:sticky}nav{display:none}header.mobile-open nav{display:flex;flex-direction:column;overflow:visible;width:100%}.mobile-menu-button{display:inline-flex}.cards,.form-card form{grid-template-columns:1fr}.form-card button{grid-column:auto}}@media(min-width:701px){.mobile-menu-button{display:none}}.storage-row{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.storage-pill{font-size:10px;padding:4px 7px;border:1px solid #33263d;border-radius:999px;color:#bca9c9;background:#120c18}.row small{display:block;margin-top:7px}.tabs{display:flex;gap:6px;flex-wrap:wrap}.tab{background:#100b15;color:#9f93aa;border:1px solid #33263d}.tab.active{background:#2b1c38;color:#fff;border-color:#5c3973}.ai{display:flex;align-items:center;gap:6px}.author-line{display:flex;align-items:center;gap:7px}.full-step{padding:18px 22px;display:flex;gap:14px;align-items:flex-start}.full-step p{margin:0;color:#b7aabd;font-size:14px}.step-number{width:30px;height:30px;min-width:30px;border-radius:50%;display:grid;place-items:center;background:#2b1c38;color:#c797ff}.admin-filter-shell{position:relative;z-index:9;padding:10px;margin-bottom:14px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.search-field{display:flex;align-items:center;gap:9px;flex:1 1 100%;width:100%;min-width:0;border:1px solid #3b2d46;background:#0f0a15;color:#eee4f5;border-radius:11px;padding:0 6px 0 12px;cursor:text}.search-field:focus-within{border-color:#a86bff;box-shadow:0 0 0 2px #a86bff22}.search-field input{flex:1 1 auto;width:100%;min-width:0;border:0!important;background:transparent!important;color:#eee4f5!important;padding:12px 0!important;outline:none}.search-field input::placeholder{color:#897d91}.search-field input:focus{border:0!important}.filter-funnel{margin-left:auto;width:36px;height:36px;padding:0;border-radius:9px;background:#17101f;color:#bda9ce;border:1px solid #3b2d46;display:inline-grid;place-items:center;position:relative;flex:0 0 auto}.filter-funnel:hover,.filter-funnel.active{border-color:#a86bff;background:#21152d;color:#eee4f5}.filter-funnel b{position:absolute;right:-5px;top:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#2b1c38;color:#e8d9f2;font-size:9px;display:grid;place-items:center}.filter-panel{flex:1 1 100%;display:flex;flex-direction:column;gap:14px;padding:14px 2px 2px;border-top:1px solid #33263d}.filter-group{display:flex;align-items:flex-start;gap:14px}.filter-label{width:125px;flex:0 0 125px;color:#a99caf;font-size:12px;padding-top:7px}.filter-pills{display:flex;gap:7px;flex-wrap:wrap}.filter-pill{background:#120c18;color:#bca9c9;border:1px solid #3b2d46;border-radius:999px;padding:7px 10px;display:inline-flex;align-items:center;gap:6px;font-size:12px}.filter-pill:hover{border-color:#6b4a83;color:#eee4f5}.filter-pill.active{background:#2b1c38;border-color:#a86bff;color:#fff}.filter-pill-check{color:#c797ff;flex:0 0 auto}.filter-clear{align-self:flex-start;background:transparent;color:#bda9ce;border:0;padding:4px 2px;font-size:12px}.select-wrap{position:relative;display:inline-flex;align-items:center;min-width:0}.select-wrap select{appearance:none;-webkit-appearance:none;width:100%;background:#17101f;color:#eee4f5;border:1px solid #3b2d46;border-radius:11px;padding:10px 36px 10px 11px;outline:none;cursor:pointer}.select-wrap select:focus{border-color:#a86bff;box-shadow:0 0 0 2px #a86bff22}.select-wrap select option{background:#17101f;color:#eee4f5}.select-caret{position:absolute;right:11px;top:50%;transform:translateY(-50%);pointer-events:none;color:#bda9ce}.account-role-select{min-width:145px}.row-actions{display:flex;gap:7px;flex-wrap:wrap}.tree,.tree-node{display:flex;flex-direction:column;gap:6px}.tree-row{width:100%;padding:11px 14px;margin-left:calc(var(--tree-depth,0) * 32px);justify-content:flex-start;text-align:left;cursor:pointer}.tree-row:hover{border-color:#5c3973}.tree-label{display:flex;align-items:flex-start;gap:8px}.tree-label>svg{margin-top:2px;color:#a86bff;transition:transform .16s ease}.tree-label>svg.tree-chevron.open{transform:rotate(90deg)}.tree-label span{margin-top:3px}.admin-editor{margin-top:4px}.admin-editor-form{display:flex;flex-direction:column;gap:18px}.admin-editor .section-head{margin-bottom:0}@media(max-width:800px){.filter-group{display:block}.filter-label{display:block;width:auto;padding:0 0 7px}.tree-row{margin-left:calc(var(--tree-depth,0) * 20px)}}.author-suggest{position:relative;width:100%;min-width:0}.author-suggest>input{width:100%;border:0;border-bottom:1px solid #4a3a55;border-radius:0;background:transparent;color:#eee4f5;padding:7px 28px 7px 2px;outline:none}.author-suggest>input:focus{border-bottom-color:#a86bff}.author-suggest>input::placeholder{color:#897d91}.author-clear{position:absolute;right:0;top:2px;padding:4px 7px;background:transparent;color:#a99caf}.author-suggestions{position:absolute;left:0;right:0;top:100%;z-index:8;margin-top:5px;padding:5px;background:#17101f;border:1px solid #3b2d46;border-radius:10px;box-shadow:0 18px 45px #0006}.author-suggestions button{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:12px;background:transparent;color:#eee4f5;border-radius:7px;padding:8px 9px;text-align:left}.author-suggestions button:hover{background:#2b1c38}.author-suggestions small{color:#a99caf;font-size:11px}.role-badge{display:inline-flex;vertical-align:-2px;margin-right:4px;color:#c797ff}.role-badge-owner{color:#e8c56d}.role-badge-admin{color:#a9c8ff}.role-badge-moderator{color:#d6a87c}.tree-row,.tree-row strong{color:#eee4f5}.tree-row span{color:#a99caf}.filter-group>.author-suggest{flex:1 1 280px;width:auto;min-width:220px}.author-suggestions{top:calc(100% + 1px);margin-top:0}.check input[type=checkbox]{appearance:none;-webkit-appearance:none;width:19px!important;height:19px!important;min-width:19px;border:1px solid #5c3973!important;border-radius:5px;background:#120c18!important;display:grid;place-items:center;padding:0!important;margin:0 4px 0 0;cursor:pointer;position:relative}.check input[type=checkbox]:checked{background:#2b1c38!important;border-color:#a86bff!important}.check input[type=checkbox]:checked:after{content:"";width:9px;height:5px;border-left:2px solid #e8d9ef;border-bottom:2px solid #e8d9ef;transform:rotate(-45deg) translate(1px,-1px)}.check{gap:9px!important;color:#eee4f5!important}.admin-editor-form{gap:26px}.admin-editor-form .grid.two{gap:18px}.admin-editor-form label{gap:9px}.recipe-page-actions{display:flex;justify-content:flex-end;margin:18px 0 0}.admin-pager{display:flex;align-items:center;justify-content:center;gap:12px;margin:16px 0 4px}.admin-pager span{color:#a99caf;font-size:12px;min-width:90px;text-align:center}.admin-pager button:disabled{opacity:.4;cursor:not-allowed}
