@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;600;700&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap";:root{color-scheme:light;--bg: #f4f0e6;--bg-accent: #e7e0d0;--surface: #ffffff;--ink: #1f1d1a;--muted: #6f6558;--accent: #0f7c75;--accent-strong: #0b6b64;--accent-2: #f18b54;--border: #d8d0c3;--shadow: 0 20px 40px rgba(43, 36, 26, .08)}*{box-sizing:border-box}body{margin:0;font-family:Zen Kaku Gothic New,Space Grotesk,sans-serif;color:var(--ink);background:radial-gradient(circle at top left,#faf7ef 0%,var(--bg) 55%,var(--bg-accent) 100%)}.app{min-height:100vh;display:flex;flex-direction:column;gap:48px;padding:36px clamp(20px,4vw,64px) 64px}.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;align-items:start}.hero-inner h1{font-family:Space Grotesk,sans-serif;font-size:clamp(32px,4vw,46px);margin:12px 0 16px}.hero-copy{color:var(--muted);font-size:16px;line-height:1.7}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;color:var(--accent);font-weight:700}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}button,.ghost,.primary,select,input[type=range]{font-family:inherit}button,.ghost,.primary{border:1px solid transparent;padding:12px 20px;border-radius:999px;cursor:pointer;font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;text-decoration:none}button:disabled,.ghost:disabled,.primary:disabled{cursor:not-allowed;opacity:.6;box-shadow:none}.primary{background:var(--accent);color:#fff;box-shadow:0 12px 24px #0f7c7540}.primary:hover{transform:translateY(-1px);background:var(--accent-strong)}.ghost{background:transparent;color:var(--ink);border-color:var(--border)}.ghost:hover{transform:translateY(-1px);box-shadow:0 8px 16px #2b241a14}.hero-panel{background:var(--surface);border-radius:24px;padding:24px;box-shadow:var(--shadow);border:1px solid var(--border)}.panel-title{font-weight:700;margin-bottom:16px}.panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}label{display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--muted)}select,input[type=range]{padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#fff}input[type=range]{padding:0}.hint{font-size:12px;color:var(--muted)}.panel-actions{margin-top:16px;display:flex;gap:12px;flex-wrap:wrap}.inline-error{margin-top:16px;padding:12px 16px;border-radius:12px;background:#c841411f;color:#a43636;font-size:14px}.uploader{display:flex;justify-content:center}.dropzone{width:min(100%,760px);border-radius:20px;border:2px dashed var(--border);padding:32px;background:#ffffffb3;cursor:pointer;text-align:center;transition:border .2s ease,box-shadow .2s ease}.dropzone:hover{border-color:var(--accent);box-shadow:0 12px 24px #0f7c751a}.dropzone input{display:none}.gallery{display:flex;flex-direction:column;gap:16px}.section-title{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.step{scroll-margin-top:24px}.choice-group{display:flex;flex-wrap:wrap;gap:12px}.section-title h2{margin:0;font-size:24px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.card{background:var(--surface);border-radius:20px;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow);display:flex;flex-direction:column}.card.is-reference{border-color:var(--accent);box-shadow:0 16px 32px #0f7c7533}.card-media{position:relative;aspect-ratio:4 / 3;background:#e6e1d7}.card-media img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;top:12px;left:12px;padding:4px 10px;border-radius:999px;font-size:12px;background:#ffffffe6;border:1px solid var(--border)}.card-body{padding:16px;display:flex;flex-direction:column;gap:10px}.card-title{font-weight:700;font-size:16px}.meta{display:flex;gap:12px;font-size:12px;color:var(--muted)}.controls{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.radio{display:flex;align-items:center;gap:8px;font-size:14px}.status{padding:4px 10px;border-radius:999px;font-size:12px;background:#f0ede5}.status-idle{background:#f0ede5;color:var(--muted)}.status-processing{background:#f18b5433;color:#b85d2b}.status-queued{background:#0f7c7526;color:#0f7c75}.status-done{background:#0f7c7533;color:#0f7c75}.status-error{background:#c8414133;color:#a43636}.card-actions{display:flex;gap:10px;flex-wrap:wrap}.calibration{display:flex;flex-direction:column;gap:18px}.calibration-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.calibration-card{background:var(--surface);border-radius:20px;padding:18px;border:1px solid var(--border);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:16px}.calibration-actions{display:flex;gap:12px;flex-wrap:wrap}.chart-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:var(--muted)}.chart-results{display:flex;flex-direction:column;gap:12px}.delta-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.delta-summary .label{display:block;font-size:12px;color:var(--muted)}.delta-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.delta-item{background:#f6f2ea;border-radius:10px;padding:8px;display:flex;flex-direction:column;gap:4px;font-size:12px;text-align:center}.switch{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink)}.muted{color:var(--muted);font-size:13px;line-height:1.6}.empty{padding:32px;text-align:center;color:var(--muted);border-radius:20px;border:1px dashed var(--border)}.guides{display:flex;flex-direction:column;gap:18px}.guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.guide-grid article{background:var(--surface);border-radius:18px;padding:18px;border:1px solid var(--border);box-shadow:var(--shadow)}.guide-grid h3{margin-top:0}.guide-grid ul{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:8px;color:var(--muted);font-size:14px}.guide-grid li:before{content:"•";margin-right:6px;color:var(--accent)}.footer{border-top:1px solid var(--border);padding-top:24px;font-size:14px;color:var(--muted)}@media (max-width: 720px){.hero,.panel-grid{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:stretch}.panel-actions{flex-direction:column}.delta-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
