@import"https://fonts.googleapis.com/css2?family=Lobster+Two:wght@400;700&display=swap";:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f2f2f2;background:#090909;font-synthesis:none;text-rendering:optimizeLegibility;--background: #090909;--surface: #141414;--surface-raised: #1c1c1c;--surface-pressed: #252525;--border: #3a3a3a;--border-strong: #595959;--text: #f2f2f2;--text-muted: #a2a2a2;--text-subtle: #777777;--focus: #ffffff;--nav-height: 64px}*{box-sizing:border-box}html{min-width:320px;min-height:100%;overflow-x:hidden;background:var(--background);scrollbar-color:var(--border-strong) var(--background)}body{min-width:320px;min-height:100vh;min-height:100svh;margin:0;overflow-x:hidden;background:var(--background);color:var(--text)}body,button,input,textarea{-webkit-tap-highlight-color:rgba(255,255,255,.1)}button,input,textarea{font:inherit}button{border:0}button:focus-visible,input:focus-visible,textarea:focus-visible,label:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:3px}button:disabled,input:disabled,textarea:disabled{cursor:not-allowed;opacity:.58}input::placeholder,textarea::placeholder{color:var(--text-subtle);opacity:1}#root,.app-shell{min-height:100vh;min-height:100svh;overflow-x:hidden}.app-main{min-height:100vh;min-height:100svh;padding:0 16px calc(var(--nav-height) + 32px + env(safe-area-inset-bottom));overflow-x:hidden}.list-screen,.editor-screen,.detail-screen,.content-screen{width:100%;max-width:720px;margin:0 auto}.list-screen{padding-top:calc(13px + env(safe-area-inset-top))}.list-header{display:grid;gap:20px}.brand-title{margin:0;color:var(--text);font-family:Lobster Two,Times New Roman,serif;font-size:clamp(2rem,8vw,2.6rem);font-weight:700;line-height:1.1;text-align:center;letter-spacing:.01em}.search-field{display:flex;align-items:center;min-height:44px;padding:0 13px;gap:9px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text-muted);transition:border-color .16s ease,background-color .16s ease}.search-field:focus-within{border-color:var(--border-strong);background:var(--surface-raised)}.search-field input{width:100%;min-width:0;height:42px;padding:0;border:0;outline:0;background:transparent;color:var(--text);font-size:16px}.search-field input::-webkit-search-cancel-button{filter:grayscale(1)}.list-content{padding-top:24px}.loading-state,.status-message,.no-results,.empty-state{border:1px solid var(--border);border-radius:16px;background:var(--surface)}.loading-state{padding:28px 18px;color:var(--text-muted);text-align:center}.status-message{padding:22px 18px;color:var(--text-muted);text-align:center}.status-message p{margin:0;overflow-wrap:anywhere}.status-message .secondary-button{margin:18px auto 0}.recipe-list{display:grid;gap:12px}.recipe-card{display:flex;align-items:center;width:100%;min-height:98px;padding:9px;gap:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer;overflow:hidden;transition:border-color .16s ease,background-color .16s ease,transform .16s ease}.recipe-card:hover{border-color:var(--border-strong);background:var(--surface-raised)}.recipe-card:active{background:var(--surface-pressed);transform:scale(.99)}.recipe-card-name{display:-webkit-box;min-width:0;overflow:hidden;color:var(--text);font-size:16px;font-weight:650;line-height:1.45;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:3}.recipe-image{display:flex;align-items:center;justify-content:center;flex:0 0 auto;overflow:hidden;background:#202020;color:var(--text-muted)}.recipe-image img{display:block;width:100%;height:100%;object-fit:cover}.recipe-image-card{width:78px;height:78px;border-radius:11px}.recipe-image-detail,.recipe-image-editor{width:100%;aspect-ratio:16 / 9;border-radius:16px}.recipe-image-detail{max-height:420px}.recipe-image-editor{max-width:520px;margin:0 auto}.image-placeholder{flex-direction:column;gap:4px;color:var(--text-muted);font-size:11px;letter-spacing:.04em}.empty-state{display:grid;justify-items:center;padding:34px 20px 30px;text-align:center}.empty-state-icon,.empty-state h2,.empty-state p{margin:0}.empty-state-icon{display:grid;width:64px;height:64px;margin-bottom:18px;place-items:center;border:1px solid var(--border);border-radius:50%;color:var(--text-muted)}.empty-state h2,.no-results h2{color:var(--text);font-size:18px;line-height:1.4}.empty-state p,.no-results p{max-width:34em;margin:9px 0 0;color:var(--text-muted);font-size:14px;line-height:1.7;overflow-wrap:anywhere}.empty-state .primary-button{margin-top:23px}.no-results{padding:26px 18px;text-align:center}.no-results h2{margin:0}.screen-topbar,.detail-topbar{display:grid;align-items:center;min-height:58px;padding-top:calc(5px + env(safe-area-inset-top))}.screen-topbar{grid-template-columns:1fr auto 1fr}.screen-topbar h1,.simple-screen-header h1{margin:0;color:var(--text);font-size:20px;font-weight:700;line-height:1.35;text-align:center}.topbar-spacer{display:block;min-width:70px}.topbar-button{display:inline-flex;align-items:center;justify-self:start;min-height:44px;min-width:44px;padding:7px 8px 7px 3px;gap:5px;border-radius:10px;background:transparent;color:var(--text-muted);cursor:pointer;font-size:13px;white-space:nowrap}.topbar-button:hover{background:var(--surface);color:var(--text)}.detail-screen{padding-top:calc(5px + env(safe-area-inset-top))}.detail-topbar{grid-template-columns:1fr 1fr;padding-top:0}.detail-topbar .topbar-button:last-child{justify-self:end;padding-right:3px;padding-left:8px}.recipe-detail{padding-top:15px}.recipe-detail>h1{margin:23px 0 28px;color:var(--text);font-size:clamp(24px,7vw,34px);line-height:1.28;overflow-wrap:anywhere}.detail-section{padding:20px 0 23px;border-top:1px solid var(--border)}.detail-section h2{margin:0 0 11px;color:var(--text-muted);font-size:14px;font-weight:700;letter-spacing:.08em}.detail-text{margin:0;color:var(--text);font-size:16px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.detail-text.is-empty{color:var(--text-subtle)}.editor-screen{padding-top:calc(5px + env(safe-area-inset-top))}.recipe-form{display:grid;gap:25px;padding:19px 0 12px}.form-error{padding:13px 14px;border:1px solid var(--border-strong);border-radius:11px;background:var(--surface);color:var(--text);font-size:14px;line-height:1.55;overflow-wrap:anywhere}.form-field,.image-fieldset{display:grid;min-width:0;margin:0;padding:0;border:0;gap:9px}.form-field label,.image-fieldset legend{padding:0;color:var(--text);font-size:15px;font-weight:700}.form-field input,.form-field textarea{width:100%;min-width:0;border:1px solid var(--border);border-radius:12px;outline:0;background:var(--surface);color:var(--text);font-size:16px;line-height:1.55;transition:border-color .16s ease,background-color .16s ease}.form-field input{height:48px;padding:0 13px}.form-field textarea{min-height:128px;padding:12px 13px;resize:vertical}.form-field input:focus,.form-field textarea:focus{border-color:var(--border-strong);background:var(--surface-raised)}.field-hint{margin:0;color:var(--text-subtle);font-size:12px;line-height:1.5}.image-fieldset{gap:13px}.image-actions{display:flex;flex-wrap:wrap;gap:9px}.file-button{cursor:pointer}.form-actions{display:grid;gap:10px;padding-top:2px}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 16px;gap:8px;border-radius:11px;font-size:14px;font-weight:700;line-height:1.25;cursor:pointer;overflow-wrap:anywhere;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.primary-button{border:1px solid var(--text);background:var(--text);color:#090909}.primary-button:hover{background:#d3d3d3;border-color:#d3d3d3}.primary-button:active,.secondary-button:active{transform:scale(.98)}.secondary-button{border:1px solid var(--border-strong);background:var(--surface);color:var(--text)}.secondary-button:hover{border-color:#858585;background:var(--surface-raised)}.form-cancel{color:var(--text-muted)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.edge-swipe-layer{min-height:100%;touch-action:pan-y;will-change:transform}.content-screen{padding-top:calc(25px + env(safe-area-inset-top))}.simple-screen-header{min-height:47px;display:grid;align-items:center}.settings-panel{margin-top:21px;padding:22px 18px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.settings-panel h2{margin:0 0 14px;font-family:Lobster Two,Times New Roman,serif;font-size:27px;font-weight:700}.settings-panel p{margin:0;color:var(--text-muted);font-size:14px;line-height:1.75;overflow-wrap:anywhere}.settings-panel p+p{margin-top:12px}.missing-screen{display:grid;align-content:center;justify-items:center;min-height:70vh;text-align:center}.missing-screen h1{margin:0;font-size:22px}.missing-screen p{margin:12px 0 22px;color:var(--text-muted);line-height:1.7}.bottom-nav{position:fixed;z-index:10;right:0;bottom:0;left:0;padding:0 16px env(safe-area-inset-bottom);border-top:1px solid var(--border);background:#090909f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottom-nav-inner{display:grid;grid-template-columns:repeat(3,1fr);width:100%;max-width:520px;height:var(--nav-height);margin:0 auto}.nav-tab{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:46px;padding:6px 5px 5px;gap:3px;border-radius:11px;background:transparent;color:var(--text-subtle);cursor:pointer;flex-direction:column;transition:background-color .16s ease,color .16s ease}.nav-tab:hover{background:var(--surface);color:var(--text-muted)}.nav-tab.is-active{color:var(--text)}.nav-icon{display:grid;width:34px;height:34px;place-items:center}.nav-label{font-size:11px;font-weight:700;line-height:1}@media (min-width: 600px){.app-main{padding-right:24px;padding-left:24px}.list-content{padding-top:28px}.recipe-card{min-height:106px;padding:10px}.recipe-image-card{width:86px;height:86px}.form-actions{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:80ms!important;animation-duration:80ms!important}}
