.renovation-tools-page,#renovation-tools-root,.reno-tools-intro,.reno-tool-grid,.reno-tool-card,.reno-estimate-list,.reno-estimate-card,.reno-workspace-header,.reno-workspace,.reno-input-panel,.reno-result-panel,.reno-room-list,.reno-room-card,.reno-field,.reno-field-control,.reno-result-card{min-width:0;}#renovation-tools-root{color:var(--text-primary);}body[data-theme="dark"] .renovation-tools-page{color-scheme:dark;}body:not([data-theme="dark"]) .renovation-tools-page{color-scheme:light;}#renovation-tools-root :where(h2,h3,h4){text-wrap:balance;}#renovation-tools-root :where(p,li){text-wrap:pretty;}#renovation-tools-root :where(button,input,textarea,select){max-width:100%;min-height:44px;touch-action:manipulation;-webkit-tap-highlight-color:color-mix(in srgb,var(--interactive-primary) 24%,transparent);}#renovation-tools-root :where(button,input,textarea,select):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;}#renovation-tools-root .btn:active{transform:translateY(1px);}.reno-form-message:empty{display:none;}.reno-form-message,.reno-tool-chain,.reno-source-banner,.reno-transfer-notice,.reno-reference-only,.reno-formula-status{border:1px solid var(--status-info-border);border-radius:var(--radius-md);background:var(--status-info-bg);color:var(--status-info-fg);}.reno-form-message,.reno-tool-chain,.reno-source-banner,.reno-reference-only,.reno-formula-status{padding:var(--space-sm) var(--space-md);}.reno-tools-intro{margin-bottom:var(--space-md);padding:clamp(var(--space-lg),4vw,var(--space-xl));border:1px solid var(--border-glass-strong);border-radius:var(--radius-xl);background:var(--bg-card);box-shadow:var(--shadow-sm);}.reno-tools-intro > div{max-width:760px;}.reno-tools-intro span{display:inline-flex;margin-bottom:var(--space-sm);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-full);background:var(--interactive-soft);color:var(--interactive-primary);font-size:var(--font-size-xs);font-weight:700;}.reno-tools-intro h2,.reno-workspace-header h2{margin:0;color:var(--text-primary);font-size:clamp(var(--font-size-2xl),3vw,var(--font-size-3xl));line-height:1.25;}.reno-tools-intro p,.reno-workspace-header p{margin-top:var(--space-sm);color:var(--text-secondary);}.reno-tool-chain{margin-bottom:var(--space-lg);}.reno-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg);}.reno-tool-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-sm);padding:var(--space-lg);overflow:hidden;border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast);}.reno-tool-card:hover{border-color:var(--interactive-border);background:var(--bg-card-hover);box-shadow:var(--shadow-md);transform:translateY(-2px);}.reno-tool-card:active{transform:translateY(0);}.reno-tool-card > span[aria-hidden="true"]{font-size:var(--font-size-3xl);line-height:1;}.reno-tool-card h3,.reno-estimate-card h4,.reno-room-card h4{max-width:100%;overflow:hidden;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;}.reno-tool-card h3{color:var(--text-primary);font-size:var(--font-size-lg);}.reno-tool-card p{flex:1;color:var(--text-secondary);}.reno-tool-card .btn{width:100%;margin-top:var(--space-sm);}.reno-estimate-list{margin-top:var(--space-xl);}.reno-estimate-list > h3{margin-bottom:var(--space-md);}.reno-estimate-list [data-reno-estimates]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);}.reno-estimate-card{padding:var(--space-md);overflow:hidden;border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:var(--bg-card);}.reno-estimate-card p,.reno-estimate-card time,.reno-estimate-empty{overflow-wrap:anywhere;color:var(--text-secondary);}.reno-estimate-card time{display:block;margin-top:var(--space-xs);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;}.reno-estimate-card > div{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-md);}.reno-estimate-empty{grid-column:1 / -1;padding:var(--space-lg);border:1px dashed var(--border-glass-strong);border-radius:var(--radius-md);background:var(--bg-glass);}.reno-workspace-header{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:var(--space-md);margin-bottom:var(--space-lg);}.reno-source-banner{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-sm);margin-top:var(--space-sm);overflow-wrap:anywhere;}.reno-source-banner time{font-variant-numeric:tabular-nums;}.reno-mode-tabs{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xs);margin-bottom:var(--space-lg);padding:var(--space-xs);border:1px solid var(--border-glass);border-radius:var(--radius-md);background:var(--bg-glass);}.reno-mode-tabs [role="tab"]{padding:var(--space-sm) var(--space-lg);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-weight:700;transition:transform var(--transition-fast);}.reno-mode-tabs [role="tab"]:hover{background:var(--bg-glass-strong);color:var(--text-primary);}.reno-mode-tabs [role="tab"]:active{transform:translateY(1px);}.reno-mode-tabs [role="tab"][aria-selected="true"]{border-color:var(--interactive-border);background:var(--interactive-soft);color:var(--interactive-primary);}.reno-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,0.72fr);align-items:start;gap:var(--space-xl);}.reno-input-panel,.reno-result-panel{border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-sm);}.reno-input-panel{display:grid;gap:var(--space-lg);padding:var(--space-lg);}.reno-result-panel{position:sticky;top:calc(var(--space-lg) + 74px);max-height:calc(100vh - 110px);overflow-y:auto;padding:var(--space-lg);}.reno-room-list{display:grid;gap:var(--space-md);}.reno-room-card{padding:var(--space-md);border:1px solid var(--border-glass);border-radius:var(--radius-md);background:var(--bg-glass);}.reno-room-card > header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md);}.reno-room-card > header h4{flex:1;color:var(--text-primary);}.reno-room-card > header button{flex:0 0 auto;padding:var(--space-sm) var(--space-md);border:1px solid var(--status-danger-border);border-radius:var(--radius-sm);background:var(--status-danger-bg);color:var(--status-danger-fg);transition:transform var(--transition-fast);}.reno-room-card > header button:hover{border-color:var(--status-danger-fg);background:color-mix(in srgb,var(--status-danger-bg) 82%,var(--status-danger-fg));}.reno-room-card > header button:active{transform:translateY(1px);}.reno-room-grid,.reno-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);}.reno-field{display:grid;align-content:start;gap:var(--space-xs);margin:0;padding:0;border:0;color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:600;}.reno-field legend{padding:0;}.reno-field-control{display:flex;align-items:stretch;min-width:0;overflow:hidden;border:1px solid var(--border-glass-strong);border-radius:var(--radius-md);background:var(--bg-secondary);}.reno-field-control:hover{border-color:var(--interactive-border);}.reno-field-control:focus-within{border-color:var(--focus-ring);box-shadow:0 0 0 3px var(--interactive-soft);}.reno-field-control input{width:100%;min-width:0;padding:var(--space-sm) var(--space-md);border:0;background:transparent;color:var(--text-primary);font-variant-numeric:tabular-nums;}.reno-field-control input:focus-visible{outline-offset:-3px;}.reno-field-unit{display:inline-flex;align-items:center;flex:0 0 auto;padding:0 var(--space-sm);border-left:1px solid var(--border-glass);background:var(--bg-glass);color:var(--text-muted);font-size:var(--font-size-xs);white-space:nowrap;}.reno-field-error{display:inline-flex;align-items:flex-start;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border:1px solid var(--status-danger-border);border-radius:var(--radius-sm);background:var(--status-danger-bg);color:var(--status-danger-fg);font-size:var(--font-size-xs);font-weight:600;overflow-wrap:anywhere;}.reno-field-error[hidden]{display:none;}.reno-field :where(input,textarea,select)[aria-invalid="true"]{color:var(--status-danger-fg);}.reno-field-checkbox{grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;min-height:44px;padding:var(--space-sm);border:1px solid var(--border-glass);border-radius:var(--radius-md);background:var(--bg-secondary);cursor:pointer;}.reno-field-checkbox .reno-field-error{grid-column:1 / -1;}.reno-field-checkbox .reno-field-unit{border-left:0;background:transparent;}.reno-field-checkbox input,.reno-field-radio input,.reno-transfer-area-choice input{min-height:auto;accent-color:var(--interactive-primary);}.reno-field-radio{grid-column:1 / -1;}.reno-field-radio .reno-field-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xs);padding:var(--space-xs);}.reno-field-radio label,.reno-transfer-area-choice > label{display:flex;align-items:center;gap:var(--space-sm);min-width:0;min-height:44px;padding:var(--space-sm);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;}.reno-field-radio label:hover,.reno-transfer-area-choice > label:hover{background:var(--interactive-soft);color:var(--text-primary);}.reno-input-panel textarea{width:100%;padding:var(--space-md);border:1px solid var(--border-glass-strong);border-radius:var(--radius-md);background-color:var(--bg-secondary);color:var(--text-primary);resize:vertical;}.reno-input-panel select{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border-glass-strong);border-radius:var(--radius-md);background-color:var(--bg-secondary);color:var(--text-primary);}.reno-input-panel select option{background-color:var(--bg-secondary);color:var(--text-primary);}.reno-transfer-notice{padding:var(--space-md);}.reno-transfer-notice p + p{margin-top:var(--space-xs);}.reno-formula-note{margin-bottom:var(--space-md);padding:var(--space-sm) var(--space-md);border:1px solid var(--status-info-border);border-radius:var(--radius-md);background:var(--status-info-bg);color:var(--status-info-fg);overflow-wrap:anywhere;}.reno-estimate-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md);padding-top:var(--space-lg);border-top:1px solid var(--border-glass);}.reno-estimate-actions > div,.reno-result-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);}[data-reno-copy-fallback]{min-height:140px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;}[data-reno-copy-fallback][hidden]{display:none;}.reno-result-empty{padding:var(--space-md);border:1px solid var(--status-danger-border);border-radius:var(--radius-md);background:var(--status-danger-bg);color:var(--status-danger-fg);}.reno-result-empty h3{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-sm);}.reno-result-empty ul{padding-left:var(--space-lg);}.reno-result-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm);}.reno-result-card{display:grid;gap:var(--space-xs);padding:var(--space-md);overflow:hidden;border:1px solid var(--border-glass);border-radius:var(--radius-md);background:var(--bg-glass);}.reno-result-card span,.reno-result-card small{color:var(--text-secondary);overflow-wrap:anywhere;}.reno-result-card strong{color:var(--text-primary);font-size:var(--font-size-xl);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}.reno-result-assumptions,.reno-transfer-area-choice{margin-top:var(--space-md);padding:var(--space-md);border:1px solid var(--border-glass);border-radius:var(--radius-md);background:var(--bg-glass);}.reno-result-assumptions ul{padding-left:var(--space-lg);color:var(--text-secondary);}.reno-reference-only,.reno-formula-status,.reno-result-actions{margin-top:var(--space-md);}.reno-formula-status{border-color:var(--status-warning-border);background:var(--status-warning-bg);color:var(--status-warning-fg);font-weight:700;}.reno-transfer-area-choice legend{padding:0 var(--space-xs);color:var(--text-primary);font-weight:700;}.reno-transfer-area-choice .reno-field{margin:var(--space-sm) 0;}.reno-transfer-warning{margin-top:var(--space-sm);padding:var(--space-sm);border:1px solid var(--status-warning-border);border-radius:var(--radius-sm);background:var(--status-warning-bg);color:var(--status-warning-fg);}.reno-result-actions .btn,.reno-estimate-actions .btn{min-width:0;white-space:normal;overflow-wrap:anywhere;}@media (prefers-reduced-motion:reduce){#renovation-tools-root *,#renovation-tools-root *::before,#renovation-tools-root *::after{scroll-behavior:auto;animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}}@media (max-width:768px){.reno-tool-grid,.reno-workspace,.reno-room-grid,.reno-field-grid{grid-template-columns:1fr;}.reno-estimate-list [data-reno-estimates],.reno-result-cards,.reno-field-radio .reno-field-control{grid-template-columns:1fr;}.reno-tools-intro,.reno-input-panel,.reno-result-panel{padding:var(--space-md);}.reno-workspace-header{grid-template-columns:1fr;}.reno-workspace-header .btn{width:100%;}.reno-mode-tabs{display:grid;width:100%;}.reno-mode-tabs [role="tab"]{min-width:0;padding-inline:var(--space-sm);white-space:normal;}.reno-input-panel{width:100%;min-width:0;}.reno-result-panel{position:static;max-height:none;width:100%;overflow:hidden;}.reno-room-card > header{align-items:flex-start;}.reno-estimate-actions{grid-template-columns:1fr;width:100%;}.reno-estimate-actions > div,.reno-result-actions,.reno-estimate-card > div{display:grid;grid-template-columns:1fr;width:100%;}.reno-estimate-actions .btn,.reno-result-actions .btn,.reno-estimate-card .btn{width:100%;}.reno-field-control{width:100%;}}