:root{--ink:#332d28;--accent:#ba492a;--accent-hover:#983a23;--muted:#766b61;--paper:#fffaf4;--surface:#fff;--soft:#f8e9dd;--line:#e9e0d6;--success:#436849;--nav-height:76px}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,sans-serif;font-size:16px;line-height:1.75}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}input,textarea,select{background:var(--surface);border:1px solid #d9cec2;border-radius:12px;min-width:0;min-height:50px;padding:13px 14px;font-size:16px}input::placeholder,textarea::placeholder{color:#8a7b6e;opacity:1}textarea{resize:vertical;min-height:112px;line-height:1.8}h1,h2,h3,p{margin:0}h1,h2,h3{overflow-wrap:anywhere}h1{letter-spacing:-.045em;text-wrap:pretty;font-size:32px;font-weight:700;line-height:1.5}h2{font-size:23px;font-weight:650;line-height:1.5}h3{font-size:18px;font-weight:600;line-height:1.6}fieldset{border:0;min-width:0;margin:0;padding:0}main{max-width:1064px;margin:auto;padding:0 32px}.site-header{justify-content:space-between;align-items:center;gap:25px;max-width:1128px;min-height:88px;margin:auto;padding:0 32px;display:flex}.brand{letter-spacing:-.055em;white-space:nowrap;align-items:center;gap:9px;font-size:24px;font-weight:750;display:inline-flex}.brand>svg{color:var(--accent);stroke-width:1.8px;flex-shrink:0}.desktop-nav{align-items:center;gap:32px;display:flex}.desktop-nav button{min-height:48px;color:var(--muted);align-items:center;gap:8px;padding:8px 0;font-size:14px;font-weight:500;display:flex}.desktop-nav .nav-active{color:var(--accent)}.header-account{justify-content:flex-end;min-width:110px;display:flex}.demo-login,.account-menu>summary{background:var(--soft);cursor:pointer;border-radius:30px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:10px 15px;font-size:13px;list-style:none;display:flex}.account-menu>summary::-webkit-details-marker{display:none}.account-menu{position:relative}.account-popover{border:1px solid var(--line);background:var(--surface);z-index:8;overflow-wrap:anywhere;border-radius:16px;width:240px;max-width:calc(100vw - 40px);padding:20px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 10px 30px #553a2014}.account-popover p{margin-bottom:12px;font-size:14px;font-weight:600}.account-popover button{text-align:left;border-top:1px solid var(--line);width:100%;min-height:44px;color:var(--accent);padding:10px 0;font-size:14px;display:block}.demo-strip{color:#736150;background:#f4eadf;justify-content:center;align-items:center;gap:8px;padding:8px 20px;font-size:12px;display:flex}.live-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:5px;height:5px}.eyebrow{color:var(--muted);letter-spacing:.07em;margin-bottom:9px;font-size:13px;font-weight:500}.notebook-welcome{grid-template-rows:auto 1fr;grid-template-columns:1fr minmax(280px,360px);align-items:center;column-gap:50px;padding:37px 0 32px;display:grid}.notebook-welcome h1{grid-column:1;align-self:start;font-size:36px}.notebook-welcome .eyebrow{grid-column:1}.add-actions{grid-area:1/2/3}.import-shortcut{background:var(--accent);color:#fff;border-radius:15px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:64px;padding:18px 20px;transition:background .15s;display:flex}.import-shortcut:hover{background:var(--accent-hover)}.import-shortcut>span{align-items:center;gap:11px;font-size:15px;font-weight:600;display:flex}.import-shortcut svg{flex-shrink:0}.text-button{justify-content:center;align-items:center;gap:8px;min-height:44px;padding:8px 0;font-size:14px;line-height:1.6;display:inline-flex}.button{border-radius:12px;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:14px 20px;font-size:15px;font-weight:600;line-height:1.5;transition:background .15s;display:inline-flex}.button svg{flex-shrink:0}.primary{background:var(--accent);color:#fff}.primary:hover{background:var(--accent-hover)}.secondary{background:var(--surface);border:1px solid var(--line);color:var(--ink)}.secondary:hover{background:var(--soft)}.danger{color:#fff;background:#a23c32;margin-right:10px}.library{padding-bottom:45px}.search{border:1px solid var(--line);background:var(--surface);max-width:460px;color:var(--muted);border-radius:12px;align-items:center;gap:11px;margin-bottom:27px;padding:0 15px;display:flex}.search>svg{flex-shrink:0}.search input{background:0 0;border:0;width:100%;min-height:52px;padding:10px 0;font-size:15px}.search button{place-items:center;min-width:44px;min-height:44px;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.section-heading h2{align-items:center;gap:15px;display:flex}.section-heading h2>span{color:var(--muted);font-size:13px;font-weight:400}.library-caption{color:var(--muted);font-size:13px}.recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:30px 24px;display:grid}.recipe-card{text-align:left;width:100%;min-width:0;color:var(--ink);padding:0;display:block}.card-photo{aspect-ratio:1.4;background-position:50%;background-size:cover;background-color:var(--soft);border-radius:17px;width:100%;transition:filter .2s;position:relative;overflow:hidden}.recipe-card:hover .card-photo{filter:brightness(.96)}.food-chicken{background-image:url(/images/chicken.jpg)}.food-pasta{background-image:url(/images/pasta.jpg)}.food-soup{background-image:url(/images/soup.jpg)}.food-manual{background:radial-gradient(circle,#fff8ed 0 32%,#e9d9c4 32.5% 33%,#f5eadc 34% 100%)}.manual-photo-icon{color:#a17e5b;margin:auto;position:absolute;inset:0}.photo-disclaimer{color:#68513d;background:#fffcf5ed;border-radius:5px;padding:1px 6px;font-size:11px;position:absolute;bottom:9px;left:10px}.card-content{padding:13px 0 0}.card-content h3{letter-spacing:-.025em;margin-bottom:6px;font-size:18px;font-weight:600;line-height:1.6}.card-description{color:var(--muted);margin-bottom:8px;font-size:13px}.card-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;line-height:1.6;display:flex}.sample-label{color:#896044;border-left:1px solid #dacdbc;padding-left:8px;font-size:11px}.card-chevron{display:none}.loading-state,.empty{text-align:center;color:var(--muted);background:#fffcf7;border:1px dashed #ddcdbc;border-radius:20px;padding:45px 24px}.loading-state>svg{color:var(--accent);margin-bottom:12px}.empty-icon{background:var(--soft);width:70px;height:70px;color:var(--accent);border-radius:50%;place-items:center;margin:0 auto 19px;display:grid}.empty h3{color:var(--ink);margin-bottom:9px;font-size:20px}.empty p{margin-bottom:24px;font-size:14px;line-height:1.9}.content-narrow{max-width:700px;margin:24px auto 45px}.back{min-height:44px;color:var(--muted);align-items:center;gap:5px;margin-bottom:23px;padding:0;font-size:14px;display:flex}.muted{color:var(--muted);font-size:14px;line-height:1.9}.page-intro{margin:15px 0 28px}.import-page h1{font-size:34px}.import-box{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:28px}.import-heading{align-items:center;gap:10px;margin-bottom:18px;display:flex}.import-heading>svg{color:var(--accent)}.import-heading h2{font-size:17px}.small-badge{background:var(--soft);color:#80543b;border-radius:6px;margin-left:auto;padding:3px 8px;font-size:12px}.import-box input{width:100%}.import-submit{width:100%;margin-top:14px}.demo-options{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;margin:23px 0 18px;font-size:13px;display:flex}.demo-options select{background:var(--paper);flex:1;min-height:44px;padding:9px 10px;font-size:13px}.import-note{color:var(--muted);border-top:1px solid var(--line);padding-top:17px;font-size:12px;line-height:1.9}.manual-entry{text-align:left;align-items:center;gap:14px;width:100%;margin-top:14px;padding:23px 0;display:flex}.manual-entry-icon{background:var(--soft);min-width:46px;height:46px;color:var(--accent);border-radius:12px;place-items:center;display:grid}.manual-entry>span:nth-child(2){flex:1}.manual-entry strong{font-size:15px;font-weight:600;display:block}.manual-entry small{color:var(--muted);font-size:12px}.manual-entry>svg{color:var(--muted);flex-shrink:0}.warning,.error,.notice{overflow-wrap:anywhere;border-radius:12px;margin:20px 0;padding:18px 20px;font-size:14px;line-height:1.9}.warning{color:#76541e;background:#fbedd4;border:1px solid #ecd9b6}.error{color:#983b26;white-space:pre-wrap;background:#fbe8e2}.notice{color:#3e6240;background:#ecf2e8;align-items:center;gap:10px;display:flex}.notice>svg{flex-shrink:0}.notice button{flex-shrink:0;place-items:center;min-width:44px;min-height:44px;margin-left:auto;display:grid}.field{flex-direction:column;gap:10px;margin:25px 0;font-size:15px;font-weight:500;display:flex}.field>span{color:#89563c;font-size:12px}.field>input,.field>textarea{width:100%;font-weight:400}.servings-field{max-width:150px}.editor h1+.muted{margin-top:12px}.editor h2{margin:34px 0 12px}.editor h2+.muted{margin-bottom:17px}.editor form{padding-top:2px}.ingredient-labels,.ingredient-edit{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) 44px;gap:9px;display:grid}.ingredient-labels{color:var(--muted);margin:12px 0;font-size:12px}.ingredient-edit{margin-bottom:11px}.ingredient-edit input{width:100%;padding:12px}.icon-button{min-width:44px;min-height:50px;color:var(--muted);place-items:center;padding:0;display:grid}.step-edit{align-items:flex-start;gap:12px;margin:18px 0;display:flex}.step-edit>span{min-width:30px;height:34px;color:var(--accent);background:var(--soft);border-radius:50%;place-items:center;margin-top:10px;font-size:15px;font-weight:600;display:grid}.step-edit textarea{flex:1;width:100%}.save-bar{border-top:1px solid var(--line);z-index:3;background:#fffaf4f5;margin-top:30px;padding:18px 0;position:sticky;bottom:0}.save-bar .button{width:100%}.detail-photo{background-position:50%;background-size:cover;border-radius:20px;height:300px;margin-bottom:26px;position:relative}.detail-photo:after{content:"料理イメージ";color:#68513d;background:#fffcf5ed;border-radius:6px;padding:3px 8px;font-size:11px;position:absolute;bottom:13px;left:14px}.detail-photo.food-manual{height:180px}.detail-photo.food-manual:after{content:"わたしのレシピ";color:#93714e;letter-spacing:.1em;background:0 0;place-items:center;font-size:15px;display:grid;inset:0}.detail h1{letter-spacing:-.035em;font-size:32px;line-height:1.6}.detail h1+.muted{margin-top:10px}.sample-note{color:#826447;margin-top:20px;font-size:12px;line-height:1.9}.detail-actions{gap:12px;margin:26px 0 35px;display:flex}.detail-actions .primary{flex:1}.detail-actions .secondary{min-width:105px}.ingredients-heading{margin-bottom:14px}.ingredients-heading h2{margin:0}.serving-control{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;display:flex;overflow:hidden}.serving-control button{width:44px;height:44px;color:var(--accent);place-items:center;padding:0;display:grid}.serving-control span{text-align:center;min-width:60px;font-size:14px}.ingredients-heading+.muted{font-size:12px}.ingredient-list{margin:9px 0 37px}.ingredient-list label{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:13px;min-height:60px;padding:16px 0;display:flex}.ingredient-list input{width:22px;height:22px;min-height:22px;accent-color:var(--accent);flex-shrink:0;margin:0}.ingredient-list label>span{overflow-wrap:anywhere}.ingredient-list strong{text-align:right;overflow-wrap:anywhere;flex-shrink:0;max-width:45%;margin-left:auto;font-size:15px;font-weight:500}.ingredient-list .checked{color:#8c8379}.ingredient-list .checked>span{text-decoration:line-through}.steps-list{margin:5px 0 30px;padding:0;list-style:none}.steps-list li{border-bottom:1px solid var(--line);align-items:flex-start;gap:16px;padding:23px 0;display:flex}.steps-list li>span{background:var(--soft);min-width:34px;height:34px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:600;display:grid}.steps-list p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.95}.recipe-notes{background:var(--soft);border-radius:16px;margin:30px 0;padding:24px}.recipe-notes h3{align-items:center;gap:9px;margin-bottom:10px;font-size:15px;display:flex}.recipe-notes p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px}.source-link{margin-bottom:15px}.delete-area{border-top:1px solid var(--line);margin-top:32px;padding-top:10px}.delete-button{color:#9a4d39}.delete-area .warning p{margin-bottom:17px}.cook-mode{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:22px;padding:34px}.cook-heading{color:var(--accent);justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.cook-mode h1{margin:20px 0 29px;font-size:23px;line-height:1.65}.progress{gap:7px;display:flex}.progress span{background:#f0e5d9;border-radius:5px;flex:1;height:5px}.progress .done{background:var(--accent)}.step-count{color:var(--accent);letter-spacing:.07em;margin:32px 0 22px;font-size:13px}.step-count strong{margin:0 4px;font-size:30px;font-weight:650}.cook-instruction{text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;min-height:230px;font-size:27px;line-height:1.95}.cook-controls{gap:12px;margin:28px 0;display:flex}.cook-controls .button{flex:1}.cook-controls .secondary{flex:none}.cook-mode details{border-top:1px solid var(--line);text-align:left;padding-top:18px}.cook-mode summary{cursor:pointer;min-height:44px;color:var(--muted);padding:8px 0;font-size:14px}.cook-ingredient{border-bottom:1px solid var(--line);overflow-wrap:anywhere;justify-content:space-between;gap:15px;padding:12px 0;font-size:14px;display:flex}.complete{padding:35px 0 16px}.complete>span{background:var(--soft);width:76px;height:76px;color:var(--accent);border-radius:50%;place-items:center;margin:0 auto 23px;display:grid}.complete h2{margin-bottom:12px;font-size:24px}.complete p{color:var(--muted);margin-bottom:26px;font-size:14px}.complete .text-button{margin:10px auto 0;display:flex}footer{border-top:1px solid var(--line);max-width:1064px;color:var(--muted);align-items:center;gap:10px;margin:0 auto;padding:25px 32px;font-size:12px;display:flex}footer>svg{color:var(--accent);flex-shrink:0}footer>span{margin-left:auto;font-size:11px}.mobile-nav{display:none}.auth-shell{max-width:490px;margin:44px auto;padding:0 24px 28px}.auth-shell>.brand{justify-content:center;margin-bottom:32px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:23px;padding:32px}.auth-card h1{margin-bottom:15px;font-size:29px;line-height:1.65}.auth-card>p:not(.eyebrow){color:var(--muted);margin-bottom:25px;font-size:14px}.auth-card .field{text-align:left}.auth-card form .button{width:100%;margin:5px 0 10px}.auth-card>.button{margin-bottom:12px}.auth-card>.text-button{justify-content:center;margin:0 auto;display:flex}.auth-card .auth-footnote{line-height:1.9;margin:23px 0 0!important;font-size:12px!important}.welcome-photos{justify-content:center;gap:12px;margin-bottom:5px;padding:0 8px 25px;display:flex}.welcome-photos>span{background-position:50%;background-size:cover;border:5px solid #fff;border-radius:15px;width:46%;height:145px;display:block;transform:rotate(-7deg);box-shadow:0 5px 17px #47301c14}.welcome-photos>span+span{margin-top:15px;transform:rotate(7deg)}.account-error{color:#983b26;background:#fbe8e2;padding:14px 24px;font-size:14px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:800px){.desktop-nav{gap:18px}.site-header{gap:18px;padding:0 25px}.desktop-nav button{font-size:13px}.notebook-welcome{grid-template-columns:1fr 310px;column-gap:30px}.notebook-welcome h1{font-size:29px}.recipe-grid{gap:25px 18px}.card-content h3{font-size:16px}.card-description{display:none}.header-account{min-width:90px}}@media (max-width:640px){body{font-size:15px}main{padding:0 22px}.site-header{gap:12px;min-height:77px;padding:0 22px}.brand{gap:7px;font-size:23px}.brand>svg{width:25px}.desktop-nav{display:none}.header-account{min-width:0}.demo-login,.account-menu>summary{gap:5px;min-height:40px;padding:9px 11px;font-size:12px}.demo-login>svg,.account-menu>summary>svg{width:17px}.demo-strip{gap:6px;padding:7px 12px;font-size:11px}.notebook-welcome{padding:26px 0 22px;display:block}.eyebrow{margin-bottom:8px;font-size:12px}.notebook-welcome h1{letter-spacing:-.045em;margin-bottom:23px;font-size:29px}.import-shortcut{border-radius:14px;min-height:58px;padding:16px}.import-shortcut>span{gap:9px;font-size:14px}.library{padding-bottom:29px}.search{max-width:none;margin-bottom:23px;padding:0 13px}.search input{min-height:50px;font-size:16px}.section-heading{margin-bottom:16px}.section-heading h2{gap:12px;font-size:20px}.section-heading h2>span{font-size:12px;font-weight:400}.library-caption{display:none}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.card-photo{aspect-ratio:1.18;border-radius:14px}.card-content{padding-top:10px}.card-content h3{letter-spacing:-.03em;margin-bottom:6px;font-size:15px;line-height:1.65}.card-meta{gap:5px;font-size:12px}.sample-label,.card-description{display:none}.photo-disclaimer{padding:0 5px;font-size:11px;bottom:6px;left:7px}.recipe-card:last-child:nth-child(odd):not(:first-child){border-top:1px solid var(--line);grid-column:1/-1;align-items:center;gap:14px;padding-top:21px;display:flex}.recipe-card:last-child:nth-child(odd):not(:first-child) .card-photo{aspect-ratio:auto;border-radius:11px;flex-shrink:0;width:66px;height:66px}.recipe-card:last-child:nth-child(odd):not(:first-child) .card-content{flex:1;padding:0}.recipe-card:last-child:nth-child(odd):not(:first-child) .card-content h3{font-size:14px}.recipe-card:last-child:nth-child(odd):not(:first-child) .photo-disclaimer{display:none}.recipe-card:last-child:nth-child(odd):not(:first-child) .card-chevron{color:var(--muted);flex-shrink:0;display:block}.recipe-card:only-child{grid-column:1/-1;grid-template-columns:105px 1fr;align-items:center;gap:16px;display:grid}.recipe-card:only-child .card-photo{aspect-ratio:1;height:105px}.recipe-card:only-child .card-content{padding:0}.recipe-card:only-child h3{font-size:17px}.empty,.loading-state{border-radius:17px;padding:30px 17px}.empty h3{font-size:18px}.empty p{font-size:13px}.empty .button{font-size:14px}.content-narrow{margin:18px auto 30px}.back{margin-bottom:21px;font-size:13px}.content-narrow h1,.detail h1{font-size:27px}.content-narrow h2{font-size:21px}.muted{font-size:13px}.import-page h1{font-size:30px}.page-intro{margin:13px 0 24px;font-size:13px}.import-box{border-radius:18px;padding:21px 18px}.import-heading h2{font-size:16px}.demo-options{gap:9px;font-size:12px}.demo-options select{max-width:100%;font-size:13px}.import-note{font-size:12px}.manual-entry{gap:11px}.manual-entry strong{font-size:14px}.manual-entry small{font-size:12px}.warning,.error,.notice{padding:15px;font-size:13px}.notice{gap:8px}.notice>svg{display:none}.field{margin:24px 0;font-size:14px}.field>span{font-size:12px}.ingredient-labels,.ingredient-edit{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr) minmax(0,1fr) 34px;gap:6px}.ingredient-edit input{border-radius:9px;min-height:48px;padding:10px 7px;font-size:16px}.icon-button{min-width:34px;min-height:48px}.ingredient-labels{font-size:12px}.step-edit{gap:8px}.step-edit>span{width:26px;min-width:26px;height:28px;font-size:13px}.step-edit textarea{border-radius:11px;padding:12px;font-size:16px}.save-bar{bottom:calc(var(--nav-height) + env(safe-area-inset-bottom));margin-top:24px;padding:13px 0}.detail-photo{border-radius:17px;height:220px;margin-bottom:23px}.detail-photo.food-manual{height:150px}.detail h1+.muted{font-size:14px}.detail-actions{gap:10px;margin:24px 0 31px}.detail-actions .button{padding:13px 15px;font-size:14px}.detail-actions .secondary{min-width:84px}.sample-note{margin-top:16px;font-size:12px}.serving-control button{width:42px;height:44px}.serving-control span{min-width:56px;font-size:14px}.ingredient-list label{padding:16px 0;font-size:15px}.ingredient-list strong{font-size:14px}.steps-list li{gap:12px;padding:22px 0}.steps-list p{font-size:15px}.steps-list li>span{width:29px;min-width:29px;height:29px;margin-top:2px;font-size:12px}.recipe-notes{padding:20px}.recipe-notes p{font-size:14px}.source-link{padding:13px;font-size:13px}.delete-area .button{padding:12px 15px;font-size:13px}.cook-mode{border-radius:20px;padding:25px 20px}.cook-mode h1{font-size:21px;line-height:1.65}.cook-heading{gap:8px;font-size:12px}.cook-heading svg{width:21px}.cook-instruction{min-height:230px;font-size:25px;line-height:1.95}.cook-controls{gap:9px}.cook-controls .button{padding:13px 12px;font-size:14px}.cook-controls .secondary{flex:none}.step-count{margin-top:26px}.complete h2{font-size:22px}.complete p{font-size:13px}.complete .button{font-size:14px}.cook-mode summary,.cook-ingredient{font-size:13px}.mobile-nav{z-index:5;border-top:1px solid var(--line);padding:11px 12px calc(11px + env(safe-area-inset-bottom));min-height:var(--nav-height);background:#fffefd;justify-content:space-around;display:flex;position:fixed;inset:auto 0 0}.mobile-nav button{min-width:110px;min-height:52px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:12px;display:flex}.mobile-nav .active{color:var(--accent)}footer{margin-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom));flex-wrap:wrap;gap:7px;padding:23px 22px;font-size:11px}footer>span{width:100%;margin-left:27px;font-size:11px}.auth-shell{margin:32px auto 0;padding:0 22px 28px}.auth-shell>.brand{margin-bottom:28px}.auth-card{border-radius:21px;padding:27px 22px}.auth-card h1{letter-spacing:-.04em;font-size:26px}.auth-card>p:not(.eyebrow),.auth-card .field{font-size:14px}.auth-card .text-button{font-size:13px}.auth-card .auth-footnote{font-size:11px!important}.welcome-photos{gap:8px;padding:0 0 23px}.welcome-photos>span{border-width:4px;width:48%;height:124px}.account-error{padding:12px 22px;font-size:13px}}@media (max-width:360px){main,.site-header{padding:0 18px}.brand{font-size:21px}.notebook-welcome h1{font-size:27px}.recipe-grid{gap:22px 12px}.card-content h3{font-size:14px}.card-meta{font-size:11px}.demo-strip{font-size:10px}.cook-mode{padding:23px 16px}.cook-instruction{font-size:23px}.cook-controls .button{gap:5px;font-size:13px}.ingredient-labels,.ingredient-edit{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr) 30px;gap:4px}.icon-button{min-width:30px}.demo-options{display:block}.demo-options select{width:100%;margin-top:9px;display:block}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.ingredient-extra{gap:12px;margin:0 0 20px;display:flex}.ingredient-extra label{min-width:0;color:var(--muted);flex:1;font-size:12px}.ingredient-extra input,.ingredient-extra select{width:100%;margin-top:5px}.warning ul{margin:8px 0;padding-left:20px}.detail-photo.food-youtube:after{content:"YouTubeのサムネイル"}.preparation-check{align-items:center;gap:10px;margin:16px 0;display:flex}.preparation-check input{flex-shrink:0;width:24px;height:24px}.legal-page{overflow-wrap:anywhere;max-width:800px;margin:0 auto;padding:32px 24px 56px;line-height:1.95}.legal-page header{margin:36px 0 24px}.legal-page h1{font-size:clamp(26px,5vw,36px);line-height:1.5}.legal-page h2{margin:0 0 14px;font-size:20px;line-height:1.6}.legal-page section{border-bottom:1px solid var(--line);padding:28px 0}.legal-page p{margin:12px 0}.legal-page ul{padding-left:24px}.legal-page li{margin:10px 0}.legal-page dt{margin:24px 0 8px;font-weight:700}.legal-page dd{margin-left:0}.legal-page a,.auth-footnote a{text-underline-offset:4px;text-decoration:underline}.legal-eyebrow,.legal-page header>p{color:var(--muted);font-size:13px}.legal-notice{background:var(--surface,#fffaf3);border:1px solid var(--line);border-radius:12px;padding:18px;font-size:14px}.legal-links{flex-wrap:wrap;justify-content:center;gap:8px 24px;font-size:12px;display:flex}.legal-links a{text-underline-offset:4px;align-items:center;min-height:44px;text-decoration:underline;display:inline-flex}.site-legal-links{color:var(--muted);padding:16px 20px 100px}.legal-page>.legal-links{margin-top:32px}.support-shell{overflow-wrap:anywhere;max-width:640px;margin:32px auto;padding:0 20px}.support-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;margin-top:24px;padding:28px}.support-card h1{margin-top:0;font-size:clamp(24px,5vw,30px);line-height:1.5}.support-card h2{font-size:22px}.support-card fieldset{border:0;flex-direction:column;gap:12px;min-width:0;margin:24px 0 0;padding:0;display:flex}.support-card label{font-weight:600}.support-card textarea{resize:vertical;width:100%}.support-card .button{width:100%;min-height:50px}.support-card .auth-footnote{margin:4px 0 12px}.support-card .receipt-id{overflow-wrap:anywhere;background:var(--paper);border-radius:10px;padding:16px;font-size:13px}.contact-honeypot{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.account-danger{border-top:1px solid var(--line);margin-top:28px;padding-top:20px}.account-danger ul{padding-left:22px}.support-card .delete-confirm{align-items:flex-start;gap:12px;padding:12px 0;font-weight:400;display:flex}.delete-confirm input{width:24px;height:24px;min-height:24px;accent-color:var(--accent);flex-shrink:0;margin:4px 0 0}.account-popover a{min-height:44px;padding:10px 12px;display:block}@media (max-width:480px){.support-card{padding:24px 18px}}.google-signin{background:var(--surface);width:100%;color:var(--ink);border:1px solid #b9b3ad;min-height:52px;margin:12px 0}.google-signin:hover{background:var(--paper)}.auth-divider{color:var(--muted);margin:20px 0;font-size:13px}.import-progress{max-width:430px;margin:36px auto 56px;padding:0 24px}.import-progress-source{align-items:center;gap:12px;display:flex}.import-progress-source>span{background:var(--soft);width:40px;height:40px;color:var(--accent);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.import-progress-source .eyebrow{letter-spacing:.1em;margin:0 0 3px;font-size:10px}.import-progress-source p:last-child{overflow-wrap:anywhere;margin:0;font-size:13px}.import-progress-illustration{width:86px;height:86px;color:var(--accent);place-items:center;margin:26px auto 8px;display:grid;position:relative}.import-progress-illustration:before{content:"";background:var(--soft);border-radius:50%;width:80px;height:12px;position:absolute;bottom:8px}.import-progress-illustration>svg{transform-origin:50% 85%;animation:2.4s ease-in-out infinite import-pot-simmer;position:relative}.import-progress .steam{border-left:1.5px solid var(--accent);border-radius:50%;width:5px;height:16px;animation:2.2s ease-in-out infinite import-steam;position:absolute;top:-3px;left:31px}.import-progress .steam-two{animation-delay:.6s;top:-8px;left:43px}.import-progress .steam-three{animation-delay:1.2s;left:55px}.import-progress-copy{text-align:center}.import-progress-copy .eyebrow{color:var(--accent);margin:0 0 10px;font-size:12px}.import-progress-copy h1{letter-spacing:.03em;margin:0;font-size:28px;line-height:1.6}.import-progress-copy .muted{max-width:300px;margin:14px auto 26px;font-size:13px}.import-progress-steps{gap:6px;margin:0;padding:0;list-style:none;display:grid}.import-progress-steps li{border-left:3px solid #0000;border-radius:12px;align-items:center;gap:12px;padding:14px 12px;display:flex}.import-progress-steps li+li{border-top:0}.import-step-symbol{width:28px;height:28px;color:var(--success);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.import-progress-steps strong{flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.import-progress-steps small{color:var(--muted);margin-top:3px;font-size:12px;display:block}.import-progress-steps .current .import-step-symbol{background:var(--soft);color:var(--accent)}.import-progress-steps .current strong{color:var(--accent)}.import-progress-steps .current svg{animation:1.2s linear infinite import-spin}.import-progress-steps .waiting{color:var(--muted)}.import-progress-steps .waiting .import-step-symbol{color:var(--line)}.import-progress-timing{text-align:center;color:var(--muted);max-width:300px;margin:22px auto 18px;font-size:12px}.import-progress-timing p{margin:8px 0}.import-elapsed{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:7px;display:flex}.import-elapsed span{background:var(--accent);border-radius:50%;width:5px;height:5px}.import-progress-next{color:var(--muted);justify-content:center;align-items:center;gap:7px;font-size:12px;display:flex}.import-progress-next svg{flex-shrink:0}.import-progress-stay{color:var(--muted);text-align:center;font-size:11px}@keyframes import-spin{to{transform:rotate(360deg)}}@keyframes import-steam{0%,to{opacity:.15;transform:translateY(3px)rotate(-8deg)}50%{opacity:.6;transform:translateY(-5px)rotate(8deg)}}@media (prefers-reduced-motion:reduce){.import-progress .steam,.import-progress-illustration>svg,.import-status-badge>svg,.import-status-dots span,.import-activity-track span,.import-progress-copy,.import-progress-steps .current,.import-progress-steps .current svg{animation:none}}@media (max-width:400px){.import-progress{margin-top:24px;padding:0 20px}.import-progress-copy h1{font-size:25px}}.import-status-badge{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--line));background:var(--soft);color:var(--accent);border-radius:24px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:0 0 14px;padding:7px 13px;font-size:13px;font-weight:600;display:inline-flex}.import-status-badge>svg{animation:1.2s linear infinite import-spin}.import-status-dots{align-items:center;gap:3px;display:inline-flex}.import-status-dots span{background:currentColor;border-radius:50%;width:3px;height:3px;animation:1.4s ease-in-out infinite import-dot-breathe}.import-status-dots span:nth-child(2){animation-delay:.18s}.import-status-dots span:nth-child(3){animation-delay:.36s}.import-activity-track{background:var(--soft);border-radius:3px;height:3px;margin:-8px 0 20px;overflow:hidden}.import-activity-track span{background:var(--accent);border-radius:inherit;width:35%;height:100%;animation:2s ease-in-out infinite import-activity-sweep;display:block}.import-progress-steps .current{background:var(--soft);border-left-color:var(--accent);animation:.4s ease-out import-stage-enter}.import-progress-steps .current .import-step-symbol{background:var(--surface);width:34px;height:34px;box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 16%, transparent)}.import-progress-steps .current .import-step-symbol svg{width:21px;height:21px}.import-progress-steps .current small{color:var(--ink)}.import-step-active-label{background:var(--accent);color:var(--surface);white-space:nowrap;border-radius:5px;padding:1px 6px;font-size:10px}.import-progress-copy{animation:.4s ease-out import-stage-enter}.import-elapsed{color:var(--ink);font-size:13px;font-weight:500}@keyframes import-pot-simmer{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-3px)rotate(2deg)}}@keyframes import-dot-breathe{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@keyframes import-activity-sweep{0%{transform:translate(-110%)}to{transform:translate(390%)}}@keyframes import-stage-enter{0%{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.import-status-badge>svg,.import-status-dots span,.import-activity-track span,.import-progress-copy,.import-progress-steps .current,.import-progress-illustration>svg{animation:none}.import-activity-track span{opacity:.4;width:100%}}.category-filters{flex-wrap:wrap;gap:8px;margin:-3px 0 24px;display:flex}.category-filters button{border:1px solid var(--line);min-height:40px;color:var(--muted);background:0 0;border-radius:24px;align-items:center;gap:7px;padding:7px 13px;font-size:13px;display:inline-flex}.category-filters button span{font-variant-numeric:tabular-nums;opacity:.8;font-size:11px}.category-filters button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--surface);font-weight:600}.category-field-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;display:flex}.category-field select{border:1px solid var(--line);background:var(--surface);border-radius:10px;width:100%;min-height:48px;padding:12px;font-size:16px}.category-origin{background:var(--soft);color:var(--accent);border-radius:5px;padding:2px 8px;font-size:11px}.category-help{color:var(--muted);margin:6px 0 0;font-size:12px;font-weight:400}.detail-category{background:var(--soft);color:var(--accent);border-radius:18px;margin:0 0 10px;padding:3px 12px;font-size:12px;display:inline-block}@media (pointer:coarse){.category-filters button{min-height:44px}}
