:root{--ink:#14201d;--muted:#61706c;--bg:#f6f8fb;--surface:#fff;--border:#dce4df;--border-strong:#b9c7c1;--accent:#0f766e;--accent-soft:#e8f6f3;--success:#15803d;--danger:#be123c;--warning:#b45309;--shadow:#14201d0f 0 12px 28px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/145% var(--sans);letter-spacing:0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{min-height:100svh}body{background:var(--bg);margin:0;overflow-x:hidden}h1,h2{font-family:var(--heading);color:var(--ink);font-weight:800}h1{margin:0 0 10px;font-size:42px;line-height:1.04}h2{margin:0;font-size:18px;line-height:1.2}p{margin:0}button,input,select{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #0f766e40}@media (width<=820px){h1{font-size:34px}}.app-shell{--content-width:1440px;--page-gutter:clamp(24px, 3vw, 44px);width:min(var(--content-width), calc(100% - (var(--page-gutter) * 2)));margin:0 auto;padding:24px 0 40px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.topbar{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px;margin-bottom:22px;display:grid}.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:13px;font-weight:800}.intro{max-width:760px;color:var(--muted)}.topbar-actions{justify-items:end;gap:7px;min-width:0;display:grid}.panel{box-sizing:border-box;background:var(--surface);border:1px solid var(--border);min-width:0;box-shadow:var(--shadow);border-radius:8px}.name-field,.select-label,.field{min-width:0;color:var(--muted);gap:7px;font-size:13px;font-weight:700;display:grid}.select-label.compact{min-width:220px}.preset-field{width:min(380px,100vw - 32px);min-width:280px}.boligsiden-import{width:100%;min-width:0;color:var(--muted);gap:7px;font-size:13px;font-weight:700;display:grid}.boligsiden-import-row{border:1px solid var(--border-strong);background:#fff;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;min-height:42px;display:grid;overflow:hidden}.boligsiden-import-row:focus-within{border-color:var(--accent)}.boligsiden-import-row input{min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:0 12px;font-weight:800}.boligsiden-import-row input::placeholder{color:var(--muted);font-weight:700}.boligsiden-import-row button{border:0;border-left:1px solid var(--border);min-width:78px;color:var(--accent-strong);font:inherit;cursor:pointer;background:#eefbf6;justify-content:center;align-items:center;gap:6px;padding:0 13px;font-weight:800;display:inline-flex}.boligsiden-import-row button:hover:not(:disabled){background:#dcf7ec}.boligsiden-import-row button:disabled{color:var(--muted);cursor:not-allowed;opacity:.62}.boligsiden-import-status,.boligsiden-import-error{text-align:left;text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.35;overflow:hidden}.boligsiden-import-status{color:var(--muted)}.boligsiden-import-error{color:var(--danger)}.preset-actions-row{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:10px;min-width:0;display:flex}.preset-context{min-width:0;color:var(--muted);justify-content:flex-end;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.preset-context>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.quality-pill{background:var(--accent-soft);color:var(--accent);border-radius:999px;flex:none;padding:2px 7px;font-size:11px;font-weight:800}.quality-lav{color:var(--warning);background:#fff7ed}.quality-middel{color:#2563eb;background:#eff6ff}.quality-hoej{color:var(--success);background:#f1fbf4}.preset-dropdown{min-width:0;color:var(--muted);gap:7px;font-size:13px;font-weight:700;display:grid;position:relative}.preset-dropdown-trigger{box-sizing:border-box;border:1px solid var(--border-strong);width:100%;min-width:0;min-height:42px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:0 11px 0 12px;font-weight:800;display:flex}.preset-dropdown-trigger:hover,.preset-dropdown-trigger:focus-visible,.preset-dropdown-trigger[aria-expanded=true]{border-color:var(--accent);outline:0}.preset-trigger-main{flex:auto;align-items:center;gap:8px;min-width:0;display:flex}.preset-trigger-name,.preset-option>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.preset-trigger-name.placeholder{color:var(--muted)}.preset-dropdown-icon{color:var(--muted);flex:none}.preset-dropdown-menu{z-index:45;box-sizing:border-box;border:1px solid var(--border-strong);background:#fff;border-radius:8px;gap:2px;width:min(460px,100vw - 32px);max-height:min(560px,100vh - 140px);padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 18px 42px #14201d2e}.preset-dropdown-clear,.preset-option{box-sizing:border-box;width:100%;min-width:0;min-height:39px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.preset-dropdown-clear:hover,.preset-dropdown-clear:focus-visible,.preset-option:hover,.preset-option:focus-visible,.preset-option[aria-selected=true],.preset-dropdown-clear[aria-selected=true]{background:var(--accent-soft);outline:0}.preset-dropdown-clear,.preset-option>span:first-child{font-weight:800}.preset-option .quality-pill{font-size:10px}.name-field input,.select-label select,.input-shell{box-sizing:border-box;border:1px solid var(--border-strong);min-height:42px;color:var(--ink);font:inherit;background:#fff;border-radius:7px}.name-field input,.select-label select{min-width:0;padding:0 12px}.icon-button{box-sizing:border-box;border:1px solid var(--border-strong);min-height:42px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:7px;align-items:center;gap:8px;padding:0 13px;font-weight:800;display:inline-flex}.icon-button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.icon-button.danger{color:var(--danger)}.icon-button:disabled{cursor:not-allowed;opacity:.48}.preset-menu{position:relative}.preset-menu-trigger[aria-expanded=true]{border-color:var(--accent);color:var(--accent)}.preset-menu-trigger{justify-content:center;width:42px;padding:0}.preset-menu-panel{z-index:40;box-sizing:border-box;border:1px solid var(--border-strong);background:#fff;border-radius:8px;gap:14px;width:min(390px,100vw - 32px);padding:14px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 42px #14201d2e}.preset-menu-section{gap:10px;min-width:0;display:grid}.preset-menu-section+.preset-menu-section{border-top:1px solid var(--border);padding-top:14px}.preset-menu-heading{color:var(--muted);text-transform:uppercase;margin:0;font-size:12px;line-height:1.2}.preset-menu-panel .icon-button{justify-content:center}.preset-menu-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.layout-grid{grid-template-columns:minmax(360px,500px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.controls-grid,.results-stack,.results-column{gap:16px;min-width:0;display:grid}.input-panel{padding:16px}.input-panel h2,.chart-panel .panel-title-row{margin-bottom:14px}.chart-panel h2{margin-bottom:0}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px 12px;min-width:0;display:grid}.quick-start{box-sizing:border-box;margin:0 0 16px;padding:20px 0;position:relative}.quick-start:before{content:"";border-top:1px solid var(--border);border-bottom:1px solid var(--border);pointer-events:none;background:#fbfefd;width:100vw;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.quick-start>*{position:relative}.quick-start-heading{gap:1px;margin-bottom:16px;display:grid}.quick-start-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.quick-case,.quick-environment{border-left:4px solid var(--accent);align-content:start;gap:10px;min-width:0;padding-left:14px;display:grid}.quick-case.renter-case{border-left-color:#2563eb}.quick-environment{border-left-color:var(--warning);grid-column:1/-1}.quick-case-heading{gap:2px;min-width:0;display:grid}.case-kicker{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:800}.quick-case-heading strong{color:var(--ink);font-size:19px;line-height:1.12}.environment-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.primary-input-field,.environment-input-field{gap:6px}.primary-input-field .input-shell{min-height:58px}.primary-input-field .input-shell input{font-size:24px;font-weight:800}.environment-input-field .input-shell{min-height:46px}.environment-input-field .input-shell input{font-size:17px;font-weight:800}.details-title{color:var(--muted);text-transform:uppercase;font-size:13px;line-height:1.2}.field.full-width{grid-column:1/-1}.field-subheading{border-top:1px solid var(--border);color:var(--muted);text-transform:uppercase;grid-column:1/-1;margin:8px 0 -2px;padding-top:10px;font-size:12px;font-weight:800;line-height:1.2}.field-subheading:first-child{border-top:0;margin-top:0;padding-top:0}.panel-title-row,.metric-label{align-items:center;gap:6px;min-width:0;display:inline-flex}.label-row{place-items:start;gap:4px;min-width:0;display:grid}.label-line{align-items:center;gap:6px;min-width:0;max-width:100%;display:inline-flex}.field-label{min-width:0;color:var(--ink)}.field-quality-indicator{z-index:2;box-sizing:border-box;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:20px;padding:2px 7px;font-size:10px;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:-11px;right:9px;box-shadow:0 0 0 3px #fff}.field-quality-indicator.required{min-width:60px;color:var(--warning);background:#fff7ed;border-color:#fed7aa}.field-quality-indicator.oneOf{color:#2563eb;background:#eff6ff;border-color:#bfdbfe;min-width:78px}.help-tooltip{flex:none;align-items:center;display:inline-flex;position:relative}.tooltip-trigger{width:24px;height:24px;color:var(--muted);cursor:help;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;display:inline-grid}.tooltip-trigger:hover,.tooltip-trigger:focus-visible,.tooltip-trigger[aria-expanded=true]{background:var(--accent-soft);color:var(--accent)}.tooltip-content{z-index:30;box-sizing:border-box;border:1px solid var(--border-strong);width:min(320px,100vw - 32px);max-height:min(560px,100vh - 24px);color:var(--ink);overflow-wrap:anywhere;background:#fff;border-radius:8px;padding:12px;font-size:13px;font-weight:600;line-height:1.38;position:absolute;top:calc(100% + 8px);left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 18px 42px #14201d2e}.tooltip-content[hidden]{display:none}.preset-context .tooltip-content{width:min(420px, calc(100vw - (var(--page-gutter,16px) * 2)))}.help-tooltip.tooltip-center .tooltip-content{left:50%;right:auto;transform:translate(-50%)}.help-tooltip.tooltip-left .tooltip-content{left:auto;right:0;transform:none}.help-tooltip.tooltip-right .tooltip-content{left:0;right:auto;transform:none}.help-tooltip.tooltip-bottom .tooltip-content{top:calc(100% + 8px);bottom:auto}.help-tooltip.tooltip-top .tooltip-content{top:auto;bottom:calc(100% + 8px)}.tooltip-links{gap:6px;margin-top:10px;display:grid}.tooltip-details{gap:6px;margin:12px 0 0;display:grid}.tooltip-details div{grid-template-columns:minmax(92px,auto) minmax(0,1fr);gap:10px;display:grid}.tooltip-details dt{color:var(--muted);font-weight:800}.tooltip-details dd{color:var(--ink);margin:0;font-weight:700}.tooltip-list{gap:5px;margin:12px 0 0;padding-left:17px;display:grid}.tooltip-links a{color:var(--accent);align-items:center;gap:6px;font-weight:800;text-decoration:none;display:inline-flex}.tooltip-links a:hover{text-decoration:underline}.input-shell{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;position:relative;overflow:visible}.input-shell input{width:100%;min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:0 10px}.input-shell .input-suffix{color:var(--muted);border-left:1px solid var(--border);padding:0 10px}.field small{color:var(--muted);font-weight:500;line-height:1.25}.segmented{border:1px solid var(--border-strong);border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.segmented button{min-height:42px;color:var(--muted);font:inherit;cursor:pointer;background:#fff;border:0;font-weight:800}.segmented button+button{border-left:1px solid var(--border)}.segmented button.active{background:var(--accent-soft);color:var(--accent)}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-direction:column;justify-content:space-between;min-height:106px;padding:15px;display:flex}.metric-label{color:var(--muted);font-size:13px;font-weight:800}.metric-card .tooltip-content,.chart-panel .tooltip-content,.section-heading .tooltip-content{left:auto;right:0;transform:none}.metric-card strong{color:var(--ink);font-size:24px;line-height:1.12}.metric-card.good{background:#f1fbf4;border-color:#15803d59}.metric-card.bad{background:#fff4f6;border-color:#be123c52}.monthly-panel{padding:16px}.monthly-flow-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.monthly-flow-card{align-content:start;gap:8px;min-width:0;display:grid}.monthly-flow-card h3{color:var(--ink);margin:0;font-size:16px;line-height:1.2}.monthly-flow-list{gap:2px;display:grid}.monthly-flow-row{border-bottom:0;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;min-height:30px;padding:5px 0;display:grid}.monthly-flow-row+.monthly-flow-row:not(.total){border-top:1px solid var(--border)}.monthly-flow-row span{color:var(--muted);font-weight:700}.monthly-flow-row strong{color:var(--ink);text-align:right;white-space:nowrap}.monthly-flow-row.investment strong{color:#2563eb}.monthly-flow-row.relief strong{color:var(--success)}.monthly-flow-row.total{border-bottom:0;border-top:2px solid var(--border-strong);margin-top:3px}.monthly-flow-row.total span,.monthly-flow-row.total strong{color:var(--ink);font-size:17px;font-weight:800}.ai-chat-widget{right:max(18px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));z-index:60;pointer-events:none;justify-items:end;display:grid;position:fixed}.ai-chat-launcher,.ai-chat-window{pointer-events:auto}.ai-chat-launcher{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;width:48px;height:48px;padding:0;transition:background .16s,box-shadow .16s,transform .16s;animation:.22s ease-out both ai-chat-launcher-in;display:grid;box-shadow:0 18px 40px #0f172a38}.ai-chat-launcher:hover,.ai-chat-launcher:focus-visible{background:#0f6f69;transform:translateY(-1px);box-shadow:0 22px 46px #0f172a3d}.ai-chat-window{box-sizing:border-box;border:1px solid var(--border-strong);background:var(--surface);transform-origin:100% 100%;border-radius:10px;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;width:min(420px,100vw - 28px);max-height:min(680px,100svh - 36px);padding:14px;animation:.18s cubic-bezier(.16,1,.3,1) both ai-chat-window-in;display:grid;position:relative;box-shadow:0 24px 70px #0f172a3d}.ai-chat-window.expanded{width:min(920px,100vw - 28px);height:min(720px,100svh - 36px)}.ai-chat-window.public-prompt{grid-template-rows:auto minmax(0,1fr)}.ai-chat-window.closing{animation:.18s ease-in both ai-chat-window-out}.ai-chat-window-header{color:var(--accent);justify-content:space-between;align-items:center;gap:12px;display:flex}.ai-chat-window-header h2{font-size:19px}.ai-chat-header-actions{flex:none;align-items:center;gap:7px;display:inline-flex}.ai-chat-new,.ai-chat-icon-action{background:var(--accent-soft);height:34px;color:var(--accent);cursor:pointer;border:0;border-radius:999px;flex:none;place-items:center;transition:background .15s,color .15s,transform .15s;display:grid}.ai-chat-new{gap:5px;width:auto;padding:0 10px;font-size:13px;font-weight:900;display:inline-flex}.ai-chat-icon-action{width:34px}.ai-chat-new:hover,.ai-chat-new:focus-visible,.ai-chat-icon-action:hover,.ai-chat-icon-action:focus-visible{background:#0f766e2e;transform:translateY(-1px)}.ai-chat-new:disabled,.ai-chat-icon-action:disabled{cursor:not-allowed;opacity:.48;transform:none}.ai-chat-content{min-height:0;display:grid}.ai-chat-window.expanded.with-sidebar .ai-chat-content{grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:12px}.ai-chat-conversations{border-right:1px solid var(--border);grid-template-rows:auto minmax(0,1fr);gap:8px;min-height:0;padding-right:12px;display:grid}.ai-chat-conversations-title{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:900}.ai-chat-conversation-list{align-content:start;gap:6px;min-height:0;padding-right:2px;display:grid;overflow:auto}.ai-chat-conversation-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:4px;display:grid}.ai-chat-conversation,.ai-chat-delete{color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px}.ai-chat-conversation{text-align:left;gap:2px;min-width:0;padding:8px 9px;display:grid}.ai-chat-conversation span{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:850;overflow:hidden}.ai-chat-conversation small{color:var(--muted);font-size:11px;font-weight:750}.ai-chat-conversation[aria-current=true]{background:var(--accent-soft);color:var(--accent)}.ai-chat-conversation:hover,.ai-chat-conversation:focus-visible,.ai-chat-delete:hover,.ai-chat-delete:focus-visible{color:var(--accent);background:#0f766e1f}.ai-chat-delete{place-items:center;width:30px;display:grid}.ai-chat-conversation:disabled,.ai-chat-delete:disabled{cursor:not-allowed;opacity:.55}.ai-chat-body{scroll-behavior:smooth;align-content:start;gap:10px;min-height:0;padding-right:2px;display:grid;overflow:auto}.ai-chat-window.public-prompt .ai-chat-content,.ai-chat-window.public-prompt .ai-chat-body,.ai-chat-window.public-prompt .ai-chat-public{min-height:0}.ai-chat-window.public-prompt .ai-chat-body{align-content:stretch;padding-right:0;overflow:hidden}.ai-chat-public{gap:10px;min-height:0;display:grid}.ai-chat-window.public-prompt .ai-chat-public{grid-template-rows:auto minmax(0,1fr) auto}.ai-chat-prompt-preview{border:1px solid var(--border);background:#fbfdfc;border-radius:8px;min-height:210px;max-height:min(360px,42svh);padding:11px;overflow:auto}.ai-chat-window.public-prompt .ai-chat-prompt-preview{min-height:0;max-height:none}.ai-chat-prompt-preview pre{white-space:pre-wrap;word-break:break-word;font-family:var(--mono);margin:0;font-size:12px;line-height:1.45}.ai-chat-copy-status{color:var(--accent);font-size:13px;font-weight:800}.ai-chat-public-actions{color:var(--muted);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.ai-chat-public-title{color:var(--ink);font-size:15px;font-weight:900;line-height:1.35}.ai-chat-public-actions button{background:var(--accent-soft);min-height:32px;color:var(--accent);letter-spacing:0;text-transform:none;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:12px;font-weight:900;transition:background .15s,transform .15s;display:inline-flex}.ai-chat-public-actions button:hover,.ai-chat-public-actions button:focus-visible{background:#0f766e2e;transform:translateY(-1px)}.ai-chat-secret-door-backdrop{z-index:70;pointer-events:auto;background:linear-gradient(#f8fcfadb,#f8fcfadb),repeating-linear-gradient(0deg,#0f766e1f 0 1px,#0000 1px 6px);place-items:center;padding:24px;animation:.16s ease-out both ai-chat-secret-backdrop-in;display:grid;position:fixed;inset:0;overflow:auto}.ai-chat-secret-door{box-sizing:border-box;border:1px solid var(--border-strong);color:#d7fff6;width:min(360px,100%);font-family:var(--mono);background:#071512;border-radius:8px;gap:14px;padding:14px;animation:.18s cubic-bezier(.16,1,.3,1) both ai-chat-secret-door-in;display:grid;box-shadow:0 22px 52px #07151252}.ai-chat-secret-door-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ai-chat-secret-door-header p,.ai-chat-secret-door-header h3{margin:0}.ai-chat-secret-door-header p{color:#83d8c9;font-size:12px}.ai-chat-secret-door-header h3{color:#0000;letter-spacing:0;background:linear-gradient(90deg,#f2fffb,#83d8c9 52%,#c4b5fd);-webkit-background-clip:text;background-clip:text;font-size:18px}.ai-chat-secret-door .ai-chat-icon-action{color:#d7fff6;background:#d7fff61f}.ai-chat-secret-door-form{gap:8px;display:grid}.ai-chat-secret-door-form label{color:#83d8c9;text-transform:uppercase;font-size:12px;font-weight:900}.ai-chat-secret-door-row{grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:8px;display:grid}.ai-chat-secret-door-row input{box-sizing:border-box;color:#f2fffb;min-width:0;min-height:42px;font:inherit;background:#040c0ac7;border:1px solid #83d8c980;border-radius:8px;outline:0;padding:10px 11px;line-height:20px}.ai-chat-secret-door-row input:focus-visible{border-color:#d7fff6;box-shadow:0 0 0 3px #83d8c92e}.ai-chat-secret-door-row button{color:#071512;cursor:pointer;background:#83d8c9;border:0;border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;padding:0;transition:background .15s,transform .15s;display:grid}.ai-chat-secret-door-row button:hover,.ai-chat-secret-door-row button:focus-visible{background:#d7fff6;transform:translateY(-1px)}.ai-chat-starters{flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:8px;padding:3px;display:flex}.ai-chat-starters button{border:1px solid var(--border-strong);color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;min-height:38px;padding:8px 11px;font-size:13px;font-weight:800;transition:background .15s,border-color .15s,color .15s,transform .15s}.ai-chat-starters button:hover,.ai-chat-starters button:focus-visible{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.ai-chat-messages{align-content:start;gap:10px;display:grid}.ai-chat-message{border:1px solid var(--border);background:#fff;border-radius:8px;align-content:start;gap:4px;max-width:min(540px,100%);padding:10px 12px;animation:.18s ease-out both ai-chat-message-in;display:grid}.ai-chat-message.user{background:#eff6ff;border-color:#2563eb4d;justify-self:end}.ai-chat-message.assistant{background:#f7fcfa;border-color:#0f766e47;justify-self:start;min-width:76px}.ai-chat-message span{color:var(--muted);font-size:12px;font-weight:900;line-height:1.2}.ai-chat-window:not(.expanded) .ai-chat-message{max-width:min(340px,100%)}.ai-chat-markdown{gap:7px;display:grid}.ai-chat-markdown p,.ai-chat-markdown h1,.ai-chat-markdown h2,.ai-chat-markdown h3,.ai-chat-markdown h4{margin:0}.ai-chat-markdown p{white-space:pre-wrap}.ai-chat-markdown ol,.ai-chat-markdown ul{gap:6px;margin:0;padding-left:20px;display:grid}.ai-chat-markdown li>ol,.ai-chat-markdown li>ul{margin-top:6px}.ai-chat-markdown li>p{display:inline}.ai-chat-markdown h1,.ai-chat-markdown h2,.ai-chat-markdown h3,.ai-chat-markdown h4{font-size:1em;line-height:1.35}.ai-chat-markdown strong{font-weight:900}.ai-chat-markdown code{border:1px solid var(--border);font-family:var(--mono);background:#14201d0d;border-radius:5px;padding:1px 4px;font-size:.92em}.ai-chat-typing{align-items:center;gap:5px;min-height:22px;display:inline-flex}.ai-chat-typing span{background:var(--accent);opacity:.55;border-radius:999px;width:7px;height:7px;animation:.9s ease-in-out infinite ai-chat-dot-bounce;display:block}.ai-chat-typing span:nth-child(2){animation-delay:.12s}.ai-chat-typing span:nth-child(3){animation-delay:.24s}.ai-chat-error{color:var(--danger);background:#fff4f6;border:1px solid #be123c40;border-radius:8px;padding:9px 11px;font-weight:700}@keyframes ai-chat-launcher-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ai-chat-window-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ai-chat-window-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(10px)scale(.96)}}@keyframes ai-chat-message-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes ai-chat-secret-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes ai-chat-secret-door-in{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ai-chat-dot-bounce{0%,70%,to{opacity:.45;transform:translateY(0)}35%{opacity:1;transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.ai-chat-launcher,.ai-chat-window,.ai-chat-window.closing,.ai-chat-message,.ai-chat-secret-door-backdrop,.ai-chat-secret-door,.ai-chat-typing span{animation-duration:1ms;animation-iteration-count:1}.ai-chat-body{scroll-behavior:auto}}.ai-chat-form{display:block}.ai-chat-input-shell{box-sizing:border-box;border:1px solid var(--border-strong);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:6px 9px 6px 11px;transition:border-color .15s,box-shadow .15s;display:grid}.ai-chat-input-shell:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #0f766e24}.ai-chat-form input{min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:0;line-height:38px}.ai-chat-form input:disabled{color:var(--muted)}.ai-chat-send{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:999px;place-items:center;width:38px;height:38px;padding:0;transition:background .15s,transform .15s,opacity .15s;display:grid}.ai-chat-send:hover,.ai-chat-send:focus-visible{background:#0f6f69;transform:translateY(-1px)}.ai-chat-send:disabled,.ai-chat-starters button:disabled{cursor:not-allowed;opacity:.55;transform:none}.ai-chat-send svg{display:block;transform:translate(-1px,1px)}.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.chart-panel{min-width:0;padding:16px}.chart-frame{min-width:0;height:330px}.recharts-wrapper,.recharts-surface{font-family:var(--sans)}.table-panel,.cashflow-panel,.assumptions-panel,.error-panel{padding:16px}.section-heading{gap:4px;margin-bottom:14px;display:grid}.section-heading p{color:var(--muted)}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:520px}th,td{border-bottom:1px solid var(--border);text-align:right;white-space:nowrap;padding:12px 10px}th:first-child,td:first-child{text-align:left}th{color:var(--muted);font-size:13px}td.positive{color:var(--success);font-weight:800}td.negative{color:var(--danger);font-weight:800}.cashflow-grid{gap:10px;display:grid}.cashflow-row{border-top:1px solid var(--border);grid-template-columns:76px repeat(3,minmax(0,1fr));align-items:center;gap:10px;padding:11px 0;display:grid}.cashflow-row span{color:var(--muted)}.assumptions-panel{margin-top:16px}.assumptions-panel ul{columns:2;column-gap:32px;margin:0;padding-left:18px}.assumptions-panel li{break-inside:avoid;color:var(--muted);margin-bottom:9px}.error-panel{color:var(--danger);border-color:#be123c5c;align-items:flex-start;gap:12px;display:flex}.error-panel h2{color:var(--danger)}@media (width<=1180px){.layout-grid{grid-template-columns:minmax(0,1fr)}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.app-shell{width:min(100% - 20px,760px);padding-top:14px}.topbar{grid-template-columns:minmax(0,1fr)}.results-stack{display:contents}.results-takeaways{order:-2}.results-monthly{order:-1}.chart-grid,.quick-start-grid{grid-template-columns:minmax(0,1fr)}.environment-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-environment{grid-column:auto}.topbar-actions{justify-content:stretch;justify-items:stretch}.preset-actions-row,.icon-button{width:100%}.preset-menu-trigger{width:42px}.preset-field,.boligsiden-import{width:100%;min-width:0}.boligsiden-import{min-height:0}.boligsiden-import-status,.boligsiden-import-error{text-align:left}.preset-actions-row{grid-template-columns:minmax(0,1fr);display:grid}.preset-context{justify-content:flex-start}.preset-menu-panel{width:100%;margin-top:8px;position:static}.preset-dropdown-menu{width:100%;max-height:none;margin-top:8px;position:static}.ai-chat-widget{right:max(10px, env(safe-area-inset-right));bottom:max(10px, env(safe-area-inset-bottom));left:max(10px, env(safe-area-inset-left));justify-items:stretch}.ai-chat-launcher{justify-self:end}.ai-chat-window{width:100%;max-height:calc(100svh - 20px)}.ai-chat-window.expanded{height:calc(100svh - 20px)}.ai-chat-window-header .panel-title-row{min-width:0}.ai-chat-window.expanded.with-sidebar .ai-chat-content{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.ai-chat-conversations{border-right:0;border-bottom:1px solid var(--border);padding-bottom:10px;padding-right:0}.ai-chat-conversation-list{gap:6px;padding-bottom:2px;display:flex;overflow:auto hidden}.ai-chat-conversation-row{min-width:min(220px,72vw)}.ai-chat-starters{grid-template-columns:1fr;display:grid}.field-grid,.monthly-flow-grid{grid-template-columns:1fr}.metrics-grid{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;grid-template-columns:1fr;gap:0;overflow:visible}.metrics-grid .metric-card{background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:0;padding:13px 14px;display:grid}.metrics-grid .metric-card+.metric-card{border-top:1px solid var(--border)}.metrics-grid .metric-card.good strong{color:var(--success)}.metrics-grid .metric-card.bad strong{color:var(--danger)}.metrics-grid .metric-label{align-items:flex-start;font-size:12px;line-height:1.25}.metrics-grid .metric-card strong{text-align:right;white-space:nowrap;font-size:20px}.environment-input-field .label-row{flex-wrap:wrap;align-items:flex-start;gap:4px}.tooltip-content{width:auto;margin-inline:10px;position:fixed;inset:auto 0 14px;transform:none}.help-tooltip.tooltip-center .tooltip-content,.help-tooltip.tooltip-left .tooltip-content,.help-tooltip.tooltip-right .tooltip-content,.help-tooltip.tooltip-bottom .tooltip-content,.help-tooltip.tooltip-top .tooltip-content{width:auto;inset:auto 0 14px;transform:none}.cashflow-row{grid-template-columns:1fr}.assumptions-panel ul{columns:1}}
