:root{--color-primary:#ff6b6b;--color-secondary:#ffb347;--color-background:#fff5f0;--color-background-alt:#fff0e8;--color-text:#2d3436;--color-text-light:#636e72;--color-border:#ffd4c4;--color-accent:#ff9f7c;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:3rem;--spacing-xl:5rem;--border-radius:20px;--shadow-sm:0 4px 8px #ff9f7c14;--shadow-md:0 8px 16px #ff9f7c1f;--shadow-lg:0 16px 24px #ff9f7c26}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff8f5;background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c08 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb34708 0,#0000 50%);color:#2d3436;color:var(--color-text);font-family:Noto Sans JP,sans-serif;line-height:1.6;padding-top:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.hero-section{align-items:center;background:var(--color-background);color:var(--color-text);display:flex;flex-direction:column;justify-content:center;min-height:70vh;overflow:hidden;padding:100px 20px;position:relative;text-align:center}.hero-section:before{background:radial-gradient(circle at 100% 0,#ff9f7c08 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb34708 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.hero-title{color:var(--color-text);font-size:3rem;font-weight:700;line-height:1.2;margin-bottom:25px}.hero-subtitle,.hero-title{position:relative;z-index:1}.hero-subtitle{color:var(--color-text-light);font-size:1.2rem;line-height:1.8;margin-bottom:50px;max-width:800px}.hero-buttons{flex-wrap:wrap;gap:25px;justify-content:center;z-index:1}.hero-btn,.hero-buttons{display:flex;position:relative}.hero-btn{align-items:center;background:#fff!important;border:2px solid var(--color-border);border-radius:50px;box-shadow:var(--shadow-sm);color:var(--color-primary)!important;font-size:1.1rem;font-weight:600;gap:12px;overflow:hidden;padding:16px 32px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.hero-btn:before{background:linear-gradient(90deg,#0000,#ff6b6b1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.hero-btn:hover:before{left:100%}.hero-btn:hover{background:var(--color-primary)!important;box-shadow:var(--shadow-md);color:#fff!important;text-decoration:none;transform:translateY(-4px) scale(1.02)}.hero-btn span{font-size:1.4rem}.news-section{background:#fff;margin:0 auto;max-width:900px;padding:80px 20px}.news-title-section{color:var(--color-text);font-size:2rem;font-weight:700;margin-bottom:40px;padding-bottom:15px;position:relative;text-align:center}.news-title-section:after{background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.news-item{background:#fff;border:1px solid var(--color-border);border-left:4px solid var(--color-primary);border-radius:16px;box-shadow:var(--shadow-sm);margin-bottom:20px;padding:25px;transition:all .4s cubic-bezier(.4,0,.2,1)}.news-item:hover{border-left-color:var(--color-secondary);box-shadow:var(--shadow-md);transform:translateY(-3px)}.news-date{color:var(--color-text-light);font-size:.9rem;font-weight:500;margin-bottom:10px}.news-title{color:var(--color-text);font-size:1.2rem;font-weight:700;line-height:1.4;margin-bottom:12px}.news-content{color:var(--color-text-light);font-size:1rem;line-height:1.7}.mission-section{background:var(--color-background-alt);padding:100px 20px;position:relative;text-align:center}.mission-section:before{background:radial-gradient(circle at 100% 0,#ff9f7c08 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb34708 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.mission-title{color:var(--color-text);font-size:3rem;font-weight:700;margin-bottom:20px;position:relative;z-index:1}.mission-message{color:var(--color-text-light);font-size:1.5rem;font-weight:600;position:relative;z-index:1}.value-section{background:#fff;padding:100px 20px;text-align:center}.value-title{color:var(--color-text);font-size:2.5rem;font-weight:700;margin-bottom:60px}.value-list{list-style:none;margin:0 auto;max-width:800px;padding:0}.value-list li{background:#fff;border:1px solid var(--color-border);border-left:4px solid var(--color-primary);border-radius:16px;box-shadow:var(--shadow-sm);margin-bottom:20px;padding:30px;text-align:left;transition:all .4s cubic-bezier(.4,0,.2,1)}.value-list li:hover{border-left-color:var(--color-secondary);box-shadow:var(--shadow-md);transform:translateY(-3px)}.value-label{color:var(--color-text);display:block;font-size:1.3rem;font-weight:700;margin-bottom:10px}.value-desc{color:var(--color-text-light);display:block;font-size:1.1rem;line-height:1.7}.old-website-link{background:var(--color-background-alt);padding:60px 20px;text-align:center}.old-website-btn{background:#fff;border:2px solid var(--color-border);border-radius:50px;box-shadow:var(--shadow-sm);color:var(--color-primary);display:inline-block;font-size:1.1rem;font-weight:600;padding:16px 32px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.old-website-btn:hover{background:var(--color-primary);box-shadow:var(--shadow-md);color:#fff;text-decoration:none;transform:translateY(-4px) scale(1.02)}.contact{background:#fff;color:var(--color-text-light);font-size:1rem;line-height:1.8;padding:60px 20px;text-align:center}.contact a{color:var(--color-primary);text-decoration:none}.contact a:hover{text-decoration:underline}@media (max-width:768px){.hero-title{font-size:2.2rem}.hero-subtitle{font-size:1.1rem}.hero-buttons{align-items:center;flex-direction:column;gap:15px}.hero-btn{justify-content:center;padding:14px 28px;width:250px}.news-title-section{font-size:1.8rem}.mission-title{font-size:2.5rem}.value-title{font-size:2rem}}@media (max-width:480px){.hero-section{min-height:60vh;padding:80px 15px}.hero-title{font-size:1.8rem}.hero-subtitle{font-size:1rem}.news-section{padding:60px 15px}.hero-btn{font-size:1rem;padding:12px 24px;width:220px}.mission-section,.value-section{padding:80px 15px}.contact,.old-website-link{padding:40px 15px}}.recipe-gallery{background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);min-height:100vh;padding:20px 0}.commercial-use-disclaimer{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:1px solid #ffc107;border-radius:12px;box-shadow:0 2px 8px #ffc10726;margin:0 20px 30px;padding:15px 20px}.disclaimer-content{align-items:center;display:flex;gap:12px}.disclaimer-icon{flex-shrink:0;font-size:1.2rem}.disclaimer-text{color:#856404;font-size:.9rem;font-weight:500;line-height:1.4;margin:0}.loading{padding:50px}.retry-info{color:var(--color-primary);font-size:.9rem;margin-top:10px;opacity:.8}.gallery-header{align-items:center;background:#fff;border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;margin-bottom:20px;padding:15px 20px}.search-container{flex:1 1;max-width:500px}.search-bar{align-items:center;background:#f8f9fa;border:2px solid var(--color-border);border-radius:25px;display:flex;padding:8px 15px;transition:all .3s ease}.search-bar:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #ff6b6b1a}.search-input{background:#0000;border:none;flex:1 1;font-size:1rem;padding:8px}.search-btn{background:none;border:none;color:var(--color-text-light);cursor:pointer;font-size:1.2rem;padding:5px}.user-menu{align-items:center;display:flex}.user-btn{color:var(--color-text);transition:all .3s ease}.user-btn:hover{background:var(--color-background-alt)}.user-icon{font-size:1.5rem}.user-name{font-weight:600}.login-btn{font-size:.9rem}.app-btn{background:var(--color-primary);padding:10px 20px;transition:all .3s ease}.app-btn:hover{background:#ff5252;box-shadow:var(--shadow-md);transform:translateY(-2px)}.update-time{color:var(--color-text-light)}section{margin-bottom:40px;padding:0 20px}.section-title{color:var(--color-text);font-size:1.5rem;font-weight:700;text-align:center}.section-header,.section-title{margin-bottom:20px}.section-header .section-title{margin-bottom:0;text-align:left}.view-more-button{align-items:center;background:var(--color-primary);border:none;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:4px;padding:8px 16px;transition:all .3s ease}.view-more-button:hover{background:var(--color-primary-dark);box-shadow:0 4px 8px #ff6b6b33;transform:translateY(-1px)}.season-subtitle{color:var(--color-primary);font-size:1.1rem;font-weight:600;margin-bottom:20px;text-align:center}.popular-keywords{margin-bottom:40px}.keywords-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:20px}.keyword-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-sm);cursor:pointer;padding:15px;text-align:center;transition:all .3s ease}.keyword-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.keyword-image{border:2px solid var(--color-border);border-radius:50%;height:60px;margin-bottom:8px;object-fit:cover;width:60px}.keyword-name{color:var(--color-text);display:block;font-size:.9rem;font-weight:600}.level-categories,.situation-categories{margin-bottom:40px}.categories-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:20px}.category-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-sm);cursor:pointer;overflow:hidden;padding:20px 15px;position:relative;text-align:center;transition:all .3s ease}.category-card:before{background:linear-gradient(135deg,#ff6b6b0d,#ffb3470d);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.category-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-3px)}.category-card:hover:before{opacity:1}.category-image{border:3px solid var(--color-border);border-radius:50%;height:70px;margin-bottom:12px;object-fit:cover;position:relative;transition:border-color .3s ease;width:70px;z-index:1}.category-card:hover .category-image{border-color:var(--color-primary)}.category-name{color:var(--color-text);display:block;font-size:1rem;font-weight:600;line-height:1.3;position:relative;z-index:1}.recipes-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:0 auto;max-width:1200px}.no-recipes-message{background:#fff;border:2px solid #ffe4e4;border-radius:16px;box-shadow:var(--shadow-sm);margin:20px 0;padding:60px 20px;text-align:center}.no-recipes-icon{animation:bounce 2s infinite;font-size:48px;margin-bottom:20px}.no-recipes-message h3{color:var(--color-primary);font-size:20px;font-weight:600;margin-bottom:15px}.no-recipes-message p{color:var(--color-text-light);font-size:16px;line-height:1.6;margin-bottom:25px}.be-first-poster-btn{align-items:center;background:linear-gradient(135deg,var(--color-primary) 0,#ff8a80 100%);border:none;border-radius:25px;box-shadow:0 4px 15px #ff6b6b4d;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:15px 30px;transition:all .3s ease}.be-first-poster-btn:hover{background:linear-gradient(135deg,var(--color-primary-dark) 0,#ff6b6b 100%);box-shadow:0 6px 20px #ff6b6b66;transform:translateY(-3px)}.be-first-poster-btn:active{transform:translateY(-1px)}.be-first-poster-btn span{font-size:18px}.recipe-card{border:1.5px solid var(--color-border);border-radius:15px}.recipe-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.recipe-image{height:180px}.bookmark-btn{align-items:center;background:#ffffffe6;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:1.1rem;height:35px;justify-content:center;position:absolute;right:10px;top:10px;transition:all .3s ease;width:35px}.bookmark-btn:hover{background:var(--color-primary);color:#fff;transform:scale(1.1)}.recipe-title{margin-bottom:8px}.recipe-author{color:var(--color-text-light);font-size:.9rem;margin-bottom:12px}.recipe-stats{flex-wrap:wrap;margin-bottom:12px}.likes{font-size:.9rem;font-weight:600}.difficulty,.time{background:var(--color-background-alt);border-radius:12px;color:var(--color-text);font-size:.8rem;font-weight:500;padding:4px 8px}.recipe-tags{gap:6px}.tag{background:var(--color-background);border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);font-size:.75rem;padding:3px 8px}.ad-space{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px dashed #dee2e6;border-radius:16px;display:flex;justify-content:center;margin:40px 0;min-height:120px;padding:30px;position:relative;text-align:center}.ad-space:before{background:#fff;border:2px solid #dee2e6;border-radius:20px;content:"📢";font-size:1.2rem;left:50%;padding:5px 15px;position:absolute;top:-15px;transform:translateX(-50%)}.ad-content{max-width:400px}.ad-content h3{color:var(--color-primary);font-size:1.3rem;font-weight:600;margin-bottom:10px}.ad-content p{color:var(--color-text-light);font-size:1rem;line-height:1.5;margin:0}@media (max-width:768px){.ad-space{margin:30px 0;min-height:100px;padding:0 15px}.ad-content h3{font-size:1.2rem}.ad-content p{font-size:.9rem}}@media (max-width:480px){.ad-space{margin:25px 0;min-height:80px;padding:0 10px}.ad-content h3{font-size:1.1rem}.ad-content p{font-size:.85rem}}.ad-label{background:#fff3;border-radius:10px;color:#fff;font-size:.7rem;font-weight:600;padding:4px 8px;position:absolute;right:15px;top:10px}.ad-content{gap:20px;position:relative;z-index:1}.ad-content,.ad-icon{align-items:center;display:flex}.ad-icon{background:#fff3;border-radius:50%;flex-shrink:0;font-size:3rem;height:80px;justify-content:center;width:80px}.ad-text{flex:1 1}.ad-text h3{color:#fff;font-size:1.3rem;font-weight:700;margin-bottom:8px}.ad-text p{color:#ffffffe6;font-size:1rem;line-height:1.4;margin-bottom:15px}.ad-btn{background:#fff;border:none;border-radius:20px;box-shadow:var(--shadow-sm);color:var(--color-primary);cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.ad-btn:hover{background:#f8f9fa;box-shadow:var(--shadow-md);transform:translateY(-2px)}.more-recipes{margin-top:40px;text-align:center}.more-btn{background:var(--color-primary);border:none;border-radius:25px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:15px 40px;transition:all .3s ease}.more-btn:hover{background:#ff5252;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.my-page-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.my-page-content{animation:slideIn .3s ease;background:#fff;border-radius:20px;box-shadow:var(--shadow-lg);max-height:80vh;max-width:600px;overflow-y:auto;width:90%}.my-page-header{padding:20px 25px}.my-page-header h2{color:var(--color-text);font-size:1.5rem;font-weight:700;margin:0}.close-btn{border-radius:50%;color:var(--color-text-light);padding:5px;transition:all .3s ease}.close-btn:hover{color:var(--color-text)}.close-btn:hover,.profile-section{background:var(--color-background-alt)}.profile-section{padding:25px}.profile-info{gap:20px}.profile-avatar,.profile-avatar-placeholder{border:3px solid var(--color-primary);height:80px;width:80px}.profile-avatar-placeholder{background:var(--color-background)}.profile-details h3{color:var(--color-text);font-size:1.3rem;font-weight:700;margin:0 0 5px}.profile-details p{color:var(--color-text-light);font-size:.9rem;margin:0 0 3px}.join-date{color:var(--color-text-light);font-size:.8rem}.my-content-section{padding:25px}.content-tabs{border-bottom:1px solid var(--color-border);display:flex;gap:10px;margin-bottom:20px}.tab-btn{border-bottom:2px solid #0000;font-size:.9rem;padding:10px 20px}.my-recipes-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.recipe-card.small{border:1px solid var(--color-border);border-radius:10px;overflow:hidden}.recipe-card.small .recipe-image{height:120px}.recipe-card.small .recipe-info{padding:10px}.recipe-card.small .recipe-title{font-size:.9rem;margin-bottom:5px}.my-page-actions{border-top:1px solid var(--color-border);display:flex;gap:15px;justify-content:center;padding:25px}.action-btn{border-radius:25px;font-size:.9rem;padding:12px 24px}.action-btn.secondary{background:var(--color-background-alt);border:1px solid var(--color-border)}.action-btn.secondary:hover{background:var(--color-border);transform:translateY(-2px)}.upload-section{margin:30px 20px;padding:20px;text-align:center}.upload-btn{align-items:center;background:var(--color-primary);border:none;border-radius:25px;box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:8px;padding:15px 30px;transition:all .3s ease}.upload-btn:hover{background:#ff5252;box-shadow:var(--shadow-md);transform:translateY(-2px)}.upload-btn:active{transform:translateY(-1px)}.recipe-author-info{border:1px solid #0000;border-radius:8px;color:var(--color-text);font-size:1rem;margin-bottom:5px;padding:8px 12px;position:relative;transition:all .3s ease}.recipe-author-info:hover{background:var(--color-background-alt);border-color:var(--color-border);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.recipe-author-info:active{transform:translateY(0)}.recipe-author-info:after{content:"👆";font-size:.8rem;opacity:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:opacity .3s ease}.recipe-author-info:hover:after{opacity:1}.author-avatar{font-size:1.2rem}.author-name{margin-right:4px;text-decoration:underline;text-decoration-color:#0000;transition:text-decoration-color .3s ease}.recipe-author-info:hover .author-name{text-decoration-color:var(--color-primary)}.sns-icon{font-size:1.1rem}.sns-icon.twitter{color:#1da1f2}.sns-icon.instagram{color:#e1306c}.sns-icon.facebook{color:#4267b2}.sns-icon.line{color:#00b900}.sns-icon.website{color:#333}.sns-modal-overlay{height:100%;width:100%;z-index:2000}.sns-modal{animation:slideIn .2s ease;background:#fff;border-radius:18px;box-shadow:var(--shadow-lg);max-width:350px}.sns-modal-header{border-bottom:1px solid var(--color-border);padding:18px 18px 0}.sns-modal-header h3{font-size:1.1rem;font-weight:700}.sns-modal-header .close-btn{background:none;border:none;border-radius:50%;color:var(--color-text-light);cursor:pointer;font-size:1.3rem;padding:3px;transition:all .2s}.sns-modal-header .close-btn:hover{background:var(--color-background-alt);color:var(--color-text)}.sns-modal-content{padding:18px}.sns-modal-author{font-size:1.1rem;font-weight:700;margin-bottom:10px;text-align:center}.sns-modal-links{align-items:flex-start;display:flex;flex-direction:column;gap:10px}.sns-link{border-radius:6px;font-size:1rem;gap:6px;padding:6px 10px;transition:background .2s,color .2s}.sns-link.instagram{color:#e1306c}.sns-link.facebook{color:#4267b2}.sns-link.line{color:#00b900}.sns-link.website{color:#333}.sns-link:hover{background:var(--color-background-alt);color:var(--color-primary)}.recipe-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:2000}.recipe-modal{animation:slideIn .3s ease;background:#fff;border-radius:20px;box-shadow:var(--shadow-lg);max-height:90vh;max-width:800px;overflow-y:auto;width:90%}.recipe-modal-header{align-items:center;background:#fff;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px 25px 0;position:sticky;top:0;z-index:1}.recipe-modal-header h3{color:var(--color-text);font-size:1.3rem;font-weight:700;margin:0}.recipe-modal-header .close-btn{background:none;border:none;border-radius:50%;color:var(--color-text-light);cursor:pointer;font-size:1.5rem;padding:5px;transition:all .3s ease}.recipe-modal-header .close-btn:hover{background:var(--color-background-alt);color:var(--color-text)}.recipe-modal-content{padding:25px}.recipe-modal-image{border-radius:12px;height:300px;margin-bottom:20px;overflow:hidden;width:100%}.recipe-modal-image img{height:100%;object-fit:cover;width:100%}.recipe-modal-info{display:flex;flex-direction:column;gap:20px}.recipe-modal-title{color:var(--color-text);font-size:1.8rem;font-weight:700;margin:0}.recipe-modal-author{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:8px;padding:10px;transition:background .2s}.recipe-modal-author:hover{background:var(--color-background-alt)}.recipe-modal-stats{display:flex;flex-wrap:wrap;gap:15px}.recipe-modal-stats span{background:var(--color-background-alt);border-radius:15px;color:var(--color-text);font-size:.9rem;font-weight:600;padding:5px 12px}.recipe-modal-description,.recipe-modal-explanation,.recipe-modal-ingredients,.recipe-modal-steps,.recipe-modal-video{border-top:1px solid var(--color-border);padding-top:20px}.recipe-modal-description h4,.recipe-modal-explanation h4,.recipe-modal-ingredients h4,.recipe-modal-steps h4,.recipe-modal-video h4{color:var(--color-text);font-size:1.2rem;font-weight:600;margin:0 0 10px}.recipe-modal-description p{color:var(--color-text);font-size:1rem;line-height:1.6;margin:0}.recipe-modal-ingredients ul{list-style:none;margin:0;padding:0}.recipe-modal-ingredients li{border-bottom:1px solid var(--color-border);font-size:1rem;padding:8px 0}.recipe-modal-ingredients li:last-child{border-bottom:none}.recipe-step{margin-bottom:20px;padding:15px}.recipe-step h5{color:var(--color-text);font-size:1.1rem;font-weight:600;margin:0 0 10px}.recipe-step p{font-size:1rem;line-height:1.5;margin:0}.step-image{height:200px;margin:10px 0;object-fit:cover}.recipe-modal-video .youtube-embed{border-radius:8px;height:0;overflow:hidden;padding-bottom:56.25%;position:relative;width:100%}.recipe-modal-video .youtube-embed iframe{border-radius:8px;height:100%;left:0;position:absolute;top:0;width:100%}.recipe-modal-explanation p{color:var(--color-text);font-size:1rem;line-height:1.6;margin:0}.recipe-modal-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.recipe-modal-tags .tag{background:var(--color-primary);border-radius:15px;color:#fff;font-size:.8rem;font-weight:600;padding:5px 12px}.search-btn:hover{background:#ff6b6b1a}.header-actions{gap:15px}.header-actions,.user-btn{align-items:center;display:flex}.user-btn{background:none;border:none;border-radius:20px;cursor:pointer;gap:8px;padding:8px 12px;transition:background .3s ease}.user-btn:hover{background:#ff6b6b1a}.user-icon{align-items:center;background:#6c757d;border-radius:50%;color:#fff;display:flex;font-size:1.2rem;height:32px;justify-content:center;width:32px}.user-avatar{object-fit:cover}.user-name{font-size:.9rem;font-weight:500}.login-btn{border-radius:20px;padding:8px 16px;transition:background .3s ease}.login-btn:hover{background:#e55a5a}.app-btn{background:var(--color-secondary);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:background .3s ease}.app-btn:hover{background:#e5a03a}.main-site-link-btn{background:var(--color-primary);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:background .3s ease}.main-site-link-btn:hover{background:#e55a5a;transform:translateY(-2px)}.update-time{color:#6c757d;font-size:.8rem;font-weight:500}.gallery-content{margin-top:80px;padding:20px}@media (max-width:768px){.commercial-use-disclaimer{margin:0 15px 25px;padding:12px 16px}.disclaimer-content{gap:10px}.disclaimer-text{font-size:.85rem}.section-header{align-items:stretch;flex-direction:column;gap:10px}.section-header .section-title{text-align:center}.view-more-button{align-self:center}.gallery-header{flex-direction:column;gap:15px;padding:15px}.search-container{max-width:100%}.header-actions{justify-content:space-between;width:100%}.keywords-grid,.recipes-grid{gap:10px;grid-template-columns:repeat(2,1fr)}.recipes-grid{padding:0 10px}.recipe-image{height:120px}.recipe-info{padding:8px}.recipe-stats{gap:10px}.ad-space,section{padding:0 15px}.ad-space{margin:30px 15px}.ad-content{flex-direction:column;gap:15px;text-align:center}.ad-icon{font-size:2rem;height:60px;width:60px}.ad-text h3{font-size:1.1rem}.ad-text p{font-size:.9rem}.my-page-content{max-height:90vh;width:95%}.profile-info{flex-direction:column;gap:15px;text-align:center}.content-tabs{flex-wrap:wrap}.my-recipes-grid{grid-template-columns:1fr}.my-page-actions{flex-direction:column}}@media (max-width:480px){.commercial-use-disclaimer{margin:0 10px 20px;padding:10px 14px}.disclaimer-text{font-size:.8rem}.recipes-grid{gap:10px;grid-template-columns:repeat(2,1fr);padding:0 10px}.recipe-image{height:120px}.recipe-info{padding:8px}.recipe-title{font-size:.85rem;line-height:1.2}.keywords-grid{grid-template-columns:repeat(2,1fr)}.keyword-card{padding:10px}.keyword-image{height:50px;width:50px}.keyword-name{font-size:.8rem}.section-title{font-size:1.3rem}.recipe-title{font-size:.8rem}.upload-section{margin:15px 10px;padding:10px}.upload-btn{font-size:.9rem;padding:10px 20px}.no-recipes-message{padding:40px 15px}.no-recipes-message h3{font-size:18px}.no-recipes-message p{font-size:14px}.be-first-poster-btn{font-size:14px;padding:12px 24px}.sns-modal{max-width:95vw;padding:0}.sns-modal-content,.sns-modal-header{padding-left:10px;padding-right:10px}}@media (max-width:768px){.categories-grid{gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.category-card{padding:15px 10px}.category-image{height:60px;width:60px}.category-name{font-size:.9rem}}@media (max-width:480px){.categories-grid{gap:10px;grid-template-columns:repeat(2,1fr)}.category-card{padding:12px 8px}.category-image{height:50px;width:50px}.category-name{font-size:.8rem}}.recipe-detail{background:var(--color-background);color:var(--color-text);min-height:100vh;padding:20px}.recipe-detail-container{background:var(--color-background-alt);border-radius:16px;box-shadow:var(--shadow-lg);margin:0 auto;max-width:1200px;overflow:hidden}.recipe-detail-header{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;padding:30px;position:relative}.back-btn{border-radius:8px;margin-bottom:20px}.back-btn:hover{transform:translateY(-2px)}.recipe-title{font-size:2.5rem;margin:0;text-shadow:0 2px 4px #0000004d}.recipe-detail-content{display:flex;flex-direction:column;gap:30px;padding:40px}.recipe-main-image{align-items:center;background:var(--color-background);border-radius:12px;box-shadow:var(--shadow-md);display:flex;justify-content:center;margin:0 auto;max-width:600px;overflow:hidden;width:100%}.recipe-main-image img{height:auto;max-height:500px;object-fit:contain;transition:transform .3s ease;width:100%}.recipe-main-image img:hover{transform:scale(1.05)}.recipe-info{display:flex;flex-direction:column;gap:30px;height:auto;min-height:fit-content;overflow:visible}.recipe-author{align-items:center;background:var(--color-background);border:2px solid var(--color-border);border-radius:12px;cursor:pointer;display:flex;gap:12px;padding:15px;transition:all .3s ease}.recipe-author:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.author-avatar{font-size:1.5rem}.author-name{color:var(--color-primary);font-size:1.2rem;font-weight:600}.sns-icons{gap:8px}.sns-icon{border-radius:50%;font-size:1.2rem;padding:4px;transition:transform .2s ease}.sns-icon:hover{transform:scale(1.2)}.recipe-stats{background:var(--color-background);border-radius:12px;box-shadow:var(--shadow-sm);gap:20px;padding:20px}.recipe-stats span{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border-radius:6px;color:var(--color-text);font-weight:600;gap:8px;padding:8px 12px}.recipe-description,.recipe-explanation,.recipe-ingredients,.recipe-steps,.recipe-tags,.recipe-video{background:var(--color-background);border-radius:12px;box-shadow:var(--shadow-sm);height:auto!important;min-height:fit-content;min-height:fit-content!important;overflow:visible;padding:25px}.recipe-description,.recipe-explanation,.recipe-ingredients,.recipe-steps,.recipe-tags,.recipe-video{align-items:stretch!important;display:flex!important;flex-direction:column!important;max-height:none!important}.recipe-video{margin-bottom:15px;padding:15px}.recipe-description h3,.recipe-explanation h3,.recipe-ingredients h3,.recipe-steps h3,.recipe-tags h3,.recipe-video h3{border-bottom:2px solid var(--color-border);color:var(--color-primary);font-size:1.5rem;margin-bottom:15px;padding-bottom:10px}.recipe-description p{color:var(--color-text);line-height:1.6;margin:0}.recipe-pdf-download{background:linear-gradient(135deg,#ff9f7c0d,#ffb3470d);border:2px solid var(--color-primary);border-radius:12px;margin:20px 0;padding:25px}.recipe-pdf-download h3{align-items:center;color:var(--color-primary);display:flex;font-size:1.3rem;font-weight:600;gap:8px;margin-bottom:15px}.pdf-download-container{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.pdf-info{align-items:center;display:flex;flex:1 1;gap:12px;min-width:200px}.pdf-text{color:var(--color-text);font-size:.95rem;line-height:1.4}.pdf-download-btn{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border:none;border-radius:25px;box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.pdf-download-btn:hover{background:linear-gradient(135deg,#ff8a65,#ffb74d);box-shadow:var(--shadow-md);transform:translateY(-2px)}.pdf-download-btn:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.recipe-description{padding-bottom:30px!important}.recipe-description,.recipe-description p{height:auto!important;min-height:fit-content!important;overflow:visible!important;position:relative;z-index:1}.recipe-description p{box-sizing:border-box!important;display:block!important;line-height:1.6!important;max-height:none!important;padding-bottom:20px!important;white-space:pre-wrap!important;word-break:break-word!important}.recipe-ingredients ul{list-style:none;padding:0}.recipe-ingredients li{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border-bottom:1px solid var(--color-border);border-radius:6px;color:var(--color-text);height:auto!important;margin:5px 0;max-height:none!important;min-height:fit-content!important;overflow:visible!important;padding:12px 20px;position:relative}.recipe-ingredients li:before{color:var(--color-primary);content:"•";font-weight:700;left:8px;position:absolute}.recipe-step{background:var(--color-background-alt);border-left:4px solid var(--color-primary);border-radius:8px;margin-bottom:30px;padding:20px}.recipe-step h4{color:var(--color-primary);font-size:1.2rem;margin-bottom:15px}.recipe-step p{background:#ffffffe6;border-radius:8px;color:var(--color-text);line-height:1.6;margin:10px 0 0;padding:15px}.step-image{border-radius:8px;box-shadow:var(--shadow-sm);height:auto;margin:15px 0;max-width:300px;object-fit:contain;width:100%}.youtube-embed,.youtube-embed iframe{border-radius:12px}.tags{display:flex;flex-wrap:wrap;gap:10px}.tag{background:var(--color-primary);border-radius:20px;color:#fff;font-size:.9rem;padding:8px 16px}.sns-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.sns-modal{background:var(--color-background-alt);border-radius:16px;box-shadow:var(--shadow-xl);max-width:400px;padding:30px;width:90%}.sns-modal-header{align-items:center;border-bottom:2px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.sns-modal-header h3{color:var(--color-primary);margin:0}.close-btn{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:1.5rem;transition:color .3s ease}.close-btn:hover{color:var(--color-primary)}.sns-modal-content{display:flex;flex-direction:column;gap:15px}.sns-link{border-radius:8px;display:flex;gap:12px;padding:15px}.sns-link.twitter:hover{background:#1da1f2;color:#fff}.sns-link.instagram:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);color:#fff}.sns-link.facebook:hover{background:#1877f2;color:#fff}.sns-link.line:hover{background:#00b900;color:#fff}.sns-link.profile-link,.sns-link.website:hover{background:var(--color-primary);color:#fff}.sns-link.profile-link{border:none;cursor:pointer;font-family:inherit;font-size:1rem}.sns-link.profile-link:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.no-sns{background:#ffffffe6;border-radius:8px;color:var(--color-text-secondary);font-style:italic;padding:15px;text-align:center}.error-container,.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;text-align:center}.loading-spinner{height:50px;margin-bottom:20px;width:50px}.error-container h2{color:var(--color-error);margin-bottom:15px}@media (max-width:768px){.recipe-detail{padding:10px}.recipe-detail-header{padding:20px}.recipe-title{font-size:2rem}.recipe-detail-content{gap:20px;padding:20px}.recipe-main-image img{max-height:300px}.recipe-author,.recipe-stats{flex-direction:column;gap:10px}.recipe-author{text-align:center}.sns-icons{margin-left:0}.pdf-download-container{align-items:stretch;flex-direction:column;gap:15px}.pdf-info{justify-content:center;text-align:center}.pdf-download-btn{justify-content:center;width:100%}}@media (max-width:480px){.recipe-title{font-size:1.5rem}.recipe-affiliate-products,.recipe-description,.recipe-detail-content,.recipe-explanation,.recipe-ingredients,.recipe-pdf-download,.recipe-random-products,.recipe-steps,.recipe-tags,.recipe-video{padding:15px}.recipe-pdf-download h3{font-size:1.1rem}.pdf-text{font-size:.9rem}.pdf-download-btn{font-size:.9rem;padding:10px 20px}}.recipe-affiliate-products{background:#fff;border-radius:12px;box-shadow:var(--shadow-sm);margin-top:10px}.recipe-video:empty+.recipe-affiliate-products,.recipe-video:not(:has(.youtube-embed iframe[src*=youtube]))+.recipe-affiliate-products{margin-top:5px}.recipe-steps:empty+.recipe-affiliate-products,.recipe-steps:not(:has(.recipe-step))+.recipe-affiliate-products{margin-top:10px}.recipe-video+.recipe-affiliate-products{margin-top:10px}.recipe-info>:not(.recipe-video):not(.recipe-affiliate-products){margin-bottom:20px}.recipe-info:not(:has(.recipe-video)) .recipe-affiliate-products{margin-top:10px}.recipe-video:empty{display:none}.recipe-video:not(:has(.youtube-embed iframe[src*=youtube])){display:none}.recipe-affiliate-products h3{color:var(--color-text);font-size:1.3rem;font-weight:600;margin-bottom:20px;padding:20px 20px 0}.affiliate-products-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));padding:0 20px 20px}.affiliate-product-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:16px;transition:all .3s ease}.affiliate-product-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.product-image{background:#f1f3f4;border-radius:8px;height:200px;overflow:hidden;width:100%}.product-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.affiliate-product-card:hover .product-image img{transform:scale(1.05)}.product-info{display:flex;flex-direction:column;gap:8px}.product-name{color:var(--color-text);font-size:1.1rem;font-weight:600;line-height:1.3;margin:0}.product-price{color:var(--color-primary);font-size:1rem;font-weight:600;margin:0}.product-description{color:var(--color-text-light);font-size:.9rem;line-height:1.4;margin:0}.product-link{align-items:center;color:var(--color-primary);display:inline-flex;font-size:.9rem;font-weight:600;gap:4px;padding:8px 0;text-decoration:none;transition:all .3s ease}.product-link:hover{color:#ff5252;transform:translateX(4px)}@media (max-width:768px){.affiliate-products-grid{gap:16px;grid-template-columns:1fr;padding:0 15px 15px}.recipe-affiliate-products h3{padding:15px 15px 0}.affiliate-product-card{padding:12px}.product-image{height:160px}}.recipe-actions{gap:15px;margin-top:20px}.like-btn{align-items:center;background:var(--color-background);border:2px solid var(--color-primary);border-radius:25px;color:var(--color-primary);cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.like-btn:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-2px)}.like-btn.liked,.like-btn:hover:not(:disabled){background:var(--color-primary);color:#fff}.like-btn:disabled{cursor:not-allowed;opacity:.6}.like-icon{font-size:1.2rem}.like-text{font-weight:600}.recipe-comments{border-top:2px solid var(--color-border);margin-top:40px;padding-top:30px}.recipe-comments h3{color:var(--color-text);font-size:1.8rem;font-weight:700;margin-bottom:20px}.comment-form{background:var(--color-background);border-radius:12px;margin-bottom:30px;padding:20px}.comment-form,.comment-input{border:2px solid var(--color-border)}.comment-input{background:var(--color-background-alt);border-radius:8px;color:var(--color-text);font-family:inherit;font-size:1rem;min-height:80px;padding:15px;resize:vertical;width:100%}.comment-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1);outline:none}.comment-form-actions{align-items:center;display:flex;justify-content:space-between;margin-top:15px}.comment-length{color:var(--color-text-light);font-size:.9rem}.comment-submit-btn{background:var(--color-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.comment-submit-btn:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px)}.comment-submit-btn:disabled{cursor:not-allowed;opacity:.6}.login-prompt{background:var(--color-background);border:2px dashed var(--color-border);border-radius:12px;margin-bottom:30px;padding:30px;text-align:center}.login-prompt p{color:var(--color-text-light);margin-bottom:15px}.login-btn{border-radius:8px;padding:10px 20px}.login-btn:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.comments-list{display:flex;flex-direction:column;gap:20px}.comment-item{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;padding:20px;transition:all .3s ease}.comment-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.comment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.comment-author{color:var(--color-primary);font-size:1rem;font-weight:600}.comment-date{color:var(--color-text-light);font-size:.9rem}.comment-text{color:var(--color-text);line-height:1.6;margin:0}.comment-delete-btn{background:none;border:none;border-radius:4px;color:var(--color-error);cursor:pointer;font-size:.9rem;opacity:.7;padding:4px 8px;transition:all .2s ease}.comment-delete-btn:hover{background:#ff00001a;opacity:1}.no-comments{color:var(--color-text-light);font-style:italic;padding:40px;text-align:center}@media (max-width:768px){.recipe-actions{flex-direction:column;gap:10px}.like-btn{justify-content:center}.comment-form-actions{align-items:stretch;flex-direction:column;gap:10px}.comment-submit-btn{width:100%}.comment-header{align-items:flex-start;flex-direction:column;gap:5px}}.recipe-random-products{background:var(--color-background);border:2px solid var(--color-border);border-radius:16px;margin:30px 0;padding:25px}.recipe-random-products h3{color:var(--color-primary);font-size:1.5rem;font-weight:700;margin-bottom:20px;text-align:center}.random-products-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:25px}.random-product-card{align-items:center;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;padding:15px;text-align:center;transition:all .3s ease}.random-product-card:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.random-product-card .product-image{align-items:center;background:#f8f8f8;border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;height:150px;justify-content:center;margin-bottom:15px;overflow:hidden;width:150px}.random-product-card .product-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.random-product-card:hover .product-image img{transform:scale(1.1)}.random-product-card .product-info{display:flex;flex:1 1;flex-direction:column;gap:8px}.random-product-card .product-name{color:var(--color-text);font-size:1.1rem;font-weight:700;line-height:1.3;margin:0;text-align:center}.random-product-card .product-description{color:#666;font-size:.9rem;line-height:1.4;margin:0}.random-product-card .product-link{color:var(--color-primary);font-size:.9rem;font-weight:600;margin-top:auto;text-decoration:none;transition:color .3s ease}.random-product-card .product-link:hover{color:var(--color-secondary)}.fabric-search-section{border-top:1px solid var(--color-border);margin-top:20px;padding-top:20px;text-align:center}.fabric-search-section h4{color:var(--color-text);font-size:1.2rem;font-weight:600;margin-bottom:15px}.fabric-search-btn{transition:all .3s ease}.fabric-search-btn:hover{box-shadow:0 4px 12px #ff9f7c66!important;transform:translateY(-2px)}@media (max-width:768px){.random-products-grid{gap:15px;grid-template-columns:1fr}.random-product-card{padding:12px}.random-product-card .product-image{height:120px;width:120px}.recipe-random-products{padding:20px}}.recipe-upload{background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);min-height:100vh;padding:20px 0}.recipe-upload-container{background:#fff;border:1.5px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-md);margin:20px auto 0;max-width:800px;padding:40px}.recipe-upload-title{color:#333;font-size:2.5rem;font-weight:700;margin-bottom:10px;text-align:center}.recipe-upload-subtitle{color:#666;font-size:1.1rem;margin-bottom:40px;text-align:center}.upload-header{margin-bottom:30px}.back-btn{align-items:center;background:var(--color-background-alt);border:1.5px solid var(--color-border);color:var(--color-text);display:inline-flex;font-size:.9rem;gap:8px;padding:10px 20px;text-decoration:none}.back-btn:hover{background:var(--color-border);box-shadow:var(--shadow-sm)}.recipe-form{display:flex;flex-direction:column;gap:30px}.form-section{background:var(--color-background-alt);border:1.5px solid var(--color-border);border-radius:15px;padding:25px}.form-section h3{color:var(--color-text);font-size:1.3rem;margin-bottom:20px}.form-input,.form-select,.form-textarea{border:2px solid #e0e0e0;border-radius:10px;padding:15px}.form-input:focus,.form-select:focus,.form-textarea:focus{box-shadow:0 0 0 3px #ff6b6b1a}.form-group label{color:#555}.image-upload-area,.image-upload-label{display:flex;justify-content:center}.image-upload-label{align-items:center;background:#fff;border:3px dashed #ddd;border-radius:15px;flex-direction:column;height:200px;width:200px}.image-upload-label:hover{background:var(--color-background-alt)}.image-upload-label.small{width:120px}.upload-placeholder{align-items:center;color:#999;display:flex;flex-direction:column}.upload-placeholder.small span{font-size:2rem}.upload-placeholder p{font-size:.9rem}.image-preview{border-radius:12px;height:100%;object-fit:cover;width:100%}.image-preview.small{border-radius:8px;box-shadow:var(--shadow-sm);max-height:150px;max-width:150px}.pdf-upload-area{margin-bottom:20px;position:relative}.pdf-input{display:none}.pdf-upload-label{background:var(--color-background-alt);border:2px dashed var(--color-border);border-radius:12px;cursor:pointer;display:block;padding:30px;text-align:center;transition:all .3s ease}.pdf-upload-label:hover{background:#ff9f7c0d;border-color:var(--color-primary);transform:translateY(-2px)}.pdf-preview{background:var(--color-background-alt);border:2px solid var(--color-primary);border-radius:12px;padding:20px}.pdf-file-info{align-items:center;display:flex;gap:12px;margin-bottom:15px}.pdf-icon{color:var(--color-primary);font-size:2rem}.pdf-name{color:var(--color-text);flex:1 1;font-weight:600;word-break:break-all}.remove-pdf-btn{background:var(--color-danger);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;padding:8px 12px;transition:all .3s ease}.remove-pdf-btn:hover{background:#c82333;transform:translateY(-1px)}.pdf-help{align-items:flex-start;background:#ff9f7c1a;border-left:3px solid var(--color-primary);border-radius:8px;display:flex;gap:8px;padding:12px}.remove-btn{background:#ff4757;font-size:14px}.remove-btn:hover{background:#ff3742}.add-btn{font-size:1rem;padding:12px 25px}.add-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.step-container{background:#fff;border:1.5px solid var(--color-border);border-radius:12px}.step-header h4{font-size:1.2rem}.step-content{grid-template-columns:auto 1fr}.step-image-upload{align-items:center;display:flex;flex-direction:column}.step-description{min-height:80px}.submit-btn{background:linear-gradient(135deg,var(--color-primary) 0,#ff5252 100%);border:none;border-radius:50px;box-shadow:var(--shadow-lg);color:#fff;cursor:pointer;font-size:1.2rem;font-weight:700;letter-spacing:1px;padding:18px 40px;text-transform:uppercase;transition:all .3s ease}.submit-btn:hover{box-shadow:0 8px 25px #ff6b6b66;transform:translateY(-3px)}.submit-btn:active{transform:translateY(-1px)}.submit-btn:disabled{background:#ccc;cursor:not-allowed;transform:none}.youtube-input-container{margin-bottom:15px}.youtube-help{background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:8px;padding:10px}.help-icon{font-size:1rem}.help-text{color:var(--color-text-light)}.youtube-preview{background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:12px;padding:20px}.youtube-preview h4{color:var(--color-text)}.youtube-embed,.youtube-embed iframe{border-radius:8px}.youtube-error{background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;padding:12px}.error-icon{color:#e53e3e;font-size:1rem}.error-text{color:#e53e3e;font-size:.9rem;font-weight:500}.explanation-options{display:flex;flex-direction:column}.explanation-option{border-radius:12px;display:block;position:relative}.explanation-option:hover{box-shadow:var(--shadow-sm)}.explanation-option.active{background:var(--color-background-alt);box-shadow:var(--shadow-md)}.explanation-option input[type=radio]{opacity:0;pointer-events:none;position:absolute}.option-icon{align-items:center;background:var(--color-background-alt);border-radius:50%;display:flex;flex-shrink:0;height:60px;justify-content:center;width:60px}.explanation-option.active .option-icon{background:var(--color-primary);color:#fff}.option-text{flex:1 1}.option-text h4{color:var(--color-text);font-size:1.2rem}.option-text p{color:var(--color-text-light);line-height:1.4}.explanation-help{background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:8px;padding:10px}.login-required{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:20px}.login-required-content{background:#fff;border:1.5px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-md);max-width:500px;padding:40px;text-align:center;width:100%}.login-required-content h2{color:var(--color-text);font-size:1.8rem;font-weight:700;margin:0 0 15px}.login-required-content p{color:var(--color-text-light);font-size:1.1rem;line-height:1.5;margin:0 0 30px}.login-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.login-btn{display:inline-block;text-decoration:none}.login-btn.primary:hover{background:#ff5252;box-shadow:var(--shadow-md);transform:translateY(-2px)}.login-btn.secondary{background:var(--color-background-alt);border:1.5px solid var(--color-border);color:var(--color-text)}.login-btn.secondary:hover{background:var(--color-border);transform:translateY(-2px)}.permission-denied{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:20px}.permission-denied-content{background:#fff;border:1.5px solid var(--color-border);border-radius:15px;box-shadow:var(--shadow-md);max-width:500px;padding:40px;text-align:center;width:100%}.permission-denied-content h2{color:#dc3545;font-size:1.8rem;font-weight:600;margin-bottom:20px}.permission-denied-content p{color:#666;font-size:1.1rem;line-height:1.6;margin-bottom:15px}.permission-actions{margin-top:30px}.permission-actions .back-btn{background:var(--color-primary);border:none;border-radius:25px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.permission-actions .back-btn:hover{background:var(--color-primary-dark);box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}@media (max-width:768px){.recipe-upload-container{margin:10px;padding:20px}.recipe-upload-title{font-size:2rem}.form-row,.step-content{grid-template-columns:1fr}.step-content{gap:15px}.image-upload-label{height:150px;width:150px}.image-upload-label.small{height:100px;width:100px}.submit-btn{font-size:1.1rem;padding:15px 30px}}@media (max-width:480px){.recipe-upload-container{padding:15px}.recipe-upload-title{font-size:1.8rem}.form-section{padding:15px}.image-upload-label{height:120px;width:120px}.image-upload-label.small{height:80px;width:80px}.youtube-preview{padding:15px}.youtube-preview h4{font-size:1rem}.youtube-help{padding:8px}.help-text{font-size:.8rem}.login-required-content{padding:30px 20px}.login-required-content h2{font-size:1.5rem}.login-required-content p{font-size:1rem}.login-actions{flex-direction:column;gap:10px}.login-btn{padding:15px 30px;width:100%}.back-btn{font-size:.8rem;padding:12px 18px}.explanation-options{gap:10px}.explanation-option{padding:15px}.option-content{gap:12px}.option-icon{font-size:1.5rem;height:50px;width:50px}.option-text h4{font-size:1.1rem}.option-text p{font-size:.8rem}}.share-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.share-modal{animation:slideIn .3s ease;background:#fff;border-radius:20px;box-shadow:var(--shadow-lg);max-width:500px;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.share-modal-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:25px 25px 0}.share-modal-header h3{color:var(--color-text);font-size:1.4rem;font-weight:700;margin:0}.share-modal-header .close-btn{background:none;border:none;border-radius:50%;color:var(--color-text-light);cursor:pointer;font-size:1.5rem;padding:5px;transition:all .3s ease}.share-modal-header .close-btn:hover{background:var(--color-background-alt);color:var(--color-text)}.share-modal-content{padding:25px}.share-message{color:var(--color-text);font-size:1.1rem;line-height:1.5;margin:0 0 25px;text-align:center}.share-buttons{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr);margin-bottom:25px}.share-btn{align-items:center;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;justify-content:center;padding:15px;transition:all .3s ease}.share-btn.twitter{background:#1da1f2}.share-btn.twitter:hover{background:#1a8cd8;transform:translateY(-2px)}.share-btn.facebook{background:#4267b2}.share-btn.facebook:hover{background:#365899;transform:translateY(-2px)}.share-btn.line{background:#00b900}.share-btn.line:hover{background:#090;transform:translateY(-2px)}.share-btn.instagram{background:linear-gradient(45deg,#f09433,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888)}.share-btn.instagram:hover{filter:brightness(1.1);transform:translateY(-2px)}.share-icon{font-size:1.2rem}.share-actions{text-align:center}.skip-btn{background:var(--color-background-alt);border:1.5px solid var(--color-border);border-radius:20px;color:var(--color-text);cursor:pointer;font-size:.9rem;font-weight:600;padding:12px 25px;transition:all .3s ease}.skip-btn:hover{background:var(--color-border);transform:translateY(-1px)}@media (max-width:480px){.share-modal{margin:20px;width:95%}.share-modal-header{padding:20px 20px 0}.share-modal-header h3{font-size:1.2rem}.share-modal-content{padding:20px}.share-buttons{gap:10px;grid-template-columns:1fr}.share-btn{font-size:.9rem;padding:12px}}.sns-profile-fields{display:flex;flex-direction:column;gap:15px;margin-bottom:10px}.sns-profile-row{display:flex;flex-direction:column;gap:5px}.sns-profile-row label{color:#555;font-weight:600;margin-bottom:3px}.sns-profile-help{align-items:center;background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-light);display:flex;font-size:.95rem;gap:8px;padding:10px}.affiliate-image-upload label,.affiliate-product-header h4{color:var(--color-text)}.gallery-login{align-items:center;background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);display:flex;justify-content:center;min-height:100vh;padding:20px}.gallery-login-container{background:#fff;border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);max-width:400px;padding:40px;width:100%}.gallery-login-header{margin-bottom:30px;text-align:center}.gallery-login-logo{font-size:2.5rem;margin-bottom:10px}.gallery-login-title{color:var(--color-text);font-size:1.8rem;font-weight:700;margin-bottom:10px}.gallery-login-subtitle{color:var(--color-text-light);font-size:1rem}.gallery-login-form{display:flex;flex-direction:column;gap:20px}.form-label{color:var(--color-text);font-size:.9rem;font-weight:600}.form-input{background:#fff;border:2px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:1rem;padding:12px 16px;transition:all .3s ease}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #ff6b6b1a;outline:none}.form-input::placeholder{color:var(--color-text-light)}.gallery-login-button{background:linear-gradient(135deg,var(--color-primary) 0,#ff5252 100%);border:none;border-radius:8px;box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 20px;transition:all .3s ease}.gallery-login-button:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.gallery-login-button:disabled{box-shadow:var(--shadow-sm);cursor:not-allowed;opacity:.6;transform:none}.gallery-login-toggle{border-top:1px solid var(--color-border);margin-top:20px;padding-top:20px;text-align:center}.toggle-button{background:none;border:none;color:var(--color-primary);cursor:pointer;font-weight:600;text-decoration:underline;transition:color .3s ease}.toggle-button:hover{color:#ff5252}.error-message{background:#e74c3c1a;border:1px solid #e74c3c33;border-radius:8px;color:#e74c3c;font-size:.9rem;margin-top:10px;padding:10px;text-align:center}.password-reset-link{margin-top:15px;text-align:center}.forgot-password-btn{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:.9rem;font-weight:600;text-decoration:underline;transition:color .3s ease}.forgot-password-btn:hover{color:#ff5252}.password-reset-actions{margin-top:20px;text-align:center}.back-to-login-btn{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:.9rem;font-weight:600;text-decoration:underline;transition:color .3s ease}.back-to-login-btn:hover{color:#ff5252}.message{border-radius:8px;font-size:.9rem;margin-top:10px;padding:10px;text-align:center}.success-message{background:#27ae601a;border:1px solid #27ae6033;color:#27ae60}@media (max-width:480px){.gallery-login-container{padding:30px 20px}.gallery-login-title{font-size:1.5rem}}.my-page-new{background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);min-height:100vh;padding:20px 0}.my-page-container{background:#fff;border:1.5px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-md);margin:0 auto;max-width:800px;overflow:hidden}.login-options{display:flex;flex-direction:column;gap:15px;margin:0 auto;max-width:300px}.login-btn.primary{align-items:center;background:var(--color-primary);color:#fff;display:flex;gap:8px;justify-content:center}.my-page-header{align-items:center;background:var(--color-background-alt);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px 30px}.my-page-header h1{color:var(--color-text);font-size:1.8rem;font-weight:700;margin:0}.profile-section{background:linear-gradient(135deg,#fff5f5,#fff);padding:30px}.profile-info{align-items:center;display:flex;gap:30px}.profile-avatar{object-fit:cover}.profile-avatar,.profile-avatar-placeholder{border:4px solid var(--color-primary);border-radius:50%;box-shadow:var(--shadow-md);height:100px;width:100px}.profile-avatar-placeholder{align-items:center;background:var(--color-primary);color:#fff;display:flex;font-size:2rem;font-weight:700;justify-content:center}.profile-details{flex:1 1}.profile-details h2{color:var(--color-text);font-size:1.8rem;font-weight:700;margin:0 0 8px}.profile-email{color:var(--color-text-light);font-size:1rem;margin:0 0 12px}.profile-bio{color:var(--color-text);font-size:1rem;line-height:1.5;margin:0 0 20px}.profile-stats{display:flex;flex-wrap:wrap;gap:30px}.stat-item{text-align:center}.stat-number{color:var(--color-primary);display:block;font-size:1.5rem;font-weight:700;margin-bottom:4px}.stat-date,.stat-label{color:var(--color-text-light);font-size:.9rem}.action-buttons{display:flex;flex-direction:column;gap:15px;padding:30px}.action-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;justify-content:center;padding:16px 24px;text-decoration:none;transition:all .3s ease}.action-btn.primary{background:var(--color-primary);color:#fff}.action-btn.primary:hover{background:#ff5252;box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-btn.secondary{background:#f8f9fa;border:2px solid var(--color-border);color:var(--color-text)}.action-btn.secondary:hover{background:#e9ecef;border-color:var(--color-primary);transform:translateY(-1px)}.action-btn.danger{background:#fff5f5;border:2px solid #fed7d7;color:#e53e3e}.action-btn.danger:hover{background:#fed7d7;color:#c53030;transform:translateY(-1px)}.quick-access{background:var(--color-background-alt);border-top:1px solid var(--color-border);padding:30px}.quick-access h3{color:var(--color-text);font-size:1.3rem;font-weight:600;margin:0 0 20px}.quick-links{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.quick-link{align-items:center;background:#fff;border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:10px;justify-content:center;padding:16px 20px;text-decoration:none;transition:all .3s ease}.quick-link:hover{background:var(--color-primary);border-color:var(--color-primary);box-shadow:var(--shadow-sm);color:#fff;transform:translateY(-2px)}.tab-navigation{background:var(--color-background-alt);border-bottom:1px solid var(--color-border);display:flex}.tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:var(--color-text-light);cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:15px 20px;transition:all .3s ease}.tab-btn.active{background:#fff;border-bottom-color:var(--color-primary)}.tab-btn.active,.tab-btn:hover{color:var(--color-primary)}.tab-content{padding:30px}.recipes-tab{min-height:400px}.recipes-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.recipes-header h3{color:var(--color-text);font-size:1.4rem;font-weight:600;margin:0}.new-recipe-btn{align-items:center;background:var(--color-primary);border:none;border-radius:25px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.new-recipe-btn:hover{background:#ff5252;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.no-recipes p{margin-bottom:20px}.recipe-card{position:relative}.recipe-card:hover{border-color:var(--color-primary)}.recipe-image-placeholder{align-items:center;background:var(--color-background-alt);color:var(--color-text-light);display:flex;font-size:3rem;height:100%;justify-content:center;width:100%}.recipe-actions{gap:8px;margin-top:12px}.action-btn.small,.recipe-actions{display:flex;justify-content:center}.action-btn.small{align-items:center;border-radius:15px;font-size:.75rem;font-weight:600;height:auto;min-width:50px;padding:6px 12px}.action-btn.small.view{background:#007bffe6;color:#fff}.action-btn.small.edit{background:#ffc107e6;color:#fff}.action-btn.small.delete{background:#dc3545e6;color:#fff}.recipe-stats{margin-bottom:8px}.recipe-stats span{color:var(--color-text-light);font-size:.85rem}.recipe-date{color:var(--color-text-light);font-size:.8rem}.settings-tab{padding:20px}.settings-header{margin-bottom:30px;text-align:center}.settings-header h3{color:var(--color-text);font-size:1.5rem;font-weight:700;margin:0 0 10px}.settings-description{color:var(--color-text-light);font-size:.9rem;margin:0}.settings-section{background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--border-radius);margin-bottom:30px;padding:20px}.settings-section h4{color:var(--color-text);font-size:1.2rem;font-weight:600;margin:0 0 15px;padding-bottom:8px}.setting-item,.settings-section h4{border-bottom:1px solid var(--color-border)}.setting-item{align-items:center;display:flex;justify-content:space-between;padding:15px 0}.setting-item:last-child{border-bottom:none}.setting-info{flex:1 1}.setting-info label{color:var(--color-text);display:block;font-weight:600;margin-bottom:5px}.setting-description{color:var(--color-text-light);font-size:.9rem;margin:0}.delete-btn,.edit-btn,.logout-btn{border:none;border-radius:20px;cursor:pointer;font-size:.9rem;font-weight:600;min-width:80px;padding:8px 16px;transition:all .3s ease}.edit-btn{background:var(--color-primary);color:#fff}.edit-btn:hover{background:#ff5252;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.logout-btn{background:#6c757d;color:#fff}.logout-btn:hover{background:#5a6268;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.delete-btn{background:#dc3545;color:#fff}.delete-btn:hover{background:#c82333;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.danger-zone{background:#dc35450d;border-color:#dc3545}.danger-zone h4{border-bottom-color:#dc3545;color:#dc3545}.favorites-tab{min-height:400px}.favorites-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.favorites-header h3{color:var(--color-text);font-size:1.4rem;font-weight:600;margin:0}.favorites-description{color:var(--color-text-light);font-size:.9rem;margin:0}.no-favorites{color:var(--color-text-light);padding:60px 20px;text-align:center}.no-favorites p{font-size:1.1rem;margin-bottom:20px}.favorites-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.favorite-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease}.favorite-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.favorite-image{height:200px;overflow:hidden;position:relative}.favorite-image img{height:100%;object-fit:cover;width:100%}.favorite-image-placeholder{align-items:center;background:var(--color-background-alt);color:var(--color-text-light);display:flex;font-size:3rem;height:100%;justify-content:center;width:100%}.favorite-actions{display:flex;gap:8px;justify-content:center;margin-top:12px}.action-btn.small.remove{background:#dc3545e6;color:#fff}.favorite-info{padding:15px}.favorite-title{color:var(--color-text);font-size:1.1rem;font-weight:600;line-height:1.3;margin:0 0 8px}.favorite-author{color:var(--color-text-light);font-size:.9rem;line-height:1.4;margin:0 0 12px}.favorite-date{color:var(--color-text-light);font-size:.8rem}@media (max-width:768px){.my-page-container{margin:10px}.my-page-header{padding:15px 20px}.my-page-header h1{font-size:1.5rem}.profile-section{padding:20px}.profile-info{flex-direction:column;gap:20px;text-align:center}.profile-stats{gap:20px;justify-content:center}.action-buttons,.quick-access{padding:20px}.quick-links{grid-template-columns:1fr}.tab-content{padding:20px}.recipes-header{align-items:flex-start;flex-direction:column;gap:15px}.recipes-grid{grid-template-columns:1fr}.recipe-actions{opacity:1}}@media (max-width:480px){.profile-avatar,.profile-avatar-placeholder{font-size:1.5rem;height:80px;width:80px}.profile-details h2{font-size:1.5rem}.stat-number{font-size:1.3rem}.action-btn{font-size:.95rem;padding:14px 20px}}.profile-edit{background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);min-height:100vh;padding:20px 0}.profile-edit-container{background:#fff;border:1.5px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-md);margin:0 auto;max-width:800px;overflow:hidden}.login-required h2{color:var(--color-text)}.login-required p{color:var(--color-text-light)}.profile-edit-header{align-items:center;background:var(--color-background-alt);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px 30px}.profile-edit-header h1{color:var(--color-text);font-size:1.8rem;font-weight:700;margin:0}.profile-edit-content{padding:30px}.edit-section{margin-bottom:40px}.edit-section h3{border-bottom:2px solid var(--color-primary);color:var(--color-text);font-size:1.4rem;font-weight:600;margin:0 0 20px;padding-bottom:10px}.section-description{color:var(--color-text-light);font-size:.95rem;line-height:1.5;margin-bottom:20px}.form-group{margin-bottom:25px}.form-group label{align-items:center;display:flex;font-size:1rem;font-weight:600;gap:8px;margin-bottom:8px}.profile-icon,.sns-icon{font-size:1.1rem}.form-input,.form-textarea{background:#fff;border:2px solid var(--color-border);border-radius:var(--border-radius);box-sizing:border-box;color:var(--color-text);font-size:1rem;padding:12px 16px;transition:all .3s ease;width:100%}.form-input:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #ff52521a;outline:none}.form-help{color:var(--color-text-light);font-size:.9rem;line-height:1.4;margin:8px 0 0}.profile-inputs,.sns-inputs{grid-gap:20px;display:grid;gap:20px}.profile-preview{background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:25px}.preview-avatar{border-radius:50%;height:80px;margin-bottom:15px;overflow:hidden;width:80px}.preview-avatar img{height:100%;object-fit:cover;width:100%}.avatar-placeholder{align-items:center;background:var(--color-primary);color:#fff;display:flex;font-size:1.8rem;font-weight:700;height:100%;justify-content:center;width:100%}.preview-info h4{color:var(--color-text);font-size:1.3rem;font-weight:600;margin:0 0 8px}.preview-email{color:var(--color-text-light);font-size:.95rem;margin:0 0 12px}.preview-bio{color:var(--color-text);font-size:.95rem;line-height:1.5;margin:0 0 15px}.preview-sns{display:flex;flex-wrap:wrap;gap:8px}.sns-badge{align-items:center;background:#fff;border:1px solid var(--color-border);border-radius:20px;color:var(--color-text);display:inline-flex;font-size:.85rem;font-weight:500;gap:4px;padding:6px 12px}.sns-badge.twitter{border-color:#1da1f2;color:#1da1f2}.sns-badge.instagram{border-color:#e4405f;color:#e4405f}.sns-badge.facebook{border-color:#1877f2;color:#1877f2}.sns-badge.line{border-color:#00b900;color:#00b900}.sns-badge.website{border-color:#6c757d;color:#6c757d}.sns-badge.youtube{border-color:red;color:red}.sns-badge.tiktok{border-color:#000;color:#000}.edit-actions{border-top:1px solid var(--color-border);display:flex;gap:15px;justify-content:flex-end;padding-top:30px}.cancel-btn{color:var(--color-text)}@media (max-width:768px){.profile-edit-container{margin:10px}.profile-edit-header{padding:15px 20px}.profile-edit-header h1{font-size:1.5rem}.profile-edit-content{padding:20px}.edit-section{margin-bottom:30px}.edit-section h3{font-size:1.2rem}.sns-inputs{gap:15px}.edit-actions{flex-direction:column;gap:10px}.cancel-btn,.save-btn{width:100%}}@media (max-width:480px){.profile-edit-content{padding:15px}.form-input,.form-textarea{font-size:.95rem;padding:10px 12px}.preview-avatar{height:60px;width:60px}.avatar-placeholder{font-size:1.4rem}.preview-info h4{font-size:1.1rem}}.recipe-edit{background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);min-height:100vh;padding:20px 0}.recipe-edit-container{background:#fff;border:1.5px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-md);margin:0 auto;max-width:1000px;overflow:hidden}.loading{color:#666;font-size:1.2rem;padding:100px}.login-required{background:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow-md);margin:20px;padding:100px 20px;text-align:center}.login-required h2{color:#333;margin-bottom:20px}.login-required p{color:#666;margin-bottom:30px}.login-btn{background:var(--color-primary);border:none;border-radius:25px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 30px;transition:all .3s ease}.login-btn:hover{background:#ff5252;transform:translateY(-2px)}.error,.login-btn:hover{box-shadow:var(--shadow-md)}.error{background:#fff;border-radius:var(--border-radius);color:#333;font-size:1.2rem;margin:20px;padding:100px 20px;text-align:center}.recipe-edit-header{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px 30px;position:relative}.recipe-edit-header h1{color:#fff;font-size:1.8rem;font-weight:700;margin:0;text-shadow:0 2px 4px #0000004d}.back-btn{background:#fff3;color:#fff;text-shadow:0 1px 2px #0000004d}.back-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.recipe-edit-content{padding:30px}.form-section{margin-bottom:40px}.form-section h3{border-bottom:2px solid var(--color-primary);color:#333;font-size:1.4rem;font-weight:600;margin:0 0 20px;padding-bottom:10px}.image-upload-area{margin-bottom:20px}.image-input{display:none}.image-upload-label{border:2px dashed var(--color-border);border-radius:var(--border-radius);cursor:pointer;display:block;min-height:200px;overflow:hidden;padding:40px;position:relative;text-align:center;transition:all .3s ease}.image-upload-label:hover{background:var(--color-background);border-color:var(--color-primary)}.upload-placeholder{color:#666}.upload-placeholder span{display:block;font-size:3rem;margin-bottom:10px}.upload-placeholder p{font-size:1rem;margin:0}.image-preview{border-radius:var(--border-radius);box-shadow:var(--shadow-sm);display:block;height:auto;max-width:100%}.form-input,.form-select,.form-textarea{background:#fff;border:2px solid var(--color-border);border-radius:var(--border-radius);box-sizing:border-box;color:#333;font-size:1rem;padding:12px 16px;transition:all .3s ease;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #ff52521a;outline:none}.form-input::placeholder,.form-textarea::placeholder{color:#666;opacity:1}.form-input:focus::placeholder,.form-textarea:focus::placeholder{color:#999}.form-textarea{min-height:100px;resize:vertical}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.explanation-type-selector{margin-bottom:20px}.explanation-options{grid-gap:15px;display:grid;gap:15px}.explanation-option{align-items:center;background:#fff;border:2px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;display:flex;padding:20px;transition:all .3s ease}.explanation-option.active{background:var(--color-background);border-color:var(--color-primary)}.explanation-option:hover{border-color:var(--color-primary);transform:translateY(-1px)}.explanation-option input[type=radio]{margin-right:15px;transform:scale(1.2)}.option-content{align-items:center;display:flex;flex:1 1;gap:15px}.option-icon{font-size:2rem}.option-text h4{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 5px}.option-text p{color:#666;font-size:.9rem;margin:0}.youtube-input-container{margin-bottom:20px}.youtube-input{margin-bottom:10px}.youtube-help{align-items:center;color:#666;display:flex;font-size:.9rem;gap:8px}.youtube-preview{margin-top:20px}.youtube-preview h4{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 15px}.youtube-embed{border-radius:var(--border-radius);height:0;overflow:hidden;padding-bottom:56.25%;position:relative;width:100%}.youtube-embed iframe{height:100%;left:0;position:absolute;top:0;width:100%}.youtube-error{color:#e53e3e}.explanation-help,.youtube-error{align-items:center;display:flex;font-size:.9rem;gap:8px;margin-top:10px}.explanation-help{color:#666}.ingredient-row{align-items:center;display:flex;gap:10px;margin-bottom:10px}.ingredient-input{flex:1 1}.ingredient-input input{background:#fff;color:#333}.remove-btn{align-items:center;background:#e53e3e;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:30px;justify-content:center;transition:all .3s ease;width:30px}.remove-btn:hover{background:#c53030;transform:scale(1.1)}.add-btn{background:var(--color-primary);border:none;border-radius:25px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;margin-top:10px;padding:10px 20px;transition:all .3s ease}.add-btn:hover{background:#ff5252;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.step-container{background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--border-radius);margin-bottom:20px;padding:20px}.step-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.step-header h4{color:#333;font-size:1.1rem;font-weight:600;margin:0}.step-content{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:150px 1fr}.step-image-upload{width:150px}.image-upload-label.small{align-items:center;display:flex;height:120px;justify-content:center;padding:20px}.upload-placeholder.small{font-size:2rem}.image-preview.small{border-radius:var(--border-radius);height:auto;max-width:100%}.step-description{min-height:120px}.step-description textarea{background:#fff;color:#333}.form-actions{border-top:1px solid var(--color-border);padding-top:30px}.cancel-btn,.save-btn{align-items:center;border:none;border-radius:25px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;min-width:120px;padding:12px 24px;transition:all .3s ease}.cancel-btn{background:#f8f9fa;border:2px solid var(--color-border);color:#333}.cancel-btn:hover{background:#e9ecef;border-color:#dee2e6;transform:translateY(-1px)}.save-btn{background:var(--color-primary);color:#fff}.save-btn:hover:not(:disabled){background:#ff5252;box-shadow:var(--shadow-md);transform:translateY(-2px)}.save-btn:disabled{background:#ccc;cursor:not-allowed;transform:none}@media (max-width:768px){.recipe-edit-container{margin:10px}.recipe-edit-header{padding:15px 20px}.recipe-edit-header h1{font-size:1.5rem}.recipe-edit-content{padding:20px}.form-section{margin-bottom:30px}.form-section h3{font-size:1.2rem}.form-row,.step-content{gap:15px;grid-template-columns:1fr}.step-image-upload{width:100%}.form-actions{flex-direction:column;gap:10px}.cancel-btn,.save-btn{width:100%}}@media (max-width:480px){.recipe-edit-content{padding:15px}.form-input,.form-select,.form-textarea{font-size:.95rem;padding:10px 12px}.explanation-option{padding:15px}.option-content{gap:10px}.option-icon{font-size:1.5rem}}.affiliate-help{align-items:flex-start;background:#f8f9fa;border-left:4px solid var(--color-primary);border-radius:8px;display:flex;gap:8px;margin-bottom:20px;padding:12px 16px}.help-icon{color:var(--color-primary);font-size:1.2rem}.help-text{color:#666;font-size:.9rem;line-height:1.4}.affiliate-product-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;margin-bottom:20px;padding:20px}.affiliate-product-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.affiliate-product-header h4{color:#333;font-size:1.1rem;font-weight:600;margin:0}.affiliate-product-content{display:flex;flex-direction:column;gap:16px}.affiliate-image-upload{display:flex;flex-direction:column;gap:8px}.affiliate-image-upload label{color:#333;font-size:.9rem;font-weight:600}@media (max-width:768px){.affiliate-product-container{padding:16px}.affiliate-product-content{gap:12px}}.gallery-main-site{background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);min-height:100vh;padding:20px}.main-site-container{background:#fff;border-radius:16px;box-shadow:var(--shadow-lg);margin:0 auto;max-width:1200px;overflow:hidden}.main-site-header{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;padding:40px 30px;text-align:center}.main-site-header h1{font-size:2.5rem;font-weight:700;margin-bottom:15px;text-shadow:0 2px 4px #0000004d}.main-site-header p{font-size:1.2rem;margin:0;opacity:.9}.main-site-content{padding:40px 30px}.site-description{margin-bottom:40px;text-align:center}.site-description h2{color:var(--color-primary);font-size:1.8rem;margin-bottom:15px}.site-description p{color:var(--color-text-light);font-size:1.1rem;line-height:1.6}.service-cards{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:40px}.service-card{background:var(--color-background-alt);border:2px solid var(--color-border);border-radius:12px;cursor:pointer;overflow:hidden;padding:25px;position:relative;text-align:center;transition:all .3s ease}.service-card:before{background:linear-gradient(135deg,#ff6b6b1a,#ffb3471a);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.service-card:hover:before{opacity:1}.service-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-5px)}.service-icon{display:block;font-size:3rem;margin-bottom:15px}.service-card h3{color:var(--color-primary);font-size:1.3rem;font-weight:600;margin-bottom:10px}.service-card p{color:var(--color-text-light);font-size:.95rem;line-height:1.5;margin-bottom:20px}.service-btn{background:var(--color-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;position:relative;transition:background .3s ease;z-index:1}.service-btn:hover{background:#e55a5a}.main-site-actions{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.main-site-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:10px;padding:15px 25px;transition:all .3s ease}.main-site-btn.primary{background:var(--color-primary);color:#fff}.main-site-btn.primary:hover{background:#e55a5a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.main-site-btn.secondary{background:#fff;border:2px solid var(--color-primary);color:var(--color-primary)}.main-site-btn.secondary:hover{background:var(--color-primary);box-shadow:var(--shadow-md);color:#fff;transform:translateY(-2px)}@media (max-width:768px){.gallery-main-site{padding:15px}.main-site-header{padding:30px 20px}.main-site-header h1{font-size:2rem}.main-site-header p{font-size:1rem}.main-site-content{padding:30px 20px}.service-cards{gap:20px;grid-template-columns:1fr}.main-site-actions{align-items:center;flex-direction:column}.main-site-btn{justify-content:center;max-width:300px;width:100%}}@media (max-width:480px){.main-site-header{padding:25px 15px}.main-site-header h1{font-size:1.8rem}.main-site-content{padding:25px 15px}.service-card{padding:20px}.service-icon{font-size:2.5rem}}.user-profile{background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);min-height:100vh;padding:20px 0}.user-profile-container{background:#fff;border:1.5px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-md);margin:0 auto;max-width:800px;overflow:hidden}.loading-container{color:var(--color-text-light);font-size:1.2rem;padding:100px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border-top:4px solid var(--color-border);border:4px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:40px;margin:0 auto 20px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-container{background:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow-md);margin:20px;padding:100px 20px;text-align:center}.error-container h2{color:var(--color-text);margin-bottom:20px}.error-container p{color:var(--color-text-light);margin-bottom:30px}.user-profile-header{align-items:center;background:var(--color-background-alt);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px 30px}.user-profile-header h1{color:var(--color-text);font-size:1.8rem;font-weight:700;margin:0}.back-btn{background:none;border:none;border-radius:20px;color:var(--color-primary);cursor:pointer;font-size:1rem;font-weight:600;padding:8px 16px;transition:all .3s ease}.back-btn:hover{background:var(--color-background)}.user-info-section{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:20px;padding:30px}.user-avatar{flex-shrink:0;height:80px;overflow:hidden;width:80px}.user-avatar img{height:100%;object-fit:cover;width:100%}.avatar-icon{align-items:center;background:var(--color-background);color:var(--color-text-light);display:flex;font-size:2rem;height:100%;justify-content:center;width:100%}.user-details{flex:1 1}.user-name{color:var(--color-text);font-size:1.5rem;font-weight:700;margin:0 0 10px}.user-stats{color:var(--color-text-light);font-size:.9rem;margin:0 0 10px}.user-bio{color:var(--color-text);font-size:.95rem;line-height:1.5;margin:0 0 15px}.user-profile-details{background:#fff;border-bottom:1px solid var(--color-border);padding:25px 30px}.user-profile-details h3{align-items:center;color:var(--color-text);display:flex;font-size:1.3rem;font-weight:600;gap:8px;margin:0 0 20px}.profile-info-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.profile-info-item{align-items:center;background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;display:flex;justify-content:space-between;padding:12px 15px}.info-label{color:var(--color-text);font-size:.9rem;font-weight:600}.info-value{color:var(--color-text-light);font-size:.9rem}.personal-story{margin-bottom:20px}.personal-story h4{align-items:center;color:var(--color-text);display:flex;font-size:1.1rem;font-weight:600;gap:8px;margin:0 0 10px}.personal-story p{color:var(--color-text);font-size:.95rem;line-height:1.6;margin:0;text-align:justify}.interests-section{margin-bottom:20px}.interests-section h4{align-items:center;color:var(--color-text);display:flex;font-size:1.1rem;font-weight:600;gap:8px;margin:0 0 10px}.interests-tags{display:flex;flex-wrap:wrap;gap:10px}.interest-tag{background:linear-gradient(135deg,var(--color-primary) 0,#ff8a65 100%);border-radius:20px;box-shadow:var(--shadow-sm);color:#fff;font-size:.85rem;font-weight:600;padding:8px 16px}.user-sns-section{background:#fff;border-bottom:1px solid var(--color-border);padding:25px 30px}.user-sns-section h3{align-items:center;color:var(--color-text);display:flex;font-size:1.3rem;font-weight:600;gap:8px;margin:0 0 20px}.sns-links{display:flex;flex-wrap:wrap;gap:12px}.sns-link{align-items:center;background:#fff;border:1px solid var(--color-border);border-radius:25px;box-shadow:var(--shadow-sm);color:var(--color-text);display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;padding:10px 16px;text-decoration:none;transition:all .3s ease}.sns-link:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.sns-link.instagram{border-color:#e4405f;color:#e4405f}.sns-link.twitter{border-color:#1da1f2;color:#1da1f2}.sns-link.youtube{border-color:red;color:red}.sns-link.tiktok{border-color:#000;color:#000}.sns-link.website{border-color:#6c757d;color:#6c757d}.user-recipes-section{padding:30px}.user-recipes-section h3{color:var(--color-text);font-size:1.3rem;font-weight:600;margin:0 0 20px}.no-recipes{color:var(--color-text-light);padding:60px 20px;text-align:center}.no-recipes p{font-size:1.1rem;margin:0}.recipes-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.recipe-card{border:1px solid var(--color-border);border-radius:var(--border-radius)}.recipe-card:hover{transform:translateY(-2px)}.no-image{align-items:center;background:var(--color-background);color:var(--color-text-light);display:flex;font-size:3rem;height:100%;justify-content:center;width:100%}.recipe-info{padding:15px}.recipe-title{font-size:1.1rem;font-weight:600;line-height:1.3;margin:0 0 8px}.recipe-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-text-light);display:-webkit-box;font-size:.9rem;line-height:1.4;margin:0 0 12px;overflow:hidden}.recipe-stats{font-size:.85rem}.recipe-stats span{align-items:center;display:flex;gap:4px}@media (max-width:768px){.user-profile-container{margin:0 10px}.user-profile-header{padding:15px 20px}.user-profile-header h1{font-size:1.5rem}.user-info-section{flex-direction:column;padding:20px;text-align:center}.user-profile-details,.user-sns-section{padding:20px}.profile-info-grid{grid-template-columns:1fr}.sns-links{flex-direction:column}.sns-link{justify-content:center}.user-avatar{height:60px;width:60px}.user-name{font-size:1.3rem}.user-recipes-section{padding:20px}.recipes-grid{gap:15px;grid-template-columns:1fr}}@media (max-width:480px){.user-avatar{height:50px;width:50px}.user-name{font-size:1.2rem}.recipe-image{height:150px}}.pagination-container{border-top:1px solid var(--color-border);margin:30px 0 20px;padding:20px 0;text-align:center}.load-more-btn{align-items:center;background:linear-gradient(135deg,var(--color-primary) 0,#ff8a65 100%);border:none;border-radius:25px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:10px;padding:12px 30px;transition:all .3s ease}.load-more-btn:hover:not(:disabled){box-shadow:var(--shadow-lg);transform:translateY(-2px)}.load-more-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.loading-spinner-small{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.recipes-count{background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;margin-top:20px;padding:15px;text-align:center}.recipes-count p{color:var(--color-text-light);font-size:.9rem;font-weight:500;margin:0}.gallery-search{background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);min-height:100vh;padding:20px 0}.search-header{margin:0 auto 30px;max-width:1200px;padding:0 20px}.search-title{color:var(--color-text);font-size:28px;font-weight:700;margin:0}.search-content{margin:0 auto;max-width:1200px;padding:0 20px}.search-stats{border-left:4px solid var(--color-primary);color:var(--color-text-light);font-size:16px;margin-bottom:30px;padding:15px 20px}.no-results,.search-stats{background:#fff;border-radius:12px;box-shadow:var(--shadow-sm)}.no-results{margin:20px 0;padding:60px 20px;text-align:center}.no-results-icon{font-size:48px;margin-bottom:20px;opacity:.6}.no-results h3{color:var(--color-text);font-size:24px;margin-bottom:10px}.no-results p{color:var(--color-text-light);font-size:16px;margin-bottom:30px}.search-suggestions{margin:0 auto;max-width:400px;text-align:left}.search-suggestions h4{color:var(--color-text);font-size:18px;margin-bottom:15px}.search-suggestions ul{list-style:none;margin:0;padding:0}.search-suggestions li{border-bottom:1px solid #f0f0f0;color:var(--color-text-light);padding:8px 0}.search-suggestions li:last-child{border-bottom:none}.be-first-poster{background:linear-gradient(135deg,#fff5f5,#fef7f0);border:2px solid #ffe4e4;border-radius:16px;margin-top:40px;padding:30px;text-align:center}.be-first-poster-icon{animation:bounce 2s infinite;font-size:48px;margin-bottom:20px}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.be-first-poster h4{color:var(--color-primary);font-size:20px;font-weight:600;margin-bottom:15px}.be-first-poster p{color:var(--color-text-light);font-size:16px;line-height:1.6;margin-bottom:25px}.upload-encouragement-btn{align-items:center;background:linear-gradient(135deg,var(--color-primary) 0,#ff8a80 100%);border:none;border-radius:25px;box-shadow:0 4px 15px #ff6b6b4d;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:15px 30px;transition:all .3s ease}.upload-encouragement-btn:hover{background:linear-gradient(135deg,var(--color-primary-dark) 0,#ff6b6b 100%);box-shadow:0 6px 20px #ff6b6b66;transform:translateY(-3px)}.upload-encouragement-btn:active{transform:translateY(-1px)}.upload-encouragement-btn span{font-size:18px}.recipes-grid,.search-results{margin-top:20px}.recipes-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.recipe-card{background:#fff;border:1px solid #f0f0f0;border-radius:12px;box-shadow:var(--shadow-sm);cursor:pointer;overflow:hidden;transition:all .3s ease}.recipe-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.recipe-image{height:200px;overflow:hidden;position:relative;width:100%}.recipe-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.recipe-card:hover .recipe-image img{transform:scale(1.05)}.recipe-info{padding:20px}.recipe-title{color:var(--color-text);font-size:18px;font-weight:700;line-height:1.4;margin:0 0 15px}.recipe-author-info{align-items:center;cursor:pointer;display:flex;gap:8px;margin-bottom:15px;transition:opacity .3s ease}.recipe-author-info:hover{opacity:.8}.author-avatar{align-items:center;background:var(--color-primary);border-radius:50%;color:#fff;display:flex;font-size:12px;height:24px;justify-content:center;width:24px}.author-name{color:var(--color-text-light);font-size:14px;font-weight:500}.sns-icons{display:flex;gap:4px;margin-left:auto}.sns-icon{font-size:12px;opacity:.7;transition:opacity .3s ease}.sns-icon:hover{opacity:1}.recipe-stats{color:var(--color-text-light);display:flex;font-size:12px;gap:15px;margin-bottom:15px}.likes{color:var(--color-primary);font-weight:500}.difficulty{background:var(--color-background-alt);border-radius:12px;font-size:10px;padding:2px 8px}.time{color:var(--color-text-light)}.recipe-tags{display:flex;flex-wrap:wrap;gap:8px}.tag{background:var(--color-background-alt);border-radius:12px;color:var(--color-text-light);font-size:10px;font-weight:500;padding:4px 8px}@media (max-width:768px){.gallery-search{padding:10px 0}.search-content,.search-header{padding:0 15px}.search-title{font-size:24px}.recipes-grid{gap:15px;grid-template-columns:1fr}.recipe-info{padding:15px}.recipe-title{font-size:16px}}@media (max-width:480px){.search-title{font-size:20px}.no-results{padding:40px 15px}.no-results h3{font-size:20px}.recipe-stats{flex-direction:column;gap:8px}.be-first-poster{margin-top:30px;padding:20px 15px}.be-first-poster h4{font-size:18px}.be-first-poster p{font-size:14px}.upload-encouragement-btn{font-size:14px;padding:12px 24px}}.load-more-container{margin-top:40px;padding:20px 0;text-align:center}.load-more-button{background:var(--color-primary);border:none;border-radius:25px;box-shadow:0 2px 8px #ff6b6b33;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .3s ease}.load-more-button:hover{background:var(--color-primary-dark);box-shadow:0 4px 12px #ff6b6b4d;transform:translateY(-2px)}.load-more-button:active{transform:translateY(0)}@media (max-width:768px){.load-more-container{margin-top:30px;padding:15px 0}.load-more-button{font-size:14px;padding:10px 20px}}@media (max-width:480px){.load-more-button{font-size:13px;padding:8px 16px}}.gallery-admin{background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);min-height:100vh;padding:20px 0}.admin-header{margin:0 auto 30px;max-width:1200px;padding:0 20px}.back-button{align-items:center;background:none;border:none;color:var(--color-primary);cursor:pointer;display:flex;font-size:16px;gap:8px;margin-bottom:15px;padding:10px 0;transition:color .3s ease}.back-button:hover{color:var(--color-primary-dark)}.admin-title{color:var(--color-text);font-size:32px;font-weight:700;margin:0 0 10px}.admin-subtitle{color:var(--color-text-light);font-size:18px;margin:0}.admin-content{margin:0 auto;max-width:1200px;padding:0 20px}.admin-tabs{border-bottom:2px solid #f0f0f0;display:flex;gap:10px;margin-bottom:30px}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:var(--color-text-light);cursor:pointer;font-size:16px;font-weight:500;padding:15px 25px;transition:all .3s ease}.tab-button.active,.tab-button:hover{color:var(--color-primary)}.tab-button.active{border-bottom-color:var(--color-primary)}.keywords-section,.situations-section{background:#fff;border-radius:12px;box-shadow:var(--shadow-sm);padding:30px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.section-header h2{color:var(--color-text);font-size:24px;margin:0}.add-button{background:var(--color-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;padding:12px 20px;transition:background-color .3s ease}.add-button:hover{background:var(--color-primary-dark)}.gallery-admin .keywords-grid,.situations-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.keyword-card,.situation-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:20px;transition:all .3s ease}.keyword-card:hover,.situation-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.keyword-image,.situation-image{border-radius:8px;height:150px;margin-bottom:15px;overflow:hidden;width:100%}.keyword-image img,.situation-image img{height:100%;object-fit:cover;width:100%}.keyword-info h3,.situation-info h3{color:var(--color-text);font-size:18px;margin:0 0 8px}.keyword-info p,.situation-info p{color:var(--color-text-light);font-size:14px;margin:0}.keyword-actions,.situation-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.delete-button,.edit-button,.move-down-button,.move-up-button{border:none;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px;transition:all .3s ease}.edit-button{background:var(--color-primary);color:#fff}.edit-button:hover{background:var(--color-primary-dark)}.delete-button{background:#dc3545;color:#fff}.delete-button:hover{background:#c82333}.move-down-button,.move-up-button{background:#6c757d;color:#fff;font-size:12px;padding:8px 10px}.move-down-button:hover,.move-up-button:hover{background:#5a6268}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;max-height:80vh;max-width:500px;overflow-y:auto;padding:30px;width:90%}.modal-content h3{color:var(--color-text);font-size:24px;margin:0 0 20px}.keyword-form,.situation-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:var(--color-text);font-size:16px;font-weight:500}.form-group input{border:1px solid #ddd;border-radius:8px;font-size:16px;padding:12px;transition:border-color .3s ease}.form-group input:focus{border-color:var(--color-primary);outline:none}.image-preview{border-radius:8px;margin-top:10px;max-width:200px;overflow:hidden}.image-preview img{height:auto;width:100%}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:20px}.cancel-button,.save-button{border:none;border-radius:8px;cursor:pointer;font-size:16px;padding:12px 24px;transition:all .3s ease}.cancel-button{background:#6c757d;color:#fff}.cancel-button:hover{background:#5a6268}.save-button{background:var(--color-primary);color:#fff}.save-button:hover:not(:disabled){background:var(--color-primary-dark)}.save-button:disabled{cursor:not-allowed;opacity:.6}.access-denied,.auth-required{background:#fff;border-radius:12px;box-shadow:var(--shadow-sm);margin:20px;padding:60px 20px;text-align:center}.access-denied h2,.auth-required h2{color:var(--color-text);font-size:24px;margin-bottom:15px}.access-denied p,.auth-required p{color:var(--color-text-light);font-size:16px;margin-bottom:30px}.login-button{background:var(--color-primary);border-radius:8px;font-size:16px;padding:12px 24px}.login-button:hover{background:var(--color-primary-dark)}.password-form{margin:20px 0}.password-form .form-group{margin-bottom:15px}.password-input{border:2px solid var(--color-border);border-radius:8px;font-size:16px;padding:12px 15px;transition:border-color .3s ease;width:100%}.password-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #ff6b6b1a;outline:none}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:5px;color:#dc3545;font-size:14px;margin-bottom:15px;padding:8px}.password-form .form-actions{display:flex;gap:10px;justify-content:center}.submit-button{background:var(--color-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:10px 20px;transition:all .3s ease}.submit-button:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.password-form .cancel-button{background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);cursor:pointer;font-size:16px;font-weight:600;padding:10px 20px;transition:all .3s ease}.password-form .cancel-button:hover{background:var(--color-border);transform:translateY(-1px)}.loading{color:var(--color-text-light);font-size:18px;padding:100px 20px;text-align:center}@media (max-width:768px){.gallery-admin{padding:10px 0}.admin-content,.admin-header{padding:0 15px}.admin-title{font-size:28px}.keywords-section,.situations-section{padding:20px}.section-header{align-items:stretch;flex-direction:column;gap:15px}.add-button{width:100%}.gallery-admin .keywords-grid,.situations-grid{gap:15px;grid-template-columns:1fr}.keyword-card,.situation-card{padding:15px}.keyword-actions,.situation-actions{justify-content:center}.modal-content{padding:20px;width:95%}.form-actions{flex-direction:column}.cancel-button,.save-button{width:100%}}@media (max-width:480px){.admin-title{font-size:24px}.keywords-section,.situations-section{padding:15px}.keyword-card,.situation-card{padding:12px}.keyword-image,.situation-image{height:120px}}.gallery-header{background:linear-gradient(180deg,#f8f9fa 0,#fff);border-bottom:1px solid #e9ecef;height:70px;left:0;position:fixed;right:0;top:0;z-index:1000}.gallery-header-container{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.gallery-header-left{align-items:center;display:flex;gap:15px}.gallery-logo{align-items:center;color:inherit;display:flex;flex-direction:column;text-decoration:none}.craft-kitchen-logo{height:40px;margin-bottom:2px;position:relative;width:40px}.logo-pattern{grid-gap:2px;display:grid;gap:2px;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;height:100%;width:100%}.logo-square{border-radius:2px;height:100%;width:100%}.logo-square.brown{background-color:#8b4513}.logo-square.orange{background-color:#ff8c00}.logo-square.beige{background-color:wheat}.logo-triangle{border-bottom:8px solid #8b4513;border-left:8px solid #0000;border-right:8px solid #0000;height:0;position:absolute;right:2px;top:2px;width:0}.logo-text{text-align:center}.brand-name{color:#333;font-size:8px;font-weight:700;letter-spacing:.5px}.main-title{color:#ff6b6b;font-size:24px;font-weight:700;margin-left:10px}.gallery-header-center{flex:1 1;margin:0 20px;max-width:500px}.search-form{width:100%}.search-container{position:relative;width:100%}.search-input{background:#fff;border:1px solid #ddd;border-radius:25px;font-size:14px;outline:none;padding:12px 50px 12px 20px;transition:border-color .3s ease;width:100%}.search-input:focus{border-color:#ff6b6b}.search-input::placeholder{color:#999}.search-button{background:none;border:none;border-radius:50%;cursor:pointer;padding:8px;position:absolute;right:5px;top:50%;transform:translateY(-50%);transition:background-color .3s ease}.search-button:hover{background-color:#f0f0f0}.search-icon{color:#007bff;font-size:16px}.gallery-header-right{align-items:center;display:flex;gap:20px}.user-section{align-items:center;display:flex;gap:15px}.user-menu{position:relative}.user-button{align-items:center;background:none;border:none;border-radius:20px;color:#333;cursor:pointer;display:flex;gap:8px;padding:8px 12px;transition:background-color .3s ease}.user-button:hover{background-color:#f0f0f0}.user-avatar{align-items:center;background-color:#8b4513;border-radius:50%;display:flex;height:32px;justify-content:center;width:32px}.user-initials{color:#fff;font-size:12px;font-weight:700}.user-name{color:#666;font-size:12px}.menu-arrow{color:#666;font-size:10px;transition:transform .3s ease}.user-dropdown{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:8px;min-width:150px;padding:8px 0;position:absolute;right:0;top:100%;z-index:1001}.dropdown-item{align-items:center;background:none;border:none;color:#333;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:10px 16px;text-align:left;transition:background-color .3s ease;width:100%}.dropdown-item:hover{background-color:#f5f5f5}.dropdown-icon{font-size:14px}.login-button{align-items:center;background-color:#ff6b6b;border:none;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:6px;padding:8px 16px;text-decoration:none;transition:background-color .3s ease}.login-button:hover{background-color:#ff5252;color:#fff;text-decoration:none}.login-icon,.login-text{font-size:14px}@media (max-width:768px){.gallery-header-container{padding:0 15px}.main-title{font-size:20px}.gallery-header-center{margin:0 10px}.search-input{font-size:13px;padding:10px 45px 10px 15px}.user-section{gap:10px}.login-text,.user-name{display:none}}@media (max-width:600px){.main-title{display:none}.gallery-header-center{max-width:300px}}html{scroll-behavior:smooth}body{scroll-behavior:auto}.gallery-app{background:var(--color-background);background-attachment:fixed;background-image:radial-gradient(circle at 100% 0,#ff9f7c0d 0,#0000 50%),radial-gradient(circle at 0 100%,#ffb3470d 0,#0000 50%);display:flex;flex-direction:column;min-height:100vh}.gallery-main{flex:1 1;padding:20px}@media (max-width:768px){.gallery-main{padding:15px}}
/*# sourceMappingURL=main.485901e2.css.map*/