/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.start{inset-inline-start:var(--spacing)}.inline{display:inline}.table{display:table}}@font-face{font-family:SCoreDream;src:url(/fonts/S-CoreDream-4Regular.woff)format("woff");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:SCoreDream;src:url(/fonts/S-CoreDream-4Regular.woff)format("woff");font-display:swap;font-style:normal;font-weight:500}@font-face{font-family:SCoreDream;src:url(/fonts/S-CoreDream-6Bold.woff)format("woff");font-display:swap;font-style:normal;font-weight:600}@font-face{font-family:SCoreDream;src:url(/fonts/S-CoreDream-6Bold.woff)format("woff");font-display:swap;font-style:normal;font-weight:700}@font-face{font-family:SCoreDream;src:url(/fonts/S-CoreDream-8Heavy.woff)format("woff");font-display:swap;font-style:normal;font-weight:800}@font-face{font-family:SCoreDream;src:url(/fonts/S-CoreDream-8Heavy.woff)format("woff");font-display:swap;font-style:normal;font-weight:900}:root{--ink:#181817;--muted:#77736c;--paper:#f7f5f1;--paper-strong:#fff;--line:#ddd7cf;--orange:#b79a68;--orange-dark:#806a46;--orange-soft:#f3ede3;--terracotta:var(--orange);--mustard:#b79a68;--sage:#77736c;--sage-soft:#efede9;--paper-deep:#ebe7e1;--sidebar:#f1eee8;--shadow-soft:0 8px 24px #1818170b;--shadow-card:0 18px 50px #18181713;--shadow-float:0 28px 72px #18181724;--serif:"SCoreDream", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--sans:"SCoreDream", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{background:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-weight:400}::selection{color:#2a241c;background:#e6d7bc}h1,h2,h3,.page-heading h1,.onboarding-copy h1,.setup-card h2,.signed-out-shell h1,.login-panel h2,.legal-shell h1,.auth-error-shell h1{overflow-wrap:break-word;text-wrap:balance;word-break:keep-all}.onboarding-lede,.page-heading>div>p:last-child,.signed-out-shell section>p:not(.eyebrow),.login-panel>p:not(.eyebrow),.setup-card>p,.empty-state>p,.auth-error-shell section>p{text-wrap:pretty;word-break:keep-all}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.brand{color:#fff;letter-spacing:.13em;align-items:center;gap:11px;font-size:13px;font-weight:850;display:inline-flex}.brand-large{color:var(--ink);font-size:15px}.brand-mark{background:var(--orange);color:#fff;width:35px;height:35px;font-family:var(--serif);letter-spacing:0;border-radius:10px 10px 10px 3px;place-items:center;font-size:21px;font-style:italic;font-weight:700;display:inline-grid;box-shadow:0 7px 18px #e85d3440}.primary-button,.secondary-button,.text-button{border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:0 18px;font-size:13px;font-weight:750;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.primary-button{border:1px solid var(--orange);background:var(--orange);color:#fff;box-shadow:0 9px 20px #cb47222e}.primary-button:hover{background:var(--orange-dark);transform:translateY(-1px);box-shadow:0 11px 24px #cb47223d}.primary-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.secondary-button{border:1px solid var(--line);background:var(--paper-strong)}.secondary-button:hover{background:#fff;border-color:#ccc1b3}.text-button{color:var(--muted);background:0 0;border:0}.full-button{width:100%}.eyebrow,.small-label{color:var(--orange);letter-spacing:.18em;text-transform:uppercase;margin:0 0 11px;font-size:10px;font-weight:850}.small-label{color:var(--muted);letter-spacing:.1em;text-transform:none}.onboarding-shell{background:radial-gradient(circle at 10% 15%, #e85d341c, transparent 28%), var(--paper);grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);min-height:100vh;display:grid;overflow:hidden}.onboarding-copy{flex-direction:column;justify-content:center;padding:70px clamp(48px,8vw,130px);display:flex;position:relative;overflow:hidden}.onboarding-copy:before,.onboarding-copy:after{z-index:0;content:"";border:1px solid #e85d3424;border-radius:50%;position:absolute}.onboarding-copy:before{width:520px;height:520px;bottom:-260px;right:-210px}.onboarding-copy:after{width:380px;height:380px;bottom:-190px;right:-140px}.onboarding-copy>*{z-index:1;position:relative}.onboarding-copy .brand{position:absolute;top:48px}.onboarding-copy h1{max-width:720px;font-family:var(--serif);letter-spacing:-.045em;margin:0;font-size:clamp(46px,5.3vw,82px);font-weight:600;line-height:1.12}.onboarding-lede{max-width:570px;color:var(--muted);margin:30px 0;font-size:16px;line-height:1.85}.onboarding-points{flex-wrap:wrap;gap:9px;display:flex}.onboarding-points span{border:1px solid var(--line);color:#5f5952;background:#fffdf8bf;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:650}.setup-card{background:var(--paper-strong);flex-direction:column;justify-content:center;min-height:100vh;padding:70px clamp(45px,6vw,95px);display:flex;box-shadow:-24px 0 70px #2d251e0f}.setup-progress{color:var(--orange);font-family:var(--serif);align-items:center;gap:10px;margin-bottom:52px;font-size:12px;font-weight:700;display:flex}.setup-progress i{background:var(--line);width:48px;height:1px}.setup-progress .muted{color:#b9afa4}.setup-card h2{font-family:var(--serif);letter-spacing:-.035em;margin:0 0 12px;font-size:clamp(30px,3.1vw,45px);font-weight:600;line-height:1.18}.setup-card>p:not(.small-label):not(.setup-footnote){color:var(--muted);margin:0;font-size:14px}.setup-card form{margin-top:42px}.setup-card label,.editor-modal label,.team-modal label{gap:8px;display:grid}.setup-card label>span,.editor-modal label>span,.team-modal label>span{font-size:11px;font-weight:750}input,textarea,select{border:1px solid var(--line);background:#fff;border-radius:8px;outline:none;width:100%;transition:border-color .15s,box-shadow .15s}input,select{height:46px;padding:0 13px}textarea{resize:vertical;padding:12px 13px;line-height:1.55}input::placeholder,textarea::placeholder{color:#b1aaa1}.setup-card form .primary-button{margin-top:15px}.setup-footnote{color:#9b938a;text-align:center;margin:18px 0 0;font-size:11px}.onboarding-invite-help{background:#fffaf5;border:1px solid #eadfd3;border-radius:11px;gap:7px;margin-top:24px;padding:15px;display:grid}.onboarding-invite-help>b{font-size:12px}.onboarding-invite-help p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:10px;line-height:1.7}.onboarding-invite-help form{margin:2px 0 0}.onboarding-invite-help .text-button{min-height:34px;color:var(--orange-dark);padding:0}.onboarding-choice-card{justify-content:flex-start;padding-block:clamp(48px,7vh,82px);overflow-y:auto}.onboarding-role-switch{border:1px solid var(--line);background:#f3ede5;border-radius:13px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:16px 0 34px;padding:5px;display:grid}.onboarding-role-switch button{min-height:46px;color:var(--muted);background:0 0;border:0;border-radius:9px;font-size:11px;font-weight:850}.onboarding-role-switch button.active{color:var(--ink);background:#fffdf9;box-shadow:0 6px 18px #4a332217}.onboarding-mode-panel>p{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.onboarding-mode-panel form,.setup-card .bakery-search-form{margin-top:25px}.bakery-search-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;display:grid}.bakery-search-form .primary-button{min-width:112px;margin:0!important}.bakery-search-results,.my-join-requests{gap:7px;margin-top:18px;display:grid}.bakery-search-results>div,.my-join-requests>div{border:1px solid var(--line);background:#fffefbe6;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.bakery-search-results>div>span:nth-child(2),.my-join-requests>div>span{gap:3px;display:grid}.bakery-search-results b,.my-join-requests b{font-size:11px}.bakery-search-results small,.my-join-requests small{color:var(--muted);font-size:9px;line-height:1.45}.bakery-search-results .secondary-button{min-height:36px;padding-inline:12px;font-size:9px}.my-join-requests>header{justify-content:space-between;align-items:center;padding:4px 2px;display:flex}.my-join-requests>header b{font-size:11px}.my-join-requests>header .text-button{min-height:30px;color:var(--orange-dark);padding:0}.join-request-status{background:var(--mustard-soft);color:#765b28;border-radius:999px;padding:5px 8px;font-size:8px;font-style:normal;font-weight:850}.join-request-status.approved{background:var(--sage-soft);color:#4f6f57}.join-request-status.rejected{color:#9c412d;background:#fae7e1}.form-error{color:#b33b26;margin:10px 0 0;font-size:12px;font-weight:650}.app-shell{grid-template-columns:224px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:linear-gradient(175deg, #ffffff09, transparent 28%), var(--sidebar);color:#e8e4dc;flex-direction:column;height:100vh;padding:27px 18px 18px;display:flex;position:sticky;top:0}.sidebar .brand{padding:0 10px 33px}.sidebar .brand:focus-visible{outline-offset:4px;border-radius:10px;outline:2px solid #d6a676}.primary-nav{gap:5px;display:grid}.primary-nav button{color:#aaa79f;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;height:45px;font-size:12px;font-weight:680;display:flex}.primary-nav button:hover{color:#fff;background:#ffffff0b}.primary-nav button.active{color:#fff;background:#ffffff14}.nav-symbol{width:25px;height:25px;font-family:var(--serif);border:1px solid #ffffff21;border-radius:7px;place-items:center;font-size:11px;display:grid}.primary-nav button.active .nav-symbol{border-color:var(--orange);background:var(--orange)}.sidebar-spacer{flex:1}.bakery-switcher{border-top:1px solid #ffffff14;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:18px 6px 2px;display:grid}.bakery-switcher select{width:100%;color:inherit;font:inherit;text-overflow:ellipsis;appearance:none;background:0 0;border:0;outline:0;font-weight:800;overflow:hidden}.heading-actions,.recipe-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.recipe-actions{justify-content:flex-end}.danger-button{color:#a23f2a;background:#fff8f6;border:1px solid #e8c6be;border-radius:8px;min-height:38px;padding:0 13px;font-size:10px;font-weight:800}.danger-text{color:#a23f2a!important}.bakery-switcher>span:nth-child(2){gap:3px;min-width:0;display:grid}.bakery-switcher b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.bakery-switcher small{color:#8e8a82;font-size:9px}.bakery-switcher>i{color:#77736c;font-style:normal}.avatar{color:#7d3521;background:#f0cbbb;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:10px;font-weight:850;display:inline-grid}.bakery-avatar{color:#ddd5c9;background:#4a4842;border-radius:9px}.workspace{background:var(--paper);min-width:0}.topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f4ede6;justify-content:space-between;align-items:center;height:68px;padding:0 clamp(22px,4vw,56px);display:flex;position:sticky;top:0}.mobile-brand{color:var(--ink);text-align:left;background:0 0;border:0;font-family:inherit;display:none}.topbar-search{color:#918981;align-items:center;gap:9px;width:min(390px,42vw);display:flex}.topbar-search input{background:0 0;border:0;flex:1;height:36px;padding:0;font-size:12px}.topbar-search input:focus{box-shadow:none}.topbar-search kbd{border:1px solid var(--line);font-family:var(--sans);background:#ffffff8c;border-radius:5px;padding:3px 6px;font-size:9px}.topbar-actions{align-items:center;gap:13px;display:flex}.preview-toggle{border:1px solid var(--line);background:var(--paper-strong);height:35px;color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:0 12px;font-size:10px;font-weight:700;display:flex}.preview-toggle.active{background:var(--sage-soft);color:#47624b;border-color:#a9b9aa}.preview-dot,.status-pulse{background:#98a197;border-radius:50%;width:7px;height:7px}.preview-toggle.active .preview-dot{background:#4f7858;box-shadow:0 0 0 3px #4f78581c}.content{width:100%;max-width:1500px;margin:0 auto;padding:45px clamp(24px,4vw,58px) 80px}.page-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:32px;display:flex}.page-heading h1{font-family:var(--serif);letter-spacing:-.04em;margin:0 0 8px;font-size:clamp(34px,4vw,52px);font-weight:600;line-height:1.12}.page-heading>div>p:last-child{color:var(--muted);margin:0;font-size:12px}.toast-message{background:var(--sage-soft);color:#4a654e;border:1px solid #cbd9ca;border-radius:8px;margin:-12px 0 22px;padding:11px 13px;font-size:11px;font-weight:650}.stat-row{border-block:1px solid var(--line);grid-template-columns:135px 135px 135px 1fr;margin-bottom:28px;padding:18px 0;display:grid}.stat-row>div{border-right:1px solid var(--line);align-items:center;gap:16px;min-height:38px;padding:0 20px;display:flex}.stat-row strong{font-family:var(--serif);font-size:27px;font-weight:500}.stat-row .stat-note{color:var(--muted);border-right:0;justify-content:flex-end;font-size:10px}.stat-note .status-pulse{background:#6f9876;box-shadow:0 0 0 4px #6f98761a}.empty-state{border:1px solid var(--line);background:radial-gradient(circle at 50% 46%, #e85d340f, transparent 26%), var(--paper-strong);text-align:center;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:480px;padding:42px 30px;display:flex;position:relative;overflow:hidden}.empty-state:before{opacity:.34;content:"";background-image:radial-gradient(#d9d0c3 .7px,#0000 .7px);background-size:17px 17px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 69%);mask-image:radial-gradient(circle,#000,#0000 69%)}.empty-state>*{position:relative}.empty-state h2{font-family:var(--serif);letter-spacing:-.03em;margin:0 0 8px;font-size:30px;font-weight:600;line-height:1.2}.empty-state>p:not(.eyebrow){max-width:460px;color:var(--muted);margin:0 0 22px;font-size:12px;line-height:1.65}.empty-illustration{width:116px;height:80px;margin-bottom:25px;position:relative}.book-page{background:#fff;border:1px solid #d9cfc2;width:55px;height:60px;position:absolute;top:11px;box-shadow:0 9px 18px #40322614}.left-page{border-radius:7px 1px 1px 7px;left:5px;transform:rotate(-6deg)}.right-page{border-radius:1px 7px 7px 1px;right:5px;transform:rotate(6deg)}.book-page i{background:#e6ded4;width:30px;height:2px;margin:12px auto -5px;display:block}.empty-illustration>b{z-index:2;border:3px solid var(--paper-strong);background:var(--orange);color:#fff;border-radius:50%;place-items:center;width:29px;height:29px;font-size:16px;display:grid;position:absolute;bottom:-2px;right:-4px}.empty-tips{border-top:1px solid var(--line);text-align:left;grid-template-columns:auto 1fr auto 1fr;align-items:start;gap:10px;max-width:570px;margin-top:32px;padding-top:22px;display:grid}.empty-tips>span{border:1px solid var(--line);width:22px;height:22px;color:var(--orange);font-family:var(--serif);border-radius:50%;place-items:center;font-size:10px;display:grid}.empty-tips p{color:var(--muted);gap:3px;margin:0;font-size:9px;line-height:1.5;display:grid}.empty-tips b{color:var(--ink);font-size:10px}.library-grid{grid-template-columns:minmax(255px,.72fr) minmax(480px,1.65fr);align-items:start;gap:18px;display:grid}.recipe-list-panel,.recipe-detail,.team-card,.settings-card{border:1px solid var(--line);background:var(--paper-strong);border-radius:12px}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:17px 18px;font-size:11px;display:flex}.panel-heading span{background:var(--paper);min-width:22px;height:22px;color:var(--muted);border-radius:7px;place-items:center;font-size:9px;display:grid}.category-pills{border-bottom:1px solid var(--line);gap:6px;padding:12px 13px;display:flex;overflow-x:auto}.category-pills button{color:var(--muted);background:0 0;border:0;border-radius:999px;flex:none;padding:5px 9px;font-size:8px;font-weight:700}.category-pills button:hover{color:var(--ink);background:#f2ece5}.category-pills .active{background:var(--ink);color:#fff}.recipe-list{max-height:650px;display:grid;overflow:auto}.recipe-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:70px;padding:11px 13px;display:grid}.recipe-list>button:hover,.recipe-list>button.active{background:#fbf5ef}.recipe-list>button.active{box-shadow:inset 3px 0 var(--orange)}.recipe-letter{color:#7d5743;width:38px;height:38px;font-family:var(--serif);background:#efe7dc;border-radius:9px;place-items:center;font-size:17px;display:grid}.recipe-list-photo{object-fit:cover;border-radius:9px;width:38px;height:38px}.recipe-list button>span:nth-child(2){gap:5px;min-width:0;display:grid}.recipe-list button b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.recipe-list button small{color:var(--muted);font-size:8px}.recipe-list button em{color:#8a8176;background:#f0ebe4;border-radius:999px;padding:4px 6px;font-size:7px;font-style:normal}.recipe-list button>i{color:#aaa197;font-style:normal}.recipe-list>.recipe-load-more{width:100%;min-height:52px;color:var(--orange);text-align:center;border-bottom:0;padding:15px;font-size:9px;font-weight:800;display:block}.recipe-list>.recipe-load-more:disabled{cursor:wait;opacity:.6}.recipe-detail{overflow:hidden}.recipe-detail-loading{min-height:360px;color:var(--muted);justify-content:center;align-items:center;gap:20px;padding:40px;display:flex}.detail-loading-mark{color:#7d5743;width:70px;height:70px;font-family:var(--serif);background:#efe7dc;border-radius:18px;flex:none;place-items:center;font-size:30px;display:grid}.recipe-detail-loading small{color:var(--orange);font-size:9px;font-weight:800}.recipe-detail-loading h2{color:var(--ink);margin:7px 0;font-size:28px}.recipe-detail-loading p{margin:0;font-size:10px}.recipe-detail>header{justify-content:space-between;align-items:flex-start;gap:18px;padding:30px 32px 26px;display:flex}.recipe-photo-gallery{border-bottom:1px solid var(--line);background:#eee7de;grid-auto-rows:minmax(140px,210px);gap:3px;display:grid;position:relative;overflow:hidden}.recipe-photo-gallery.photos-1{grid-template-columns:1fr}.recipe-photo-gallery.photos-2,.recipe-photo-gallery.photos-3,.recipe-photo-gallery.photos-4{grid-template-columns:repeat(2,1fr)}.recipe-photo-gallery img{object-fit:cover;width:100%;height:100%;min-height:0}.recipe-photo-gallery.photos-3 img:first-child{grid-row:span 2}.recipe-photo-gallery>span{color:#fff;background:#1f1b17c7;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:750;position:absolute;bottom:12px;right:12px}.recipe-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.recipe-badges .status-badge{margin:0}.sale-badge,.category-badge{border-radius:999px;padding:5px 8px;font-size:8px;font-weight:750}.sale-badge.selling{color:#a74627;background:#fff0e8}.sale-badge.not_selling{color:#746e67;background:#eceae6}.category-badge{color:#6a537b;background:#efe9f5}.status-badge{border-radius:999px;margin-bottom:12px;padding:5px 8px;font-size:8px;font-weight:750;display:inline-block}.status-badge.published{background:var(--sage-soft);color:#4b6b51}.status-badge.draft{color:#81786e;background:#f0ebe4}.recipe-detail h2{font-family:var(--serif);letter-spacing:-.035em;margin:0 0 8px;font-size:30px;font-weight:600;line-height:1.2}.recipe-detail header p{color:var(--muted);margin:0;font-size:10px;line-height:1.6}.recipe-detail .secondary-button{min-height:35px;padding:0 13px;font-size:9px}.batch-calculator{border-block:1px solid var(--line);background:#faf7f1;grid-template-columns:1fr 1.2fr 1fr;align-items:center;padding:15px 32px;display:grid}.batch-calculator>span,.batch-calculator>div{gap:5px;display:grid}.batch-calculator>div{border-inline:1px solid var(--line);justify-items:center}.batch-calculator>span:last-child{justify-items:end}.batch-calculator small{color:var(--muted);font-size:8px}.batch-calculator b{font-size:12px}.batch-calculator strong{color:var(--orange);font-family:var(--serif);font-size:17px}.multiplier-control{align-items:center;gap:9px;display:flex}.multiplier-control button{border:1px solid var(--line);background:#fff;border-radius:6px;place-items:center;width:24px;height:24px;font-size:12px;display:grid}.recipe-section{padding:26px 32px 0}.section-title{align-items:center;gap:11px;margin-bottom:14px;display:flex}.section-title>span{color:var(--orange);font-family:var(--serif);font-size:10px;font-style:italic}.section-title h3{margin:0;font-size:12px}.ingredient-table{grid-template-columns:1fr 1fr;gap:0 26px;display:grid}.ingredient-table>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:10px 2px;font-size:10px;display:flex}.ingredient-table span{color:#5f5952}.ingredient-table b{font-size:10px}.step-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.step-list li{border-bottom:1px solid var(--line);grid-template-columns:31px 1fr;gap:12px;padding:12px 0;display:grid}.step-list b{color:var(--orange);font-family:var(--serif);font-size:10px}.step-list p{color:#5f5952;margin:0;font-size:10px;line-height:1.65}.recipe-placeholder{border:1px dashed var(--line);color:#aaa197;text-align:center;border-radius:8px;margin:0;padding:20px;font-size:10px}.recipe-note{border-left:3px solid var(--orange);background:var(--orange-soft);margin:28px 32px 32px;padding:14px 16px}.recipe-note b{font-size:10px}.recipe-note p{color:#795a4b;margin:5px 0 0;font-size:9px;line-height:1.65}.simple-view{max-width:1040px}.team-card,.settings-card{overflow:hidden}.team-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 22px;font-size:12px;display:flex}.team-card>header span{color:var(--muted);font-size:9px}.team-join-guide{background:#fffaf5;border:1px solid #eadfd3;border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:24px;margin-bottom:18px;padding:20px 22px;display:grid}.team-join-guide>div{align-content:center;gap:7px;display:grid}.team-join-guide b{font-size:12px}.team-join-guide p{color:var(--muted);word-break:keep-all;margin:0;font-size:10px;line-height:1.7}.team-join-guide ol{counter-reset:team-join-step;gap:8px;margin:0;padding:0;list-style:none;display:grid}.team-join-guide li{color:#5f574f;counter-increment:team-join-step;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;font-size:9px;line-height:1.5;display:grid}.team-join-guide li:before{background:var(--mustard);width:24px;height:24px;color:var(--ink);content:counter(team-join-step);border-radius:50%;place-items:center;font-size:9px;font-weight:800;display:grid}.join-request-card{background:var(--paper-strong);border:1px solid #eadfd3;border-radius:12px;margin-bottom:18px;overflow:hidden}.join-request-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.join-request-card>header>div{gap:4px;display:grid}.join-request-card>header b{font-size:12px}.join-request-card>header span{color:var(--muted);font-size:9px}.join-request-card>header em{background:var(--orange-soft);color:var(--orange-dark);border-radius:999px;padding:5px 9px;font-size:9px;font-style:normal;font-weight:850}.join-request-list>div{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(150px,1fr) auto;align-items:center;gap:12px;padding:14px 20px;display:grid}.join-request-list>div:last-child{border-bottom:0}.join-request-person{gap:3px;display:grid}.join-request-person b{font-size:11px}.join-request-person small{color:var(--muted);font-size:9px}.join-request-actions{justify-content:flex-end;gap:6px;display:flex}.join-request-actions button{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:32px;padding:0 10px;font-size:8px;font-weight:850}.join-request-actions .request-edit-approve{background:var(--mustard-soft);border-color:#d6b37c}.join-request-empty{color:var(--muted);text-align:center;margin:0;padding:24px 20px;font-size:10px}.team-row{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) 140px 74px minmax(250px,auto);align-items:center;gap:13px;padding:15px 22px;display:grid}.team-row select{border:1px solid var(--line);background:#fff;border-radius:7px;min-height:34px;padding-inline:8px;font-size:9px}.team-row-actions{justify-content:flex-end;gap:6px;display:flex}.team-row-actions button,.category-manager-row button{border:1px solid var(--line);background:#fff;border-radius:7px;min-height:30px;padding:0 9px;font-size:8px;font-weight:800}.member-status.invited{color:#8a6a36}.member-status.suspended{color:#a23f2a}.team-row>span:nth-child(2){gap:3px;display:grid}.team-row b{font-size:11px}.team-row small{color:var(--muted);font-size:9px}.team-row em{color:#5d574f;font-size:10px;font-style:normal}.member-status{color:#5b775f;text-align:right;font-size:9px;font-style:normal}.settings-card>div{border-bottom:1px solid var(--line);grid-template-columns:160px 1fr;padding:18px 22px;font-size:11px;display:grid}.settings-form{border-bottom:1px solid var(--line);align-items:end;gap:12px;padding:18px 22px;display:flex}.settings-form label{flex:1;gap:7px;display:grid}.settings-form label>span{color:var(--muted);font-size:10px}.settings-form input,.inline-create-form input,.category-manager-row input{border:1px solid var(--line);background:#fff;border-radius:8px;outline:0;width:100%;min-height:40px;padding:0 11px;font-size:11px}.settings-section{border-bottom:1px solid var(--line);gap:13px;padding:22px;display:grid}.settings-section>header b{font-size:12px}.settings-section>header p,.settings-empty{color:var(--muted);margin:5px 0 0;font-size:9px;line-height:1.6}.category-manager{gap:7px;display:grid}.category-manager-row{grid-template-columns:auto minmax(120px,1fr) auto auto;align-items:center;gap:7px;display:grid}.category-order-actions{gap:3px;display:flex}.category-order-actions button{width:28px;padding:0}.inline-create-form{grid-template-columns:1fr auto;gap:8px;display:grid}.settings-support{background:#fffaf5}.settings-support-link{min-width:0;min-height:52px;color:var(--ink);background:#fff;border:1px solid #eadfd3;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.settings-support-link:hover{border-color:#d8b796;transform:translateY(-1px);box-shadow:0 8px 20px #4f392614}.settings-support-link:focus-visible{outline:2px solid var(--orange-dark);outline-offset:3px}.settings-support-link span{color:var(--muted);flex:none;font-size:9px}.settings-support-link strong{min-width:0;color:var(--orange-dark);overflow-wrap:anywhere;text-align:right;font-size:11px}.settings-card>form[action="/auth/signout"]{padding:22px}.settings-card>div span{color:var(--muted)}.settings-card aside{background:var(--paper);color:var(--muted);border-radius:9px;margin:22px;padding:16px;font-size:10px;line-height:1.7}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#1f1b1799;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:auto}.editor-modal,.team-modal,.history-modal{background:var(--paper-strong);border-radius:14px;width:min(780px,100%);max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 30px 80px #14100c4d}.history-modal{width:min(620px,100%)}.history-list{max-height:min(620px,100vh - 160px);padding:8px 24px 24px;display:grid;overflow:auto}.history-list>p{color:var(--muted);font-size:11px}.history-list article{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding:14px 0;display:flex}.history-list article>span{gap:4px;display:grid}.history-list article b{font-size:11px}.history-list article small{color:var(--muted);font-size:8px}.team-modal{gap:17px;width:min(500px,100%);padding:0 26px 25px;display:grid}.team-modal>p{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.team-permission-note{background:#fffaf5;border:1px solid #eadfd3;border-radius:9px;gap:5px;padding:13px 14px;display:grid}.team-permission-note b{font-size:10px}.team-permission-note span{color:var(--muted);word-break:keep-all;font-size:9px;line-height:1.65}.modal-header{z-index:5;border-bottom:1px solid var(--line);background:var(--paper-strong);justify-content:space-between;align-items:flex-start;padding:22px 26px 18px;display:flex;position:sticky;top:0}.team-modal .modal-header{margin:0 -26px}.modal-header h2{font-family:var(--serif);margin:0;font-size:26px;font-weight:500}.modal-header>button{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);background:0 0;border-radius:50%;place-items:center;font-size:20px;display:grid}.modal-body{gap:22px;padding:24px 26px;display:grid}.form-grid{gap:14px;display:grid}.two-columns{grid-template-columns:1fr 1fr}.field-help{color:var(--muted);margin:-2px 0 0;font-size:9px;line-height:1.5}.photo-editor{border-top:1px solid var(--line);gap:12px;padding-top:22px;display:grid}.photo-editor-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.photo-editor-heading h3{margin:0;font-size:12px}.photo-editor-heading p{color:var(--muted);margin:4px 0 0;font-size:8px;line-height:1.5}.photo-add-button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;padding:9px 12px;font-size:9px;font-weight:750;display:inline-flex!important}.photo-add-button input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.photo-preview-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.photo-preview-grid figure{aspect-ratio:4/3;background:#eee7de;border-radius:9px;margin:0;display:grid;position:relative;overflow:hidden}.photo-preview-grid img{object-fit:cover;width:100%;height:100%}.photo-preview-grid figcaption{color:#fff;background:linear-gradient(#0000,#1f1b17d1);align-items:center;gap:5px;padding:20px 8px 7px;font-size:7px;display:flex;position:absolute;bottom:0;left:0;right:0}.photo-preview-grid figcaption b,.photo-preview-grid figcaption span{flex:none}.photo-preview-grid figcaption small{color:#fffc;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.photo-preview-grid button{width:25px;height:25px;color:var(--ink);background:#ffffffe6;border:0;border-radius:50%;place-items:center;font-size:16px;display:grid;position:absolute;top:7px;right:7px}.photo-empty{border:1px dashed var(--line);min-height:110px;color:var(--muted);text-align:center;border-radius:9px;place-items:center;font-size:10px;display:grid}.photo-save-note{color:#7b634d;background:#faf4eb;border-radius:8px;margin:0;padding:10px 12px;font-size:9px;line-height:1.55}.sale-options{border:0;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;display:grid}.sale-options legend{margin-bottom:9px;font-size:11px;font-weight:750}.sale-options label{border:1px solid var(--line);border-radius:9px;align-items:center;gap:11px;padding:13px;display:flex}.sale-options label.active{background:var(--orange-soft);border-color:#e85d3499}.sale-options input{width:15px;height:15px;accent-color:var(--orange)}.sale-options label>span{gap:4px;display:grid}.sale-options b{font-size:10px}.sale-options small{color:var(--muted);font-size:8px}.repeat-editor{border-top:1px solid var(--line);gap:10px;padding-top:22px;display:grid}.repeat-editor>div:first-child{justify-content:space-between;align-items:center;display:flex}.repeat-editor h3{margin:0;font-size:12px}.repeat-editor>div:first-child button{color:var(--orange);background:0 0;border:0;font-size:10px;font-weight:750}.ingredient-input-row{grid-template-columns:26px minmax(0,1.5fr) 90px 70px 27px;align-items:center;gap:7px;display:grid}.ingredient-input-row>b,.step-input-row>b{color:#a49b91;font-family:var(--serif);font-size:9px}.ingredient-input-row input{height:39px;font-size:11px}.ingredient-input-row>button,.step-input-row>button{color:#b4aaa0;background:0 0;border:0;width:27px;height:27px;font-size:17px}.step-input-row{grid-template-columns:26px minmax(0,1fr) 27px;align-items:center;gap:7px;display:grid}.step-input-row textarea{font-size:11px}.publish-options{border:0;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;display:grid}.publish-options legend{margin-bottom:9px;font-size:11px;font-weight:750}.publish-options label{border:1px solid var(--line);border-radius:9px;align-items:center;gap:11px;padding:13px;display:flex}.publish-options label.active{background:var(--orange-soft);border-color:#e85d3499}.publish-options input{width:15px;height:15px;accent-color:var(--orange)}.publish-options label>span{gap:4px;display:grid}.publish-options b{font-size:10px}.publish-options small{color:var(--muted);font-size:8px}.modal-footer{z-index:5;border-top:1px solid var(--line);background:var(--paper-strong);justify-content:flex-end;gap:8px;padding:15px 26px;display:flex;position:sticky;bottom:0}.team-modal .modal-footer{margin:7px -26px -25px}.signed-out-shell{background:radial-gradient(circle at 65% 25%, #e85d341a, transparent 31%), var(--paper);grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) minmax(420px,.75fr);min-height:100vh;display:grid;overflow:hidden}.signed-out-shell>header{grid-column:1/-1;justify-content:space-between;align-items:center;padding:28px clamp(28px,5vw,72px);display:flex}.signed-out-shell>section{flex-direction:column;justify-content:center;padding:50px clamp(28px,7vw,110px) 100px;display:flex}.signed-out-shell h1{font-family:var(--serif);letter-spacing:-.05em;margin:0;font-size:clamp(56px,7.2vw,104px);font-weight:600;line-height:1.08}.signed-out-shell section>p:not(.eyebrow){max-width:570px;color:var(--muted);margin:30px 0;font-size:15px;line-height:1.8}.signed-out-shell .primary-button{align-self:flex-start}.login-panel-wrap{place-items:center;padding:50px 50px 100px 0;scroll-margin-top:24px;display:grid;position:relative}.login-panel{background:var(--paper-strong);border:1px solid #ded4c7;border-radius:26px;width:min(440px,100%);padding:44px 38px 36px;transition:border-color .18s,box-shadow .18s,transform .18s;position:relative;box-shadow:0 35px 80px #47342421}.login-panel-wrap:target .login-panel{border-color:var(--mustard);animation:.72s ease-out login-panel-attention;box-shadow:0 0 0 5px #c88f2a24,0 35px 80px #4734242e}@keyframes login-panel-attention{0%{transform:translateY(0)}38%{transform:translateY(-7px)}to{transform:translateY(0)}}.login-panel h2{font-family:var(--serif);letter-spacing:-.035em;margin:0;font-size:35px;font-weight:600;line-height:1.2}.login-panel>p:not(.eyebrow){color:var(--muted);margin:16px 0 28px;font-size:13px;line-height:1.7}.password-login-form,.signup-details form{gap:11px;display:grid}.password-login-form label,.signup-details label{gap:6px;display:grid}.password-login-form label>span,.signup-details label>span{color:#6e665e;font-size:11px;font-weight:750}.password-login-form input,.signup-details input{border:1px solid var(--line);background:#fff;border-radius:10px;outline:none;width:100%;min-height:47px;padding:0 13px;font-size:14px;transition:border-color .16s,box-shadow .16s}.password-login-form input:focus,.signup-details input:focus{border-color:#e85d34b3;box-shadow:0 0 0 3px #e85d341a}.signup-details{border:1px solid var(--line);background:#fff;border-radius:11px;margin-top:13px}.signup-details summary{cursor:pointer;color:var(--orange-dark);padding:15px;font-size:12px;font-weight:800;list-style-position:inside}.signup-details[open] summary{border-bottom:1px solid var(--line)}.signup-details form{padding:15px}.signup-details form small{margin:0}.login-divider{color:#a1988e;align-items:center;gap:11px;margin:22px 0 14px;font-size:10px;font-weight:700;display:flex}.login-divider:before,.login-divider:after{background:var(--line);content:"";flex:1;height:1px}.oauth-buttons{gap:10px;display:grid}.oauth-buttons a{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:32px 1fr 32px;align-items:center;min-height:52px;padding:0 14px;font-size:14px;font-weight:750;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.oauth-buttons a:after{content:"→";color:#a49a8f}.oauth-buttons a:hover{border-color:#cfc4b7;transform:translateY(-1px);box-shadow:0 8px 20px #32271c12}.oauth-buttons .kakao-login{color:#191600;background:#fee500;border-color:#fee500}.oauth-buttons .naver-login{color:#fff;background:#03c75a;border-color:#03c75a}.oauth-icon{border-radius:50%;place-items:center;width:26px;height:26px;font-size:14px;font-weight:900;display:grid}.google-icon{color:#4285f4;border:1px solid #ddd}.naver-icon{color:#fff;font-size:13px}.login-panel .login-terms{color:#9a9188;margin-top:24px;font-size:10px;line-height:1.65;display:block}.login-terms a,.settings-card aside a{color:var(--orange-dark);text-underline-offset:2px;text-decoration:underline}.password-reset-link{color:var(--orange-dark);justify-self:end;font-size:10px;font-weight:750}.offline-banner{z-index:200;top:max(10px, env(safe-area-inset-top));color:#74551b;background:#fff5d9;border:1px solid #d7b877;border-radius:999px;width:max-content;max-width:calc(100vw - 24px);padding:9px 15px;font-size:10px;font-weight:800;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #43321426}.legal-shell{background:var(--paper);min-height:100vh;padding:50px 24px}.legal-shell article{border:1px solid var(--line);background:var(--paper-strong);border-radius:24px;width:min(760px,100%);margin:0 auto;padding:clamp(28px,6vw,64px);box-shadow:0 30px 80px #47342417}.legal-shell .eyebrow{margin-top:52px}.legal-shell h1{font-family:var(--serif);letter-spacing:-.035em;margin:0;font-size:clamp(38px,6vw,62px);font-weight:600;line-height:1.18}.legal-shell h2{margin:36px 0 9px;font-size:15px}.legal-shell article>p{color:#655e57;margin:0;font-size:12px;line-height:1.85}.legal-shell .legal-date{color:var(--muted);margin-top:12px}.legal-links{border-top:1px solid var(--line);gap:16px;margin-top:46px;padding-top:22px;display:flex}.legal-links a{color:var(--orange-dark);font-size:11px;font-weight:800}.platform-admin-link{background:var(--sage-soft)}.platform-admin-link .secondary-button{justify-self:start}.admin-shell{background:radial-gradient(circle at 86% 0%, #e85d341a, transparent 28%), var(--paper);min-height:100vh}.admin-header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf8eb;justify-content:space-between;align-items:center;padding:15px clamp(20px,5vw,64px);display:flex}.admin-header>div{align-items:center;gap:14px;display:flex}.admin-header>div>span{color:var(--muted);font-size:11px}.admin-content{width:min(1180px,100% - 40px);margin:0 auto;padding:clamp(40px,7vw,82px) 0 70px}.admin-heading{justify-content:space-between;align-items:end;gap:32px;display:flex}.admin-heading h1{letter-spacing:-.045em;margin:7px 0 8px;font-size:clamp(34px,5vw,58px);line-height:1.15}.admin-heading>div>p:last-child{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.admin-heading aside{background:var(--sage-soft);border:1px solid #d9e5d7;border-radius:13px;gap:5px;max-width:310px;padding:15px 17px;display:grid}.admin-heading aside b{color:#49614f;font-size:11px}.admin-heading aside span{color:#627266;font-size:9px;line-height:1.65}.admin-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:34px;display:grid}.admin-metrics article{border:1px solid var(--line);background:var(--paper-strong);border-radius:16px;min-width:0;padding:21px;box-shadow:0 14px 38px #4d39270f}.admin-metrics article>span,.admin-metrics article>small{color:var(--muted);font-size:9px;line-height:1.5;display:block}.admin-metrics article>strong{letter-spacing:-.04em;margin:10px 0 6px;font-size:clamp(29px,4vw,42px);line-height:1;display:block}.admin-metrics .metric-highlight{background:var(--orange-soft);border-color:#f3c1ae}.secondary-metrics{margin-top:12px}.secondary-metrics article{box-shadow:none;justify-content:space-between;align-items:center;gap:12px;padding-block:17px;display:flex}.secondary-metrics article>strong{margin:0;font-size:24px}.admin-grid{grid-template-columns:1.5fr 1fr;gap:14px;margin-top:28px;display:grid}.admin-card{border:1px solid var(--line);background:var(--paper-strong);border-radius:18px;overflow:hidden;box-shadow:0 18px 50px #4d39270f}.admin-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:16px;padding:20px 22px;display:flex}.admin-card h2{letter-spacing:-.02em;margin:0;font-size:14px}.admin-card header p{color:var(--muted);margin:5px 0 0;font-size:9px;line-height:1.6}.admin-card header>span{background:var(--paper-deep);color:var(--muted);border-radius:999px;padding:5px 8px;font-size:8px}.activity-chart{grid-template-columns:repeat(14,1fr);align-items:end;gap:clamp(3px,.8vw,8px);height:230px;padding:30px 22px 20px;display:grid}.activity-chart>div{text-align:center;grid-template-rows:18px 1fr 17px;align-items:end;height:100%;display:grid}.activity-chart b{color:var(--orange-dark);font-size:8px}.activity-chart i{background:linear-gradient(180deg, var(--orange), #f2a07e);border-radius:5px 5px 2px 2px;justify-self:center;width:min(100%,24px);min-height:3px}.activity-chart small{color:var(--muted);font-size:7px}.admin-list{padding:8px 22px 14px;display:grid}.admin-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:10px;display:flex}.admin-list>div:last-child{border-bottom:0}.admin-list>div span{color:#5f5851}.admin-list>div strong{font-size:14px}.admin-empty{color:var(--muted);margin:18px 0;font-size:10px}.admin-note{background:var(--ink);color:#fff;padding:24px}.admin-note .eyebrow{color:#f2a07e}.admin-note h2{margin:9px 0 12px;font-size:20px}.admin-note>p:not(.eyebrow){color:#cbc5bd;margin:0;font-size:10px;line-height:1.8}.admin-note a{color:#ffb291;margin-top:20px;font-size:10px;font-weight:800;display:inline-block}.admin-denied-shell{background:var(--paper);place-items:center;min-height:100vh;padding:24px;display:grid}.admin-denied-shell section{border:1px solid var(--line);background:var(--paper-strong);border-radius:22px;width:min(520px,100%);padding:clamp(28px,6vw,52px);box-shadow:0 26px 70px #4d392717}.admin-denied-shell .eyebrow{margin-top:42px}.admin-denied-shell h1{margin:7px 0 12px;font-size:clamp(29px,7vw,42px);line-height:1.2}.admin-denied-shell p:not(.eyebrow){color:var(--muted);margin:0 0 24px;font-size:12px;line-height:1.75}.auth-error-shell{background:radial-gradient(circle at 50% 30%, #e85d341f, transparent 35%), var(--paper);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-error-shell section{border:1px solid var(--line);background:var(--paper-strong);border-radius:24px;width:min(560px,100%);padding:42px;box-shadow:0 30px 80px #4734241c}.auth-error-shell .eyebrow{margin-top:46px}.auth-error-shell h1{font-family:var(--serif);letter-spacing:-.035em;margin:0;font-size:42px;font-weight:600;line-height:1.2}.auth-error-shell section>p:not(.eyebrow){color:var(--muted);margin:18px 0 30px;line-height:1.7}@media (width<=980px){.onboarding-shell{grid-template-columns:1fr}.onboarding-copy,.setup-card{min-height:auto}.onboarding-copy{padding-block:120px 70px}.setup-card{padding-block:70px}.app-shell{grid-template-columns:1fr}.sidebar{z-index:50;border:1px solid #ffffff17;border-radius:16px;flex-direction:row;width:auto;height:58px;padding:7px;position:fixed;inset:auto 15px 14px;box-shadow:0 18px 40px #14100c47}.sidebar>.brand,.sidebar-spacer,.bakery-switcher{display:none}.primary-nav{grid-template-columns:repeat(auto-fit,minmax(0,1fr));width:100%;display:grid}.primary-nav button{justify-content:center;height:44px;font-size:10px}.nav-symbol{width:22px;height:22px}.mobile-brand{letter-spacing:.1em;align-items:center;gap:8px;font-size:11px;display:flex}.mobile-brand .brand-mark{border-radius:8px 8px 8px 3px;width:28px;height:28px;font-size:16px}.topbar-search{display:none}.topbar{padding-inline:20px}.library-grid{grid-template-columns:minmax(220px,.65fr) minmax(400px,1.35fr);overflow-x:auto}.signed-out-shell{grid-template-columns:1fr;overflow:visible}.login-panel-wrap{padding:0 28px 90px}.signed-out-shell>section{padding-bottom:60px}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid{grid-template-columns:1fr}}@media (width<=680px){.onboarding-copy{padding:110px 24px 55px}.onboarding-copy .brand{top:32px}.onboarding-copy h1{letter-spacing:-.035em;max-width:11em;font-size:clamp(35px,10vw,42px);line-height:1.18}.setup-card{padding:55px 24px 80px}.setup-card h2{font-size:clamp(28px,8vw,34px);line-height:1.24}.onboarding-lede{margin-block:24px;font-size:15px;line-height:1.72}.setup-progress{margin-bottom:36px}.topbar{height:60px}.preview-toggle{text-overflow:ellipsis;white-space:nowrap;max-width:155px;overflow:hidden}.topbar-actions .avatar{display:none}.content{padding:32px 17px 100px}.page-heading{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:25px}.page-heading .primary-button{width:100%}.page-heading h1{letter-spacing:-.035em;font-size:clamp(31px,9vw,38px);line-height:1.18}.page-heading>div>p:last-child{font-size:13px;line-height:1.65}.stat-row{grid-template-columns:repeat(3,1fr)}.stat-row>div{justify-content:center;gap:8px;min-height:34px;padding:0 8px}.stat-row>div:first-child{padding-left:8px}.stat-row strong{font-size:23px}.stat-row span{font-size:10px}.stat-row .stat-note{display:none}.empty-state{min-height:470px;padding-inline:18px}.empty-tips{grid-template-columns:auto 1fr}.library-grid{display:block;overflow:visible}.recipe-list-panel{margin-bottom:14px}.recipe-list{max-height:290px}.panel-heading{font-size:12px}.category-pills button{font-size:10px}.recipe-list button b{font-size:12px}.recipe-list button small{font-size:10px;line-height:1.4}.recipe-list button em{font-size:9px}.recipe-detail>header,.recipe-section{padding-inline:20px}.recipe-detail h2{font-size:27px;line-height:1.24}.recipe-detail header p{font-size:12px;line-height:1.65}.sale-badge,.category-badge,.status-badge{font-size:9px}.batch-calculator{padding-inline:18px}.batch-calculator small{font-size:9px}.section-title h3{font-size:14px}.ingredient-table>div,.ingredient-table b,.step-list p,.recipe-note b{font-size:12px}.recipe-note p{font-size:11px}.recipe-note{margin-inline:20px}.ingredient-table{grid-template-columns:1fr}.team-row{grid-template-columns:auto 1fr auto;padding-inline:15px}.team-join-guide{grid-template-columns:1fr;gap:16px;padding:17px}.team-row>em{display:none}.two-columns{grid-template-columns:1fr}.modal-backdrop{align-items:end;padding:0}.editor-modal,.team-modal,.history-modal{border-radius:16px 16px 0 0;width:100%;max-height:94vh}.ingredient-input-row{grid-template-columns:22px minmax(0,1fr) 72px 55px 25px;gap:4px}.publish-options,.sale-options{grid-template-columns:1fr}.photo-preview-grid{grid-template-columns:repeat(2,1fr)}.heading-actions{width:100%}.heading-actions>button{flex:1}.team-row{grid-template-columns:auto minmax(0,1fr) auto}.team-row>select,.team-row>em{grid-column:2}.team-row-actions{grid-column:2/-1}.settings-form{flex-direction:column;align-items:stretch}.category-manager-row{grid-template-columns:auto minmax(0,1fr) auto}.category-manager-row>.danger-text{grid-column:2/-1;justify-self:end}.inline-create-form{grid-template-columns:1fr}.recipe-photo-gallery{grid-auto-rows:minmax(110px,160px)}.primary-nav button{flex-direction:column;gap:1px;line-height:1}.nav-symbol{border:0}.signed-out-shell>header{padding-inline:20px}.signed-out-shell>section{padding:50px 20px 100px}.signed-out-shell h1{letter-spacing:-.04em;max-width:10em;font-size:clamp(34px,9.2vw,42px);line-height:1.16}.login-panel-wrap{padding:0 20px 70px;scroll-margin-top:12px}.login-panel{padding:34px 22px 28px}.login-panel h2{font-size:clamp(27px,7.4vw,31px);line-height:1.26}.login-panel>p:not(.eyebrow){font-size:14px;line-height:1.68}.password-login-form label>span,.signup-details label>span{font-size:12px}.settings-section>header p,.settings-empty{font-size:11px;line-height:1.7}.settings-support-link{flex-direction:column;align-items:flex-start;gap:4px;padding:13px 14px}.settings-support-link span{font-size:10px}.settings-support-link strong{text-align:left;font-size:12px}.modal-header h2{font-size:24px;line-height:1.25}.auth-error-shell section{padding:32px 24px}.auth-error-shell h1{font-size:32px;line-height:1.25}.admin-header{padding-inline:17px}.admin-header>div>span{display:none}.admin-header .secondary-button{min-height:40px;padding-inline:12px;font-size:11px}.admin-content{width:min(100% - 34px,1180px);padding-block:38px 70px}.admin-heading{flex-direction:column;align-items:stretch;gap:18px}.admin-heading h1{font-size:clamp(32px,10vw,40px);line-height:1.18}.admin-heading aside{max-width:none}.admin-heading aside span{font-size:10px}.admin-metrics{gap:9px;margin-top:24px}.admin-metrics article{padding:16px}.admin-metrics article>span,.admin-metrics article>small{font-size:9px}.admin-metrics article>strong{font-size:31px}.secondary-metrics{grid-template-columns:1fr 1fr;margin-top:9px}.secondary-metrics article{flex-direction:column;align-items:flex-start;gap:7px}.activity-chart{gap:3px;height:210px;padding-inline:12px}.activity-chart small{font-size:6px}.admin-card>header{padding-inline:18px}.admin-card header p{font-size:10px}}.primary-button,.secondary-button,.text-button{border-radius:12px}.primary-button{background:linear-gradient(145deg,#bf7548,#a85932);border-color:#a95b31;box-shadow:0 10px 22px #8e462233,inset 0 1px #fff3}.primary-button:hover{background:linear-gradient(145deg,#ad6339,#884322);box-shadow:0 13px 28px #7d3b1d45}.secondary-button{background:#fffdf9e6;border-color:#684e392e;box-shadow:0 5px 14px #4834250d}.secondary-button:hover{background:#fff;border-color:#9b5e3652;transform:translateY(-1px);box-shadow:0 8px 18px #48342514}input,textarea,select{background:#fffefb;border-color:#684e3933;border-radius:10px}input:focus,textarea:focus,select:focus{border-color:#b4673bad;box-shadow:0 0 0 4px #b4673b17}.brand-mark{background:linear-gradient(145deg,#c17a4c,#9d542f);border-radius:12px 12px 12px 4px;box-shadow:0 9px 22px #7e3e1f3d,inset 0 1px #ffffff40}.sidebar{background:radial-gradient(circle at 18% 5%,#d6a37026,#0000 26%),linear-gradient(165deg,#302923 0%,#241f1b 58%,#1f1b18 100%);border-right:1px solid #ffffff0d;padding:30px 17px 20px;box-shadow:12px 0 36px #35261b14}.sidebar .brand{letter-spacing:.14em;gap:12px;padding:0 11px 36px;font-size:14px}.primary-nav button{color:#aaa199;border:1px solid #0000;border-radius:12px;gap:12px;height:48px;padding:0 10px;font-size:12px;transition:border-color .16s,background .16s,color .16s,transform .16s}.primary-nav button:hover{background:#ffffff0d;border-color:#ffffff0f;transform:translate(2px)}.primary-nav button.active{background:linear-gradient(90deg,#be744638,#ffffff0f);border-color:#e2b88926;box-shadow:inset 3px 0 #c57b4c}.nav-symbol{background:#ffffff06;border-color:#ffffff1f;border-radius:8px;width:27px;height:27px}.primary-nav button.active .nav-symbol{background:linear-gradient(145deg,#c17a4c,#9f5732);border-color:#bd7347;box-shadow:0 6px 14px #19110c38}.bakery-avatar{background:linear-gradient(145deg,#4d433b,#37302b);box-shadow:inset 0 0 0 1px #ffffff0f}.topbar{-webkit-backdrop-filter:blur(20px)saturate(135%);backdrop-filter:blur(20px)saturate(135%);background:#faf6efdb;border-bottom-color:#6c4e3824;height:74px;box-shadow:0 7px 24px #49352709}.topbar-search{background:#fffdf9bf;border:1px solid #674c3824;border-radius:13px;width:min(430px,44vw);min-height:40px;padding:0 11px;box-shadow:inset 0 1px #fffc}.topbar-search kbd{background:#f3ece3;border-color:#684e3926;border-radius:7px;box-shadow:inset 0 -1px #684e391f}.preview-toggle{background:#fffdf9db;border-color:#684e3929;height:38px;box-shadow:0 5px 14px #4834250d}.content{padding-top:52px}.eyebrow{color:#ad6137;letter-spacing:.2em}.toast-message{background:linear-gradient(135deg,#eef5ed,#e6f0e7);border-color:#4f755733;border-radius:12px;box-shadow:0 8px 20px #46674c12}.stat-row{border:0;grid-template-columns:repeat(3,minmax(135px,150px)) minmax(240px,1fr);gap:10px;padding:0}.stat-row>div{min-height:64px;box-shadow:var(--shadow-soft);background:#fffdf9c7;border:1px solid #684e3921;border-radius:14px;padding:0 18px}.stat-row .stat-note{border:1px solid #684e3921;padding-right:18px}.stat-row span{font-size:10px}.empty-state{box-shadow:var(--shadow-card), inset 0 1px #ffffffe6;background:radial-gradient(circle at 50% 42%,#c17a4c21,#0000 24%),linear-gradient(145deg,#fffdf9eb,#f7efe5d1);border-color:#73543c26;border-radius:22px}.panel-heading,.team-card>header{background:linear-gradient(#ffffffa6,#f7f0e799)}.category-pills button{min-height:28px;padding:5px 11px;font-size:9px}.category-pills .active{background:linear-gradient(145deg,#b86e42,#92502e);box-shadow:0 6px 15px #8443222e}.recipe-list>button{border-bottom-color:#684e391c;padding:14px;transition:background .15s,box-shadow .15s,transform .15s}.recipe-list-photo,.recipe-letter{border-radius:15px;box-shadow:0 8px 20px #432e1f1c}.recipe-list-english{font-size:17px}.recipe-list-korean{color:#82756a;font-size:11px}.recipe-detail>header{background:radial-gradient(circle at 88% 10%,#e6b17838,#0000 26%),linear-gradient(135deg,#302720 0%,#46372d 58%,#5b4434 100%);padding:34px 36px 30px}.recipe-detail>header .secondary-button{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border-color:#ffffff38}.recipe-title-english{color:#fffdf7;text-shadow:0 2px 16px #150f0b29}.recipe-title-korean{color:#fffaf2b8!important}.batch-calculator{background:linear-gradient(90deg,#fbf7f0,#f7eee3);border-color:#684e3921}.recipe-photo-gallery{background:#e9ded1;border-color:#684e3924}.sale-badge,.category-badge,.status-badge{letter-spacing:-.01em;padding:6px 9px;font-size:9px}.team-join-guide,.settings-support,.team-permission-note,.onboarding-invite-help{background:linear-gradient(145deg,#fff9f2,#f8ecdf);border-color:#a5683f2e;box-shadow:0 10px 26px #69442a0f}.team-row select,.team-row-actions button,.category-manager-row button{background:#fffefb;border-color:#684e392b;border-radius:9px}.settings-support-link{border-color:#a5683f33;border-radius:12px;box-shadow:0 8px 20px #69442a0d}.modal-header,.modal-footer{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffdf9f0}.signed-out-shell,.onboarding-shell{background:radial-gradient(circle at 18% 20%,#c47c4d29,#0000 30%),radial-gradient(circle at 70% 88%,#5b72621a,#0000 24%),linear-gradient(145deg,#f8f1e8,#f2e8dc)}.signed-out-shell h1,.onboarding-copy h1{color:#2b231e;text-shadow:0 2px #ffffff73}.login-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdf9eb;border-color:#77543b29;box-shadow:0 35px 90px #482f1e29,inset 0 1px #ffffffe6}.setup-card{background:linear-gradient(#fffdf9f2, #fffbf5f5), var(--paper-strong);box-shadow:-26px 0 80px #482f1e17}.oauth-buttons a,.signup-details,.password-login-form input,.signup-details input{background:#fffefbe6;border-color:#684e3929}.menu-board-hero{background:radial-gradient(circle at 84% 16%,#eaba8040,#0000 26%),linear-gradient(135deg,#2d251f,#49382d 66%,#5d4433);border:1px solid #ffffff14;border-radius:22px;box-shadow:0 24px 60px #36261a2e}.menu-board-filters button{background:#fffdf9d9;border-color:#684e3926;box-shadow:0 5px 14px #4834250b}.menu-board-filters button.active{background:linear-gradient(145deg,#b96f42,#8e4b2a);border-color:#8e4b2a;box-shadow:0 8px 18px #7e3e1f30}.menu-board-group>header{background:linear-gradient(#fbf7f1,#f4ebdf)}.menu-board-row{border-bottom-color:#684e391c;transition:background .15s}.menu-board-price,.menu-board-commerce button{color:var(--orange)}@media (width<=980px){.app-shell{grid-template-columns:1fr}.sidebar{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:radial-gradient(circle at 15% 0,#d6a37024,#0000 35%),#231e1bf5;border-color:#ffffff1a;border-radius:22px;height:68px;padding:8px;left:12px;box-shadow:0 20px 55px #19120e57,inset 0 1px #ffffff12}.primary-nav button{gap:3px;height:50px;padding:3px 4px;font-size:9px;transform:none}.primary-nav button:hover{transform:none}.primary-nav button.active{box-shadow:none}.content{padding-bottom:calc(118px + env(safe-area-inset-bottom))}.topbar{height:66px}.stat-row{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-row>div{min-height:58px}.stat-row .stat-note{display:none}}@media (width<=680px){.content{padding-top:30px}.page-heading{margin-bottom:27px}.page-heading h1{font-size:clamp(32px,9.4vw,40px)}.stat-row{gap:7px}.stat-row>div,.stat-row>div:first-child{min-height:56px;padding:0 9px}.stat-row strong{font-size:23px}.recipe-list-panel,.recipe-detail,.team-card,.settings-card,.menu-board-group{border-radius:16px}.recipe-detail>header{padding:27px 21px 24px}.editor-modal,.team-modal,.history-modal{border-radius:22px 22px 0 0}.menu-board-hero{border-radius:18px}}.empty-state h2{font-size:clamp(32px,4vw,40px)}.empty-state>p:not(.eyebrow){max-width:520px;font-size:14px;line-height:1.72}.empty-tips{gap:12px;max-width:660px}.empty-tips p{font-size:12px;line-height:1.65}.empty-tips b{font-size:13px}.empty-tips>span{width:26px;height:26px;font-size:11px}.editor-modal{width:min(920px,100%)}.editor-modal input,.editor-modal select,.editor-modal textarea{font-size:13px}.modal-save-feedback{min-width:0;margin-right:auto;padding-right:14px}.modal-save-feedback p{color:var(--muted);margin:0;font-size:10px;line-height:1.45}.modal-save-feedback .form-error{color:#b33b26;max-width:440px;font-size:11px}@media (width<=680px){.empty-state{min-height:520px;padding:44px 20px}.empty-state h2{max-width:11em;font-size:clamp(30px,9vw,37px);line-height:1.18}.empty-state>p:not(.eyebrow){max-width:25em;font-size:14px;line-height:1.7}.empty-tips{gap:12px 10px;width:100%;margin-top:28px;padding-top:20px}.empty-tips p{font-size:12px;line-height:1.62}.empty-tips b{font-size:13px}.modal-header{padding:19px 16px 15px}.modal-body{gap:24px;padding:22px 14px 26px}.editor-modal input,.editor-modal select,.editor-modal textarea{border-radius:10px;font-size:16px}.editor-modal label>span,.sale-options legend,.publish-options legend,.sale-options b,.publish-options b{font-size:13px}.sale-options small,.publish-options small{font-size:11px;line-height:1.45}.sale-options label,.publish-options label{min-height:70px;padding:14px}.modal-footer{padding:12px 14px calc(12px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.modal-save-feedback{grid-column:1/-1;min-height:18px;padding-right:0}.modal-save-feedback p,.modal-save-feedback .form-error{max-width:none;font-size:11px}.modal-footer .text-button,.modal-footer .primary-button{min-height:48px}}.deferred-loading{border:1px solid var(--line);width:min(100%,560px);color:var(--muted);box-shadow:var(--shadow-card);text-align:center;background:#fffdf9f0;border-radius:24px;margin:auto;padding:32px}.modal-backdrop>.deferred-loading{align-self:center}.feature-error{width:min(100%,620px);box-shadow:var(--shadow-card);text-align:center;background:#fffdf9f5;border:1px solid #a5683f38;border-radius:24px;margin:auto;padding:40px}.feature-error h2{margin:8px 0 10px}.feature-error p:not(.eyebrow){color:var(--muted);margin:0 0 22px}.modal-backdrop>.feature-error{align-self:center}@media (width<=720px){.onboarding-role-switch{margin-bottom:28px}.onboarding-role-switch button{min-height:52px;padding-inline:8px;font-size:10px}.bakery-search-form{grid-template-columns:1fr}.bakery-search-form .primary-button{width:100%}.bakery-search-results>div{grid-template-columns:auto minmax(0,1fr)}.bakery-search-results>div>button{grid-column:1/-1;width:100%}.join-request-list>div{grid-template-columns:auto minmax(0,1fr)}.join-request-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.join-request-actions .danger-text{grid-column:1/-1}.join-request-actions button{min-height:40px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.recipe-list>button{grid-template-columns:auto minmax(0,1fr) auto;min-height:102px}.recipe-list-photo,.recipe-letter{border-radius:12px;width:64px;height:64px}.recipe-list button>span:nth-child(2){align-content:center;gap:2px}.recipe-list-english,.recipe-list-korean{text-overflow:ellipsis;display:block;overflow:hidden}.recipe-list-english{color:var(--ink);font-family:var(--serif);letter-spacing:-.02em;white-space:normal;font-size:16px;font-weight:700;line-height:1.2}.recipe-list-korean{color:#756c63;font-size:10px;font-weight:650;line-height:1.35}.recipe-detail>header{color:#fffaf2;background:radial-gradient(circle at 90% 15%,#d9b18021,#0000 28%),#332d27}.recipe-detail>header .recipe-badges{margin-bottom:16px}.recipe-detail>header .secondary-button{color:#fff;background:#ffffff14;border-color:#ffffff59}.recipe-title-english{color:#fffaf2;font-family:var(--serif);letter-spacing:-.045em;font-size:clamp(31px,4.2vw,47px);font-weight:600;line-height:1.02}.recipe-title-korean{font-weight:700;color:#ffffffad!important;margin-top:8px!important;font-size:13px!important}.recipe-description{max-width:640px;margin-top:18px;line-height:1.6;color:#ffffffd1!important;font-size:11px!important}.batch-calculator{grid-template-columns:1fr 1.15fr 1fr 1fr}.batch-price{justify-items:end}.batch-price strong{font-family:inherit;font-size:13px}.ingredient-table>div{align-items:flex-start}.translation-editor,.commerce-editor{border-top:1px solid var(--line);gap:14px;padding-top:22px;display:grid}.translation-editor>header,.commerce-editor>header{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.translation-editor h3,.commerce-editor h3{margin:0 0 4px;font-size:12px}.translation-editor header p,.commerce-editor header p{color:var(--muted);margin:0;font-size:9px}.translation-editor header button{color:var(--orange);background:0 0;border:0;font-size:9px;font-weight:800}.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.ingredient-input-row{grid-template-columns:26px minmax(180px,1fr) 90px 70px 27px}.step-input-row{grid-template-columns:26px minmax(0,1fr) 27px;align-items:start}.menu-board-view{gap:18px;max-width:1180px;display:grid}.menu-board-hero{color:#fffaf2;background:radial-gradient(circle at 86% 22%,#e6bf8b33,#0000 25%),linear-gradient(135deg,#2f2a25,#443930);border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding:34px 38px;display:grid;overflow:hidden;box-shadow:0 18px 45px #362a1f29}.menu-board-hero .eyebrow{color:#d4ab75}.menu-board-hero h1{font-family:var(--serif);letter-spacing:-.05em;margin:7px 0 5px;font-size:clamp(32px,5vw,54px);font-weight:600;line-height:1}.menu-board-hero>div>strong{color:#ffffffa3;margin-top:6px;font-size:10px;font-weight:700;display:block}.menu-board-hero aside{justify-items:end;gap:3px;display:grid}.menu-board-hero aside strong{color:#e6c191;font-family:var(--serif);font-size:54px;font-weight:500;line-height:.9}.menu-board-hero aside span{color:#ffffff8c;margin:0;font-size:8px;font-weight:700}.menu-board-intro{grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);align-items:end;gap:24px;padding:4px 4px 2px;display:grid}.menu-board-intro h2{font-family:var(--serif);letter-spacing:-.035em;margin:5px 0 3px;font-size:25px;font-weight:650}.menu-board-intro>p{color:var(--muted);text-align:right;justify-self:end;max-width:390px;margin:0;font-size:9px;line-height:1.65}.menu-board-notice{color:#736557;background:#fffaf2;border:1px solid #e2d6c5;border-radius:12px;padding:13px 16px;font-size:10px;line-height:1.55}.menu-board-filters{flex-wrap:wrap;gap:7px;display:flex}.menu-board-filters button{border:1px solid var(--line);color:#70665c;background:#ffffffc7;border-radius:999px;min-height:34px;padding:0 14px;font-size:9px;font-weight:750}.menu-board-filters button span,.menu-board-filters button small{line-height:1.15;display:block}.menu-board-filters button small{opacity:.58;margin-top:2px;font-size:6px}.menu-board-filters button.active{color:#fff;background:#3d352e;border-color:#3d352e}.menu-board-groups{gap:18px;display:grid}.menu-board-group{border:1px solid var(--line);background:#ffffffe6;border-radius:15px;overflow:hidden;box-shadow:0 10px 30px #4c3a2a0f}.menu-board-group>header{border-bottom:1px solid var(--line);background:#f8f3eb;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.menu-board-group>header h2{font-family:var(--serif);margin:0;font-size:18px;font-weight:650}.menu-board-group>header span{color:var(--muted);font-size:9px}.menu-board-group>header small{color:var(--muted);font-size:8px}.menu-board-list{display:grid}.menu-board-row{border-bottom:1px solid #ece5db;grid-template-columns:minmax(220px,1fr) minmax(380px,1.45fr);align-items:center;gap:24px;min-height:88px;padding:14px 18px;display:grid}.menu-board-row:last-child{border-bottom:0}.menu-board-name{gap:2px;display:grid}.menu-board-name strong{color:#342e28;font-family:var(--serif);font-size:17px;line-height:1.2}.menu-board-name small{color:#998e82;font-size:8px}.menu-board-name em{color:#746b62;font-size:10px;font-style:normal;line-height:1.35}.menu-board-price{color:var(--orange);justify-self:end;justify-items:end;gap:2px;display:grid}.menu-board-price>span,.menu-board-price>small{color:var(--muted);font-size:7px;font-weight:750}.menu-board-price>strong{font-family:var(--serif);font-size:20px;line-height:1.15}.menu-board-commerce{grid-template-columns:minmax(98px,1.05fr) 76px minmax(92px,1fr) minmax(92px,1fr) auto auto;align-items:end;gap:7px;display:grid}.menu-board-commerce label{gap:4px;display:grid}.menu-board-commerce label>span,.menu-board-margin span{color:var(--muted);text-transform:uppercase;font-size:7px;font-weight:750}.menu-board-commerce>.menu-board-notice{color:#4f7558;text-align:right;background:0 0;border:0;grid-column:1/-1;min-height:0;padding:0;font-size:8px}.menu-board-commerce input,.menu-board-commerce select{border:1px solid var(--line);min-width:0;height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:7px;padding:0 8px;font-size:9px}.menu-board-margin{gap:3px;min-width:72px;padding-bottom:4px;display:grid}.menu-board-margin b{color:#4f7558;font-size:10px}.menu-board-commerce button{background:var(--orange);color:#fff;border:0;border-radius:7px;height:34px;padding:0 12px;font-size:8px;font-weight:800}.menu-board-commerce button:disabled{cursor:wait;opacity:.55}.menu-board-empty,.menu-board-more{border:1px dashed var(--line);min-height:110px;color:var(--muted);border-radius:12px;place-items:center;font-size:10px;display:grid}.menu-board-more{min-height:auto;color:var(--orange);background:#fff;border-style:solid;padding:11px;font-weight:800}@media (width<=980px){.menu-board-row{grid-template-columns:1fr;gap:12px}.menu-board-commerce{grid-template-columns:repeat(4,minmax(90px,1fr)) auto auto}.menu-board-price{justify-self:start}.ingredient-input-row{grid-template-columns:24px minmax(0,1fr) 80px 62px 25px}}@media (width<=680px){.recipe-list>button{min-height:96px}.recipe-detail>header{padding:26px 20px 22px}.recipe-title-english{font-size:32px}.batch-calculator{grid-template-columns:repeat(2,1fr);gap:12px 0}.batch-calculator>div{border-right:0}.batch-price{justify-items:center}.menu-board-hero{grid-template-columns:1fr;padding:28px 24px}.menu-board-hero aside{justify-items:start}.menu-board-intro{grid-template-columns:1fr;gap:8px}.menu-board-intro>p{text-align:left;justify-self:start}.menu-board-commerce{grid-template-columns:1fr .75fr}.menu-board-commerce button,.menu-board-margin{min-width:0}.three-columns{grid-template-columns:1fr}.ingredient-input-row{grid-template-columns:22px minmax(0,1fr) 25px}.ingredient-input-row>input:first-of-type,.ingredient-input-row>input:nth-of-type(2),.ingredient-input-row>input:nth-of-type(3),.ingredient-input-row>select{grid-column:2}.ingredient-input-row>button{grid-area:1/3}.step-input-row{grid-template-columns:22px minmax(0,1fr) 25px}.step-input-row textarea{grid-column:2}.step-input-row>button{grid-area:1/3}}body{background:var(--paper)}.primary-button,.secondary-button,.text-button,.danger-button{border-radius:3px}.primary-button{color:#fff;background:#181817;border:1px solid #181817;box-shadow:0 7px 18px #18181721}.primary-button:hover{background:#2d2c29;border-color:#2d2c29;transform:translateY(-1px);box-shadow:0 9px 22px #18181729}.secondary-button{color:#292825;box-shadow:none;background:#fff;border:1px solid #d8d2ca}.secondary-button:hover{box-shadow:none;background:#fbfaf8;border-color:#9d8b70;transform:translateY(-1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:2px solid #b79a6885}input,textarea,select,.password-login-form input,.signup-details input{background:#fff;border-color:#dcd7d0;border-radius:3px}input:focus,textarea:focus,select:focus,.password-login-form input:focus,.signup-details input:focus{border-color:#a88c5f;box-shadow:0 0 0 3px #b79a681c}.eyebrow{color:#967a4d;letter-spacing:.24em;font-size:9px;font-weight:700}.brand-mark{color:#c7aa78;box-shadow:none;background:#181817;border:1px solid #282724;border-radius:2px}.app-shell{grid-template-columns:226px minmax(0,1fr)}.sidebar{color:#252421;box-shadow:none;background:#f1eee8;border-right:1px solid #ded9d1;padding:30px 16px 20px}.sidebar .brand{color:#181817;letter-spacing:.15em;gap:11px;padding:0 10px 38px;font-size:13px}.sidebar .brand:focus-visible{border-radius:3px;outline-color:#b79a6894}.primary-nav{gap:2px}.primary-nav button{color:#77736c;border:0;border-radius:2px;gap:12px;height:46px;padding:0 10px;font-size:11px;font-weight:650;position:relative;transform:none}.primary-nav button:before{content:"";background:0 0;width:1px;position:absolute;top:9px;bottom:9px;left:0}.primary-nav button:hover{color:#252421;background:#fff9;border:0;transform:none}.primary-nav button.active{color:#181817;box-shadow:none;background:#fff;border:0}.primary-nav button.active:before{background:#b79a68}.nav-symbol{color:#77736c;background:0 0;border-color:#d5d0c8;border-radius:2px;width:26px;height:26px}.primary-nav button.active .nav-symbol{color:#d0b47f;box-shadow:none;background:#181817;border-color:#181817}.bakery-switcher{background:#ffffff9e;border:1px solid #d8d2ca;border-radius:3px;padding:11px 9px}.bakery-switcher select,.bakery-switcher b{color:#252421}.bakery-switcher small,.bakery-switcher>i{color:#8b867e}.bakery-avatar,.avatar{color:#4e4b46;box-shadow:none;background:#e3ded6;border-radius:2px}.bakery-avatar{color:#ccb181;background:#282724}.workspace{background:#f7f5f1}.topbar{height:70px;box-shadow:none;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f5f1f0;border-bottom-color:#dfdad3}.topbar-search{width:min(430px,44vw);min-height:39px;box-shadow:none;background:#fff;border:1px solid #ddd8d1;border-radius:3px;padding:0 11px}.topbar-search input{background:0 0;height:37px}.topbar-search kbd{box-shadow:none;background:#f4f1ec;border-color:#ded8d0;border-radius:2px}.preview-toggle{height:37px;box-shadow:none;background:#fff;border-color:#d8d2ca;border-radius:999px}.preview-toggle.active{color:#3d3b37;background:#efede9;border-color:#77736c}.content{max-width:1460px;padding-top:48px}.page-heading{margin-bottom:30px}.page-heading h1{color:#181817;letter-spacing:-.045em;margin-bottom:10px;font-size:clamp(38px,4vw,55px);font-weight:600}.page-heading>div>p:last-child{color:#77736c;font-size:12px;line-height:1.7}.recipe-page-heading{background:#fff;border:1px solid #ddd7cf;border-radius:4px;grid-template-columns:minmax(0,1fr) minmax(270px,34%) auto;align-items:center;min-height:250px;padding:clamp(30px,4vw,54px);display:grid;position:relative;overflow:hidden}.recipe-page-heading:before{content:"";background:#b79a68;width:3px;position:absolute;top:0;bottom:0;left:0}.recipe-page-heading .page-heading-copy,.recipe-page-heading .heading-actions,.recipe-hero-art{z-index:1;position:relative}.recipe-page-heading h1{max-width:650px;font-size:clamp(38px,4.25vw,64px);line-height:1.08}.recipe-hero-art{justify-self:center;width:min(300px,100%);height:180px}.patisserie-halo{border:1px solid #b79a688c;border-radius:50%;width:124px;height:124px;position:absolute;top:11px;left:50%;transform:translate(-50%)}.patisserie-halo:after{border-radius:inherit;content:"";border:1px solid #b79a682e;position:absolute;inset:10px}.patisserie-plinth{background:#181817;border-radius:2px;height:46px;position:absolute;bottom:18px;left:15px;right:15px;box-shadow:0 16px 30px #1818172b}.patisserie-plinth:before{content:"";border:1px solid #c7aa7840;position:absolute;inset:8px 10px}.patisserie-flower{width:98px;height:98px;position:absolute;top:27px;left:calc(50% - 49px)}.patisserie-flower i{transform-origin:18px 18px;background:#fff;border:1px solid #d6d0c7;border-radius:50% 8% 50% 50%;width:37px;height:37px;position:absolute;top:31px;left:31px;box-shadow:0 5px 13px #18181714}.patisserie-flower i:first-child{transform:translateY(-27px)rotate(45deg)}.patisserie-flower i:nth-child(2){transform:translate(25px,-8px)rotate(117deg)}.patisserie-flower i:nth-child(3){transform:translate(15px,23px)rotate(189deg)}.patisserie-flower i:nth-child(4){transform:translate(-16px,23px)rotate(261deg)}.patisserie-flower i:nth-child(5){transform:translate(-25px,-8px)rotate(333deg)}.patisserie-flower b{z-index:2;color:#fff;background:#b79a68;border-radius:50%;place-items:center;width:29px;height:29px;font-size:12px;font-weight:700;display:grid;position:absolute;top:35px;left:35px}.recipe-hero-art small{color:#8c857b;letter-spacing:.28em;text-align:center;font-size:7px;font-weight:700;position:absolute;bottom:-3px;left:0;right:0}.stat-row{border-block:1px solid #ddd7cf;grid-template-columns:repeat(3,minmax(135px,160px)) minmax(220px,1fr);gap:0;padding:16px 0}.stat-row>div,.stat-row>div:first-child,.stat-row .stat-note{min-height:48px;box-shadow:none;border:0;background:0 0;border-right:1px solid #ddd7cf;border-radius:0;padding:0 22px}.stat-row>div:first-child{padding-left:0}.stat-row .stat-note{border-right:0;justify-content:flex-end;padding-right:0}.stat-row span{color:#827d75;font-size:9px}.stat-row strong{color:#181817;font-size:28px;font-weight:600}.status-pulse,.preview-dot{box-shadow:none;background:#b79a68}.empty-state{min-height:470px;box-shadow:var(--shadow-soft);background:#fff;border-color:#ddd7cf;border-radius:4px}.empty-state:before{opacity:1;background:0 0;border:1px solid #b79a6838;border-radius:50%;width:270px;height:270px;inset:72px auto auto 50%;transform:translate(-50%);-webkit-mask-image:none;mask-image:none}.empty-state h2{color:#181817;font-size:32px;font-weight:600}.empty-state>p:not(.eyebrow){color:#77736c}.book-page{border-color:#d7d1c9;border-radius:1px;box-shadow:0 8px 18px #18181714}.recipe-list-panel,.recipe-detail,.team-card,.settings-card,.menu-board-group{box-shadow:var(--shadow-soft);background:#fff;border-color:#ddd7cf;border-radius:4px}.library-grid{gap:18px}.panel-heading,.team-card>header,.menu-board-group>header{background:#faf8f5}.category-pills{background:#fff;gap:6px;padding:12px 14px}.category-pills button,.menu-board-filters button{box-shadow:none;background:#fff;border-radius:999px}.category-pills .active,.menu-board-filters button.active{color:#fff;box-shadow:none;background:#181817;border-color:#181817}.recipe-list>button{border-bottom-color:#ebe7e1;transform:none}.recipe-list>button:hover{background:#faf8f5;transform:none}.recipe-list>button.active{background:#f3efe8;box-shadow:inset 2px 0 #b79a68}.recipe-list-photo,.recipe-letter{box-shadow:none;border-radius:2px}.recipe-letter,.detail-loading-mark{color:#5f5a52;background:#e9e4dc}.recipe-detail>header,.menu-board-hero{box-shadow:none;background:#1b1a18;border-radius:3px 3px 0 0}.recipe-detail>header .secondary-button{color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#ffffff40}.recipe-title-english,.recipe-title-korean{text-shadow:none}.batch-calculator{background:#f7f4ef;border-color:#dfd9d1;border-radius:3px}.recipe-photo-gallery{background:#ebe7e1;border-color:#ddd7cf;border-radius:3px}.sale-badge,.category-badge,.status-badge{border-radius:999px}.team-join-guide,.settings-support,.team-permission-note,.onboarding-invite-help{box-shadow:none;background:#f6f2eb;border-color:#ddd7cf;border-radius:3px}.team-row,.settings-card>div,.settings-form,.settings-section{border-color:#e4dfd8}.team-row:hover,.settings-card>div:hover{background:#faf8f5}.team-row select,.team-row-actions button,.category-manager-row button,.settings-support-link{box-shadow:none;background:#fff;border-color:#ddd7cf;border-radius:3px}.backup-section{background:#fbfaf8}.backup-section>header{justify-content:space-between;align-items:center;gap:20px;display:flex}.backup-section>header>div{max-width:680px}.backup-section>header .secondary-button{flex:none}.backup-message,.backup-empty{color:#5f543f;background:#f5f0e7;border:1px solid #ded7cb;border-radius:3px;margin:0;padding:11px 13px;font-size:10px;line-height:1.6}.backup-list{background:#fff;border:1px solid #e1dcd4;border-radius:3px;display:grid}.backup-list>div{border-bottom:1px solid #ebe7e1;grid-template-columns:minmax(190px,1fr) auto auto;align-items:center;gap:14px;min-height:66px;padding:11px 13px;display:grid}.backup-list>div:last-child{border-bottom:0}.backup-list span{gap:4px;min-width:0;display:grid}.backup-list span b{font-size:11px}.backup-list span small,.backup-retention-note{color:#7e7971;font-size:9px;line-height:1.6}.backup-list i{white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:8px;font-style:normal;font-weight:700}.backup-list i.safe{color:#55624d;background:#eef1ea}.backup-list i.warning{color:#8a542f;background:#f6eadc}.backup-list .text-button{white-space:nowrap;border:1px solid #ddd7cf;min-height:34px;padding:0 10px;font-size:9px;text-decoration:none}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#181817a3}.editor-modal,.team-modal,.history-modal{box-shadow:var(--shadow-float);background:#fff;border:1px solid #ffffff4d;border-radius:4px}.modal-header,.modal-footer{background:#fffffff5}.signed-out-shell,.onboarding-shell{background:#f6f4f0;position:relative}.signed-out-shell:before{content:"";background:#e1dcd4;width:1px;position:absolute;top:0;bottom:0;left:50%}.signed-out-shell>header{z-index:2;background:#f6f4f0eb;border-bottom:1px solid #e1dcd4;position:relative}.signed-out-shell>section{z-index:1;position:relative}.signed-out-shell>section:before{content:"";background:#b79a68;width:62px;height:1px;position:absolute;top:8%;left:clamp(28px,7vw,110px)}.signed-out-shell h1,.onboarding-copy h1{color:#181817;text-shadow:none;font-weight:600}.signed-out-shell section>p:not(.eyebrow){color:#6f6a63}.login-panel-wrap{background:#eeebe5;padding:62px 6vw 90px}.login-panel{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border-color:#d8d2ca;border-radius:4px;width:min(450px,100%);padding:43px 38px 36px;box-shadow:0 28px 70px #1818171c}.login-panel:before{content:"";background:#b79a68;height:3px;position:absolute;top:0;left:0;right:0}.login-panel h2{font-weight:600}.signup-details,.oauth-buttons a{background:#fff;border-color:#ddd7cf;border-radius:3px}.oauth-buttons a:hover{box-shadow:none;border-color:#9d8b70;transform:translateY(-1px)}.oauth-buttons .kakao-login,.oauth-buttons .naver-login{color:#181817;background:#fff;border-color:#ddd7cf}.oauth-buttons .naver-login:after{color:#a49a8f}.kakao-icon{color:#191600;background:#fee500}.naver-icon{color:#fff;background:#03c75a}.setup-card{box-shadow:var(--shadow-card);background:#fff;border-color:#ddd7cf;border-radius:4px}.menu-board-hero{box-shadow:var(--shadow-card);background:#1b1a18;border:0;border-radius:4px}.menu-board-group>header{border-radius:3px 3px 0 0}.menu-board-row:hover{background:#faf8f5}.menu-board-price,.menu-board-margin b{color:#806a46}.menu-board-commerce button{color:#fff;background:#181817}.toast-message{color:#5f543f;box-shadow:none;background:#f2eee6;border-color:#d6cfbf;border-radius:3px}@media (width<=1180px){.recipe-page-heading{grid-template-columns:minmax(0,1fr) 250px}.recipe-page-heading .heading-actions{grid-column:1/-1;margin-top:8px}}@media (width<=980px){.app-shell{grid-template-columns:1fr}.sidebar{right:10px;bottom:calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#faf8f5f5;border:1px solid #d5cfc6;border-radius:4px;height:64px;padding:7px;left:10px;box-shadow:0 16px 42px #18181729}.primary-nav button{color:#77736c;gap:3px;height:48px;padding:2px 4px;font-size:8px}.primary-nav button:before{display:none}.primary-nav button.active{color:#fff;background:#181817}.nav-symbol{border:0;width:24px;height:23px}.primary-nav button.active .nav-symbol{color:#d0b47f;border:0}.recipe-page-heading{grid-template-columns:minmax(0,1fr) 190px;min-height:0;padding:30px}.recipe-hero-art{width:190px;transform:scale(.84)}}@media (width<=760px){.signed-out-shell{grid-template-columns:1fr;overflow:visible}.signed-out-shell:before{display:none}.signed-out-shell>header{padding:20px}.signed-out-shell>section{min-height:min(620px,78vh);padding:72px 24px 84px}.signed-out-shell>section:before{top:42px;left:24px}.signed-out-shell h1{font-size:clamp(47px,14vw,70px)}.login-panel-wrap{padding:38px 18px 110px}.login-panel{padding:34px 23px 30px}.recipe-page-heading{flex-direction:column;align-items:flex-start;min-height:0;padding:25px 22px;display:flex}.recipe-page-heading h1{font-size:clamp(34px,10vw,46px)}.recipe-hero-art{align-self:center;width:250px;height:150px;margin:10px 0 2px;transform:scale(.9)}.recipe-page-heading .heading-actions{width:100%}.recipe-page-heading .heading-actions>button{flex:1}.stat-row{grid-template-columns:repeat(3,1fr);gap:0}.stat-row>div,.stat-row>div:first-child{flex-direction:column;align-items:flex-start;gap:2px;padding:0 12px}.stat-row>div:first-child{padding-left:0}.stat-row .stat-note{border-top:1px solid #ddd7cf;border-right:0;grid-column:1/-1;justify-content:flex-start;margin-top:12px;padding:12px 0 0}.empty-state{border-radius:3px;min-height:420px;padding-inline:22px}.backup-section>header{flex-direction:column;align-items:stretch}.backup-section>header .secondary-button{width:100%}.backup-list>div{grid-template-columns:1fr auto}.backup-list .text-button{text-align:center;grid-column:1/-1;justify-self:stretch}}@media (width<=520px){.content{padding-inline:14px}.topbar{height:62px;padding-inline:14px}.recipe-page-heading{padding:23px 18px}.recipe-hero-art{width:220px;margin-left:-2px}.empty-state h2{font-size:27px}.sidebar{right:7px;bottom:calc(7px + env(safe-area-inset-bottom));left:7px}}
