:root{--ink: #111827;--muted: #7b8494;--soft: #f7f3e8;--paper: #ffffff;--line: #e4e8f0;--blue: #3056d3;--navy: #13233a;--orange: #f59a09;--orange-dark: #e18400;--shadow: 0 18px 45px rgba(19, 35, 58, .08);--font-h1: 28px;--font-h2: 22px;--font-h3: 17px;--font-body: 16px;--font-label: 13px;--weight-display: 700;--weight-heading: 700;--weight-subhead: 600;--weight-control: 500;--weight-body: 400}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Noto Sans SC,Microsoft YaHei,PingFang SC,sans-serif;background:var(--soft)}body[data-screen=home]{background:linear-gradient(180deg,#fff5e6,#ffe9d4);min-height:100vh}body[data-screen=report],body[data-screen=generating]{background:#fff}button,textarea{font:inherit}button{border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);cursor:pointer;padding:10px 16px;font-size:var(--font-body);font-weight:var(--weight-body);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}button:hover:not(:disabled){transform:translateY(-1px);border-color:#cbd5e1;box-shadow:0 10px 24px #13233a14}button:disabled{cursor:not-allowed;opacity:.45}.primary{border-color:var(--orange);background:linear-gradient(180deg,#ffac1b,var(--orange));color:#fff;font-weight:var(--weight-control);box-shadow:0 14px 28px #f59a0947}.block{width:100%}.site-header{position:sticky;top:0;z-index:90;display:flex;justify-content:space-between;align-items:center;width:min(1280px,calc(100% - 64px));margin:0 auto;padding:28px 0 18px;background:linear-gradient(180deg,#f7f3e8eb,#f7f3e8b8 72%,#f7f3e800);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}body[data-screen=report] .site-header,body[data-screen=generating] .site-header{background:#ffffffe6}.brand,.link-button{border:0;background:transparent;box-shadow:none;padding:0}.brand{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:#172033}.logo-icon{width:20px;height:20px;color:#ff6f34;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.site-header nav{display:flex;gap:12px;align-items:center;color:#384152;font-size:15px}.link-button{color:#ef5b35;font-weight:600;font-size:15px}.home{width:min(1280px,calc(100% - 64px));margin:0 auto;padding:12px 0 88px}.hero{position:relative;text-align:center;padding:52px 0 24px;overflow:hidden}.hero-copy{position:relative;z-index:3;max-width:920px;margin:0 auto}.hero-orbits{position:absolute;inset:8px 0 auto;height:560px;pointer-events:none;z-index:0}.hero-orbit{position:absolute;top:0;width:420px;height:520px;border:2px solid rgba(255,255,255,.5);border-radius:999px;filter:drop-shadow(0 10px 40px rgba(243,187,84,.08))}.orbit-left{left:16%;transform:rotate(10deg)}.orbit-right{right:16%;transform:rotate(-10deg)}.hero-node{position:absolute;width:18px;height:18px;border-radius:50%;background:#ffffff94;box-shadow:0 0 0 6px #ffffff2e}.node-left-top{top:120px;left:34%}.node-left-mid{top:320px;left:30%}.node-right-mid{top:168px;right:29%}.node-right-bottom{top:334px;right:24%}.hero h1{display:grid;position:relative;z-index:3;gap:10px;margin:0;font-size:clamp(54px,6.8vw,88px);line-height:.92;letter-spacing:.04em;font-weight:800;color:#162033}.hero-line{display:block}.hero h1 .accent{color:var(--orange);font-weight:700}.hero-floats{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.floating-badge{position:absolute;display:grid;place-items:center;min-width:88px;width:92px;height:92px;padding:18px;border:1px solid rgba(235,238,243,.95);border-radius:28px;background:#ffffffeb;box-shadow:0 18px 44px #e4bd6d33,0 5px 12px #13233a0d;color:#13233a;animation:floaty 8s ease-in-out infinite}.floating-badge b{font-size:34px;line-height:1}.floating-badge i{display:none;color:#334155;font-size:13px;font-style:normal;font-weight:var(--weight-control)}.float-a{top:38px;left:23%}.float-b{top:52px;right:24%;animation-delay:-1.4s}.float-c{top:188px;left:14%;animation-delay:-2.2s}.float-d{top:184px;right:12%;animation-delay:-3s}.float-e{min-width:92px;width:92px;height:92px;top:352px;left:23%;opacity:.96;animation-delay:-4.1s}.float-f{min-width:92px;width:92px;height:92px;top:344px;right:24%;opacity:.96;animation-delay:-5.2s}@keyframes floaty{0%,to{translate:0 0;rotate:-1deg}50%{translate:0 -12px;rotate:1deg}}.hero-lead{position:relative;z-index:3;margin:28px auto 0;color:#4f63ff;font-size:17px;font-weight:500}.hero-sub{position:relative;z-index:3;margin:16px auto 0;color:#99a1ad;font-size:16px}.cta{position:relative;z-index:3;display:inline-flex;align-items:center;justify-content:center;gap:10px;margin-top:34px;min-width:410px;min-height:84px;padding:0 34px;border:0;border-radius:24px;font-size:18px;font-weight:700;box-shadow:0 22px 48px #f59a0938}.question-section{margin-top:0;text-align:center}.section-divider{display:inline-grid;grid-template-columns:62px 12px 62px;align-items:center;gap:10px;margin-bottom:18px}.section-divider>span{height:2px;border-radius:999px;background:linear-gradient(90deg,#f59a0900,#f59a09d1,#f59a0900)}.section-divider>.divider-dot{width:8px;height:8px;justify-self:center;border-radius:50%;background:#f2b544;box-shadow:0 0 0 5px #f2b5441f}.question-section h2{margin:0;color:#172033;font-size:24px;font-weight:700}.question-section>p{margin:10px 0 30px;color:#a1a9b7;font-size:15px}.question-grid{width:min(930px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.question-card{display:flex;align-items:center;gap:18px;min-height:116px;padding:22px 24px;border:1px solid rgba(232,236,241,.92);border-radius:24px;background:#ffffffeb;box-shadow:0 16px 38px #e0ba6d24,0 4px 10px #13233a0a;text-align:left}.question-icon-wrap{display:grid;place-items:center;width:56px;height:56px;flex:0 0 56px;border-radius:50%;background:linear-gradient(180deg,#fffaf4,#fff1df);box-shadow:inset 0 1px #fffffff2,0 10px 24px #e4bd6d29}.question-card svg{width:28px;height:28px;fill:url(#none);color:var(--orange)}.question-card:nth-child(1) svg{fill:#f04b8c}.question-card:nth-child(2) svg{fill:#55a7ff}.question-card:nth-child(3) svg{fill:#ff4f8b}.question-card:nth-child(4) svg{fill:#f3bc2c}.question-card:nth-child(5) svg{fill:#62d86d}.question-card:nth-child(6) svg{fill:#49c778}.question-card-copy{flex:1}.question-card h3{margin:0;font-size:18px;font-weight:700}.question-card i{display:block;width:30px;height:3px;margin:8px 0 10px;border-radius:99px;background:var(--orange)}.question-card p{margin:0;color:#9aa3b1;line-height:1.5;font-size:14px}.center-page,.form-layout,.report-page{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:36px 0 72px}.center-page{display:grid;place-items:center;min-height:76vh}.login-card,.generating-card,.field,.summary-panel,.report-cover,.report-section{border:1px solid var(--line);background:#fffffff5;box-shadow:var(--shadow)}.login-card,.generating-card{width:min(980px,100%);padding:28px;border-radius:18px}.generating-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:stretch}.generate-left{display:flex;min-height:430px;flex-direction:column;justify-content:center;padding:8px 8px 8px 4px}.overline{color:var(--blue);font-size:var(--font-label);font-weight:var(--weight-control);letter-spacing:.12em}.login-card h1,.generating-card h1{margin:12px 0;color:var(--navy)}.generating-card p,.login-card p{color:var(--muted);line-height:1.8}.actions{display:flex;gap:12px;margin-top:28px}.generation-error{display:grid;gap:10px;margin-top:22px;padding:18px;border:1px solid #f0b9a8;background:#fff7f3;color:var(--ink, #1f2937);font-size:var(--font-body);font-weight:var(--weight-body);font-family:Noto Sans SC,Microsoft YaHei,PingFang SC,sans-serif}.generation-error b{font-size:var(--font-h3);font-weight:var(--weight-subhead);color:inherit}.generation-error span{color:var(--muted, #7b8494);line-height:1.7;font-size:var(--font-body);font-weight:var(--weight-body)}.generate-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.section-title{margin:0 0 18px}.section-title h1,.section-title h2{margin:8px 0;color:var(--navy);font-size:var(--font-h2);line-height:1.28;font-weight:var(--weight-subhead)}.section-title>span{display:inline-flex;align-items:center;gap:8px;color:#111827;font-size:var(--font-body);font-weight:var(--weight-body)}.section-icon{width:18px;height:18px;fill:var(--orange)}.section-title p,.field p{color:var(--muted);line-height:1.7;font-size:var(--font-body);font-weight:var(--weight-body)}.optional-title{margin-top:34px}.field{margin-bottom:14px;padding:22px;border-radius:18px}.field h3{margin:0 0 6px;color:#172033;font-size:var(--font-h3);line-height:1.4;font-weight:var(--weight-heading)}.field-required{margin-left:8px;padding:2px 8px;border-radius:4px;background:#c2410c;color:#fff;font-size:var(--font-label);font-weight:var(--weight-heading);vertical-align:middle}.field-hint.warn{margin:0 0 10px;padding:8px 12px;border-radius:8px;background:#fff7ed;border:1px solid #fdba74;color:#9a3412;font-size:var(--font-label);font-weight:var(--weight-subhead)}textarea.warn{border-color:#c2410c!important;background:#fff7f0!important;box-shadow:0 0 0 3px #c2410c14}.field p{margin:0 0 16px}.chips{display:flex;flex-wrap:wrap;gap:10px}.chips button{display:inline-flex;flex-direction:column;align-items:flex-start;gap:3px;min-height:42px;border-radius:12px;font-weight:var(--weight-body)}.chips button b{font-weight:var(--weight-body)}.chips button.selected{border-color:#8cb2ff;background:#f3f7ff;color:#174a9d;font-weight:var(--weight-body)}.chips button.selected b{font-weight:var(--weight-body)}.chips small{color:#7d8796}textarea{width:100%;min-height:130px;resize:vertical;border:1px solid var(--line);border-radius:14px;padding:14px;color:var(--ink);outline:none}.summary-panel{position:sticky;top:18px;padding:24px;border-radius:18px;background:linear-gradient(180deg,#f5f8ff,#fff 50%)}.summary-panel h2{margin:8px 0 16px;font-size:var(--font-h2);line-height:1.35;font-weight:var(--weight-heading);color:var(--navy)}.summary-grid{display:grid;gap:10px}.summary-grid.compact,.summary-grid.optional{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-grid p{display:grid;gap:5px;margin:0;padding:10px 12px;border:1px solid #e6ebf4;border-left:3px solid #3056d3;border-radius:12px;background:#fff}.summary-grid.compact p:nth-child(3n+2){border-left-color:#f59a09}.summary-grid.compact p:nth-child(3n+3){border-left-color:#1f9d57}.summary-grid b{color:#3056d3;font-size:var(--font-label);font-weight:var(--weight-control);letter-spacing:.04em}.summary-grid.compact p:nth-child(3n+2) b{color:#f59a09}.summary-grid.compact p:nth-child(3n+3) b{color:#1f9d57}.summary-grid span{color:#172033;font-size:var(--font-body);line-height:1.5}.ai-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ai-summary-grid p{display:grid;gap:8px;margin:0;padding:16px;border:1px solid #dbe7f7;background:#f7fbff}.ai-summary-grid b{color:#1f5fbf;font-size:var(--font-label);font-weight:var(--weight-control)}.ai-summary-grid span{color:#172033;font-size:var(--font-body);line-height:1.55}.error{margin:12px 0 0;padding:10px 14px;border:1px solid #fdba74;border-left:4px solid #f59a09;border-radius:10px;background:#fff7ed;color:#9a3412;font-size:var(--font-label);font-weight:var(--weight-control);line-height:1.7}.progress{height:14px;margin:24px 0 10px;overflow:hidden;border-radius:99px;background:#e8edf5}.progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--orange));transition:width .3s ease}.progress-meta{display:flex;justify-content:space-between;gap:16px;align-items:center;color:var(--muted);font-size:var(--font-label)}.progress-meta strong{color:var(--blue);font-size:var(--font-h2)}.waiting-note{display:grid;gap:6px;margin-top:22px;padding:16px;border:1px solid #dfe7f3;background:#f8fbff;color:#435066;line-height:1.7}.analysis-feed{display:grid;gap:10px;margin:0;padding:0;list-style:none}.analysis-feed li{display:grid;gap:6px;padding:15px 16px;border:1px solid #e5eaf2;background:#f6f7fb;color:#9aa3b1;position:relative;transition:background-color .25s ease,border-color .25s ease,color .25s ease}.analysis-feed li:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:transparent;transition:background-color .25s ease}.analysis-feed li.done{color:#15532f;border-color:#b6e3c8;background:#eafaf0}.analysis-feed li.done:before{background:#1f9d57}.analysis-feed li.active{color:#6b3d00;border-color:#f5c98a;background:#fff5e3}.analysis-feed li.active:before{background:#f59a09}.analysis-feed li.active{box-shadow:0 6px 16px #f59a092e}.analysis-feed li.done b:after{content:"  ✓";color:#1f9d57;font-weight:var(--weight-display)}.analysis-feed li.active b:after{content:"  ●";color:#f59a09;font-weight:var(--weight-display)}.analysis-feed b{font-size:var(--font-body);font-weight:var(--weight-control)}.analysis-feed span{line-height:1.6}.report-page{background:linear-gradient(rgba(48,86,211,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(48,86,211,.024) 1px,transparent 1px),#fff;background-size:34px 34px;padding-bottom:26px;font-size:var(--font-body);line-height:1.75}.report-actions{display:flex;justify-content:flex-end;gap:12px;margin-bottom:16px}.report-actions button{min-width:112px;height:44px;display:inline-flex;align-items:center;justify-content:center}.report-cover{padding:30px 34px;border-radius:0;box-shadow:none}.report-cover h1{margin:12px 0 14px;color:var(--navy);font-size:var(--font-h1);line-height:1.25;font-weight:var(--weight-heading)}.report-cover p,.report-section>p{color:var(--muted);line-height:1.8}.report-section{margin-top:16px;padding:24px 28px;border-radius:0;box-shadow:none}.report-section h2{margin:0 0 14px;color:var(--navy);font-size:var(--font-h2);line-height:1.35;font-weight:var(--weight-heading)}.report-section h3,.spot-card h3,.strategy-card h3,.timeline h3,.chart-card h2{font-size:var(--font-h3);line-height:1.45;font-weight:var(--weight-heading)}.report-page p,.report-page li,.report-page td,.report-page summary,.report-page span{font-size:var(--font-body);font-weight:var(--weight-body)}.report-page .overline,.report-page .summary-grid b,.report-page th,.report-page .tags span{font-size:var(--font-body);font-weight:var(--weight-control)}.report-page .summary-grid span,.report-page .bar-row span,.report-page .bar-row strong{font-size:var(--font-body)}.note-box,.logic{margin-top:14px;padding:16px 18px;border-left:4px solid var(--blue);background:#f6f8fc;color:#334155;line-height:1.85;font-size:var(--font-body)}.note-box{display:grid;gap:8px}.spot-list{display:grid;gap:18px;margin-top:18px}.spot-card{border:1px solid #dfe5ef;background:#fff;padding:22px 24px 24px;margin:12px 0}.spot-card .spot-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid var(--line)}.spot-card .rank{color:var(--blue);font-weight:var(--weight-display);font-size:var(--font-body);letter-spacing:.05em}.spot-card .spot-title{margin:4px 0 0;font-size:var(--font-h3);color:var(--navy);line-height:1.45;font-weight:var(--weight-heading)}.spot-card .level{border:1px solid #bdd4f7;background:#f3f8ff;color:#174a93;padding:6px 10px;border-radius:4px;font-style:normal;font-weight:var(--weight-heading);font-size:var(--font-label);white-space:nowrap}.spot-card .addr{margin:9px 0 0;color:#445469;line-height:1.7;font-size:var(--font-body)}.spot-card .tags{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 14px}.spot-card .tags span{padding:5px 10px;border:1px solid #e1e7f0;border-radius:4px;color:#506078;background:#fbfcff;font-size:var(--font-label)}.spot-card .tags span:has(+span){margin-right:4px}.spot-card .why-wide{background:#fbfdff;border:1px solid #e2e8f0;padding:16px 18px;margin-bottom:14px}.spot-card .why-wide h4{margin:0 0 10px;color:#1b4f9b;font-size:var(--font-h3)}.spot-card .why-wide ul{margin:0;padding-left:20px;color:#3a4a62;line-height:1.8;font-size:var(--font-body)}.spot-card .why-wide li{margin:6px 0}.spot-card .spot-strategy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.spot-card .spot-strategy-grid section{background:#fbfdff;border:1px solid #e2e8f0;padding:16px 18px}.spot-card .spot-strategy-grid h4{margin:0 0 10px;color:#1b4f9b;font-size:var(--font-h3)}.spot-card .spot-strategy-grid p{margin:8px 0;color:#334155;line-height:1.8;font-size:14.5px}.spot-card .spot-strategy-grid p.muted{color:#6b7484}.spot-card .spot-strategy-grid p.risk{margin-top:12px;padding-top:10px;border-top:1px dashed #d8dee8;color:#7a4b10;font-size:14.5px}.spot-body p{margin:0 0 8px}.spot-body ul{margin:0;padding-left:18px}table{width:100%;border-collapse:collapse;background:#fff}th,td{border-bottom:1px solid #e5eaf2;padding:12px 14px;text-align:left;line-height:1.7;font-size:var(--font-body);color:#2c3a52}th{color:#13233a;background:#f3f6fb;font-size:var(--font-body);font-weight:var(--weight-heading)}.report-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}.chart-card{border:1px solid var(--line);background:#fff;padding:20px 22px}.chart-card h3{margin:0 0 12px;color:#13233a;font-size:var(--font-h3)}.bar-list{display:grid;gap:10px}.bar-row{display:grid;grid-template-columns:132px 1fr 42px;gap:12px;align-items:center;color:#475569}.bar-row i{height:14px;overflow:hidden;background:#edf2f7;display:block}.bar-row b{display:block;height:100%;background:var(--blue)}.strategy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.strategy-grid .strategy-card:last-child{grid-column:1 / -1}.strategy-card{border:1px solid var(--line);background:#fff;padding:18px 20px}.strategy-card h3{margin:0 0 12px;padding-left:10px;border-left:4px solid var(--orange);color:#13233a;font-size:var(--font-h3);line-height:1.3}.strategy-card ul{margin:0;padding-left:20px;color:#3a4a62;line-height:1.85;font-size:var(--font-body)}.strategy-card li{margin:8px 0}.strategy-sections{margin-top:12px;display:grid;gap:12px}.strategy-sections section{border:1px solid #e2e8f0;background:#fbfdff;padding:12px 16px}.strategy-sections h4{margin:0 0 6px;color:#13233a;font-size:var(--font-body);font-weight:var(--weight-heading)}.strategy-sections p{margin:0;color:#2c3850;line-height:1.8;font-size:var(--font-body)}.ai-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.ai-cards article{background:#fbfdff;border:1px solid #e2e8f0;border-top:3px solid var(--blue);padding:18px 22px}.ai-cards h3{margin:0 0 10px;color:#13233a;font-size:var(--font-h3);font-weight:var(--weight-display)}.ai-cards p{margin:0;color:#2c3850;line-height:1.85;font-size:var(--font-body)}.ai-fallback-hint{display:inline-block;margin:8px 0 0;padding:4px 10px;border:1px solid #f0d8a5;background:#fff7e2;color:#7a4b10;border-radius:4px;font-style:normal;font-size:var(--font-label)}.summary-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.summary-pills .pill{border:1px solid #d7e5fb;background:#f7fbff;color:#24415f;padding:6px 11px;border-radius:6px;font-size:var(--font-body)}.summary-pills.optional-pills{margin-top:10px;padding-top:10px;border-top:1px dashed #d8e3f0}.summary-pills .pill.optional{border:1px solid #e7e3cf;background:#fdf8e7;color:#5b4a16}.summary-pills .pill.optional.notes{border-style:dashed;background:#fff7ef;color:#6a4a1b;max-width:100%;white-space:pre-wrap;line-height:1.6}.timeline-table-wrap{border:1px solid var(--line);background:#fff;overflow-x:auto}.timeline-table{width:100%;border-collapse:collapse;font-size:var(--font-body)}.timeline-table th,.timeline-table td{border-bottom:1px solid #edf0f5;padding:12px 14px;text-align:left;vertical-align:top;line-height:1.8;color:#2c3a52}.timeline-table th{background:#f3f6fb;color:#13233a;font-weight:var(--weight-heading)}.timeline-table th:first-child{width:88px;white-space:nowrap}.timeline-table td:first-child{width:88px;white-space:nowrap;font-weight:var(--weight-control);color:var(--blue)}.timeline-table th:nth-child(2){width:200px}.chart-explain{margin:14px 0 0;padding:10px 14px;border-left:3px solid var(--blue);background:#f7faff;color:#41506a;font-size:var(--font-body);line-height:1.8}.faq-block{display:grid;grid-template-columns:1fr;gap:12px}@media(max-width:720px){.faq-block{grid-template-columns:1fr}}.faq-block details{margin:0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;font-family:inherit}.faq-block summary{cursor:pointer;color:#13233a;font-weight:var(--weight-heading);font-size:var(--font-h3);padding:0;list-style:none;font-family:inherit;line-height:1.45}.faq-block summary::marker,.faq-block summary::-webkit-details-marker{display:none}.faq-block details[open] summary{color:#1b4f9b}.faq-block details p{margin:10px 0 0;color:#41506a;line-height:1.7;font-size:var(--font-body);font-family:inherit;font-weight:var(--weight-body)}.boundary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.boundary-card{border:1px solid var(--line);background:#fff;padding:16px 20px;border-radius:14px}.boundary-card h3{margin:0 0 10px;color:var(--navy);font-size:var(--font-h3);padding-left:9px;border-left:4px solid var(--blue);font-family:inherit;line-height:1.45;font-weight:var(--weight-heading)}.boundary-card p{margin:0;color:#3f4d62;line-height:1.75;font-size:var(--font-body);font-family:inherit;font-weight:var(--weight-body)}.feedback-fab{position:fixed;right:28px;bottom:28px;z-index:100000;display:inline-flex;align-items:center;gap:6px;background:#1f5fbf;color:#fff;border:3px solid #fff;outline:3px solid #1f5fbf;border-radius:999px;padding:12px 20px 12px 16px;font-size:var(--font-body);font-weight:var(--weight-heading);cursor:pointer;box-shadow:0 8px 24px #1f5fbf73;transition:transform .15s ease,box-shadow .15s ease;font-family:inherit;animation:feedback-fab-pulse 2.4s ease-in-out infinite}@keyframes feedback-fab-pulse{0%,to{box-shadow:0 8px 24px #1f5fbf73}50%{box-shadow:0 12px 32px #1f5fbfb3}}.feedback-fab:hover{background:#174a99;transform:translateY(-1px);box-shadow:0 8px 22px #1f5fbf66}.feedback-fab svg{display:block}.feedback-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#141c2d8c;z-index:9100;display:flex;align-items:center;justify-content:center;padding:20px}.feedback-modal{background:#fff;width:min(520px,100%);max-height:90vh;overflow-y:auto;border-radius:10px;box-shadow:0 24px 64px #00000040;padding:22px 24px}.feedback-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.feedback-modal-head h3{margin:0;font-size:var(--font-h2);color:#13233a}.feedback-close{background:none;border:none;font-size:26px;line-height:1;color:#6b7c93;cursor:pointer;padding:0 6px}.feedback-close:hover{color:#13233a}.feedback-modal-intro{margin:0 0 14px;color:#41506a;font-size:var(--font-body);line-height:1.7}.feedback-form{display:grid;gap:18px}.feedback-label{display:flex;flex-direction:column;gap:5px;font-size:13.5px;color:#2c3a52;min-width:0}.feedback-label-text{font-weight:var(--weight-heading);color:#2c3a52}.feedback-input{border:1px solid #d6dde6;border-radius:5px;padding:8px 11px;font-size:var(--font-body);font-family:inherit;color:#2c3a52;background:#fff}.feedback-input:focus{border-color:#1f5fbf;outline:none;box-shadow:0 0 0 3px #1f5fbf26}.feedback-textarea{resize:vertical;min-height:72px;max-height:140px;line-height:1.7;overflow-y:auto}.feedback-counter{font-size:11.5px;color:#6b7c93;text-align:right}.feedback-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.feedback-actions .primary{background:#1f5fbf;color:#fff;border:1px solid #1f5fbf;padding:8px 18px;font-size:var(--font-body);font-weight:var(--weight-heading);border-radius:5px;cursor:pointer}.feedback-actions .primary:disabled{background:#a8b3c0;border-color:#a8b3c0;cursor:not-allowed}.feedback-history-hint{color:#6b7c93;font-size:12.5px}.feedback-result{margin:0;padding:8px 12px;background:#ecf6e3;border:1px solid #b7d99c;border-radius:5px;color:#3a5f1c;font-size:13.5px}.feedback-history{margin-top:16px;border-top:1px solid #e5eaf2;padding-top:12px}.feedback-history summary{cursor:pointer;color:#2c3a52;font-weight:var(--weight-heading);font-size:var(--font-body);list-style:none}.feedback-history summary::-webkit-details-marker{display:none}.feedback-history ul{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:8px;max-height:220px;overflow-y:auto}.feedback-history li{background:#f7fbff;border:1px solid #d7e5fb;border-radius:4px;padding:8px 12px}.feedback-history-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:var(--font-label);color:#2c3a52}.feedback-history-head strong{color:#1f5fbf}.feedback-time{color:#6b7c93;font-size:11.5px;margin-left:auto}.feedback-history button.link{background:none;border:none;color:#d33;font-size:var(--font-label);cursor:pointer;padding:0;text-decoration:underline}.feedback-history p{margin:4px 0 0;color:#41506a;line-height:1.6;font-size:var(--font-label)}@media print{.feedback-fab,.feedback-overlay{display:none!important}}@media(max-width:600px){.feedback-fab{right:16px;bottom:16px;padding:9px 14px 9px 11px}.feedback-fab span{display:none}}.timeline h3,.timeline p{margin:0}.timeline h3{grid-column:span 2}.timeline p{color:#41506a;line-height:1.7}details{margin:10px 0;border:1px solid #e5eaf2;background:#fff;padding:16px 18px}summary{cursor:pointer;color:var(--navy);font-weight:var(--weight-control)}details p{margin-bottom:0;color:#41506a;line-height:1.8}@media(max-width:900px){.site-header,.home,.center-page,.form-layout,.report-page{width:min(100% - 28px,1180px)}.question-grid,.form-layout,.generating-card,.summary-grid.compact,.summary-grid.optional,.spot-body,.report-charts,.strategy-grid,.boundary-grid,.ai-grid,.spot-card .spot-strategy-grid{grid-template-columns:1fr}.strategy-grid .strategy-card:last-child,.spot-body div:first-child,.timeline h3{grid-column:auto}.timeline article{grid-template-columns:1fr}.summary-panel{position:static}.hero h1{font-size:42px}.hero h1 .accent{transform:none}.hero-floats{display:none}.cta{min-width:0;width:100%}}@media print{body,.report-page{background:#fff}.site-header,.report-actions{display:none}.report-page{width:100%;padding:0 0 8px}.report-section,.report-cover{break-inside:auto;box-shadow:none;page-break-inside:auto;padding-top:14px;padding-bottom:14px}.spot-card,.strategy-card,.chart-card,details{break-inside:auto;page-break-inside:auto}.faq-block details>p{display:block!important}.faq-block summary{cursor:default}tr,.summary-grid p,.boundary-card,.boundary-card p,.ai-cards{break-inside:avoid}.bar-row i,.bar-row b,.bar-track,.bar-track b{-webkit-print-color-adjust:exact;print-color-adjust:exact}.bar-row i,.bar-track{background:#edf2f7!important}.bar-row b,.bar-track b{background:var(--blue)!important}.chart-card{break-inside:avoid;page-break-inside:avoid}}.account-actions{display:inline-flex;align-items:center;gap:8px;margin:0 0 8px;flex-wrap:wrap}.account-actions.compact{margin:4px 0 0;gap:6px}.account-actions.compact .ghost{padding:4px 10px;font-size:var(--font-label);border-radius:6px;height:26px}.account-actions .ghost{background:transparent;color:var(--ink, #1f2937);border:1px solid #cbd5e1;padding:6px 14px;font-size:var(--font-label);font-weight:var(--weight-control);border-radius:8px;cursor:pointer;transition:all .15s ease}.account-actions .ghost:hover{background:#f3f4f6;border-color:#94a3b8}.account-actions .small{height:32px;font-size:var(--font-label)}.report-actions .account-actions{margin:0}.generate-left .account-actions{margin:4px 0 14px}.user-menu{position:relative;z-index:9999;display:inline-flex;align-items:center}.user-menu-trigger{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border:1px solid transparent;background:transparent;border-radius:999px;cursor:pointer;color:var(--ink, #1f2937);font-size:var(--font-label);font-weight:var(--weight-control);transition:background .15s ease,border-color .15s ease}.user-menu-trigger:hover,.user-menu-trigger[aria-expanded=true]{background:#fff7ed;border-color:#fed7aa}.user-avatar{flex-shrink:0;display:block}.user-menu-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1f2937}.user-menu-caret{transition:transform .18s ease}.user-menu-caret.open{transform:rotate(180deg)}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:168px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 12px 28px #0f172a1f;padding:6px;z-index:60;display:flex;flex-direction:column}.user-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:0;background:transparent;border-radius:6px;cursor:pointer;font-size:var(--font-label);color:#1f2937;text-align:left;transition:background .12s ease}.user-menu-item:hover{background:#f3f4f6}.user-menu-item.danger{color:#dc2626}.user-menu-item.danger:hover{background:#fee2e2}.user-menu-item svg{flex-shrink:0}.user-menu-item.credits{display:flex;align-items:center;gap:10px}.user-menu-item .credits-label{flex:1}.user-menu-item .credits-arrow{color:#64748b;font-size:var(--font-label)}.user-menu-divider{height:1px;background:#e5e7eb;margin:4px 6px}.header-nav{display:flex;align-items:center}
