@import"https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Sora:wght@300;400;500;600;700&display=swap";body{margin:0;min-width:320px;min-height:100vh}:root{--terracotta: #e2725b;--chile-rojo: #c21807;--olive: #6b8e23;--sunset: #f28c28;--primary-color: var(--terracotta);--primary-hover: #d9654c;--error-color: var(--chile-rojo);--success-color: var(--olive);--bg-color: #f8efe6;--card-bg: #fff7f0;--text-color: #3b1f17;--border-color: #e7d7cc;--shadow: 0 1px 3px rgba(59, 31, 23, .12);--shadow-lg: 0 16px 30px rgba(59, 31, 23, .16);--panel-bg: #fff7f0;--panel-border: #e6d4c7;--tab-bg: #f3e6dc;--tab-hover: #eed9ca;--tab-active-bg: #fffaf6;--tab-active-border: var(--sunset);--resize-handle: #d8c1b4;--resize-handle-hover: var(--sunset)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Sora,sans-serif;background-color:var(--bg-color);background-image:radial-gradient(circle at 12% 18%,rgba(242,140,40,.18),transparent 46%),radial-gradient(circle at 86% 14%,rgba(226,114,91,.18),transparent 40%),linear-gradient(180deg,#fff4ea,#f8efe6);color:var(--text-color);line-height:1.6}.app{height:100vh;width:100vw;overflow:hidden}.split-layout{height:100%;width:100%}.left-panel,.right-panel{height:100%;overflow:hidden;background:var(--panel-bg)}.panel-content{height:100%;overflow-y:auto;overflow-x:hidden}.resize-handle{width:4px;background:var(--resize-handle);cursor:col-resize;transition:background-color .2s;position:relative}.resize-handle:hover,.resize-handle[data-resize-handle-active]{background:var(--resize-handle-hover)}.resize-handle:before{content:"";position:absolute;inset:0 -2px}.story-tabs{display:flex;border-bottom:2px solid var(--panel-border);background:var(--tab-bg);position:sticky;top:0;z-index:10}.story-tab{flex:1;border:none;background:none;padding:0}.story-tab button{width:100%;padding:1rem 1.5rem;font-size:.95rem;font-weight:600;border:none;background:transparent;cursor:pointer;transition:all .2s;border-bottom:3px solid transparent;color:var(--text-color)}.story-tab .tab-inactive{opacity:.7}.story-tab .tab-inactive:hover{opacity:1;background:var(--tab-hover)}.story-tab .tab-active{color:var(--primary-color);border-bottom-color:var(--tab-active-border);background:var(--tab-active-bg)}.story-panels{height:calc(100% - 57px)}.story-panel{height:100%;overflow-y:auto}.story-content{padding:2rem;max-width:800px}.story-content h2{font-size:2rem;color:var(--primary-color);font-family:"DM Serif Display",serif;margin-bottom:2rem;padding-bottom:.5rem;border-bottom:2px solid var(--border-color)}.story-content h3{font-size:1.4rem;font-family:"DM Serif Display",serif;color:var(--text-color);margin-top:2rem;margin-bottom:1rem}.story-content section{margin-bottom:2.5rem}.story-content p{margin-bottom:1rem;line-height:1.7;color:var(--text-color)}.story-content ul,.story-content ol{margin-left:1.5rem;margin-bottom:1rem}.story-content li{margin-bottom:.5rem;line-height:1.6}.story-content strong{color:var(--primary-color);font-weight:600}.story-content code{background:#f4e3d5;padding:.2rem .4rem;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;color:var(--chile-rojo)}.code-block{background:#2e1a14;color:#ffe7d6;padding:1.5rem;border-radius:8px;margin:1.5rem 0;overflow-x:auto}.code-block code{background:transparent;color:#ffe7d6;font-family:Courier New,monospace;font-size:.9rem;line-height:1.6;padding:0}.right-panel .panel-content{display:flex;align-items:center;justify-content:center;padding:2rem}.prediction-form{background:var(--card-bg);padding:2.5rem;border-radius:12px;box-shadow:var(--shadow-lg);max-width:600px;width:100%;border:1px solid rgba(194,24,7,.08)}.prediction-form h1{font-size:2rem;margin-bottom:2rem;text-align:center;color:var(--primary-color);font-family:"DM Serif Display",serif}form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;font-size:.95rem;color:var(--text-color)}.form-group input,.form-group select{padding:.75rem;border:2px solid var(--border-color);border-radius:6px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color)}button[type=submit]{background:var(--primary-color);color:#fff;padding:1rem;border:none;border-radius:6px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background-color .2s;margin-top:1rem}button[type=submit]:hover:not(:disabled){background:var(--primary-hover)}button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.loading{text-align:center;padding:2rem;color:var(--text-color)}.loading-panel{text-align:center;padding:1.25rem 1rem;color:var(--text-color);display:flex;flex-direction:column;gap:.75rem}.loading-message{font-weight:600}.loading-tip{font-size:.95rem;opacity:.85}.loading-fade-in{animation:loadingFadeIn .28s ease-in}@keyframes loadingFadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.error{padding:1rem;background:#fbe3de;border:2px solid var(--error-color);border-radius:6px;color:var(--error-color);margin-top:1.5rem}.result{margin-top:2rem;padding:2rem;background:#fff1e6;border:2px solid var(--primary-color);border-radius:8px}.result h2{color:var(--primary-color);margin-bottom:1rem;font-size:1.5rem}.price{font-size:2.5rem;font-weight:700;color:var(--success-color);margin-bottom:1.5rem}.inputs-summary h3{font-size:1.1rem;margin-bottom:.75rem;color:var(--text-color)}.inputs-summary ul{list-style:none;display:grid;gap:.5rem}.inputs-summary li{padding:.5rem;background:#fffaf6;border-radius:4px;font-size:.95rem}@media(max-width:768px){.split-layout{flex-direction:column}.left-panel{height:50%;border-right:none;border-bottom:2px solid var(--panel-border)}.right-panel{height:50%}.resize-handle{width:100%;height:4px;cursor:row-resize}.story-tab button{padding:.75rem 1rem;font-size:.85rem}.story-content{padding:1.5rem}.story-content h2{font-size:1.5rem}.story-content h3{font-size:1.2rem}.right-panel .panel-content{padding:1rem}.prediction-form{padding:1.5rem}.prediction-form h1{font-size:1.5rem}.price{font-size:2rem}}@media(max-width:640px){.story-tab button{padding:.6rem .5rem;font-size:.8rem}.story-content{padding:1rem}.code-block{padding:1rem;font-size:.85rem}}
