*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #0d0d0d;--bg-elev: #1a1a1a;--bg-elev-2: #232323;--bg-elev-3: #2c2c2c;--border: #2a2a2a;--border-strong: #3a3a3a;--text: #ededed;--text-dim: #9a9a9a;--text-faint: #6a6a6a;--accent: #ff7a1a;--accent-hover: #ff9444;--accent-soft: rgba(255, 122, 26, .15);--error: #ff4d4f;--warn: #faad14;--success: #52c41a;--info: #40a9ff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:linear-gradient(135deg,#1a1a1a,#2a1a0d);color:#fff;padding:20px 24px;border-bottom:2px solid var(--accent)}.header h1{font-size:20px;font-weight:600;margin-bottom:8px}.header .subtitle{font-size:14px;color:var(--text-dim);font-weight:400;line-height:1.6}.main{flex:1;padding:24px;max-width:900px;margin:0 auto;width:100%}.card{background:#1a1a1acc;border-radius:12px;border:1px solid #2a2a2a;padding:24px;margin-bottom:20px}.card h2{color:#ff7a1a;font-size:18px;margin-bottom:20px;border-bottom:1px solid #2a2a2a;padding-bottom:10px}.grid-form{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.section-title{grid-column:span 2;color:#e8e8e8;font-size:16px;margin-top:16px;margin-bottom:8px}@media (max-width: 640px){.grid-form{grid-template-columns:1fr}.section-title{grid-column:span 1}}.form-actions{display:flex;gap:12px;margin-top:4px;padding-top:16px;border-top:1px solid var(--border)}.form-group label{color:#e8e8e8;font-size:14px;font-weight:500}input[type=number]{background:#282828cc;border:1px solid #3a3a3a;border-radius:8px;padding:12px 14px;color:#e8e8e8;font-size:15px;transition:all .2s ease}input[type=number]:focus{outline:none;border-color:#ff7a1a;box-shadow:0 0 0 3px #ff7a1a26}input[type=number]::placeholder{color:#6a6a6a}.btn{padding:12px 24px;border-radius:8px;font-size:15px;font-weight:500;border:none;cursor:pointer;transition:all .2s ease}.btn-primary{background:#ff7a1a;color:#fff}.btn-primary:hover{background:#ff9444}.btn-secondary{background:#323232cc;color:#e8e8e8;border:1px solid #3a3a3a}.btn-secondary:hover{background:#3a3a3a}.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.result-item.highlight{background:#ff7a1a1a;border-radius:12px;padding:24px;border-left:4px solid #ff7a1a;box-shadow:inset 0 1px #ff7a1a0d}.result-item.alert{background:linear-gradient(145deg,#2a201a,#1a1a1a);border-radius:12px;padding:24px;border-left:4px solid #ff4d4f}.result-item.alert.budget-sufficient{background:linear-gradient(145deg,#52c41a1a,#232323cc);border-left:4px solid #52c41a}.result-item.alert.budget-tight{background:linear-gradient(145deg,#2a1a1a,#1a1a1a);border-left:4px solid #ff4d4f}.result-item:not(.highlight):not(.alert){background:#232323cc;border-radius:12px;padding:24px;border-left:4px solid rgba(35,35,35,.8)}.result-item.alert .value.warning{color:#ff7a1a;font-size:24px;line-height:1.2}.result-item.alert .value.success{color:#52c41a;font-size:24px;line-height:1.2}.result-item .label{display:block;color:#9a9a9a;font-size:13px;margin-bottom:8px}.result-item .value{font-size:24px;line-height:1.2}.result-item .unit{display:inline;color:#9a9a9a;font-size:14px;margin-left:8px;vertical-align:middle}.result-item.alert.budget-tight .value.warning{color:#ff4d4f}.result-item.alert.budget-sufficient .value.success{color:#52c41a}.result-item.alert .subtext{display:inline-block;margin-left:8px;color:#52c41a;font-size:24px;line-height:1.2}.result-item.alert.budget-sufficient .label{color:#aabbb5}.cost-breakdown{margin-top:24px;padding-top:20px}.cost-breakdown h3{color:#e8e8e8;font-size:16px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.cost-breakdown h3:before{content:"";width:4px;height:20px;background:#ff7a1a;border-radius:2px}.breakdown-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.breakdown-item{background:#232323cc;border-radius:10px;padding:16px;border:1px solid #2a2a2a;transition:all .2s ease}.breakdown-item:hover{background:#282828e6;border-color:#3a3a3a}.breakdown-label{color:#aabbb5;font-size:13px;display:flex;align-items:center;gap:4px}.breakdown-label:before{content:"";width:3px;height:12px;background:#ff7a1a;border-radius:2px}.breakdown-value{color:#fff;font-size:20px;font-weight:600}.breakdown-percentage{color:#ff7a1a;font-size:13px;margin-left:8px}.result-actions{display:flex;gap:14px;margin-top:24px;padding-top:20px;border-top:1px solid #2a2a2a}.result-actions .btn-primary{background:linear-gradient(90deg,#ff7a1a,#ff8c3a)}.result-actions .btn-primary:hover{background:linear-gradient(90deg,#ff9444,#ffa055)}.notice-section{text-align:center}.notice-section h2{font-size:48px;margin-bottom:8px}.notice-section p{color:#9a9a9a;font-size:15px}.footer{text-align:center;padding:20px 16px;color:var(--text-dim);font-size:13px;border-top:1px solid var(--border)}.footer a{color:#ff7a1a;text-decoration:none}.footer a:hover{text-decoration:underline}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}@media (max-width: 900px){.header{padding:16px}.header h1{font-size:17px}.header .subtitle{font-size:13px}.main{padding:16px}}
