@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Fraunces:opsz,wght@9..144,600&display=swap');

:root { --ink: #1d2935; --muted: #64717a; --paper: #f6f4ef; --card: #fffdf9; --teal: #1e7470; --coral: #e98469; --line: #deded6; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 16px/1.5 'DM Sans', sans-serif; }
.page-shell { max-width: 900px; margin: 0 auto; padding: 70px 22px 35px; }
.hero { display: grid; grid-template-columns: 1fr auto; column-gap: 34px; align-items: end; max-width: 900px; margin-bottom: 34px; }.hero .wheel-mark { grid-column: 1 / -1; }.hero-heading { max-width: 650px; }.hero-qr { display: flex; flex-direction: column; align-items: center; gap: 8px; margin-bottom: 6px; color: var(--muted); font-size: 11px; text-align: center; text-decoration: none; }.hero-qr img { border: 7px solid white; border-radius: 9px; box-shadow: 0 8px 20px rgba(29, 41, 53, .08); }
.wheel-mark, .success-icon { display: grid; place-items: center; width: 52px; height: 52px; margin-bottom: 26px; border: 2px solid var(--coral); border-radius: 50%; color: var(--coral); font-size: 28px; }
.eyebrow { margin: 0 0 9px; color: var(--teal); font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
h1, h2 { font-family: Fraunces, Georgia, serif; font-weight: 600; line-height: 1.08; }
h1 { margin: 0 0 16px; font-size: clamp(42px, 7vw, 70px); letter-spacing: -.04em; }
.intro { max-width: 590px; margin: 0; color: var(--muted); font-size: 18px; }
.survey-card { padding: 30px; border: 1px solid var(--line); border-radius: 22px; background: var(--card); box-shadow: 0 18px 55px rgba(29, 41, 53, .06); }
.privacy-note { margin-bottom: 28px; padding: 14px 16px; border-left: 3px solid var(--coral); background: #fff5ed; color: #6c5549; font-size: 13px; }
.honeypot { position: absolute; left: -10000px; }
.scale-labels { display: flex; justify-content: space-between; margin-bottom: 12px; color: var(--muted); font-size: 12px; }
.rating-row { margin: 0; padding: 22px 0; border: 0; border-top: 1px solid var(--line); }
.rating-row legend { padding: 0; margin-bottom: 14px; font-weight: 700; }
.rating-options { display: grid; grid-template-columns: repeat(11, 1fr); gap: 7px; }
.score-option { position: relative; text-align: center; }
.score-option input { position: absolute; opacity: 0; }
.score-option span { display: grid; place-items: center; height: 40px; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); cursor: pointer; transition: .15s ease; }
.score-option input:checked + span, .score-option input:focus-visible + span { border-color: var(--teal); background: var(--teal); color: white; box-shadow: 0 0 0 3px rgba(30,116,112,.15); }
.primary-button, .secondary-button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; border: 0; border-radius: 999px; padding: 14px 22px; font: 700 14px 'DM Sans', sans-serif; text-decoration: none; cursor: pointer; }
.primary-button { width: 100%; margin-top: 16px; background: var(--ink); color: white; }
.secondary-button { border: 1px solid var(--line); background: transparent; color: var(--ink); }
.after-training { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 28px; margin-top: 22px; padding: 28px 30px; border: 1px solid var(--line); border-radius: 22px; background: #e8f0eb; }.after-training h2 { margin: 0 0 9px; font-size: 28px; }.after-training p:not(.eyebrow) { max-width: 560px; margin: 0 0 16px; color: var(--muted); }.preview-link, .whatsapp-link { display: block; margin-bottom: 10px; color: var(--teal); font-weight: 700; text-decoration: none; }.qr-link { display: flex; flex-direction: column; align-items: center; gap: 8px; color: var(--muted); font-size: 11px; text-align: center; text-decoration: none; }.qr-link img { border: 8px solid white; border-radius: 8px; }
footer { margin-top: 22px; color: var(--muted); font-size: 12px; text-align: center; }
.result-page { max-width: 780px; padding-top: 10vh; }.success-icon { color: var(--teal); border-color: var(--teal); }.personal-result { margin-top: 30px; padding: 22px; border: 1px solid var(--line); border-radius: 18px; background: var(--card); }.result-score { display: flex; align-items: baseline; justify-content: space-between; padding-bottom: 20px; border-bottom: 1px solid var(--line); color: var(--muted); }.result-score strong { color: var(--teal); font: 600 48px Fraunces, Georgia, serif; }.result-score small { color: var(--muted); font: 400 15px 'DM Sans', sans-serif; }.result-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding: 20px 0; }.result-item { display: flex; justify-content: space-between; gap: 8px; padding: 10px 12px; border-radius: 8px; background: #f5f4ee; color: var(--muted); font-size: 12px; }.result-item strong { color: var(--ink); }.attention-note { padding: 14px 16px; border-left: 3px solid var(--coral); background: #fff5ed; color: #6c5549; font-size: 13px; }.result-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }.result-actions .primary-button { width: auto; margin: 0; }.result-actions .secondary-button { margin: 0; }
.access-code-card { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 14px; margin-top: 24px; padding: 15px 18px; border: 1px solid #c6e3d9; border-radius: 13px; background: #edf8f3; }.access-code-card span { color: var(--muted); font-size: 12px; font-weight: 700; }.access-code-card strong { color: var(--teal); font: 700 25px/1 'DM Sans', sans-serif; letter-spacing: .16em; }.access-code-card small { color: var(--muted); font-size: 11px; }
.report-shell { max-width: 1100px; margin: 0 auto; padding: 50px 22px; }.report-header { display: flex; align-items: end; justify-content: space-between; margin-bottom: 30px; }.report-header h1 { font-size: 48px; margin: 0; }.metric-card, .report-card { border: 1px solid var(--line); border-radius: 18px; background: var(--card); }.metric-card { display: flex; flex-direction: column; gap: 3px; padding: 24px; margin-bottom: 18px; color: var(--muted); }.metric-card strong { color: var(--ink); font: 600 48px Fraunces, Georgia, serif; }.report-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }.report-card { padding: 22px; }.report-card h2 { margin: 0 0 16px; font-size: 21px; }.report-card strong { font: 600 36px Fraunces, Georgia, serif; }.report-card strong small { color: var(--muted); font: 400 15px 'DM Sans', sans-serif; }.bar { height: 8px; margin: 14px 0 10px; overflow: hidden; border-radius: 99px; background: #e8e8e1; }.bar span { display: block; height: 100%; border-radius: inherit; background: var(--coral); }.report-card p { margin: 0; color: var(--muted); font-size: 12px; }
@media (max-width: 600px) { .page-shell { padding-top: 40px; }.survey-card { padding: 20px 16px; }.rating-options { gap: 3px; }.score-option span { height: 34px; border-radius: 7px; font-size: 13px; }.hero { display: block; }.hero-qr { align-items: start; margin-top: 20px; }.after-training { grid-template-columns: 1fr; padding: 22px 20px; }.qr-link { justify-self: start; }.result-grid { grid-template-columns: 1fr 1fr; }.result-actions { flex-direction: column; }.result-actions .primary-button, .result-actions .secondary-button { width: 100%; }.report-header { align-items: start; flex-direction: column; gap: 18px; }.report-grid { grid-template-columns: 1fr; } }

/* Shared professional shell */
:root { --ink: #132f35; --muted: #65777a; --paper: #f3f6f3; --card: #ffffff; --teal: #0d716c; --teal-dark: #095550; --coral: #e77b63; --line: #dbe5e1; --shadow: 0 20px 60px rgba(19, 47, 53, .08); }
body { background: radial-gradient(circle at 88% 2%, #e5f0eb 0, transparent 26rem), var(--paper); color: var(--ink); }
.icon-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.site-header { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid rgba(219, 229, 225, .92); background: rgba(255, 255, 255, .88); backdrop-filter: blur(16px); }
.site-header-inner { display: flex; align-items: center; gap: 28px; max-width: 1120px; min-height: 74px; margin: 0 auto; padding: 0 24px; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--ink); font-size: 15px; letter-spacing: -.02em; text-decoration: none; white-space: nowrap; }.brand strong { font-weight: 700; }.brand-mark { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 12px; background: var(--teal); color: white; }.brand-mark svg { width: 23px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.main-nav { display: flex; align-items: center; gap: 5px; margin-left: auto; }.nav-link { display: inline-flex; align-items: center; gap: 7px; padding: 9px 11px; border-radius: 10px; color: var(--muted); font-size: 13px; font-weight: 700; text-decoration: none; transition: background .2s ease, color .2s ease; }.nav-link svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }.nav-link:hover, .nav-link.is-active { background: #e8f1ed; color: var(--teal-dark); }.header-cta { display: inline-flex; align-items: center; gap: 8px; padding: 11px 16px; border-radius: 999px; background: var(--ink); color: #fff; font-size: 12px; font-weight: 700; text-decoration: none; transition: transform .2s ease, background .2s ease; }.header-cta:hover { background: var(--teal); transform: translateY(-1px); }
.page-shell { max-width: 1120px; padding: 64px 24px 48px; }.hero { max-width: 100%; margin-bottom: 42px; }.hero-heading { max-width: 720px; }.wheel-mark { width: 46px; height: 46px; margin-bottom: 22px; border: 0; border-radius: 14px; background: #fbe4dc; color: var(--coral); font-size: 24px; }.eyebrow { color: var(--teal); font-size: 11px; letter-spacing: .17em; }.hero h1 { max-width: 700px; margin-bottom: 18px; font-size: clamp(48px, 7vw, 82px); letter-spacing: -.055em; }.intro { max-width: 640px; font-size: 17px; line-height: 1.65; }
.hero-qr { padding: 12px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255, 255, 255, .68); }.hero-qr img { width: 128px; height: 128px; border: 6px solid white; }.hero-qr span, .qr-link span { font-weight: 700; }
.survey-card { position: relative; padding: 34px 38px 38px; border: 1px solid var(--line); border-radius: 24px; background: rgba(255,255,255,.92); box-shadow: var(--shadow); }.privacy-note { display: flex; align-items: center; gap: 8px; margin: -2px 0 34px; border: 1px solid #d8e9e2; border-left: 3px solid var(--teal); border-radius: 10px; background: #eff8f4; color: #456461; }.scale-labels { font-size: 11px; font-weight: 700; letter-spacing: .01em; text-transform: uppercase; }.rating-row { padding: 25px 0; }.rating-row legend { margin-bottom: 15px; font-size: 15px; }.rating-options { gap: 8px; }.score-option span { height: 42px; border-color: #d5e0dd; border-radius: 9px; background: #fbfdfc; font-weight: 700; }.score-option input:checked + span, .score-option input:focus-visible + span { border-color: var(--teal); background: var(--teal); box-shadow: 0 0 0 4px rgba(13,113,108,.13); }.primary-button { background: var(--teal); box-shadow: 0 10px 22px rgba(13,113,108,.17); }.primary-button:hover { background: var(--teal-dark); transform: translateY(-1px); }
.method-section { display: grid; grid-template-columns: .85fr 1.5fr; gap: 40px; align-items: center; padding: 68px 0 28px; }.section-heading h2 { margin: 0 0 11px; font-size: 38px; letter-spacing: -.04em; }.section-heading > p:last-child { max-width: 290px; margin: 0; color: var(--muted); }.method-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }.method-card { min-height: 180px; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.72); }.icon-badge { display: grid; place-items: center; width: 36px; height: 36px; margin-bottom: 24px; border-radius: 10px; background: #e6f1ed; color: var(--teal); }.icon-badge svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }.method-card strong { display: block; margin-bottom: 6px; font-size: 15px; }.method-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.after-training { margin-top: 32px; border: 0; background: var(--ink); box-shadow: var(--shadow); }.after-training .eyebrow { color: #84c9bd; }.after-training h2 { color: #fff; }.after-training p:not(.eyebrow) { color: #b8cdca; }.preview-link { color: #fff; }.whatsapp-link { color: #87d2bc; }.qr-link { padding: 8px; border-radius: 14px; background: #fff; }.qr-link img { border: 0; }.qr-link span { padding: 0 5px 4px; }
.result-page { max-width: 940px; }.result-page > h1 { max-width: 760px; font-size: clamp(44px, 6vw, 70px); }.personal-result { border: 1px solid var(--line); border-radius: 22px; box-shadow: var(--shadow); }.result-score strong { color: var(--teal); }.result-item { border: 1px solid #e5ece9; background: #f7faf8; }.attention-note { border-left-color: var(--coral); border-radius: 0 10px 10px 0; }.result-actions .primary-button { box-shadow: none; }.result-actions .secondary-button { background: #fff; }
footer { padding-top: 8px; color: #81908f; }
@media (max-width: 760px) { .site-header-inner { gap: 10px; min-height: 66px; padding: 0 12px; }.main-nav { gap: 3px; }.nav-link { padding: 8px; }.nav-link span { display: none; }.nav-link.nav-resultado { display: inline-flex; gap: 6px; padding: 9px 12px; border-radius: 999px; background: var(--teal); color: #fff; box-shadow: 0 5px 14px rgba(13,113,108,.2); }.nav-link.nav-resultado span { display: inline; font-size: 11px; }.nav-link.nav-resultado svg { width: 18px; height: 18px; }.nav-link.nav-resultado:hover, .nav-link.nav-resultado.is-active { background: var(--teal-dark); color: #fff; }.header-cta { padding: 10px 12px; }.page-shell { padding: 42px 16px 34px; }.hero h1 { font-size: clamp(43px, 13vw, 64px); }.survey-card { padding: 24px 18px 26px; }.method-section { grid-template-columns: 1fr; gap: 24px; padding-top: 46px; }.section-heading > p:last-child { max-width: 460px; }.method-card { min-height: 0; }.after-training { padding: 24px 20px; } }

.report-page { max-width: 1120px; }.report-hero { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 36px; }.report-hero h1 { max-width: 680px; margin: 0 0 16px; font-size: clamp(44px, 6vw, 72px); letter-spacing: -.05em; }.report-icon { display: grid; place-items: center; width: 76px; height: 76px; flex: 0 0 auto; border-radius: 22px; background: var(--teal); color: #fff; box-shadow: 0 14px 30px rgba(13,113,108,.18); }.report-icon svg { width: 36px; height: 36px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5; }.metric-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 52px; }.metric-card { min-height: 150px; padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.85); box-shadow: 0 10px 30px rgba(19,47,53,.04); }.metric-label { display: block; margin-bottom: 18px; color: var(--muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }.metric-card strong { display: block; color: var(--ink); font: 600 44px/1 Fraunces, Georgia, serif; }.metric-card strong small { margin-left: 3px; color: var(--muted); font: 400 15px 'DM Sans', sans-serif; }.metric-card > small { color: var(--muted); font-size: 12px; }.metric-highlight { border-color: #b8ddd3; background: #e8f4ef; }.metric-highlight strong { color: var(--teal); }.report-section { display: grid; grid-template-columns: .8fr 1.7fr; gap: 54px; align-items: start; }.report-section .section-heading h2 { font-size: 38px; }.aggregate-chart { padding: 24px 26px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: var(--shadow); }.aggregate-row { padding: 14px 0 18px; border-bottom: 1px solid #edf2ef; }.aggregate-row:last-child { border-bottom: 0; padding-bottom: 4px; }.aggregate-label { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 8px; color: var(--ink); font-size: 13px; font-weight: 700; }.aggregate-label strong { color: var(--teal); }.aggregate-track { height: 9px; overflow: hidden; border-radius: 999px; background: #e8efec; }.aggregate-track span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--teal), #73b9a7); }.aggregate-row > small { display: block; margin-top: 6px; color: var(--muted); font-size: 10px; }.empty-report { display: flex; flex-direction: column; gap: 5px; margin-top: 18px; padding: 22px; border: 1px dashed #bad4cc; border-radius: 16px; color: var(--muted); }.empty-report strong { color: var(--ink); }.report-footer-card { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 48px; padding: 28px 30px; border-radius: 20px; background: var(--ink); color: #fff; }.report-footer-card h2 { margin: 0 0 7px; font-size: 28px; }.report-footer-card p:not(.eyebrow) { margin: 0; color: #b8cdca; }.report-footer-card .primary-button { width: auto; flex: 0 0 auto; margin: 0; background: #fff; color: var(--teal-dark); box-shadow: none; }
.personal-access { display: grid; grid-template-columns: 1.2fr .8fr; gap: 28px; align-items: end; margin: -24px 0 24px; padding: 22px 24px; border: 1px solid #cce1da; border-radius: 18px; background: #edf7f3; }.personal-access h2 { margin: 0 0 8px; font-size: 26px; }.personal-access p:not(.eyebrow) { max-width: 600px; margin: 0; color: var(--muted); font-size: 13px; }.code-form label { display: block; margin-bottom: 7px; color: var(--muted); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }.code-form > div { display: flex; gap: 8px; }.code-form input { width: 100px; padding: 12px 10px; border: 1px solid #bed6ce; border-radius: 9px; background: #fff; color: var(--ink); font: 700 16px 'DM Sans', sans-serif; letter-spacing: .16em; text-align: center; }.code-form .secondary-button { padding: 12px 15px; background: #fff; cursor: pointer; }.my-summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 30px; padding: 22px 24px; border: 1px solid #b9ddd2; border-radius: 18px; background: #fff; }.my-summary .eyebrow { display: block; margin-bottom: 8px; }.my-summary strong { display: block; color: var(--teal); font: 600 42px/1 Fraunces, Georgia, serif; }.my-summary strong small { margin-left: 3px; color: var(--muted); font: 400 14px 'DM Sans', sans-serif; }.my-summary p { margin: 8px 0 0; color: var(--muted); font-size: 13px; }.my-summary-icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 13px; background: #e8f4ef; color: var(--teal); }.my-summary-icon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.6; }
.access-confirmed { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }.access-check { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--teal); color: #fff; font-weight: 700; }.access-confirmed strong, .access-confirmed small { display: block; }.access-confirmed strong { color: var(--teal-dark); font-size: 13px; }.access-confirmed small { margin-top: 2px; color: var(--muted); font-size: 11px; }
.comparison-section { margin: 0 0 46px; }.comparison-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 18px; }.comparison-heading h2 { margin: 0; font-size: 31px; }.comparison-legend { display: flex; gap: 16px; color: var(--muted); font-size: 11px; }.comparison-legend span { display: inline-flex; align-items: center; gap: 6px; }.comparison-dot { width: 8px; height: 8px; border-radius: 50%; background: #4aa995; }.comparison-dot.personal { background: var(--coral); }.comparison-chart { padding: 24px 26px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: var(--shadow); }.comparison-row { padding: 12px 0 15px; border-bottom: 1px solid #edf2ef; }.comparison-row:last-child { border-bottom: 0; padding-bottom: 2px; }.comparison-label { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 7px; color: var(--ink); font-size: 12px; font-weight: 700; }.comparison-label strong { color: var(--coral); }.comparison-track { position: relative; height: 16px; overflow: hidden; border-radius: 999px; background: #edf3f0; }.comparison-bar { position: absolute; left: 0; display: block; height: 6px; border-radius: 999px; }.comparison-bar.collective { top: 2px; background: #4aa995; }.comparison-bar.personal { bottom: 2px; background: var(--coral); }.comparison-row > small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; }
.share-card { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin: 0 0 46px; padding: 24px 26px; border: 1px solid #c9ded7; border-radius: 20px; background: #edf7f3; }.share-card h2 { margin: 0 0 6px; font-size: 25px; }.share-card p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: 13px; }.share-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }.share-button { display: inline-flex; align-items: center; gap: 7px; padding: 10px 12px; border: 1px solid #d2e1dd; border-radius: 9px; background: #fff; color: var(--ink); font: 700 11px 'DM Sans', sans-serif; text-decoration: none; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease; }.share-button:hover { transform: translateY(-1px); box-shadow: 0 5px 14px rgba(19,47,53,.09); }.share-button span { display: inline-grid; place-items: center; width: 17px; height: 17px; border-radius: 5px; background: #e8f2ef; color: var(--teal); font-size: 11px; }.share-button.whatsapp span { background: #dff4e9; color: #168c5b; }.share-button.facebook span { background: #e5edff; color: #3668c8; }.share-button.linkedin span { background: #e2f1fb; color: #1476a6; }.share-feedback { display: block; min-height: 16px; color: var(--teal); font-size: 11px; font-weight: 700; text-align: right; }
.chart-and-bars { display: grid; gap: 18px; }.wheel-chart-card { padding: 22px 24px 16px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: var(--shadow); }.chart-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--ink); font-size: 13px; }.chart-heading > span { display: inline-flex; align-items: center; gap: 5px; color: var(--muted); font-size: 11px; }.legend-dot { width: 8px; height: 8px; margin-left: 8px; border-radius: 50%; background: #4aa995; }.legend-dot.personal { background: var(--coral); }.wheel-chart { display: block; width: min(100%, 480px); margin: 10px auto 0; overflow: visible; }.chart-ring { fill: none; stroke: #dce9e4; stroke-width: 1; }.chart-axis { stroke: #e6efeb; stroke-width: 1; }.chart-area { stroke-width: 2.5; }.collective-area { fill: rgba(74,169,149,.18); stroke: #2c927d; }.personal-area { fill: rgba(231,123,99,.16); stroke: var(--coral); stroke-dasharray: 5 4; }.chart-number { fill: #81918f; font: 700 11px 'DM Sans', sans-serif; }.chart-scale { display: flex; justify-content: space-between; color: var(--muted); font-size: 10px; }
.donut-results { display: grid; grid-template-columns: 230px 1fr; gap: 18px; }.overall-donut-card { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px 18px; border-radius: 20px; background: linear-gradient(145deg, #123b3d, #0d716c); color: #fff; box-shadow: 0 20px 40px rgba(13,113,108,.18); text-align: center; }.donut-heading { display: flex; flex-direction: column; gap: 4px; }.donut-heading .eyebrow { margin: 0; color: #9ed7c9; }.donut-heading strong { font: 600 19px Fraunces, Georgia, serif; }.donut { display: grid; place-items: center; margin: 18px auto 14px; border-radius: 50%; background: conic-gradient(#8ed0bf var(--angle), rgba(255,255,255,.16) 0); transform: rotate(-45deg); }.donut::before { width: 78%; height: 78%; border-radius: 50%; background: #123b3d; content: ''; }.donut > div { position: absolute; display: flex; align-items: baseline; transform: rotate(45deg); }.donut strong { font: 600 30px Fraunces, Georgia, serif; }.donut span { margin-left: 2px; color: #b9dfd6; font-size: 11px; }.donut-large { width: 142px; height: 142px; }.overall-donut-card > p { margin: 0; color: #b9d4cf; font-size: 11px; }.donut-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; padding: 16px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: var(--shadow); }.donut-card { display: flex; min-width: 0; flex-direction: column; align-items: center; padding: 10px 5px 12px; border-radius: 13px; text-align: center; transition: background .2s ease, transform .2s ease; }.donut-card:hover { background: #f2f8f5; transform: translateY(-2px); }.donut-small { width: 86px; height: 86px; margin: 0 auto 10px; background: conic-gradient(#4aa995 var(--angle), #e6efeb 0); }.donut-small::before { background: #fff; }.donut-small strong { color: var(--ink); font-size: 20px; }.donut-small span { color: var(--muted); font-size: 9px; }.donut-label { max-width: 130px; color: var(--ink); font-size: 11px; line-height: 1.3; }.donut-personal { margin-top: 5px; color: var(--coral); font-size: 10px; font-weight: 700; }
@media (max-width: 760px) { .report-hero { align-items: start; }.report-icon { width: 58px; height: 58px; border-radius: 16px; }.metric-grid { grid-template-columns: 1fr; margin-bottom: 40px; }.metric-card { min-height: 0; }.personal-access { grid-template-columns: 1fr; margin-top: -12px; }.report-section { grid-template-columns: 1fr; gap: 24px; }.report-section .section-heading h2 { font-size: 32px; }.wheel-chart-card { padding: 18px 14px 14px; }.aggregate-chart { padding: 16px 18px; }.donut-results { grid-template-columns: 1fr; }.donut-grid { grid-template-columns: repeat(3, 1fr); padding: 12px 8px; }.share-card { align-items: start; flex-direction: column; }.share-actions { justify-content: flex-start; }.share-feedback { text-align: left; }.report-footer-card { align-items: start; flex-direction: column; }.report-footer-card .primary-button { width: 100%; } }
