:root{font-family:Avenir Next,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#1d140d;background:radial-gradient(circle at top left,rgba(255,236,205,.95),transparent 32%),radial-gradient(circle at top right,rgba(255,205,132,.4),transparent 24%),linear-gradient(135deg,#f4e0c6,#f6efe4 42%,#e1c7a1);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--panel-bg: rgba(255, 249, 241, .82);--panel-border: rgba(102, 60, 26, .14);--panel-shadow: 0 18px 40px rgba(106, 67, 24, .12);--accent: #8a4b21;--accent-dark: #693515;--accent-soft: #f0d3b0;--text-muted: #6f5c50;--danger-bg: rgba(149, 38, 20, .09);--danger-text: #892a17}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.app-shell{max-width:1380px;margin:0 auto;padding:40px 24px 56px}.hero,.panel{animation:lift-in .48s ease both}.hero{display:grid;grid-template-columns:1.6fr minmax(260px,.9fr);gap:24px;align-items:start;margin-bottom:24px}.hero-copy h1,.panel h2{font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,serif;letter-spacing:-.03em;margin:0}.hero-copy h1{font-size:clamp(2.4rem,4vw,4.6rem);line-height:.96;max-width:10ch;margin-bottom:18px}.hero-text{max-width:62ch;color:var(--text-muted);font-size:1.02rem;margin:0}.eyebrow{margin:0 0 10px;text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;color:var(--accent)}.warning-card{background:#613718e6;color:#fff9f0;border-radius:28px;padding:22px 22px 20px;box-shadow:var(--panel-shadow)}.warning-card strong{display:block;margin-bottom:8px;font-size:1rem}.warning-card p{margin:0;color:#fff9f0db}.content-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:24px;align-items:start}.side-column{display:grid;gap:24px}.panel{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:28px;padding:24px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--panel-shadow)}.panel-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:22px}.panel-header h2{font-size:1.5rem;line-height:1.05}.config-form{display:grid;gap:18px}.field,.field-row{display:grid;gap:10px}.field-row{grid-template-columns:repeat(2,minmax(0,1fr))}.field>span{font-weight:600}.field small{color:var(--text-muted)}input,select,textarea{width:100%;border:1px solid rgba(95,69,48,.18);background:#ffffffbf;color:#1d140d;border-radius:18px;padding:14px 16px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}textarea{resize:vertical;min-height:170px}input:focus,select:focus,textarea:focus{outline:none;border-color:#8a4b2199;box-shadow:0 0 0 4px #8a4b211f;transform:translateY(-1px)}input:disabled{color:#1d140db8;background:#f2eae0e6}.input-with-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mode-toggle{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.preset-button,.ghost-button,.inline-button,.mode-button,.submit-button,.history-item,.primary-link{border:none;border-radius:18px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.preset-button{display:grid;gap:4px;text-align:left;padding:14px 16px;background:#f5dfc39e;color:#4f2f1a}.preset-button strong{font-size:1rem}.preset-button small{color:#765946}.ghost-button,.inline-button{background:#7e4e281a;color:var(--accent-dark);padding:10px 14px}.inline-button{white-space:nowrap}.mode-button{background:#fff9;color:#4f2f1a;padding:12px 14px;border:1px solid rgba(95,69,48,.14)}.mode-button.is-active{background:linear-gradient(135deg,#93512a29,#6b34163d);border-color:#8a4b2166;color:var(--accent-dark);box-shadow:0 10px 20px #6b341614}.submit-button,.primary-link{background:linear-gradient(135deg,#93512a,#6b3416);color:#fff9f1;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;padding:14px 20px;box-shadow:0 16px 28px #6b341638}.submit-button{width:100%;font-size:1rem;font-weight:700}.submit-button:disabled{cursor:progress;opacity:.72}.feedback{border-radius:20px;padding:14px 16px}.feedback p,.feedback small{margin:6px 0 0}.feedback-error{background:var(--danger-bg);color:var(--danger-text)}.upload-dropzone{position:relative;display:grid;min-height:184px;border:1px dashed rgba(126,78,40,.32);border-radius:22px;background:#ffffff85;overflow:hidden}.upload-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.upload-empty,.upload-preview{display:grid;place-items:center;text-align:center;padding:20px;min-height:184px}.upload-empty small,.upload-preview small,.upload-error{color:var(--text-muted)}.upload-preview{grid-template-columns:132px minmax(0,1fr);gap:18px;text-align:left;align-items:center}.upload-preview img{width:132px;height:132px;object-fit:cover;border-radius:18px;border:1px solid rgba(95,69,48,.16)}.upload-preview-meta{min-width:0}.upload-preview-meta strong,.upload-preview-meta small{display:block}.usage-content,.usage-summary-grid,.usage-metrics-grid,.usage-detail-grid{display:grid;gap:14px}.usage-summary-grid,.usage-metrics-grid,.usage-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.usage-stat,.usage-card,.usage-detail{display:grid;gap:6px;padding:16px 18px;border-radius:18px;background:#ffffff94}.usage-stat span,.usage-card span,.usage-detail span,.usage-card small,.usage-updated-at{color:var(--text-muted)}.usage-stat strong,.usage-card strong,.usage-detail strong{font-size:1.05rem}.usage-updated-at{margin:2px 0 0;font-size:.92rem}.usage-empty{min-height:180px}.result-content{display:grid;gap:16px}.result-image{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:22px;border:1px solid rgba(104,66,28,.12);background:#ffffff94}.result-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.result-meta div{display:grid;gap:6px;padding:14px 16px;border-radius:18px;background:#ffffff94}.result-meta span{color:var(--text-muted);font-size:.9rem}.prompt-preview{margin:0;padding:16px 18px;border-radius:18px;background:#ffffff94;color:#342219;white-space:pre-wrap}.empty-state{min-height:220px;display:grid;place-items:center;text-align:center;color:var(--text-muted);padding:24px;border-radius:22px;background:#ffffff6b}.history-list{display:grid;gap:14px}.history-item{display:grid;grid-template-columns:132px minmax(0,1fr);gap:14px;width:100%;padding:10px;background:#ffffff8c;text-align:left}.history-item img{width:100%;height:100%;max-height:92px;object-fit:cover;border-radius:16px;border:1px solid rgba(95,69,48,.14)}.history-item-body{min-width:0}.history-item-body strong,.history-item-body small,.history-item-body p{display:block}.history-item-body p{margin:8px 0;color:#3b281c;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.history-item-body small{color:var(--text-muted)}.preset-button:hover,.ghost-button:hover,.inline-button:hover,.submit-button:hover,.history-item:hover,.primary-link:hover{transform:translateY(-2px);box-shadow:0 12px 24px #5f381a1f}@keyframes lift-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1080px){.hero,.content-grid{grid-template-columns:1fr}.hero-copy h1{max-width:14ch}}@media (max-width: 720px){.app-shell{padding:20px 14px 36px}.panel,.warning-card{border-radius:22px}.panel-header,.field-row,.preset-grid,.mode-toggle,.input-with-actions,.result-meta,.usage-summary-grid,.usage-metrics-grid,.usage-detail-grid,.history-item{grid-template-columns:1fr}.panel-header{align-items:stretch}.history-item img{max-height:180px}}
