.main-container{max-width:1400px;margin:0 auto;padding:28px 20px 40px}.page-hero{text-align:center;max-width:900px;margin:26px auto 8px;padding:0 20px}.page-title{font-family:var(--calc-font-headline,"Plus Jakarta Sans", sans-serif);letter-spacing:-.02em;color:var(--calc-text-primary,#f8fafc);margin:0 0 10px;font-size:clamp(1.7rem,4vw,2.5rem);font-weight:800}.page-subtitle{color:var(--calc-text-muted,#a8b8cc);margin:0;font-size:1.02rem;line-height:1.6}.gdd-grid{grid-template-columns:minmax(0,380px) minmax(0,1fr);align-items:start;gap:22px;display:grid}@media (width<=1024px){.gdd-grid{grid-template-columns:1fr}}.gdd-panel,.gdd-results,.gdd-section-card{background:var(--calc-bg-card,#161d2b);border:1px solid var(--calc-border-default,#ffffff17);border-radius:var(--calc-radius-lg,16px);box-shadow:var(--calc-shadow-card,0 4px 20px #00000040);padding:22px}.gdd-section-card+.gdd-section-card{margin-top:20px}.gdd-panel__title,.gdd-results__title,.gdd-section-card__title{font-family:var(--calc-font-headline,"Plus Jakarta Sans", sans-serif);color:var(--calc-text-primary,#f8fafc);margin:0 0 16px;font-size:1.12rem;font-weight:700}.gdd-section-card__lead{color:var(--calc-text-secondary,#cbd5e1);max-width:74ch;margin:0 0 18px;font-size:.95rem;line-height:1.65}.form-group{margin-bottom:16px}.form-group label{color:var(--calc-text-secondary,#cbd5e1);margin-bottom:6px;font-size:.86rem;font-weight:600;display:block}.input-optional{color:var(--calc-text-dim,#8896aa);font-weight:400}.gdd-panel input:not([type=checkbox]),.gdd-panel select,.gdd-panel textarea{box-sizing:border-box;width:100%;font-size:.98rem;font-family:var(--calc-font-mono,"JetBrains Mono", monospace);color:var(--calc-text-primary,#f8fafc);background:var(--calc-bg-input,#0e1420);border:1px solid var(--calc-border-strong,#ffffff24);border-radius:var(--calc-radius-md,12px);padding:11px 13px;transition:border-color .18s,box-shadow .18s}.gdd-panel textarea{resize:vertical;line-height:1.5}.gdd-panel input:not([type=checkbox]):focus,.gdd-panel select:focus,.gdd-panel textarea:focus{border-color:var(--calc-cyan);box-shadow:0 0 0 3px var(--calc-cyan-dim);outline:none}.input-hint{color:var(--calc-text-dim,#8896aa);margin-top:5px;font-size:.76rem;line-height:1.45;display:block}.gdd-results__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.gdd-results__head .gdd-results__title{margin:0}.action-bar{flex-wrap:wrap;gap:7px;display:flex}.action-btn{font-family:var(--calc-font-headline,"Plus Jakarta Sans", sans-serif);color:var(--calc-text-secondary,#cbd5e1);background:var(--calc-bg-input,#0e1420);border:1px solid var(--calc-border-default,#ffffff1a);cursor:pointer;border-radius:999px;padding:7px 13px;font-size:.8rem;font-weight:600;transition:border-color .18s,color .18s,background .18s}.action-btn:hover{color:var(--calc-cyan);border-color:var(--calc-cyan);background:var(--calc-cyan-dim)}.action-btn--reset{color:var(--calc-text-dim,#8896aa)}.gdd-hero{text-align:center;border-radius:var(--calc-radius-md,12px);background:var(--calc-cyan-dim);border:1px solid var(--calc-cyan-dim);padding:26px 18px}.gdd-hero__label{font-family:var(--calc-font-mono,monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--calc-text-muted,#a8b8cc);margin-bottom:6px;font-size:.74rem}.gdd-hero__value{font-family:var(--calc-font-mono,monospace);color:var(--calc-cyan);font-size:clamp(2rem,5.5vw,2.8rem);font-weight:800;line-height:1.05}.gdd-hero__sub{color:var(--calc-text-muted,#a8b8cc);margin-top:8px;font-size:.86rem;line-height:1.5}.gdd-hero[data-result-state=idle] .gdd-hero__value,.gdd-hero[data-result-state=partial] .gdd-hero__value{color:var(--calc-text-dim,#8896aa)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:10px;margin:18px 0 4px;display:grid}.stat-card{background:var(--calc-bg-glass,#ffffff08);border:1px solid var(--calc-border-default,#ffffff14);border-radius:var(--calc-radius-md,12px);padding:12px 13px}.stat-label{color:var(--calc-text-dim,#8896aa);margin-bottom:5px;font-size:.72rem;line-height:1.3}.stat-value{font-family:var(--calc-font-mono,monospace);color:var(--calc-text-primary,#f8fafc);font-size:1.06rem;font-weight:700}.gdd-chart-caption{color:var(--calc-text-muted,#a8b8cc);margin:12px 0 0;font-size:.86rem;line-height:1.55}.chart-wrap{margin-top:18px}.gdd-interpretation{color:var(--calc-text-secondary,#cbd5e1);background:var(--calc-bg-glass,#ffffff08);border-left:3px solid var(--calc-cyan);border-radius:0 var(--calc-radius-md,12px) var(--calc-radius-md,12px) 0;margin:16px 0 0;padding:14px 16px;font-size:.9rem;line-height:1.6}.gdd-interpretation:empty{display:none}.gdd-table-wrap{overflow-x:auto}.gdd-table{border-collapse:collapse;width:100%;font-size:.88rem}.gdd-table th,.gdd-table td{text-align:left;border-bottom:1px solid var(--calc-border-default,#ffffff14);white-space:nowrap;padding:10px 12px}.gdd-table th{font-family:var(--calc-font-headline,"Plus Jakarta Sans", sans-serif);letter-spacing:.04em;text-transform:uppercase;color:var(--calc-text-dim,#8896aa);background:var(--calc-bg-glass,#ffffff08);font-size:.74rem}.gdd-table td{color:var(--calc-text-secondary,#cbd5e1);font-family:var(--calc-font-mono,monospace)}.gdd-table tbody tr:hover{background:var(--calc-bg-glass,#ffffff08)}.panel-hint{color:var(--calc-text-dim,#8896aa);margin:14px 0 0;font-size:.85rem;line-height:1.5}.faq-list{flex-direction:column;display:flex}.faq-item{border-bottom:1px solid #ffffff0f}.faq-item__question{cursor:pointer;color:var(--calc-text-primary,#f8fafc);user-select:none;justify-content:space-between;align-items:center;padding:14px 4px;font-size:.9rem;font-weight:600;list-style:none;transition:color .2s;display:flex}.faq-item__question::-webkit-details-marker{display:none}.faq-item__question:after{content:"+";font-family:var(--calc-font-mono,monospace);color:var(--calc-text-dim,#8896aa);flex-shrink:0;margin-left:16px;font-size:1.1rem;transition:color .2s}.faq-item[open] .faq-item__question:after{content:"−";color:var(--calc-cyan)}.faq-item__question:hover{color:var(--calc-cyan)}.faq-item__answer{color:var(--calc-text-dim,#8896aa);padding:0 4px 14px;font-size:.85rem;line-height:1.75}.page-sections-outer{max-width:1600px;margin:0 auto;padding:0 1.5rem 3rem}@media (width<=768px){.action-btn{text-align:center;flex:calc(50% - 7px);min-height:44px}.main-container{padding:20px 14px 32px}.gdd-panel,.gdd-results,.gdd-section-card{padding:16px}.gdd-table th,.gdd-table td{padding:8px 9px;font-size:.82rem}}[data-theme=light] .gdd-panel,[data-theme=light] .gdd-results,[data-theme=light] .gdd-section-card{background:#fff;border-color:#0000001f;box-shadow:0 2px 12px #00000014}[data-theme=light] .gdd-panel input:not([type=checkbox]),[data-theme=light] .gdd-panel select,[data-theme=light] .gdd-panel textarea{color:#0f172a;background:#f0f4f9;border-color:#00000026}[data-theme=light] .action-btn{color:#334155;background:#f0f4f9;border-color:#0000001f}[data-theme=light] .stat-card{background:#f0f4f9;border-color:#0000001f}[data-theme=light] .gdd-interpretation{background:#f0f4f9}[data-theme=light] .gdd-table th{color:#475569;background:#f0f4f9}[data-theme=light] .gdd-table th,[data-theme=light] .gdd-table td{border-bottom-color:#0000001a}[data-theme=light] .gdd-table td{color:#334155}[data-theme=light] .gdd-table tbody tr:hover{background:#f0f4f9}[data-theme=light] .faq-item{background:#fff;border:1px solid #0000001a;border-radius:10px;transition:box-shadow .2s,border-color .2s;overflow:hidden;box-shadow:0 1px 4px #0000000f}[data-theme=light] .faq-list{gap:8px}[data-theme=light] .faq-item:hover{border-color:#0891b259;box-shadow:0 2px 10px #0891b214}[data-theme=light] .faq-item[open]{border-color:#0891b266 #0891b266 #0891b266 #0891b2;border-left-style:solid;border-left-width:3px;box-shadow:0 2px 12px #0891b21a}[data-theme=light] .faq-item__question{color:#0f172a;padding:14px 16px}[data-theme=light] .faq-item__question:after{color:#64748b}[data-theme=light] .faq-item[open] .faq-item__question:after,[data-theme=light] .faq-item__question:hover{color:#0891b2}[data-theme=light] .faq-item__answer{color:#475569;border-top:1px solid #0000000f;padding:12px 16px 16px}