.landing{min-height:100vh;min-height:100dvh}.landing-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;background:var(--color-bg);border-bottom:1px solid var(--color-border)}.landing-logo{font-size:20px;font-weight:700;color:var(--color-accent);text-decoration:none}.landing-nav{display:flex;align-items:center;gap:24px}.landing-nav-links{display:flex;gap:20px;list-style:none;margin:0;padding:0}.landing-nav-links a{font-size:14px;font-weight:500;color:var(--color-text-muted);text-decoration:none;transition:color .15s}.landing-nav-links a:hover{color:var(--color-text)}.landing-signin-btn{min-height:40px;padding:0 16px;font-size:14px;font-weight:600;background:var(--color-bg);color:var(--color-accent);border:1px solid var(--color-accent);border-radius:6px;cursor:pointer;transition:background .15s}.landing-signin-btn:hover{background:var(--color-bg-subtle)}.landing-hero{padding:80px 24px 64px;text-align:center;background:var(--color-bg)}.landing-hero h1{font-size:48px;font-weight:700;line-height:1.15;color:var(--color-text);max-width:720px;margin:0 auto 16px}.landing-hero p{font-size:18px;line-height:1.6;color:var(--color-text-muted);max-width:560px;margin:0 auto 32px}.landing-hero-cta{display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 32px;font-size:16px;font-weight:600;background:var(--color-accent);color:var(--color-white);border:1px solid var(--color-accent);border-radius:8px;cursor:pointer;transition:background .15s}.landing-hero-cta:hover{background:var(--color-accent-hover)}.landing-hero-trust{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:16px;font-size:13px;color:var(--color-text-muted)}.landing-hero-trust svg{flex-shrink:0}.landing-section{padding:64px 24px;max-width:896px;margin:0 auto}.landing-section-title{font-size:28px;font-weight:700;text-align:center;margin:0 0 12px;color:var(--color-text)}.landing-section-subtitle{font-size:16px;color:var(--color-text-muted);text-align:center;margin:0 0 40px;line-height:1.6}.landing-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.landing-step{text-align:center}.landing-step-number{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--color-primary-subtle);color:var(--color-primary);font-weight:700;font-size:16px;margin-bottom:12px}.landing-step h3{font-size:16px;margin:0 0 8px;color:var(--color-text)}.landing-step p{font-size:14px;color:var(--color-text-muted);margin:0;line-height:1.5}.landing-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.landing-feature{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:24px}.landing-feature-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:var(--color-primary-subtle);color:var(--color-primary);margin-bottom:12px}.landing-feature h3{font-size:15px;margin:0 0 8px;color:var(--color-text)}.landing-feature p{font-size:13px;color:var(--color-text-muted);margin:0;line-height:1.5}.landing-proof{text-align:center;padding:48px 24px;background:var(--color-bg);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.landing-proof-stat{font-size:36px;font-weight:700;color:var(--color-accent);margin:0 0 8px}.landing-proof p{font-size:14px;color:var(--color-text-muted);margin:0}.landing-pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:640px;margin:0 auto}.landing-pricing-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;padding:32px 24px;text-align:center}.landing-pricing-card--pro{border-color:var(--color-accent);border-width:2px}.landing-pricing-name{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin:0 0 8px}.landing-pricing-price{font-family:var(--font-mono);font-size:36px;font-weight:700;color:var(--color-text);margin:0 0 4px}.landing-pricing-period{font-size:13px;color:var(--color-text-muted);margin:0 0 24px}.landing-pricing-features{list-style:none;padding:0;margin:0 0 24px;text-align:left}.landing-pricing-features li{padding:6px 0;font-size:14px;color:var(--color-text)}.landing-pricing-features li:before{content:"✓ ";color:var(--color-accent);font-weight:700}.landing-pricing-cta{width:100%;min-height:48px;font-size:15px;font-weight:600;border-radius:8px;cursor:pointer;transition:background .15s}.landing-pricing-cta--free{background:var(--color-bg);color:var(--color-accent);border:1px solid var(--color-accent)}.landing-pricing-cta--free:hover{background:var(--color-bg-subtle)}.landing-pricing-cta--pro{background:var(--color-accent);color:var(--color-white);border:1px solid var(--color-accent)}.landing-pricing-cta--pro:hover{background:var(--color-accent-hover)}.landing-pricing-cta:disabled{opacity:.6;cursor:not-allowed}.landing-upgrade-error{margin-top:8px;font-size:13px;color:var(--color-blocker)}.landing-footer{padding:32px 24px;text-align:center;max-width:896px;margin:0 auto}.landing-footer p{font-size:12px;color:var(--color-text-subtle);margin:0;line-height:1.6}@media (max-width: 600px){.landing-header{padding:10px 16px}.landing-nav-links{display:none}.landing-hero{padding:48px 16px 40px}.landing-hero h1{font-size:28px}.landing-hero p{font-size:15px}.landing-section{padding:40px 16px}.landing-section-title{font-size:22px}.landing-steps{grid-template-columns:1fr;gap:24px}.landing-features-grid,.landing-pricing-grid{grid-template-columns:1fr}}*,*:before,*:after{box-sizing:border-box}:root{--color-primary: #6172f3;--color-primary-hover: #4a53e8;--color-primary-subtle: #e0e9ff;--color-accent: #1e5f52;--color-accent-hover: #164a40;--color-accent-bg: #f0f7f5;--color-bg: #ffffff;--color-bg-subtle: #f8fafc;--color-bg-muted: #f1f5f9;--color-border: #e2e8f0;--color-border-strong: #a8aa9d;--color-text: #0f172a;--color-text-muted: #64748b;--color-text-subtle: #94a3b8;--color-white: #ffffff;--color-blocker: #dc2626;--color-blocker-bg: #fef2f2;--color-risk: #ea580c;--color-risk-bg: #fff7ed;--color-advisory: #d97706;--color-advisory-bg: #fffbeb;--color-ok: #16a34a;--color-ok-bg: #f0fdf4;--color-ok-bg-strong: #e8f5e9;--color-ok-border: #a5d6a7;--color-info: #1565c0;--color-info-bg: #e3f2fd;--color-warning-bg: #fff8e1;--color-warning-border: #ffcc02;--color-wechat: #07C160;--color-wechat-hover: #06ad56;--color-login-card-bg: #ffffff;--color-login-border: #d8d3c7;--color-login-title: #17201a;--color-login-subtitle: #52625a;--color-overlay: rgba(0, 0, 0, .4);--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", ui-monospace, monospace}body{margin:0;color:var(--color-text);background:var(--color-bg-subtle);font-family:var(--font-sans);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}main{min-height:100vh;min-height:100dvh;padding-bottom:env(safe-area-inset-bottom,0)}.workspace{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:24px;padding:24px;padding-left:max(24px,env(safe-area-inset-left,0));padding-right:max(24px,env(safe-area-inset-right,0))}.workspace-sidebar{display:flex;flex-direction:column;gap:16px;background:var(--color-bg-subtle);border-radius:8px;padding:12px;min-width:0}.sidebar-section-divider{height:1px;background:var(--color-border);margin:4px 0}.wizard-main{display:flex;flex-direction:column;gap:16px;min-width:0}.panel{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:16px}.panel h2{margin:0 0 12px;font-size:16px;color:var(--color-text)}.panel label{display:grid;gap:4px;font-size:13px;margin-bottom:10px}.panel input,.panel select{min-height:44px;border-radius:6px;border:1px solid var(--color-border);padding:0 12px;font:inherit;font-size:16px}.panel button{min-height:44px;border-radius:6px;border:1px solid var(--color-accent);background:var(--color-accent);color:var(--color-white);cursor:pointer;padding:0 16px;font:inherit;font-size:14px}.panel-actions{display:flex;gap:8px;flex-wrap:wrap}.panel-actions button{min-height:44px;font-size:13px;padding:0 12px;background:var(--color-bg-muted);color:var(--color-text);border:1px solid var(--color-border)}.history-list{list-style:none;padding:0;margin:0}.history-list li{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 0;border-bottom:1px solid var(--color-border);min-height:44px;margin-bottom:4px}.history-list li span:first-child{font-size:13px;color:var(--color-text-muted)}.history-list li span:nth-child(2){font-size:13px;font-weight:700}.wizard,.preview{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:20px;min-width:0}.buyer-structure-list{display:flex;flex-direction:column;gap:12px;min-width:0}.buyer-row{border:1px solid var(--color-border);border-radius:6px;padding:12px;min-width:0;background:var(--color-bg-muted)}.buyer-row legend{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);padding:0 6px}.buyer-row select,.buyer-row input[type=number]{min-width:0;max-width:100%}.debt-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.debt-row select,.debt-row input{min-width:0;flex:1 1 120px}.wizard{align-self:start;display:grid;gap:14px}.wizard-nav{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}.wizard-nav::-webkit-scrollbar{display:none}.wizard-nav button{min-height:44px;white-space:nowrap;flex-shrink:0;font-size:13px;padding:0 14px}.wizard-nav-actions{display:flex;gap:8px}.wizard-nav-actions button{min-height:44px;flex:1}.wizard-step-indicator{text-align:center;font-size:13px;color:var(--color-text-muted);padding:4px 0 8px}.sidebar-details{border:1px solid var(--color-border);border-radius:8px;margin-bottom:8px;background:var(--color-bg)}.sidebar-details-summary{padding:10px 12px;font-size:13px;font-weight:600;color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:6px}.sidebar-details-summary::-webkit-details-marker{display:none}.sidebar-details-summary:before{content:"";width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:6px solid var(--color-text-muted);flex-shrink:0;transition:transform .15s}.sidebar-details[open] .sidebar-details-summary:before{transform:rotate(90deg)}.sidebar-details-content{padding:8px 12px 12px;border-top:1px solid var(--color-border)}.sidebar-details-content>p{margin:0 0 10px;font-size:13px;color:var(--color-text-muted)}.sidebar-details-content .history-list{margin:0;padding:0;list-style:none}h1,h2{margin:0 0 12px;letter-spacing:0}label{display:grid;gap:6px;font-size:14px;font-weight:650}input,select,button{min-height:44px;border-radius:6px;border:1px solid var(--color-border);padding:0 12px;font:inherit;font-size:16px}button{cursor:pointer;border-color:var(--color-accent);background:var(--color-accent);color:var(--color-white)}.actions{display:flex;flex-wrap:wrap;gap:8px}.preview{display:grid;gap:20px;overflow-x:hidden}.preview-hero{border-bottom:2px solid var(--color-accent);padding-bottom:18px}dl div{display:grid;grid-template-columns:minmax(120px,220px) 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--color-border)}dt{color:var(--color-text-muted)}dd{margin:0;font-weight:700;word-break:break-word}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid var(--color-border);padding:10px;text-align:left}.mono{font-family:var(--font-mono)}.mono-lg{font-family:var(--font-mono);font-size:18px;font-weight:600}.btn-clear{background:var(--color-bg-muted);color:var(--color-text);border:1px solid var(--color-border-strong);font-size:12px;min-height:44px;padding:0 12px;cursor:pointer;transition:background .15s}.btn-clear:hover{background:var(--color-border)}.warning{color:var(--color-risk)}.error{color:var(--color-blocker)}a{color:var(--color-accent);text-decoration:underline}.comparison-panel{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:20px;overflow:hidden}.comparison-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:8px}.comparison-header h2{margin:0}.comparison-header button{min-height:44px;background:var(--color-bg-muted);color:var(--color-text);border:1px solid var(--color-border);font-size:13px;padding:0 14px}.comparison-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -20px;padding:0 20px}.comparison-table{width:100%;border-collapse:collapse;font-size:14px}.comparison-table th,.comparison-table td{padding:10px 12px;border-bottom:1px solid var(--color-border);text-align:left}.comparison-label-col{color:var(--color-text-muted);font-weight:600;min-width:140px;white-space:nowrap}.comparison-value-col{min-width:130px;font-family:var(--font-mono);font-size:13px}.comparison-scenario-label{font-weight:700;font-size:14px}.comparison-scenario-mode{font-size:12px;color:var(--color-text-muted);font-weight:400}.comparison-best{background:var(--color-ok-bg-strong);font-weight:700;color:var(--color-ok)}.comparison-recommendation{margin-top:16px;padding:12px;background:var(--color-ok-bg-strong);border:1px solid var(--color-ok-border);border-radius:6px;font-size:14px}.comparison-recommendation-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.comparison-why-toggle{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-ok-border);font-size:12px;padding:4px 10px;min-height:32px;border-radius:4px}.comparison-why-list{list-style:none;padding:8px 0 0;margin:8px 0 0;border-top:1px solid var(--color-ok-border);display:flex;flex-direction:column;gap:4px;font-size:13px}.comparison-why-list li{display:flex;justify-content:space-between;align-items:center}.comparison-why-metric{color:var(--color-text);font-weight:500}.comparison-why-score{color:var(--color-ok);font-family:monospace;font-size:12px}.comparison-label-input{font-weight:700;font-size:14px;width:100%;min-width:100px;border:1px solid transparent;background:transparent;padding:2px 4px;border-radius:4px;color:var(--color-text)}.comparison-label-input:hover,.comparison-label-input:focus{border-color:var(--color-border);background:var(--color-bg);outline:none}.comparison-warnings{margin-top:16px}.comparison-warnings h3{font-size:14px;margin:0 0 8px}.comparison-warnings ul{list-style:none;padding:0;margin:0}.comparison-warnings li{display:flex;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--color-border);font-size:13px;min-height:44px}.comparison-warning-scenario{font-weight:700;min-width:80px}.comparison-warning-severity{font-size:11px;font-weight:700;padding:2px 6px;border-radius:4px;text-transform:uppercase}.severity-blocker{background:var(--color-blocker-bg);color:var(--color-blocker)}.severity-risk{background:var(--color-risk-bg);color:var(--color-risk)}.severity-advisory{background:var(--color-advisory-bg);color:var(--color-advisory)}.severity-info{background:var(--color-info-bg);color:var(--color-info)}.warning-block{display:block;padding:10px 12px;margin-bottom:8px;border-radius:6px;font-size:14px;line-height:1.5;border-left:4px solid var(--color-border);background:var(--color-bg-subtle)}.warning-block.severity-blocker{border-left-color:var(--color-blocker);background:var(--color-blocker-bg)}.warning-block.severity-risk{border-left-color:var(--color-risk);background:var(--color-risk-bg)}.warning-block.severity-advisory{border-left-color:var(--color-advisory);background:var(--color-advisory-bg)}.warning-block.severity-info{border-left-color:var(--color-info);background:var(--color-info-bg)}.warning-label{display:inline-block;font-weight:700;text-transform:uppercase;letter-spacing:.5px;font-size:11px;padding:2px 6px;border-radius:3px;background:var(--color-bg);margin-right:8px;vertical-align:middle}.warning-message{color:var(--color-text)}.comparison-warning-code{color:var(--color-text-muted);font-family:monospace;font-size:12px}.llm-panel{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;padding:16px;margin-top:12px}.llm-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:8px}.llm-panel-header h3{margin:0;font-size:14px}.llm-generate-btn{background:var(--color-accent);color:var(--color-white);border:1px solid var(--color-accent);font-size:13px;padding:0 14px;min-height:44px}.llm-generate-btn:disabled{opacity:.5;cursor:not-allowed}.llm-clear-btn{background:var(--color-bg-muted);color:var(--color-text);border:1px solid var(--color-border);font-size:12px;padding:0 12px;min-height:44px}.llm-loading{color:var(--color-text-muted);font-size:14px;font-style:italic}.llm-error{color:var(--color-blocker);font-size:14px}.llm-content{font-size:14px;line-height:1.6}.llm-content p{margin:0 0 8px}.llm-content ul{margin:0;padding-left:20px}.llm-content li{margin-bottom:6px}.llm-confidence-low{font-size:12px;color:var(--color-risk);font-style:italic;margin-top:8px}.llm-disclaimer{font-size:11px;color:var(--color-text-subtle);border-top:1px solid var(--color-border);padding-top:8px;margin-top:12px;font-style:italic;line-height:1.5}.llm-comparison{margin-top:16px}.llm-config-disclaimer{font-size:12px;color:var(--color-text-muted);line-height:1.5;margin:0 0 12px}.llm-config-toggle{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text);cursor:pointer}.llm-config-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer}.llm-config-toggle input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.llm-config-summaries{margin-top:14px;border-top:1px solid var(--color-border);padding-top:12px}.llm-config-summaries-heading{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:0 0 8px}.llm-config-empty{font-size:12px;color:var(--color-text-muted);margin:0;line-height:1.5}.llm-config-summary-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.llm-config-summary-item{border:1px solid var(--color-border);border-radius:6px;padding:10px;background:var(--color-bg-elevated)}.llm-config-summary-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px}.llm-config-summary-kind{font-size:12px;font-weight:600;color:var(--color-text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.llm-config-summary-date{font-size:11px;color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.llm-config-summary-preview{font-size:12px;color:var(--color-text-muted);line-height:1.4;margin-bottom:6px;word-break:break-word}.llm-config-summary-actions{display:flex;gap:6px;flex-wrap:wrap}.llm-config-summary-actions button{font-size:11px;padding:3px 8px;background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:4px;cursor:pointer;color:var(--color-text)}.llm-config-summary-actions button:hover{background:var(--color-border)}.llm-config-summary-detail{margin-top:8px;padding-top:8px;border-top:1px dashed var(--color-border);font-size:12px;line-height:1.5;color:var(--color-text)}.llm-config-summary-detail p{margin:0 0 6px}.llm-draft-notice{font-size:13px;color:var(--color-text-muted);background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:6px;padding:12px;margin-top:12px;font-style:italic}.upgrade-panel{border-color:var(--color-accent);border-width:2px}.upgrade-panel h2{color:var(--color-accent)}.upgrade-features{list-style:none;padding:0;margin:0 0 14px;font-size:14px}.upgrade-features li{padding:4px 0}.upgrade-features li:before{content:"✓ ";color:var(--color-accent);font-weight:700}.upgrade-error{margin:8px 0 0;font-size:13px;color:var(--color-blocker)}.free-tier-limit-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:8px;font-size:14px;color:var(--color-risk)}.free-tier-limit-banner button{min-height:44px;font-size:13px;padding:0 14px;white-space:nowrap}.profile-auth-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 0;margin-bottom:12px;border-bottom:1px solid var(--color-border);flex-wrap:wrap;min-width:0}.profile-user-info{display:flex;align-items:center;gap:8px;min-width:0}.profile-user-email{font-size:13px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-tier-badge{font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px;text-transform:uppercase;white-space:nowrap}.tier-free{background:var(--color-bg-muted);color:var(--color-text-muted)}.tier-pro{background:var(--color-ok-bg-strong);color:var(--color-ok)}.profile-auth-actions{display:flex;gap:6px;align-items:center;min-width:0;flex-wrap:wrap}.profile-manage-btn{min-height:44px;font-size:12px;padding:0 10px;background:var(--color-accent);color:var(--color-white);border:1px solid var(--color-accent);white-space:nowrap}.profile-manage-btn:disabled{opacity:.6;cursor:not-allowed}.profile-signout-btn{min-height:44px;font-size:12px;padding:0 10px;background:var(--color-bg-muted);color:var(--color-text);border:1px solid var(--color-border)}.profile-status{margin-top:6px;font-size:12px}.profile-status-error{color:var(--color-blocker)}.profile-status-success{color:var(--color-ok)}.profile-signin-prompt{padding:12px 0;border-top:1px solid var(--color-border)}.profile-signin-prompt button{width:100%}.profile-details{margin:0}.profile-summary{cursor:pointer;font-weight:600;font-size:15px;padding:8px 0;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:6px}.profile-summary::-webkit-details-marker{display:none}.profile-summary:before{content:"▶";font-size:10px;transition:transform .15s;display:inline-block}.profile-details[open]>.profile-summary:before{transform:rotate(90deg)}.profile-form{display:flex;flex-direction:column;gap:8px;padding-top:8px}.signin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.signin-modal{background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;padding:32px;max-width:400px;width:100%;position:relative}.signin-modal h2{margin:0 0 4px;font-size:24px}.signin-modal-subtitle{margin:0 0 24px;font-size:14px;color:var(--color-text-muted)}.signin-modal-close{position:absolute;top:12px;right:12px;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-muted);font-size:20px}.signin-google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:48px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s}.signin-google-btn:hover{background:var(--color-bg-subtle)}.signin-wechat-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:48px;border:1px solid var(--color-wechat);border-radius:6px;background:var(--color-wechat);color:var(--color-white);font:inherit;font-size:15px;font-weight:600;cursor:pointer;margin-top:10px;transition:background .15s}.signin-wechat-btn:hover{background:var(--color-wechat-hover)}.signin-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--color-text-subtle);font-size:13px}.signin-divider:before,.signin-divider:after{content:"";flex:1;border-bottom:1px solid var(--color-border)}.signin-email-form{display:flex;flex-direction:column;gap:12px}.signin-email-form label{font-size:13px;font-weight:600}.signin-email-form input,.signin-email-form button{width:100%}.signin-message{margin:12px 0 0;font-size:13px;color:var(--color-accent)}.mode-toggle{display:flex;gap:8px;margin-bottom:16px}.mode-toggle button{min-height:44px;font-size:14px}.generate-summary{margin-top:16px}.generate-summary-grid{display:grid;grid-template-columns:minmax(120px,180px) 1fr;gap:8px 12px}.generate-language{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:12px;align-items:end}.generate-language label{display:flex;flex-direction:column;gap:4px;font-size:14px;min-width:0;flex:1 1 auto}.generate-language select{min-width:0;max-width:220px;padding:6px 8px;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface);color:var(--color-text);font-size:14px}.generate-actions{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap}.generate-status{margin-top:12px;font-size:14px;color:var(--color-ok)}.generate-status.error{color:var(--color-blocker)}.generate-output{margin-top:24px}@media (max-width: 1024px){.workspace{gap:16px;padding:16px}dl div{gap:8px}}@media (max-width: 600px){.workspace{grid-template-columns:1fr;padding:12px;gap:12px}.wizard,.preview,.comparison-panel{padding:14px}.comparison-table-wrapper{margin:0 -14px;padding:0 14px}dl div{grid-template-columns:1fr;gap:2px}.wizard-nav{gap:4px}.wizard-nav button{font-size:12px;padding:0 10px}.panel-actions{flex-direction:column}.panel-actions button{width:100%}.history-list li{flex-wrap:wrap;gap:6px}.history-list li button{flex:1;min-width:0}.generate-summary-grid{grid-template-columns:1fr;gap:2px}.generate-actions{flex-direction:column}.generate-actions button{width:100%}body{padding-bottom:64px}.bottom-nav{display:flex;justify-content:space-around;align-items:center}.bottom-nav button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 12px;min-height:56px;flex:1;background:none;border:none;color:var(--color-text-muted);font-size:12px;cursor:pointer;transition:color .15s}.bottom-nav button.active{color:var(--color-accent)}.bottom-nav button svg{flex-shrink:0}}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--color-bg);border-top:1px solid var(--color-border);padding:0;z-index:100}.history-checkbox{width:16px;height:16px;flex-shrink:0}.history-load-btn{margin-left:auto}.compare-actions{margin-top:8px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.compare-btn{font-size:12px}.sensitivity-panel-static{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;padding:16px;margin-top:12px}.sensitivity-panel-static h3{margin:0 0 12px;font-size:14px}.sensitivity-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.sensitivity-table th,.sensitivity-table td{border-bottom:1px solid var(--color-border);padding:8px;text-align:left;overflow-wrap:anywhere}.sensitivity-table th{font-weight:600;color:var(--color-text-muted)}.sensitivity-note{margin:12px 0 0;font-size:12px;color:var(--color-text-muted);font-style:italic}.portfolio-view{margin-top:16px;padding:12px;background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:6px}.portfolio-view h4{margin:0 0 10px;font-size:13px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.portfolio-grid{display:flex;flex-wrap:wrap;align-items:center;gap:16px;justify-content:center}.portfolio-item{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:80px}.portfolio-label{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.portfolio-value{font-size:24px;font-weight:700;color:var(--color-accent)}.portfolio-detail{font-size:11px;color:var(--color-text-muted);text-align:center}.portfolio-arrow{font-size:20px;color:var(--color-text-muted)}.portfolio-note{margin:10px 0 0;font-size:12px;color:var(--color-text-muted);font-style:italic;text-align:center}.pledge-view{margin-top:16px;padding:12px;background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:6px}.pledge-view h4{margin:0 0 10px;font-size:13px;color:var(--color-text);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.pledge-grid{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:10px}.pledge-item{display:flex;flex-direction:column;gap:2px;flex:1}.pledge-label{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.pledge-value{font-size:14px;font-weight:600;color:var(--color-text)}.pledge-note{margin:0;font-size:12px;color:var(--color-text-muted);font-style:italic}.advisory-view{margin-top:16px;padding:12px;background:var(--color-info-bg);border:1px solid var(--color-info-border);border-radius:6px}.advisory-view h4{margin:0 0 10px;font-size:13px;color:var(--color-text);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.advisory-item{padding:8px 0;border-top:1px solid var(--color-border)}.advisory-item:first-of-type{border-top:none}.advisory-item h5{margin:0 0 4px;font-size:13px;color:var(--color-text);font-weight:600}.advisory-item p{margin:0;font-size:13px;color:var(--color-text-muted);line-height:1.5}.advisory-detail{margin-top:4px!important;font-size:12px!important}.advisory-empty{margin:0;font-size:12px;color:var(--color-text-muted);font-style:italic}.policy-pack-badge{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:4px;font-size:12px;margin-bottom:10px;flex-wrap:wrap}.policy-pack-badge--active{background:var(--color-info-bg);border:1px solid var(--color-info-border);color:var(--color-text)}.policy-pack-badge--outdated{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-text)}.policy-pack-badge-label{font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:10px}.policy-pack-badge-status--current{color:var(--color-ok);font-weight:600;text-transform:uppercase;font-size:10px}.policy-pack-badge-status--outdated{color:var(--color-blocker);font-weight:600;text-transform:uppercase;font-size:10px}.policy-pack-badge-detail{font-size:11px;color:var(--color-text-muted)}.policy-pack-badge-recompute{margin-left:auto;font-size:11px;padding:3px 8px;border:1px solid var(--color-border);background:var(--color-bg);border-radius:3px;cursor:pointer}.policy-pack-badge-recompute:hover{background:var(--color-bg-muted)}.template-badge{display:inline-block;background:var(--color-primary-subtle);color:var(--color-primary);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:3px 8px;border-radius:3px;margin:0 0 8px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.modal{background:var(--color-bg);border-radius:8px;padding:20px 24px;max-width:560px;width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 8px 24px #00000026}.modal-wide{max-width:900px}.modal-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.modal form label{display:block;margin:8px 0;font-size:13px;color:var(--color-text-muted)}.modal form input[type=text],.modal form input[type=email],.modal form select,.modal form textarea{display:block;width:100%;margin-top:4px;padding:8px 10px;border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:14px;background:var(--color-bg);color:var(--color-text)}.modal-actions{display:flex;gap:8px;margin-top:12px;justify-content:flex-end}.error-message{color:var(--color-blocker);font-size:13px;margin:8px 0}.primary-btn{background:var(--color-primary);color:var(--color-white);border:none;padding:8px 14px;border-radius:4px;cursor:pointer;min-height:44px;font-size:14px;font-weight:600}.primary-btn:hover{background:var(--color-primary-hover)}.primary-btn-small{background:var(--color-primary);color:var(--color-white);border:none;padding:4px 10px;border-radius:4px;cursor:pointer;min-height:32px;font-size:12px;font-weight:600}.danger-btn{background:var(--color-bg);color:var(--color-blocker);border:1px solid var(--color-blocker);padding:4px 10px;border-radius:4px;cursor:pointer;min-height:32px;font-size:12px}.danger-btn:hover{background:var(--color-blocker-bg)}.sidebar-actions-row{display:flex;justify-content:space-between;align-items:center;margin:8px 0;gap:8px;flex-wrap:wrap}.status-filter-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.status-chip{background:var(--color-bg-muted);border:1px solid transparent;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600;cursor:pointer;min-height:28px;text-transform:capitalize;color:var(--color-text-muted);transition:background .12s,border-color .12s,color .12s}.status-chip:hover{background:var(--color-bg);border-color:var(--color-border)}.status-chip-active{background:var(--color-bg);border-color:var(--color-accent);color:var(--color-accent)}.status-chip-active.status-chip-all{border-color:var(--color-accent)}.status-chip-active.status-chip-prospect{border-color:var(--color-info);color:var(--color-info)}.status-chip-active.status-chip-active{border-color:var(--color-ok);color:var(--color-ok)}.status-chip-active.status-chip-closed{border-color:var(--color-text-muted);color:var(--color-text-muted)}.panel-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:8px}.panel-header-row h3{margin:0;font-size:16px;color:var(--color-text)}.panel-add-btn{background:var(--color-accent);color:var(--color-white);border:none;padding:4px 12px;border-radius:4px;cursor:pointer;min-height:28px;font-size:12px;font-weight:600;white-space:nowrap}.panel-add-btn:hover{background:var(--color-accent-hover)}.panel-empty{margin:0;font-size:13px;color:var(--color-text-muted)}.clients-list{list-style:none;margin:0;padding:0}.client-row{padding:10px 0;border-bottom:1px solid var(--color-border)}.client-row:last-child{border-bottom:none;padding-bottom:0}.client-row-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:8px}.client-name{font-weight:600;font-size:14px}.client-row-meta{display:flex;gap:8px;align-items:center;margin:4px 0;font-size:12px;color:var(--color-text-muted)}.client-tags{display:flex;gap:4px;flex-wrap:wrap}.tag{background:var(--color-bg-muted);padding:1px 6px;border-radius:3px;font-size:10px;color:var(--color-text-muted)}.client-inline-edit{display:flex;flex-direction:column;gap:6px}.client-inline-edit input,.client-inline-edit select{padding:6px 8px;border:1px solid var(--color-border);border-radius:4px;font-size:13px}.client-detail-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.client-detail-header h2{margin:0}.client-meta{display:grid;grid-template-columns:100px 1fr;gap:4px 12px;margin:12px 0}.client-meta dt{color:var(--color-text-muted);font-size:13px}.client-meta dd{margin:0;font-size:13px}.client-plans-list{list-style:none;margin:0;padding:0}.client-plan-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--color-border);font-size:13px}.plan-kind-badge{display:inline-block;background:var(--color-primary-subtle);color:var(--color-primary);padding:1px 6px;border-radius:3px;font-size:10px;font-weight:600;margin-right:6px;text-transform:uppercase}.notes-panel,.version-history-panel,.reminders-panel{margin-top:12px}.panel-subtitle{font-size:12px;color:var(--color-text-muted);margin:4px 0 8px}.panel-footer-meta{font-size:11px;color:var(--color-text-subtle);margin-top:8px}.note-add-row,.version-add-row{display:flex;flex-direction:column;gap:6px;margin:8px 0}.note-add-row textarea,.version-add-row input{padding:6px 8px;border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:13px;background:var(--color-bg);color:var(--color-text)}.notes-list,.version-list,.reminders-list,.share-links-list,.client-plans-list{list-style:none;margin:0;padding:0}.note-row,.version-row,.reminder-row,.share-link-row{padding:8px 0;border-bottom:1px solid var(--color-border);font-size:13px}.note-body{margin:0 0 4px;white-space:pre-wrap}.note-meta,.version-meta,.share-link-meta{font-size:11px;color:var(--color-text-muted);margin:2px 0}.version-number{display:inline-block;background:var(--color-primary-subtle);color:var(--color-primary);padding:1px 6px;border-radius:3px;font-size:11px;font-weight:700;margin-right:6px;font-family:var(--font-mono)}.version-note{margin:4px 0;font-style:italic}.version-select-row{display:flex;gap:12px;font-size:12px}.reminders-banner{background:var(--color-advisory-bg);border:1px solid var(--color-advisory);color:var(--color-advisory);padding:8px 12px;border-radius:6px;margin:12px 24px;font-size:13px}.reminder-row.reminder-overdue{background:var(--color-blocker-bg);border-left:3px solid var(--color-blocker);padding-left:8px}.reminder-row.reminder-soon{background:var(--color-advisory-bg);border-left:3px solid var(--color-advisory);padding-left:8px}.reminder-header{display:flex;justify-content:space-between;align-items:center}.reminder-date{font-size:11px;color:var(--color-text-muted);font-family:var(--font-mono)}.reminder-message{margin:4px 0;font-size:12px}.severity-pill{display:inline-block;padding:1px 6px;border-radius:3px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:12px 0}.template-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;padding:12px;display:flex;flex-direction:column}.template-card h3{margin:4px 0 6px;font-size:14px}.template-card p{font-size:12px;color:var(--color-text-muted);flex:1;margin:0 0 8px}.template-card header{margin-bottom:4px}.diff-content{display:flex;flex-direction:column;gap:16px}.diff-table{width:100%;border-collapse:collapse;font-size:12px}.diff-table th,.diff-table td{padding:4px 8px;border-bottom:1px solid var(--color-border);text-align:left}.diff-path{font-family:var(--font-mono);color:var(--color-text-muted)}.diff-before{color:var(--color-text-subtle);text-decoration:line-through}.diff-after{color:var(--color-text);font-weight:600}.share-latest{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:4px;padding:8px 12px;margin:12px 0}.share-url{display:block;font-family:var(--font-mono);font-size:11px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:3px;padding:6px 8px;margin:4px 0;word-break:break-all;-webkit-user-select:all;user-select:all}.share-link-meta{display:block;margin:2px 0}.shared-view{max-width:896px;margin:0 auto;padding:16px 24px}.shared-view-banner{background:var(--color-info-bg);border:1px solid var(--color-info);color:var(--color-info);padding:8px 12px;border-radius:4px;margin-bottom:16px;font-size:13px}.shared-view-error{max-width:560px;margin:80px auto;text-align:center;padding:24px}@media (max-width: 600px){.client-meta{grid-template-columns:1fr}.modal{max-width:100%;max-height:100vh;border-radius:0}}
