.dawnin-tool {
    --bg-deep:#0a0e1a; --bg-card:#111827; --bg-elevated:#1a2236;
    --gold:#c9a96e; --gold-bright:#e0c088; --gold-dim:#8b7355;
    --text-warm:#e8e0d0; --text-muted:#9a9080; --text-dim:#6b6355;
    --line:rgba(201,169,110,0.15); --line-bright:rgba(201,169,110,0.35);
  }
.dawnin-astrology-tool { --astro-font-size:16px; --astro-font-color:#e8e0d0; --astro-sign-color:#5d9e9f; --astro-planet-color:#2875aa; --astro-line-color:#b8b8b8; --astro-wheel-bg:#fbfbfb; --astro-planet-size:22px; --astro-sign-size:18px; --astro-degree-size:11px; --astro-house-size:9px; --astro-degree-color:#344454; --astro-house-color:#536675; --astro-page-title-size:32px; --astro-page-title-color:#e8e0d0; --astro-page-sub-size:16px; --astro-page-sub-color:#8b7355; --astro-breadcrumb-size:13px; --astro-breadcrumb-color:#6b6355; --astro-section-title-size:17px; --astro-section-title-color:#e0c088; --astro-body-size:15px; --astro-body-color:#9a9080; --astro-label-size:14px; --astro-label-color:#9a9080; --astro-input-size:16px; --astro-input-color:#e8e0d0; --astro-input-bg:#1a2236; --astro-button-size:16px; --astro-primary-color:#0a0e1a; --astro-primary-bg:#c9a96e; --astro-secondary-color:#e0c088; --astro-secondary-bg:transparent; --astro-secondary-border:#8b7355; }
.dawnin-astrology-tool .chart-panel svg.astro-wheel,
.dawnin-astrology-tool svg.astro-wheel { width:100% !important; height:auto !important; min-width:280px !important; max-width:720px !important; aspect-ratio:1 / 1 !important; display:block !important; margin:0 auto !important; overflow:visible !important; }
.dawnin-astrology-tool .astro-wheel text { font-variant-numeric:tabular-nums; letter-spacing:0; }
.dawnin-astrology-tool .astro-wheel .wheel-label { paint-order:stroke fill; stroke:var(--astro-wheel-bg); stroke-width:2px; stroke-linejoin:round; }
.dawnin-astrology-tool .astro-wheel .wheel-cusp { stroke:#fff9dc; stroke-width:2px; }
.dawnin-astrology-tool .astro-wheel .wheel-glyph { font-family:'Noto Sans Symbols 2','Segoe UI Symbol','DejaVu Sans',sans-serif; }
.dawnin-astrology-tool .astro-wheel .wheel-planet { font-size:var(--astro-planet-size); font-weight:600; }
.dawnin-astrology-tool .astro-wheel .wheel-sign { font-size:var(--astro-sign-size); }
.dawnin-astrology-tool .astro-wheel .wheel-degree { font-family:Arial,'Noto Sans SC',sans-serif; font-size:var(--astro-degree-size); font-weight:600; }
.dawnin-astrology-tool .astro-wheel .wheel-house { font-size:var(--astro-house-size); font-weight:700; }
.dawnin-tool, .dawnin-tool * { margin:0; padding:0; box-sizing:border-box; }
.dawnin-tool { background:var(--bg-deep); color:var(--text-warm); font-family:'Noto Sans SC',sans-serif; font-weight:300; line-height:1.7; }
.dawnin-tool h1, .dawnin-tool h2, .dawnin-tool h3, .dawnin-tool h4 { font-family:'Noto Serif SC',serif; font-weight:600; }
.dawnin-tool nav { position:fixed; top:0; left:0; right:0; z-index:100; padding:16px 48px; display:flex; align-items:center; justify-content:space-between; background:rgba(10,14,26,0.92); backdrop-filter:blur(12px); border-bottom:1px solid var(--line); }
.dawnin-tool .logo { display:flex; align-items:baseline; gap:10px; }
.dawnin-tool .logo-cn { font-family:'Noto Serif SC',serif; font-size:1.3rem; font-weight:700; color:var(--gold-bright); letter-spacing:0.15em; }
.dawnin-tool .logo-en { font-family:'Cormorant Garamond',serif; font-size:0.95rem; color:var(--text-muted); letter-spacing:0.2em; text-transform:uppercase; }
.dawnin-tool .nav-links { display:flex; gap:28px; list-style:none; }
.dawnin-tool .nav-links a { color:var(--text-muted); text-decoration:none; font-size:0.85rem; letter-spacing:0.08em; transition:color .3s; }
.dawnin-tool .nav-links a:hover, .dawnin-tool .nav-links a.active { color:var(--gold-bright); }
.dawnin-tool .nav-cta { padding:7px 20px; border:1px solid var(--gold-dim); border-radius:2px; color:var(--gold-bright); text-decoration:none; font-size:0.8rem; letter-spacing:0.1em; transition:all .3s; }
.dawnin-tool .nav-cta:hover { background:var(--gold); color:var(--bg-deep); }
.dawnin-tool .page-wrap { max-width:1200px; margin:0 auto; padding:100px 48px 60px; }
.dawnin-tool .breadcrumb { font-size:var(--astro-breadcrumb-size); color:var(--astro-breadcrumb-color); margin-bottom:24px; }
.dawnin-tool .breadcrumb a { color:var(--astro-breadcrumb-color); text-decoration:none; }
.dawnin-tool .page-title { font-size:var(--astro-page-title-size); color:var(--astro-page-title-color); margin-bottom:8px; }
.dawnin-tool .page-sub { font-family:'Cormorant Garamond',serif; font-style:italic; color:var(--astro-page-sub-color); font-size:var(--astro-page-sub-size); letter-spacing:0.15em; margin-bottom:40px; }
.dawnin-tool .input-panel { background:var(--bg-card); border:1px solid var(--line); padding:32px; margin-bottom:40px; }
.dawnin-tool .input-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; align-items:end; }
.dawnin-tool .field label { display:block; font-size:var(--astro-label-size); color:var(--astro-label-color); margin-bottom:8px; letter-spacing:0.08em; }
.dawnin-tool .field input, .dawnin-tool .field select { width:100%; padding:10px 12px; background:var(--astro-input-bg); border:1px solid var(--line); color:var(--astro-input-color); font-size:var(--astro-input-size); font-family:inherit; outline:none; }
.dawnin-tool .field input:focus { border-color:var(--gold-dim); }
.dawnin-tool .btn-calc { padding:11px 32px; background:var(--astro-primary-bg); color:var(--astro-primary-color); border:none; font-size:var(--astro-button-size); letter-spacing:0.1em; cursor:pointer; font-family:inherit; white-space:nowrap; }
.dawnin-tool .btn-calc:hover { background:var(--gold-bright); }
.dawnin-tool .btn-settings { padding:10px 18px; min-height:43px; background:var(--astro-secondary-bg); color:var(--astro-secondary-color); border:1px solid var(--astro-secondary-border); font-size:var(--astro-button-size); cursor:pointer; font-family:inherit; white-space:nowrap; }
.dawnin-tool .btn-settings:hover { background:rgba(201,169,110,.08); }
.dawnin-tool .saved-chart-list { display:flex; flex-wrap:wrap; gap:8px; }
.dawnin-tool .saved-chart-item { padding:8px 12px; background:var(--bg-card); color:var(--text-warm); border:1px solid var(--line); cursor:pointer; font:inherit; }
.dawnin-tool .saved-chart-item small { color:var(--text-dim); margin-left:6px; }
.dawnin-tool .astro-aspect-legend { margin-top:16px; font-size:var(--astro-body-size); color:var(--astro-body-color); text-align:left; }
.dawnin-tool .astro-settings-backdrop { display:none; position:fixed; inset:0; z-index:1000; background:rgba(3,7,15,.72); }
.dawnin-tool .astro-settings-backdrop.open { display:block; }
.dawnin-tool .astro-settings-panel { position:absolute; top:0; right:0; width:min(520px,100%); height:100%; overflow:auto; background:#f7f8fa; color:#252a32; box-shadow:-12px 0 36px rgba(0,0,0,.35); }
.dawnin-tool .astro-settings-head { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:17px 20px; background:#fff; border-bottom:1px solid #e4e6ea; }
.dawnin-tool .astro-settings-head h2 { font-family:'Noto Sans SC',sans-serif; font-size:1rem; font-weight:500; }
.dawnin-tool .astro-settings-actions { display:flex; align-items:center; gap:8px; }
.dawnin-tool .astro-settings-actions button { border:0; background:none; color:#53606d; cursor:pointer; font-family:inherit; font-size:.86rem; padding:6px 8px; }
.dawnin-tool .astro-settings-actions .settings-close { font-size:1.35rem; line-height:1; }
.dawnin-tool .astro-setting-section { margin-top:10px; background:#fff; border-top:1px solid #e8eaed; border-bottom:1px solid #e8eaed; }
.dawnin-tool .astro-setting-section h3 { padding:14px 20px 8px; font-family:'Noto Sans SC',sans-serif; font-size:.82rem; font-weight:600; color:#3d444d; }
.dawnin-tool .astro-setting-row { min-height:48px; padding:8px 20px; display:grid; grid-template-columns:minmax(90px,1fr) auto auto; align-items:center; gap:12px; border-top:1px solid #eef0f2; }
.dawnin-tool .astro-setting-row:first-of-type { border-top:0; }
.dawnin-tool .astro-setting-label { font-size:.9rem; color:#343a42; }
.dawnin-tool .astro-setting-select { min-width:190px; border:0; background:transparent; color:#555e68; text-align:right; font:inherit; font-size:.88rem; outline:none; }
.dawnin-tool .astro-toggle { position:relative; width:45px; height:25px; display:inline-block; }
.dawnin-tool .astro-toggle input { position:absolute; opacity:0; pointer-events:none; }
.dawnin-tool .astro-toggle span { position:absolute; inset:0; background:#dfe3e7; border-radius:13px; transition:.2s; cursor:pointer; }
.dawnin-tool .astro-toggle span::after { content:''; position:absolute; width:21px; height:21px; top:2px; left:2px; border-radius:50%; background:#fff; box-shadow:0 1px 4px rgba(0,0,0,.22); transition:.2s; }
.dawnin-tool .astro-toggle input:checked + span { background:#42bed1; }
.dawnin-tool .astro-toggle input:checked + span::after { transform:translateX(20px); }
.dawnin-tool .astro-setting-number { width:64px; border:0; border-bottom:1px solid #cfd4da; background:transparent; color:#5c6570; text-align:right; font:inherit; font-size:.85rem; padding:4px 2px; }
.dawnin-tool .astro-setting-unit { font-size:.78rem; color:#9299a1; margin-left:-8px; }
body.astro-settings-open { overflow:hidden; }
.dawnin-tool .result-grid { display:grid; grid-template-columns:1fr 340px; gap:32px; align-items:start; }
.dawnin-tool .chart-main { min-width:0; }
.dawnin-tool .chart-panel { background:var(--bg-card); border:1px solid var(--line); padding:32px; text-align:center; }
.dawnin-astrology-tool .chart-panel { padding:24px 16px 18px; }
.dawnin-tool .chart-title { font-size:var(--astro-section-title-size); margin-bottom:20px; color:var(--astro-section-title-color); text-align:left; }
.dawnin-tool .side-panel { display:flex; flex-direction:column; gap:20px; }
.dawnin-tool .side-card { background:var(--bg-card); border:1px solid var(--line); padding:24px; }
.dawnin-tool .side-card h4 { font-size:var(--astro-section-title-size); color:var(--astro-section-title-color); margin-bottom:16px; letter-spacing:0.08em; }
.dawnin-tool .planet-row { display:flex; align-items:center; gap:10px; padding:7px 0; border-bottom:1px solid var(--line); font-size:var(--astro-body-size); color:var(--astro-body-color); }
.dawnin-tool .planet-row:last-child { border:none; }
.dawnin-tool .planet-sym { width:24px; text-align:center; color:var(--gold-bright); font-size:1rem; }
.dawnin-tool .planet-name { width:40px; color:var(--astro-body-color); }
.dawnin-tool .planet-pos { color:var(--astro-body-color); font-size:var(--astro-body-size); flex:1; }
.dawnin-tool .planet-house { color:var(--astro-body-color); font-size:var(--astro-body-size); }
.dawnin-tool .element-bar { display:flex; height:8px; border-radius:4px; overflow:hidden; margin:12px 0 8px; }
.dawnin-tool .element-seg { height:100%; }
.dawnin-tool .element-legend { display:flex; flex-wrap:wrap; gap:12px; font-size:var(--astro-body-size); color:var(--astro-body-color); }
.dawnin-tool .element-legend span::before { content:'●'; margin-right:4px; }
.dawnin-tool .astro-parameters { margin-top:36px; background:var(--bg-card); border:1px solid var(--line); padding:24px; text-align:left; }
.dawnin-tool .astro-parameters h3 { color:var(--astro-section-title-color); margin:0 0 16px; font-size:var(--astro-section-title-size); }
.dawnin-tool .astro-collapsible { border-top:1px solid var(--line); }
.dawnin-tool .astro-collapsible:last-child { border-bottom:1px solid var(--line); }
.dawnin-tool .astro-collapsible summary { display:flex; gap:12px; align-items:baseline; justify-content:space-between; cursor:pointer; list-style:none; padding:14px 4px; color:var(--text-warm); font-size:var(--astro-body-size); }
.dawnin-tool .astro-collapsible summary::-webkit-details-marker { display:none; }
.dawnin-tool .astro-collapsible summary::after { content:'＋'; color:var(--gold-bright); font-size:18px; line-height:1; order:2; }
.dawnin-tool .astro-collapsible[open] summary::after { content:'−'; }
.dawnin-tool .astro-collapsible summary span { color:var(--astro-body-color); font-size:calc(var(--astro-body-size) * .9); margin-left:auto; }
.dawnin-tool .astro-collapsible .astro-chart-status { padding:4px 4px 18px; }
.dawnin-tool .astro-collapsible .astro-subtable { margin:0 0 18px; }
.dawnin-tool .astro-collapsible .astro-subtable { overflow-x:auto; }
.dawnin-tool .astro-collapsible .astro-table { min-width:590px; }
.dawnin-tool .astro-collapsible .astro-house-table .astro-table { min-width:440px; }
.dawnin-tool .astro-collapsible .astro-table th,
.dawnin-tool .astro-collapsible .astro-table td { white-space:nowrap; }
.dawnin-tool .astro-table { width:100%; border-collapse:collapse; font-size:var(--astro-body-size); color:var(--astro-body-color); }
.dawnin-tool .astro-table th, .dawnin-tool .astro-table td { border:1px solid var(--line); padding:8px 7px; text-align:left; }
.dawnin-tool .astro-table th { color:var(--astro-section-title-color); background:var(--bg-elevated); font-weight:500; }
.dawnin-tool .astro-table td { color:var(--astro-body-color); }
.dawnin-tool .astro-table td:first-child, .dawnin-tool .astro-table td:nth-child(2) { color:var(--text-warm); }
.dawnin-tool .astro-subtable { margin-top:22px; overflow:auto; }
.dawnin-tool .astro-house-table { margin-top:22px; }
.dawnin-tool .astro-key-config { font-size:var(--astro-body-size); color:var(--astro-body-color); line-height:2; }
.dawnin-tool .astro-chart-status { color:var(--astro-body-color); font-size:var(--astro-body-size); margin-bottom:14px; }
.dawnin-tool .interpret-section { margin-top:40px; }
.dawnin-tool .interpret-intro { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px 16px; color:var(--astro-body-color); font-size:var(--astro-body-size); margin-bottom:12px; }
.dawnin-tool .interpret-intro strong { color:var(--astro-section-title-color); font-size:var(--astro-section-title-size); font-weight:600; }
.dawnin-tool .interpret-tabs { display:flex; gap:0; border-bottom:1px solid var(--line); margin-bottom:24px; flex-wrap:wrap; }
.dawnin-tool .interpret-tabs button { padding:12px 20px; background:none; border:none; color:var(--astro-body-color); cursor:pointer; font-size:var(--astro-body-size); font-family:inherit; border-bottom:2px solid transparent; transition:all .3s; margin-bottom:-1px; }
.dawnin-tool .interpret-tabs button.active { color:var(--gold-bright); border-bottom-color:var(--gold); }
.dawnin-tool .interpret-content { display:none; }
.dawnin-tool .interpret-content.active { display:block; }
.dawnin-tool .interpret-content h3 { font-size:var(--astro-section-title-size); color:var(--astro-section-title-color); margin:24px 0 8px; }
.dawnin-tool .interpret-content h3:first-child { margin-top:0; }
.dawnin-tool .interpret-content p { font-size:var(--astro-body-size); color:var(--astro-body-color); line-height:2; margin-bottom:16px; }
.dawnin-tool .interpret-content p strong { color:var(--text-warm); }
.dawnin-tool .interpret-disclaimer { border-top:1px solid var(--line); padding-top:16px; margin-top:24px; font-size:var(--astro-body-size); color:var(--astro-body-color); }
.astro-info-backdrop { position:fixed; inset:0; z-index:10000; display:grid; place-items:center; padding:16px; background:rgba(5,10,20,.7); }
.astro-info-dialog { box-sizing:border-box; width:min(560px,100%); max-height:min(78vh,740px); overflow:auto; padding:22px 26px; background:#fffbe2; color:#252b35; border:1px solid #ceb862; box-shadow:0 16px 48px rgba(0,0,0,.38); font-family:'Noto Sans SC',sans-serif; font-size:15px; line-height:1.65; }
.astro-info-head { display:flex; gap:12px; align-items:center; border-bottom:1px solid #d9cc96; padding-bottom:12px; margin-bottom:16px; }
.astro-info-head h2 { color:#202d3b; font-size:22px; margin:0; flex:1; }
.astro-info-head small { display:block; color:#777456; font-size:13px; font-weight:400; }
.astro-info-head .astro-info-glyph { font-size:28px; color:#b7503c; line-height:1; }
.astro-info-head button { border:0; background:transparent; font-size:26px; color:#59616b; cursor:pointer; padding:0 4px; }
.astro-info-dialog h3 { color:#8a6430; font-size:15px; margin:18px 0 8px; }
.astro-info-list { display:grid; grid-template-columns:minmax(92px,auto) 1fr; gap:7px 12px; margin:0; }
.astro-info-list dt { color:#666b6e; }
.astro-info-list dd { margin:0; color:#202d3b; font-weight:500; }
.astro-info-aspects { list-style:none; margin:0; padding:0; }
.astro-info-aspects li { display:flex; justify-content:space-between; flex-wrap:wrap; gap:2px 10px; padding:7px 0; border-bottom:1px solid #e6ddaf; color:#202d3b; }
.astro-info-aspects li small { color:#666b6e; font-size:13px; }
.astro-info-note { font-size:13px; color:#6e716f; margin-top:16px; }
body.astro-info-open { overflow:hidden; }
@media (max-width:600px) {
  .astro-info-dialog { padding:18px; font-size:14px; }
  .astro-info-head h2 { font-size:19px; }
  .dawnin-tool .astro-collapsible summary span { display:none; }
  .dawnin-tool .page-wrap { padding-left:10px; padding-right:10px; }
  .dawnin-astrology-tool .chart-panel { padding:16px 6px 14px; }
  .dawnin-tool .astro-parameters { padding:16px 12px; }
  .dawnin-tool .astro-collapsible .astro-subtable { scrollbar-width:thin; }
}
.dawnin-tool .cta-panel { margin-top:48px; padding:40px; text-align:center; background:linear-gradient(135deg, rgba(201,169,110,0.08), rgba(201,169,110,0.02)); border:1px solid var(--line-bright); }
.dawnin-tool .cta-panel h3 { font-size:var(--astro-section-title-size); color:var(--astro-section-title-color); margin-bottom:12px; }
.dawnin-tool .cta-panel p { color:var(--astro-body-color); font-size:var(--astro-body-size); margin-bottom:24px; max-width:500px; margin-left:auto; margin-right:auto; }
.dawnin-tool .btn-primary { display:inline-block; padding:13px 36px; background:var(--gold); color:var(--bg-deep); text-decoration:none; font-size:0.9rem; letter-spacing:0.12em; }
.dawnin-tool footer { border-top:1px solid var(--line); padding:40px 48px; text-align:center; font-size:0.75rem; color:var(--text-dim); margin-top:60px; }

  @media (max-width:900px) {
    .dawnin-tool nav { padding:14px 20px; }
.dawnin-tool .nav-links { display:none; }
.dawnin-tool .page-wrap { padding:80px 20px 40px; }
.dawnin-tool .input-grid { grid-template-columns:1fr 1fr; }
.dawnin-tool .result-grid { grid-template-columns:1fr; }
.dawnin-tool .astro-setting-row { padding-left:16px; padding-right:16px; }
.dawnin-tool .astro-setting-select { min-width:160px; }
  }
  @media (min-width:901px) and (max-width:1100px) {
    .dawnin-tool .result-grid { grid-template-columns:1fr; }
  }
