.report-container{max-width:800px;margin:4rem auto 2rem;padding:2rem;background-color:#fff;border:1px solid #e0e0e0;box-shadow:0 4px 12px #0000000d;font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;font-size:14px;position:relative}@media (max-width: 768px){.report-container{margin:3rem auto 1rem;padding:1rem;box-shadow:none;border-left:none;border-right:none;border-radius:0}}.report-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #333;padding-bottom:1rem;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}@media (max-width: 768px){.report-header{flex-direction:column;align-items:stretch}}.report-header h1{font-size:2rem;font-weight:700;margin:0}@media (max-width: 768px){.report-header h1{font-size:1.5rem}}.report-header .header-meta{text-align:left;font-size:.85rem;color:#555}@media (max-width: 768px){.report-header .header-meta{font-size:.8rem}}.header-right-content{display:flex;flex-direction:column;align-items:flex-end;gap:1rem}@media (max-width: 768px){.header-right-content{align-items:stretch}}.header-meta-pdf{display:none;text-align:right;font-size:.85rem}.back-button{position:absolute;top:0;left:0;background:none;border:none;font-size:1rem;color:#555;cursor:pointer;padding:.5rem;transform:translateY(-100%);margin-bottom:.5rem}@media (max-width: 768px){.back-button{position:fixed;top:.5rem;left:.5rem;transform:none;background-color:#ffffffe6;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000001a;z-index:100}}.report-header .header-actions{display:flex;gap:.5rem;flex-wrap:wrap}@media (max-width: 768px){.report-header .header-actions{width:100%;justify-content:stretch}}.report-header .header-actions button{padding:.5rem 1rem;border-radius:4px;cursor:pointer;border:1px solid #ccc;background-color:#f5f5f5;font-weight:600;font-size:.85rem;white-space:nowrap}@media (max-width: 768px){.report-header .header-actions button{flex:1;min-width:0}}.report-header .header-actions .button-ai{background-color:#6a11cb;color:#fff;border-color:#6a11cb}.report-header .header-actions .button-pdf{background-color:#c0392b;color:#fff;border-color:#c0392b}.report-header .header-actions .button-recipe-card{background-color:#27ae60;color:#fff;border-color:#27ae60}.report-grid{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem;margin-bottom:1.5rem}@media (max-width: 768px){.report-grid{grid-template-columns:1fr;gap:1rem}}.grid-main{display:flex;flex-direction:column;gap:1.5rem}@media (max-width: 768px){.grid-main{gap:1rem}}.grid-side{display:flex;flex-direction:column;gap:1.5rem}@media (max-width: 768px){.grid-side{gap:1rem}}.report-box{border:1px solid #ccc;border-radius:4px;overflow:hidden}.report-box h2{background-color:#f0f0f0;padding:.5rem .75rem;margin:0;font-size:.95rem;font-weight:700;border-bottom:1px solid #ccc}@media (max-width: 768px){.report-box h2{font-size:.9rem;padding:.4rem .6rem}}.report-box .box-content{padding:.75rem}@media (max-width: 768px){.report-box .box-content{padding:.6rem}}.report-box .box-content p{margin:0;line-height:1.5}.report-box .box-content .value-text{font-size:1.1rem;font-weight:600;text-align:right;margin:0;line-height:1.5}@media (max-width: 768px){.report-box .box-content .value-text{font-size:1rem}}.report-table{width:100%;border-collapse:collapse;font-size:.85rem}@media (max-width: 768px){.report-table{font-size:.75rem}}.report-table th,.report-table td{border:1px solid #ccc;padding:.5rem;text-align:left}@media (max-width: 768px){.report-table th,.report-table td{padding:.3rem}}.report-table th{background-color:#f9f9f9;font-weight:600}.process-list ol{padding-left:1.2rem;margin:0}@media (max-width: 768px){.process-list ol{padding-left:1rem}}.process-list li{margin-bottom:.5rem}.ai-procedure-loading{text-align:center;padding:2rem;color:#666}.loading-spinner-small{display:inline-block;width:24px;height:24px;border:3px solid #f3f3f3;border-top:3px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:.5rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ingredients-table{display:block;overflow-x:auto;white-space:nowrap}@media (max-width: 768px){.ingredients-table{font-size:.7rem}.ingredients-table table{min-width:500px}}.ingredients-table th,.ingredients-table td{text-align:right;padding:.4rem}@media (max-width: 768px){.ingredients-table th,.ingredients-table td{padding:.25rem}}.ingredients-table th:nth-child(1),.ingredients-table td:nth-child(1),.ingredients-table th:nth-child(2),.ingredients-table td:nth-child(2),.ingredients-table th:nth-child(3),.ingredients-table td:nth-child(3){text-align:left}.ingredients-table th:nth-child(1){width:20%}.ingredients-table th:nth-child(2){width:20%}.ingredients-table th:nth-child(3){width:25%}@media (max-width: 768px){.ingredients-table th:nth-child(1){width:auto;min-width:80px}.ingredients-table th:nth-child(2){width:auto;min-width:80px}.ingredients-table th:nth-child(3){width:auto;min-width:100px}}.ingredients-table .table-footer-row{font-weight:600;background-color:#f9f9f9}.ingredients-table tfoot td{border-top:2px solid #333}.photo-box .box-content{height:200px;display:flex;align-items:center;justify-content:center;background-color:#f5f5f5;color:#999}@media (max-width: 768px){.photo-box .box-content{height:150px}}.photo-box img{max-width:100%;max-height:100%;object-fit:contain}.specification-text{font-size:.95rem;color:#555;white-space:pre-wrap;font-weight:700}@media (max-width: 768px){.specification-text{font-size:.85rem}}.spec-and-yield-wrapper{display:flex;flex-direction:column;gap:.5rem}.sensory-ratings{font-size:.85rem}@media (max-width: 768px){.sensory-ratings{font-size:.8rem}}.recipe-view-loading,.recipe-view-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;text-align:center;padding:2rem}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.hidden-for-pdf{display:none!important}.pdf-only.show-for-pdf{display:block!important}@media print{body{-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-container{margin:0;padding:0;border:none;box-shadow:none;width:100%;max-width:100%}.print-hide{display:none}.header-meta-pdf{display:block}.report-box,.report-table,.report-table tr{page-break-inside:avoid}.report-table thead{display:table-header-group}.report-grid{grid-template-columns:1fr}}.recipe-card-footer{position:absolute;bottom:10mm;left:0;right:0;text-align:center;font-size:8pt;color:#999}.footer-content{display:flex;align-items:center;justify-content:center;gap:5mm}.app-name{font-weight:600;color:#3498db}.footer-divider{color:#ddd}.tagline{font-style:italic;color:#666}.recipe-card{width:210mm;margin:0 auto;padding:12mm 15mm;background:#fff;font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Yu Gothic Medium,游ゴシック Medium,YuGothic,游ゴシック体,Meiryo,sans-serif;font-size:9.5pt;line-height:1.45;position:relative;display:flex;flex-direction:column;box-sizing:border-box}.recipe-date-top{position:absolute;top:12mm;right:15mm;font-size:8.5pt;color:#666;font-weight:500}.recipe-card-header{border-bottom:1.5px solid #e0e0e0;padding-bottom:6mm;margin-bottom:7mm;margin-top:5mm}.header-content{display:flex;align-items:flex-start;gap:5mm}.recipe-main-photo{flex-shrink:0;width:32mm;height:32mm;border-radius:2.5mm;overflow:hidden;border:1px solid #e0e0e0}.recipe-main-photo img{width:100%;height:100%;object-fit:cover}.header-text{flex:1}.recipe-title{font-size:22pt;font-weight:700;color:#333;margin:0 0 3mm;letter-spacing:.02em}.recipe-specification{font-size:10.5pt;font-weight:500;color:#555;margin:-1mm 0 4mm;padding-left:3mm;border-left:2px solid #1abc9c;line-height:1.5}.ingredients-compact{font-size:8.5pt;color:#444;line-height:1.4;margin-bottom:4mm}.ingredient-compact-item{display:inline}.recipe-meta-inline{display:flex;gap:8mm;align-items:baseline;flex-wrap:wrap}.comment-inline{display:flex;align-items:baseline;gap:2mm}.comment-label{font-size:8.5pt;color:#666;font-weight:600;flex-shrink:0}.comment-text{font-size:8.5pt;color:#333}.yield-value{font-size:10.5pt;font-weight:700;color:#d35400}.section-title{font-size:13pt;font-weight:700;color:#16a085;margin:0 0 4mm;padding-bottom:1.5mm;border-bottom:2px solid #16a085}.recipe-steps{flex:1}.steps-container{display:flex;flex-direction:column;gap:5mm}.step-item{display:flex;gap:4mm;page-break-inside:avoid}.step-item:nth-child(6n+1){page-break-before:auto}.step-number{flex-shrink:0;color:#fff;background-color:#34495e;font-weight:700;font-size:10pt;width:6mm;height:6mm;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}.step-content{flex:1}.step-item.with-photo .step-content{display:flex;gap:4mm;align-items:flex-start}.step-photo{flex-shrink:0;width:28mm;height:22mm;overflow:hidden;border-radius:1.5mm;border:1px solid #e0e0e0}.step-photo.has-image{border:1px solid #e0e0e0}.step-photo img{width:100%;height:100%;object-fit:cover}.step-text{flex:1}.step-header{display:flex;align-items:baseline;gap:3mm;margin-bottom:2mm}.step-name{font-size:11pt;font-weight:600;color:#2c3e50;margin:0}.step-conditions{display:flex;gap:2mm}.condition-chip{font-size:7.5pt;padding:1mm 2.5mm;border-radius:3mm;font-weight:600;white-space:nowrap;border:1px solid transparent}.condition-chip.temp{background-color:#fef4e2;color:#d35400;border-color:#f5cba7}.condition-chip.time{background-color:#eafaf1;color:#16a085;border-color:#a3e4d7}.step-description{font-size:9pt;color:#555;margin:0;padding-left:2mm;border-left:2px solid #f0f0f0;line-height:1.4}@media screen and (max-width: 768px){.recipe-card{transform:scale(calc(100vw/794px));transform-origin:top left;width:210mm;margin:0}body{margin:0;padding:0;overflow-x:hidden}}@media screen and (max-width: 480px){.recipe-card{transform:scale(calc(100vw/794px));transform-origin:top left}}@media print{body{margin:0;padding:0}.recipe-card{margin:0;border:none!important;box-shadow:none;transform:none!important;width:210mm!important}.step-item{page-break-inside:avoid}.step-number,.condition-chip,.section-title:before{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media screen and (min-width: 769px){.recipe-card{box-shadow:0 4px 20px #0000001a;border:none;margin:20px auto}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}html,body,#root{margin:0;padding:0;width:100%;height:100%}
