@font-face{font-family:Inter;font-weight:400;font-style:normal;font-display:swap;src:url(/assets/Inter-Regular-COLGFB3M.woff2) format("woff2")}@font-face{font-family:Inter;font-weight:600;font-style:normal;font-display:swap;src:url(/assets/Inter-SemiBold-BAEEcJ4E.woff2) format("woff2")}@font-face{font-family:Inter;font-weight:700;font-style:normal;font-display:swap;src:url(/assets/Inter-Bold-BOs3KVhN.woff2) format("woff2")}:root{--primary: #220070;--primary-hover: #3a1a90;--bg: #ffffff;--text-primary: #2d2d2d;--text-secondary: #6b7280;--text-legend: #374151;--border: #e8e8e8;--surface: #fafafa;--canvas-bg: #f0f0f0;--gap-color: var(--bg);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background:var(--bg);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-container{display:grid;grid-template-columns:360px 1fr;min-height:100vh}.sidebar{background:var(--surface);border-right:2px solid var(--border);padding:24px;overflow-y:visible}.preview{display:flex;flex-direction:column;background:var(--canvas-bg);min-height:100vh}.toolbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:6px 20px;background:transparent;border-bottom:none;flex-shrink:0}.toolbar button{font-size:13px;padding:7px 14px;height:34px;display:inline-flex;align-items:center}.chart-wrapper{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:var(--canvas-bg);margin:24px;overflow:hidden}.chart-container{display:flex;flex-direction:column;align-items:center;gap:32px;max-width:800px;width:100%}.chart-title{font-size:24px;font-weight:700;color:var(--text-primary);text-align:center}input[type=text],input[type=number]{font-family:var(--font-family);font-size:14px;padding:10px 14px;border:2px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text-primary);outline:none;transition:border-color .2s,box-shadow .2s}input[type=text]:focus,input[type=number]:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2200701a}input[type=number]{width:80px}button{font-family:var(--font-family);font-size:14px;font-weight:700;padding:10px 18px;border-radius:12px;cursor:pointer;transition:all .1s ease;text-transform:uppercase;letter-spacing:.5px}button.primary{background:var(--primary);color:#fff;border:2px solid var(--primary)}button.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}button.secondary{background:var(--bg);color:var(--primary);border:2px solid var(--primary)}button.secondary:hover{background:var(--surface)}button.danger{background:transparent;color:#ef4444;border:2px solid #ef4444}button.danger:hover{background:#fef2f2}.input-mode-toggle{display:flex;gap:4px}.input-mode-toggle button{flex:1;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .1s ease;display:flex;align-items:center;justify-content:center}.input-mode-toggle button.active{background:var(--primary);color:#fff;border:2px solid var(--primary)}.input-mode-toggle button:not(.active){background:var(--bg);color:var(--primary);border:2px solid var(--primary)}.input-mode-toggle button:not(.active):hover{background:var(--surface)}.total-display{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:8px;font-size:13px;font-weight:600;margin-top:8px}.total-display--neutral{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border)}.total-display--success{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.total-display--warning{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.total-display--error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}input.placeholder-value{color:var(--text-secondary);font-style:italic}@media(max-width:768px){.app-container{grid-template-columns:1fr;grid-template-rows:1fr auto;height:100vh;height:100dvh}.sidebar{order:2;max-height:50vh;max-height:50dvh;border-right:none;border-top:1px solid var(--border);overflow-y:auto;padding:16px;-webkit-overflow-scrolling:touch}.preview{order:1;min-height:0;height:auto;padding:4px;overflow:hidden}.toolbar{padding:4px 8px;gap:6px;flex-wrap:wrap}.toolbar button{font-size:12px;padding:6px 10px}.chart-wrapper{margin:4px}input[type=text],input[type=number]{font-size:16px;padding:8px 10px}button{font-size:13px;padding:8px 14px}}
