.tip-stack { display: flex; flex-direction: column; gap: 1.25rem; }
.tip-pct-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.6rem;
    margin-bottom: 1rem;
}
.tip-pct-btn {
    padding: 1rem 0.5rem;
    font-size: 1.15rem;
    font-weight: 700;
    border-radius: var(--radius-md);
    border: 2px solid var(--color-border);
    background: var(--color-bg-card);
    color: var(--color-secondary);
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
}
.tip-pct-btn:hover, .tip-pct-btn.active {
    border-color: var(--color-primary);
    background: color-mix(in srgb, var(--color-primary) 12%, transparent);
}
.tip-hero-results {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}
.tip-hero-card {
    text-align: center;
    padding: 1.1rem 0.75rem;
    border-radius: var(--radius-md);
    background: var(--color-bg-base);
    border: 1px solid var(--color-border);
}
.tip-hero-card.hero-main { grid-column: span 2; background: color-mix(in srgb, var(--color-primary) 8%, var(--color-bg-card)); }
.tip-hero-card .result-number { font-size: 1.75rem; font-weight: 800; color: var(--color-secondary); }
.tip-hero-card.hero-main .result-number { font-size: 2.1rem; color: var(--color-primary); }
.tip-guide-table { width: 100%; font-size: 0.88rem; }
.tip-guide-table th, .tip-guide-table td { padding: 0.45rem 0.5rem; border-bottom: 1px solid var(--color-border); }
.tip-guide-table th { text-align: left; font-size: 0.72rem; text-transform: uppercase; color: var(--color-text-muted); }
.mode-tabs-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.4rem; margin-bottom: 0.85rem; }
.mode-tab { display: flex; align-items: center; justify-content: center; padding: 0.55rem 0.25rem; background: var(--color-bg-card); border: 1px solid var(--color-border); border-radius: var(--radius-md); color: var(--color-text-muted); font-size: 0.72rem; font-weight: 600; cursor: pointer; }
.mode-tab.active { border-color: var(--color-primary); color: var(--color-secondary); background: color-mix(in srgb, var(--color-primary) 10%, transparent); }
#calculation-formula-breakdown { white-space: pre-line; }
.calc-calc-btn { width: 100%; padding: 0.9rem; margin-top: 1rem; }
@media (max-width: 480px) {
    .tip-pct-grid { grid-template-columns: repeat(2, 1fr); }
    .mode-tabs-4 { grid-template-columns: repeat(2, 1fr); }
}
