:root{--suite-paper:#f5f1e8;--suite-surface:#fffcf6;--suite-ink:#282b25;--suite-wood:#493e32;--suite-bamboo:#536650;--suite-gold:#806337;--suite-line:#d8d0bf;--suite-muted:#625f53;--suite-mincho:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;--suite-sans:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",Meiryo,sans-serif;--background:var(--suite-paper);--foreground:var(--suite-ink);--card:var(--suite-surface);--card-foreground:var(--suite-ink);--popover:var(--suite-surface);--popover-foreground:var(--suite-ink);--primary:var(--suite-wood);--primary-foreground:#fffaf0;--secondary:#eee9dc;--secondary-foreground:var(--suite-wood);--muted:#eee9dc;--muted-foreground:var(--suite-muted);--accent:#e8edde;--accent-foreground:var(--suite-ink);--border:var(--suite-line);--input:var(--suite-line);--ring:var(--suite-bamboo)}body{background-color:var(--suite-paper);color:var(--suite-ink);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.028' filter='url(%23p)'/%3E%3C/svg%3E");font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Yu Gothic,Meiryo,sans-serif;font-size:16px;line-height:1.85;letter-spacing:.015em;font-feature-settings:normal}.access-tagline,.access-wordmark,.brand-name,.mode-card strong,[data-slot=dialog-title],h1,h2,h3{font-family:var(--suite-mincho);font-weight:500!important;font-feature-settings:"palt";letter-spacing:.055em}button,input,select,textarea{font:inherit}[data-slot=select-trigger]:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--suite-bamboo);outline-offset:4px}input:not([type=file]):focus,textarea:focus{border-color:var(--suite-bamboo);box-shadow:0 0 0 3px #53665012}button{transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s}.topbar{position:relative;height:98px;background:#faf7ef;border-top:3px solid var(--suite-wood);border-bottom:1px solid var(--suite-line);padding:0 max(40px,calc((100vw - 1160px)/2));box-shadow:0 4px 16px #493e3204}.brand-name{color:var(--suite-ink);font-size:32px;letter-spacing:.1em;line-height:1.4}.brand-roman{color:var(--suite-gold);font-size:10px;letter-spacing:.24em;margin-top:4px}.brand-seal{border-color:#92744a55;color:var(--suite-gold)}.private{color:var(--suite-muted);font-size:12px;letter-spacing:.07em;gap:8px}.account-menu{background:#ece7db;color:#4d4f42;border-bottom:1px solid #d8d0bf;font-size:12px;gap:16px;padding:8px max(40px,calc((100vw - 1160px)/2))}.account-menu a{color:#4d4f42;text-underline-offset:5px}.account-menu button{color:#4d4f42;border-color:#b6ad99;font-size:12px;min-height:36px;padding:4px 12px}.workspace{max-width:1160px;padding-top:62px}.intro{position:relative;isolation:isolate;display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:76px;margin-bottom:64px;padding:16px 0 22px;min-height:360px}.intro>div{position:relative;padding:24px 0 30px 22px;border-left:1px solid #53665065}.intro>div:before{content:"";position:absolute;left:-3px;top:24px;width:5px;height:36px;background:var(--suite-bamboo)}.intro:after{content:"";position:absolute;z-index:-1;width:410px;height:410px;left:6%;top:0;border-radius:50%;pointer-events:none;background:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 38px,#657f7610 39px 40px,transparent 41px 76px);opacity:.45;mask-image:linear-gradient(135deg,transparent,#0005,transparent 80%)}.eyebrow{font-size:12px;font-weight:500;color:var(--suite-gold);letter-spacing:.16em;margin-bottom:20px}.intro h1{font-size:clamp(40px,3.7vw,54px);line-height:1.65;letter-spacing:.075em;color:var(--suite-ink)}.intro .mobile-break{display:block}.intro-copy{font-size:15px;line-height:2.2;color:var(--suite-muted);margin-top:24px;letter-spacing:.035em}.food-feature{width:100%;max-width:100%;margin:0;position:relative;padding:0 0 12px}.food-feature .food-cover{height:326px;width:100%;border-radius:6px 36px 6px 6px;background:#dfd7c8;box-shadow:0 20px 40px -28px #493e3260}.food-feature .food-cover:before{content:"";position:absolute;inset:10px;border:1px solid #fff8;z-index:1;pointer-events:none;border-radius:2px 27px 2px 2px}.food-feature .food-cover:after{display:none}.food-feature .food-cover img{object-fit:cover;object-position:center 58%}.food-feature figcaption{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--suite-muted);letter-spacing:.025em;text-align:left;padding-top:17px}.food-feature figcaption:before{content:"";display:block;width:30px;height:1px;background:var(--suite-gold)}.main-tabs{gap:36px}.nav-tabs{height:64px!important;gap:30px;border-bottom:1px solid var(--suite-line);margin-bottom:10px}.nav-tabs [data-slot=tabs-trigger]{height:64px;font-family:var(--suite-mincho);font-weight:500;font-size:19px;color:var(--suite-muted);letter-spacing:.035em;padding:0 20px;position:relative}.nav-tabs [data-slot=tabs-trigger][data-state=active]{color:var(--suite-bamboo);border-bottom:2px solid var(--suite-bamboo)}.nav-tabs [data-slot=tabs-trigger] svg{width:18px;height:18px;stroke-width:1.4}.count{background:#e7eadd;color:#536650;border:0;border-radius:50%;font-family:Georgia,serif;font-size:12px;min-width:22px;line-height:22px;padding:0;text-align:center}.cook-layout{grid-template-columns:1fr .85fr;gap:54px;align-items:start}.form-panel{background:linear-gradient(145deg,#fffcf8,#faf7ee);border:1px solid #dcd4c5;border-radius:8px;padding:38px 34px;box-shadow:0 12px 32px -24px #493e3240;min-width:0}.section-heading{gap:14px;margin-bottom:25px;align-items:baseline}.section-number{font-family:Georgia,serif;font-style:normal;font-size:14px;color:var(--suite-gold);letter-spacing:.08em}.form-panel h2,.section-heading h2{font-size:25px;line-height:1.7}.field-label{font-size:15px;font-weight:600;color:#3e4438;margin:20px 0 10px;line-height:1.8}.field-label span{font-size:12px;color:var(--suite-muted);font-weight:400}.body-copy,.fine-print,.hint{color:var(--suite-muted);font-size:13px;line-height:1.95}.form-divider{background:#d8d0bf;margin:34px 0;height:1px}.pantry{border-color:#d8d0bf;margin-top:20px;padding-top:16px}.pantry summary{color:#526049;font-size:14px;font-weight:500;min-height:30px;align-items:center}.pantry summary svg{width:15px}.extra-section select,.form-panel select,.two-fields [data-slot=select-trigger],input:not([type=file]),textarea{background:#fffcf7;color:var(--suite-ink);border:1px solid #cfc8b8;border-radius:4px;font-size:16px;line-height:1.75}input:not([type=file]),textarea{padding:13px 15px}input::placeholder,textarea::placeholder{color:#777b6e;opacity:1}.form-panel select,.two-fields [data-slot=select-trigger]{min-height:48px;height:auto;padding:10px 12px;width:100%;max-width:100%}.choice-chip{padding:9px 13px;min-height:44px;border-color:#d2ccbc;border-radius:3px;background:#fcfaf4;color:#555b4c;font-size:14px}.chosen{background:var(--suite-bamboo)!important;border-color:var(--suite-bamboo)!important;color:#fffdf6!important}.choice-chip:has(:focus-visible){outline:2px solid var(--suite-bamboo);outline-offset:3px}.quick-dishes{gap:8px 18px;margin-top:12px}.microwave,.quick-dishes button,.text-button{color:#50634e;font-size:14px;min-height:44px}.mode-group{background:transparent;gap:12px!important}.mode-card{border-radius:5px;border-color:#d2ccbc;background:#faf7ef;min-width:0;padding:17px 13px}.mode-card.chosen{background:#edf0e5!important;border-color:#87977b!important;color:#35442f!important}.mode-card strong{font-size:18px}.mode-card small{color:#626856;font-size:12px;line-height:1.6}.mode-card>svg{color:#657650;stroke-width:1.4}.equipment{gap:8px 18px}.equipment label{font-size:14px;color:#555b4c;min-height:44px}.equipment .active{color:#3b4d35}[data-slot=checkbox][data-state=checked]{background:var(--suite-bamboo);border-color:var(--suite-bamboo);color:#fff}.primary,.secondary{min-height:48px;border-radius:3px;font-size:15px;font-weight:500;padding:12px 18px;letter-spacing:.035em}.primary{background:var(--suite-wood);border-color:var(--suite-wood);color:#fffaf0;box-shadow:none}.primary:hover:not(:disabled){background:#302a23;border-color:#302a23}.secondary{background:#fffdf650;border-color:#b8b29e;color:#4d5744}.secondary:hover:not(:disabled){background:#e9eddf;border-color:#7f906f}.generate{min-height:58px;height:auto;font-family:var(--suite-mincho);font-size:18px;margin-top:30px;letter-spacing:.045em}.primary svg,.secondary svg{stroke-width:1.5}.fine-print{margin-top:18px;font-size:12px}.connection-note{background:#efeee4;border:1px solid #d5d7c7;border-left:2px solid #84927b;color:#4c5844;border-radius:4px;padding:15px;font-size:13px;margin-top:16px;line-height:1.9}.connection-note ul{padding-left:20px;margin:8px 0}.notice{background:#f0eadb;color:#5d503b;border:1px solid #d9cdb8;border-left:2px solid #92744a;border-radius:4px;font-size:14px;line-height:1.9}.results-panel{top:30px}.results-heading{padding:8px 0 20px;border-bottom:1px solid var(--suite-line);margin-bottom:22px}.results-heading h2{font-size:27px;letter-spacing:.06em}.results-heading>span{font-size:11px;letter-spacing:.08em;color:var(--suite-muted)}.result-empty{position:relative;background:linear-gradient(155deg,#f9f7ee,#eceee4);border:1px solid #d7dac9;border-radius:6px;min-height:340px;padding:44px 28px;overflow:hidden}.result-empty:after{content:"";position:absolute;border:1px solid #9ba99720;border-radius:50%;width:300px;height:300px;right:-80px;bottom:-160px;pointer-events:none}.empty-vessel{width:78px;height:63px;color:#7a8a6b;stroke-width:1.25;margin-bottom:25px}.result-empty h3{font-size:24px;line-height:1.8;color:#45543b;margin-bottom:15px}.result-empty p{font-size:14px;color:#626b58;line-height:2}.kitchen-note{display:block;border-top:0;padding:28px 8px;color:var(--suite-muted)}.kitchen-note>span{display:block;font-family:var(--suite-mincho);font-size:15px;color:var(--suite-gold);margin-bottom:11px}.kitchen-note p{font-size:13px;line-height:2;color:var(--suite-muted)}.recipe-card{background:var(--suite-surface);border:1px solid #d7d0bf;border-radius:6px;padding:27px;margin-bottom:20px;box-shadow:0 9px 28px -24px #493e3240}.recipe-card h3{font-size:24px;line-height:1.75;color:var(--suite-ink);margin:18px 0 13px}.recipe-card>p{font-size:14px;color:var(--suite-muted);line-height:2}.recipe-meta{font-size:12px;color:#56664d;gap:10px}.recipe-meta span{background:#edf0e5;border:1px solid #d7decf;padding:3px 9px;border-radius:2px;letter-spacing:.03em}.recipe-facts{font-size:13px;color:var(--suite-muted);margin:22px 0}.shopping{background:#f0ebde;color:#685939;border-radius:3px;padding:10px;font-size:13px}.card-actions{gap:12px;margin-top:24px}.icon-button{border-color:#b8b29e;border-radius:3px;background:#fffcf7;color:var(--suite-bamboo)}.notebook{padding-top:12px;min-height:420px}.notebook-head{align-items:flex-end;gap:24px}.notebook-head .eyebrow{margin-bottom:13px}.notebook-head h2{font-size:31px;line-height:1.7}.book-tools{margin:32px 0;gap:22px}.search{background:#fffdf7;border:1px solid #d1c8b6;border-radius:4px;max-width:490px}.search input{background:transparent;font-size:16px}.search svg{color:#737b65;stroke-width:1.5}.liked-filter{color:#565e4b;font-size:14px}.liked-filter svg{color:#8b7651;stroke-width:1.5}.recipe-grid{gap:24px}.saved-card-wrap{border:1px solid #d7d0bf;border-radius:6px;background:#fffcf6;gap:0;overflow:hidden;box-shadow:0 10px 28px -25px #493e3240}.saved-card-wrap .saved-card{border:0;border-radius:0;background:transparent;padding:26px;min-height:220px}.saved-card:hover{background:#f3f3e8}.saved-top{font-size:12px;color:#68735a;margin-bottom:20px}.saved-card h3{font-size:23px;line-height:1.7;color:var(--suite-ink)}.saved-card p{font-size:14px;color:var(--suite-muted);line-height:1.9;margin:13px 0 20px}.saved-footer{color:#73715f;font-size:12px}.saved-card-wrap .recipe-delete-trigger{border:0;border-top:1px solid #e2dacb;border-radius:0;align-self:stretch;justify-content:flex-end;padding:9px 18px;font-size:13px;color:#7c5140;background:#faf7ef}.recipe-delete-trigger{border:1px solid #bd9b85;border-radius:3px;background:#fbf7ed;color:#78513f;min-height:44px;font-size:14px;padding:9px 14px}.recipe-delete-trigger:hover:not(:disabled){background:#f0e5d9}.collection-empty{padding:65px 24px;color:#7a876c}.collection-empty h3{font-size:27px;color:#4a5940}.collection-empty p{font-size:15px;line-height:2}.extra-section{margin-top:36px;border-top:1px solid #d7d0bf;padding-top:27px;line-height:1.95}.extra-section h2,.extra-section h3{font-size:23px;margin-bottom:17px}.cooking-log,.ingredients-list li,.shopping-row{border-color:#ded8c9}.shopping-row{padding:15px 0;font-size:15px}.shopping-row small{color:var(--suite-muted)}.recipe-dialog{background:#fdfaf2!important;border-color:#cbc4b2;border-radius:8px!important;box-shadow:0 30px 80px #30291e30!important;max-width:760px!important;padding:32px!important}.recipe-dialog [data-slot=dialog-title]{font-size:31px;line-height:1.75}.recipe-dialog [data-slot=dialog-description]{color:var(--suite-muted);font-size:15px;line-height:1.95}.dialog-scroll{padding-right:10px}.dialog-scroll h3{font-size:23px;margin:30px 0 17px}.ingredients-list li{font-size:15px;padding:13px 0}.steps-list p{font-size:16px;line-height:2.1}.steps-list li>span{color:var(--suite-gold);font-style:normal;font-size:19px}.original,.tip-box{background:#eff0e5;border-radius:4px;padding:20px;font-size:15px;line-height:2}.safety{background:#f2ebdf;border-color:#b69561;color:#625039;font-size:14px;line-height:2}.cooking-focus{background:linear-gradient(135deg,#eff1e7,#e6ebdc);border:1px solid #d0d8c1;border-radius:5px;padding:23px}.focus-step{font-family:var(--suite-mincho);font-size:27px;line-height:1.95;color:#394b30}.recipe-editor{background:#f5f5eb;border-color:#d0d6c2;border-radius:4px;padding:22px;gap:16px}.recipe-editor .field-label{font-size:15px}.recipe-delete-dialog{background:#fffcf5!important;color:var(--suite-ink);border:1px solid #cfc3ad;border-radius:7px;box-shadow:0 30px 80px #30291e30;max-width:550px;padding:28px;gap:20px}.recipe-delete-dialog [data-slot=dialog-title]{font-size:23px;line-height:1.85}.recipe-delete-dialog [data-slot=dialog-description]{color:#665946;font-size:15px;line-height:2}.recipe-delete-dialog p{font-size:15px;line-height:2;color:#625c50}.recipe-delete-actions{gap:13px}.recipe-delete-confirm{background:#77513f;border-color:#77513f;border-radius:3px;font-size:15px;padding:12px 17px;min-height:48px}.recipe-delete-confirm:hover:not(:disabled){background:#5e3c2b}.billing-panel{background:#f0f1e6;border:1px solid #d4dbc7;border-radius:6px;padding:25px}.billing-panel h3{font-family:var(--suite-mincho)}.access-page{max-width:1120px;grid-template-columns:.8fr 1.2fr;gap:80px;padding:74px 36px 88px;min-height:calc(100dvh - 174px);align-items:start}.access-brand{position:relative;isolation:isolate;padding:40px 0 48px 23px;border-left:1px solid #8995797a}.access-brand:after{content:"";position:absolute;inset:0 0 -40px -20px;z-index:-1;background:repeating-radial-gradient(ellipse at 30% 40%,transparent 0 42px,#657f7610 43px 44px,transparent 45px 85px);mask-image:linear-gradient(130deg,transparent,#0007,transparent 85%);pointer-events:none}.access-wordmark{font-size:clamp(38px,4.2vw,61px);color:var(--suite-ink);letter-spacing:.08em;white-space:nowrap;line-height:1.5}.access-reading{font-size:12px;color:var(--suite-muted);letter-spacing:.15em;margin-top:12px}.access-tagline{color:#4b5a41;font-size:22px;letter-spacing:.08em;margin-top:25px}.access-card{border-top:1px solid #baaa8d;padding:30px 0 0;min-width:0}.access-card h1{font-size:27px;line-height:1.75;margin-bottom:19px}.access-card h2{font-size:25px;line-height:1.7}.access-card p{color:var(--suite-muted);font-size:15px;line-height:2;margin:16px 0}.access-card>a[href="/sign-in"]{background:var(--suite-wood);border-radius:3px;min-height:52px;letter-spacing:.035em}.access-card .form-panel{padding:28px}.access-card .extra-section{padding-top:27px}.access-card a{color:var(--suite-bamboo)}.access-card .field-label{display:block}.access-card .field-label input,.access-card .field-label select{display:block;margin-top:10px}.brand-footer{background:#37382e;color:#d9c6a1;border-top:1px solid #92744a70;font-size:11px;letter-spacing:.16em;padding:28px max(40px,calc((100vw - 1160px)/2))}.brand-footer span{color:#e2dfcd;font-size:12px}.brand-footer span,footer{font-family:var(--suite-mincho);letter-spacing:.04em}footer{border-color:#cfc7b6;color:#73664e;padding:32px 0;margin-top:65px;font-weight:500;font-size:15px}footer span{font-size:13px}.preview-banner{background:#e8ecdf;color:#4f5e44;border-bottom:1px solid #ccd4bf;font-size:12px;line-height:1.9;padding:12px max(24px,calc((100vw - 1160px)/2))}.cl-card,.cl-cardBox{border-color:#d3cbbb!important;background:#fffcf5!important;border-radius:6px!important}.cl-headerTitle{font-family:var(--suite-mincho)!important;font-weight:500!important}.cl-formButtonPrimary{background:var(--suite-wood)!important;border-radius:3px!important}.cl-footer{background:#eeeadd!important}.cl-formFieldInput{font-size:16px!important}@media(max-width:1200px){.workspace{padding:50px 36px 0}.topbar{padding:0 36px}.intro{gap:44px}.food-feature .food-cover{height:300px}.account-menu{padding-left:36px;padding-right:36px}}@media(max-width:900px){.cook-layout{grid-template-columns:1fr 1fr;gap:26px}.form-panel{padding:28px 24px}.intro{gap:30px}.intro h1{font-size:42px}.food-feature .food-cover{height:275px}.mode-group{grid-template-columns:1fr!important}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.access-page{gap:40px;grid-template-columns:.7fr 1fr}.access-wordmark{font-size:45px}}@media(max-width:760px){.topbar{height:84px;padding:0 22px}.brand-name{font-size:28px}.brand-roman{font-size:9px;margin-top:3px}.private{font-size:10px;letter-spacing:.025em;gap:5px}.account-menu{padding:8px 20px;gap:12px;font-size:11px;flex-wrap:wrap}.account-menu button{font-size:11px;min-height:36px}.workspace{padding:32px 22px 0}.intro{display:block;padding:0;min-height:0;margin-bottom:38px}.intro>div{padding:8px 0 12px 17px}.intro>div:before{top:8px;height:27px}.intro:after{width:280px;height:280px;left:0;top:-35px}.intro h1{font-size:36px;line-height:1.65;letter-spacing:.065em}.intro .eyebrow{font-size:11px;margin-bottom:16px}.intro-copy{font-size:14px;line-height:2;margin-top:18px}.mobile-break{display:block}.food-feature{margin-top:28px}.food-feature .food-cover{height:222px;border-radius:4px 27px 4px 4px}.food-feature .food-cover:before{inset:8px;border-radius:2px 21px 2px 2px}.food-feature figcaption{font-size:11px;gap:8px;padding-top:12px;line-height:1.9}.food-feature figcaption:before{width:21px}.nav-tabs{gap:8px;height:61px!important;overflow-x:auto;margin-bottom:5px}.nav-tabs [data-slot=tabs-trigger]{height:61px;min-height:61px;padding:0 9px;font-size:16px;letter-spacing:.015em;gap:6px;flex:1 0 auto}.nav-tabs svg{width:16px;height:16px}.count{min-width:19px;line-height:19px;font-size:11px}.main-tabs{gap:25px}.cook-layout{grid-template-columns:1fr;gap:32px}.form-panel{padding:26px 22px;border-radius:5px}.section-heading{gap:12px;margin-bottom:19px}.form-panel h2,.section-heading h2{font-size:23px}.section-number{font-size:12px}.field-label{font-size:14px;line-height:1.85}.body-copy,.hint{font-size:13px}.fine-print{font-size:12px}.form-divider{margin:29px 0}.choice-chip{font-size:14px;padding:9px 12px}.mode-group{grid-template-columns:1fr 1fr!important;gap:10px!important}.mode-card{padding:15px 10px;gap:7px}.mode-card strong{font-size:17px}.mode-card small{font-size:11px}.mode-card>svg{display:none}.two-fields{gap:12px}.equipment{gap:5px 14px}.equipment label{font-size:14px}.generate{font-size:17px;min-height:57px}.primary,.secondary{font-size:14px}.results-panel{position:static}.results-heading h2{font-size:25px}.result-empty{min-height:300px;padding:34px 23px}.result-empty h3{font-size:23px}.recipe-card{padding:23px}.recipe-card h3{font-size:23px}.kitchen-note{padding:24px 4px}.notebook-head{display:block}.notebook-head h2{font-size:27px}.notebook-head .secondary{font-size:13px;min-height:46px;margin-top:20px;padding:10px 14px}.book-tools{margin:26px 0;gap:15px}.recipe-grid{grid-template-columns:1fr;gap:20px}.saved-card-wrap .saved-card{padding:25px;min-height:198px}.saved-card h3{font-size:23px}.extra-section{margin-top:31px;padding-top:23px}.extra-section h2,.extra-section h3{font-size:23px}.recipe-dialog{width:calc(100vw - 24px)!important;max-height:92dvh;padding:25px 20px!important;border-radius:6px!important}.recipe-dialog [data-slot=dialog-title]{font-size:26px;line-height:1.75}.dialog-scroll{padding-right:3px}.ingredients-list li{font-size:14px}.steps-list p{font-size:15px;line-height:2}.dialog-scroll h3{font-size:22px}.recipe-delete-dialog{max-width:calc(100vw - 28px);padding:24px 20px;gap:17px}.recipe-delete-dialog [data-slot=dialog-title]{font-size:22px}.recipe-delete-dialog [data-slot=dialog-description],.recipe-delete-dialog p{font-size:14px;line-height:1.95}.recipe-delete-actions{gap:10px}.recipe-delete-confirm{font-size:14px}.access-page{display:block;padding:35px 24px 54px;min-height:0}.access-brand{padding:15px 0 22px 18px;margin-bottom:36px}.access-wordmark{font-size:47px;letter-spacing:.07em}.access-brand .eyebrow{margin-bottom:14px}.access-tagline{font-size:20px;letter-spacing:.06em;margin-top:18px}.access-reading{font-size:11px}.access-card{padding-top:25px}.access-card h1{font-size:25px}.access-card p{font-size:14px;line-height:2}.access-card .form-panel{padding:25px 20px}.access-card .field-label{font-size:14px}.access-card .form-panel select{font-size:16px}.brand-footer{padding:25px 22px;letter-spacing:.1em;font-size:10px}.brand-footer span{font-size:11px}footer{margin-top:45px;padding:26px 0 calc(26px + env(safe-area-inset-bottom));font-size:14px}.preview-banner{padding:11px 20px;font-size:11px}}@media(max-width:370px){.workspace{padding-left:16px;padding-right:16px}.topbar{padding:0 16px}.brand-name{font-size:25px}.private{font-size:9px}.intro h1{font-size:33px}.food-feature .food-cover{height:188px}.form-panel{padding:24px 17px}.section-heading h2{font-size:22px}.nav-tabs{gap:2px}.nav-tabs [data-slot=tabs-trigger]{font-size:15px;padding:0 7px}.mode-group{grid-template-columns:1fr!important}.two-fields{grid-template-columns:1fr}.access-page{padding-left:18px;padding-right:18px}.access-wordmark{font-size:42px}.recipe-delete-actions{flex-direction:column-reverse}.recipe-delete-actions button{width:100%}}@media(prefers-reduced-motion:reduce){button{transition:none}.access-brand:after,.intro:after{animation:none}}.ryokan-app{--ink:#322a20;--paper:#f5efe4;--gold:#b9a16c;padding-bottom:100px;background:var(--paper)}.ryokan-app .workspace{max-width:1180px;padding-top:96px}.ryokan-app.is-home .workspace{max-width:none;padding:0}.ryokan-app .topbar{position:absolute;z-index:20;inset:0 0 auto;max-width:none;padding:28px 5%;height:104px;border:0;background:transparent}.ryokan-app .brand-home{border:0;background:transparent;padding:0;text-align:left;color:inherit}.ryokan-app.is-home .topbar{color:#fff}.ryokan-app .topbar .brand-logo{color:inherit}.ryokan-app .header-actions{display:flex;gap:20px}.header-actions button{border:0;padding:8px;background:transparent;color:inherit}.header-menu{position:absolute;right:5%;top:90px;display:grid;min-width:210px;background:#faf5eb;color:#322a20;border:1px solid #cbbfa5;box-shadow:0 12px 40px #0002;border-radius:4px;padding:12px}.header-menu button{padding:13px 20px;background:none;border:0;text-align:left}.ryokan-app .bottom-navigation{position:fixed;z-index:30;bottom:0;left:0;right:0;display:flex;height:auto;min-height:78px;padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:#f7f2e8f5;border-top:1px solid #c7b999;backdrop-filter:blur(14px);border-radius:0;gap:0;justify-content:center}.ryokan-app .bottom-navigation [role=tab]{display:flex;flex:1;max-width:160px;min-width:0;gap:5px;flex-direction:column;padding:2px 0;font-size:12px;color:#81786c;background:transparent;box-shadow:none;border:0;min-height:60px;border-radius:0}.bottom-navigation [role=tab] span{display:flex;align-items:center;justify-content:center;min-height:29px}.bottom-navigation [role=tab]:nth-child(3) span,.bottom-navigation [role=tab][data-value=cook] span{width:43px;height:36px;border-radius:50%;background:#b89c63;color:#fff}.ryokan-hero{height:min(820px,78vh);min-height:590px;position:relative;overflow:hidden}.ryokan-hero>img{height:100%;width:100%;object-fit:cover;object-position:center 48%;display:block}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#17170f70,transparent 70%),linear-gradient(0deg,#12191070,transparent 70%)}.hero-message{position:absolute;left:max(7%,calc((100% - 1040px)/2));right:7%;top:30%;color:#fff}.hero-message>p{font-family:Zenza Mincho,serif;letter-spacing:.3em;font-size:16px}.hero-message h1{font-family:Zenza Mincho,serif;color:#fff!important;font-weight:500;font-size:clamp(42px,5vw,74px);line-height:1.5;letter-spacing:.1em;margin:24px 0 34px;text-shadow:0 2px 16px #12171055}.vertical-season{writing-mode:vertical-rl;position:absolute;right:0;top:28px;font-family:Zenza Mincho,serif;font-size:20px;letter-spacing:.35em}.hero-cta{display:flex;align-items:center;gap:17px;border:1px solid #eee2c6;background:#f8f1e7ed;color:#3d3424;padding:20px 25px;border-radius:6px;max-width:480px;width:100%;min-height:67px;font-size:16px;box-shadow:0 4px 22px #0002}.hero-cta>span{flex:1;text-align:left;line-height:1.5}.tiny-break{display:none}.home-paper{max-width:1120px;margin:auto;padding:48px 40px 24px;background:transparent}.condition-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:36px 0 26px}.condition-shortcuts button{background:transparent;border:0;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:14px;color:#655b49}.condition-shortcuts button>span{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border:1px solid #bdae8e;border-radius:50%;background:#f8f3e9}.home-note{text-align:center;line-height:2;color:#80745e;font-family:Zenza Mincho,serif;margin:30px 0 15px}.ryokan-app .main-tabs>[data-state=active]{margin-top:0}.ryokan-app:not(.is-home) .main-tabs>[data-state=active]{padding-top:20px}.ryokan-app.is-home footer{margin:0;padding:25px 0}.mypage-panel{max-width:800px;margin:auto}.mypage-panel>h1{font-family:Zenza Mincho,serif;font-size:32px}.mypage-panel>.secondary{margin-top:20px}.mypage-preferences{padding:25px;margin:30px 0;background:#fcf8ef;border:1px solid #dbceb6;border-radius:5px}.mypage-preferences h2{font-size:21px}.ryokan-app .account-menu{position:static}.ryokan-app button:focus-visible{outline:2px solid #917a4e;outline-offset:4px}.account-menu{z-index:40!important}.ryokan-app .recipe-dialog{z-index:50}@media(max-width:600px){.ryokan-app .topbar{height:90px;padding:22px 23px}.ryokan-app .header-actions{gap:5px}.ryokan-app .workspace{padding:88px 18px 0}.ryokan-hero{height:590px;min-height:0;max-height:82vh}.ryokan-hero>img{object-position:57% center}.hero-message{left:25px;right:24px;top:29%}.hero-message h1{font-size:42px;margin:16px 0 30px;letter-spacing:.07em}.hero-message>p{font-size:12px}.vertical-season{font-size:15px;top:14px;right:0}.hero-cta{padding:15px;gap:12px;font-size:14px;min-height:66px;margin-top:34px;max-width:none}.home-paper{padding:28px 22px 18px}.condition-shortcuts{gap:4px;margin:23px 0}.condition-shortcuts button{font-size:11px;gap:8px;padding:0}.condition-shortcuts button>span{height:53px;width:53px}.home-note{font-size:13px}.ryokan-app .bottom-navigation [role=tab]{font-size:10px;min-height:55px}.ryokan-app .bottom-navigation{min-height:72px}.ryokan-app{padding-bottom:88px}.ryokan-app .header-menu{right:18px;top:80px}.tiny-break{display:inline}.mypage-panel>h1{font-size:25px}.mypage-preferences{padding:18px}.mypage-preferences p{font-size:14px;line-height:1.8}}@media(max-width:340px){.hero-message h1{font-size:36px}.ryokan-app .topbar{padding:19px 18px}.hero-message{left:20px;right:20px}.hero-cta{font-size:12px}.hero-cta svg{width:17px;flex-shrink:0}.home-paper{padding-left:18px;padding-right:18px}.condition-shortcuts button>span{height:48px;width:48px}.vertical-season{font-size:13px}}.ryokan-app:not(.is-home) .brand-name{color:#322a20}.ryokan-app.is-home .brand-name,.ryokan-app.is-home .brand-roman{color:#fff}.mypage-panel .account-menu{position:static;justify-content:flex-start;background:transparent;padding:15px 0;gap:20px;flex-wrap:wrap}.ryokan-app .bottom-navigation{width:100%;max-width:none}.preview-banner+.ryokan-app .topbar{top:48px}.ryokan-app footer{padding-left:24px;padding-right:24px}.ryokan-app{padding-bottom:calc(100px + env(safe-area-inset-bottom))}@media(max-width:600px){.ryokan-app{padding-bottom:calc(88px + env(safe-area-inset-bottom))}}.home-entry-heading{font-family:Zenza Mincho,serif;text-align:center;color:#645943;letter-spacing:.12em;font-size:21px;margin:0 0 25px}.ryokan-home .home-paper{max-width:860px;padding-top:44px}.ryokan-home .condition-shortcuts{margin:0 0 24px}.ryokan-home .home-note{margin:27px 0 0}@media(max-width:600px){.home-entry-heading{font-size:17px;letter-spacing:.07em;margin-bottom:23px}.ryokan-home .home-paper{padding-top:32px;padding-bottom:23px}.ryokan-home .condition-shortcuts{margin-bottom:19px}.ryokan-home .home-note{margin-top:24px}}.ryokan-home .home-paper{padding-top:26px;padding-bottom:28px}.ryokan-home .home-note{margin:0;text-align:center}@media(max-width:600px){.ryokan-home .home-paper{padding-top:25px;padding-bottom:23px}}.ryokan-app .candidate-empty{background-color:#242119;background-image:linear-gradient(90deg,rgba(12,17,13,.87),rgba(12,17,13,.78) 44%,rgba(12,17,13,.52) 75%,rgba(12,17,13,.24)),url(/ryokan-garden-hero.webp);background-size:cover;background-position:center 64%;border:1px solid #6f6449;border-radius:6px;min-height:310px;padding:34px 30px;align-items:flex-start;text-align:left;color:#fff;isolation:isolate}.ryokan-app .candidate-empty:after{display:none}.ryokan-app .candidate-empty .empty-vessel{color:#fff;opacity:.94;width:69px;margin-bottom:16px}.ryokan-app .candidate-empty h3{color:#fff;font-size:24px;line-height:1.8;margin:0 0 16px;max-width:330px;text-shadow:0 2px 10px #0007}.ryokan-app .candidate-empty p{color:#f6f3eb;font-size:14px;line-height:1.9;max-width:275px;text-shadow:0 1px 5px #0008}@media(max-width:600px){.ryokan-app .candidate-empty{min-height:285px;padding:28px 25px;background-position:74% 64%}.ryokan-app .candidate-empty h3{font-size:22px;line-height:1.8;max-width:260px}.ryokan-app .candidate-empty p{max-width:230px}.ryokan-app .candidate-empty .empty-vessel{width:61px;margin-bottom:13px}}@media(max-width:340px){.ryokan-app .candidate-empty{padding:25px 21px;min-height:280px;background-position:82% 64%}.ryokan-app .candidate-empty h3{font-size:21px;max-width:225px}.ryokan-app .candidate-empty p{font-size:13px;max-width:215px}}.ryokan-app .cook-layout{display:flex;flex-direction:column;gap:24px;max-width:900px;margin:0 auto}.ryokan-app .cook-layout>.form-panel{padding:0;border:0;background:transparent;box-shadow:none;display:grid;gap:24px}.ryokan-app .cook-layout>.results-panel{position:relative;top:auto;width:100%;scroll-margin-top:24px}.ryokan-app .cook-layout .candidate-empty{min-height:330px;padding:35px 40px;background-position:center 66%}.ryokan-app .photo-heading{position:absolute;top:18px;right:20px;z-index:2;margin:0;border:0}.ryokan-app .photo-heading h2{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.ryokan-app .photo-heading>span{color:#fff;background:#1323195c;border:1px solid #f6f1e442;border-radius:4px;padding:5px 9px;font-size:12px}.ryokan-app .cook-layout .kitchen-note{display:none}.ryokan-app .condition-card{position:relative;isolation:isolate;overflow:hidden;padding:32px 36px;background:#fcf9f2;border:1px solid #d9d2c2;border-radius:7px;box-shadow:0 4px 14px #55472e05}.ryokan-app .condition-card .section-heading{margin-bottom:0;gap:13px}.ryokan-app .condition-card .section-heading:after{content:"";height:1px;background:#d8d2c1;flex:1;margin-left:8px}.ryokan-app .condition-card .section-number{background:none;border:0;color:#a38b5c;font-size:16px;min-width:20px;padding:0}.ryokan-app .condition-card h2{font-size:26px;color:#262e24;white-space:nowrap}.ryokan-app .condition-caption{font-size:13px;line-height:1.9;color:#7c786b;margin:10px 0 24px}.ryokan-app .condition-card .field-label{color:#3c4335;line-height:1.8}.ryokan-app .condition-card input:not([type=checkbox]):not([type=radio]),.ryokan-app .condition-card textarea{font-size:16px;line-height:1.8;background:#fffdf8;border-color:#d7d1c1}.ryokan-app .condition-card textarea{min-height:116px}.ryokan-app .condition-card .chip-group{gap:10px}.ryokan-app .condition-card .choice-chip{background:#fffdf8;border:1px solid #d2ccbb;border-radius:5px;color:#444b3d;min-height:44px;min-width:80px;justify-content:center;padding:10px 16px}.ryokan-app .condition-card .choice-chip.chosen{background:#304b3a;border-color:#304b3a;color:#fff}.ryokan-app .condition-card .choice-chip [data-slot=radio-group-item]{display:none}.ryokan-app .condition-card .pantry summary,.ryokan-app .condition-card .quick-dishes button,.ryokan-app .condition-card [data-slot=select-trigger],.ryokan-app .condition-card button{min-height:44px}.ryokan-app .condition-card .quick-dishes{gap:8px}.ryokan-app .condition-card .quick-dishes button{padding:8px 13px;border:1px solid #d8d0bd;background:#f5f1e7;color:#5d6651;font-size:13px}.ryokan-app .condition-card .hint{font-size:13px;line-height:1.9;color:#686b5b}.ryokan-app .condition-card .mode-card{min-height:82px}.ryokan-app .condition-card .equipment label{min-height:44px}.ryokan-app .condition-card .connection-note{line-height:1.9}.ryokan-app .condition-card:after{right:18px;bottom:22px;width:130px;height:120px;background:linear-gradient(132deg,transparent 48%,#304b3a 49%,#304b3a 50%,transparent 51%);border-radius:100% 0}.ryokan-app .condition-card:after,.ryokan-app .condition-card:before{content:"";position:absolute;z-index:-1;pointer-events:none;opacity:.035}.ryokan-app .condition-card:before{width:55px;height:12px;right:56px;bottom:63px;border-radius:100% 0 100% 0;background:#304b3a;box-shadow:20px -19px 0 #304b3a,-15px 20px 0 #304b3a;transform:rotate(-35deg)}.ryokan-app .cook-layout .recipe-card{margin-bottom:18px}.ryokan-app:not(.is-home) .topbar{background:#f5efe4;color:#302b22}.ryokan-app:not(.is-home) .brand-roman{color:#655b45}@media(max-width:600px){.ryokan-app .cook-layout,.ryokan-app .cook-layout>.form-panel{gap:18px}.ryokan-app .cook-layout .candidate-empty{min-height:300px;padding:27px 25px;background-position:76% 64%}.ryokan-app .photo-heading{top:14px;right:14px}.ryokan-app .photo-heading>span{font-size:10px;padding:4px 6px}.ryokan-app .condition-card{padding:23px 22px}.ryokan-app .condition-card h2{font-size:22px}.ryokan-app .condition-card .section-heading{gap:9px}.ryokan-app .condition-card .section-number{font-size:13px;min-width:18px}.ryokan-app .condition-caption{font-size:11px;margin:8px 0 20px}.ryokan-app .condition-card .choice-chip{min-width:0;padding:9px 12px;font-size:13px}.ryokan-app .condition-card .chip-group{gap:8px}.ryokan-app .condition-card .quick-dishes button{font-size:12px}.ryokan-app .condition-card .field-label{font-size:14px}.ryokan-app .condition-card .field-label>span{font-size:11px}.ryokan-app .condition-card .hint{font-size:12px}.ryokan-app .condition-card .two-fields{grid-template-columns:1fr 1fr;gap:12px}.ryokan-app .condition-card .secondary{white-space:normal;line-height:1.7;font-size:13px}.ryokan-app .condition-card .mode-group{grid-template-columns:1fr 1fr!important}.ryokan-app .condition-card .mode-card{padding:14px 10px;gap:7px}.ryokan-app .condition-card .mode-card strong{font-size:15px}.ryokan-app .condition-card .mode-card small{font-size:10px}.ryokan-app .condition-card .mode-card>svg{display:none}}@media(max-width:340px){.ryokan-app .condition-card{padding:21px 18px}.ryokan-app .condition-card h2{font-size:20px}.ryokan-app .condition-card .section-heading:after{margin-left:2px}.ryokan-app .condition-card .choice-chip{padding:9px 10px}.ryokan-app .cook-layout .candidate-empty{padding:27px 21px;min-height:295px}.ryokan-app .condition-card .mode-card{padding:13px 8px}.ryokan-app .condition-card .mode-card small{font-size:9px}}.ryokan-app .header-actions button{min-width:44px;min-height:44px}.ryokan-app .condition-card .choice-chip [data-slot=radio-group-item]{display:block;position:absolute;opacity:0;overflow:hidden}.ryokan-app .condition-card .choice-chip:has(:focus-visible){outline:2px solid #8b774f;outline-offset:3px}.preview-result-trigger{position:fixed;right:12px;bottom:94px;z-index:45;min-height:44px;padding:9px 15px;background:#eee4cc;color:#342e24;border:1px solid #bda87c;border-radius:5px;font-size:12px}.ryokan-app .condition-card [data-slot=checkbox],.ryokan-app .condition-card [data-slot=radio-group-item]{width:16px;min-width:16px;height:16px;min-height:16px;flex-shrink:0}.ryokan-app .condition-card .choice-chip [data-slot=radio-group-item]{width:1px;min-width:1px;height:1px;min-height:1px}.ryokan-app .condition-card .mode-card>span{min-width:0;flex:1}.ryokan-app .condition-card .mode-card small{font-size:11px;line-height:1.6;white-space:normal}.ryokan-app .condition-card .mode-card strong{line-height:1.7}.ryokan-app .condition-caption{color:#686a5c}.ryokan-app .condition-card .section-number{color:#876f43}.ryokan-app .condition-card .fine-print{color:#626857;font-size:12px;line-height:1.95}.ryokan-app .condition-card input::placeholder,.ryokan-app .condition-card textarea::placeholder{color:#717568;opacity:1}.ryokan-app .bottom-navigation [role=tab]{color:#71695b}.ryokan-app .bottom-navigation [role=tab][data-state=active]{color:#655135}.ryokan-app .bottom-navigation [role=tab]:nth-child(3) span{background:#a88b50}