.goal{max-width:860px;margin:0 auto;padding:32px var(--page-gutter,20px) 56px}
.goal h1{margin:0 0 8px}.goal__lead{color:var(--color-text-muted,#5b6275);max-width:62ch}
.goal__label{display:block;font-weight:600;margin:20px 0 6px}
.goal__row{display:flex;gap:10px;flex-wrap:wrap}
.goal__row input{flex:1 1 280px;min-width:0;padding:12px 14px;border:1px solid var(--color-border-strong,#aab3cc);border-radius:10px;font:inherit}
.goal__row button{padding:12px 20px;border:0;border-radius:10px;background:var(--color-accent,#3154d5);color:#fff;font:inherit;font-weight:600;cursor:pointer}
.goal__msg{margin:24px 0 8px;padding:20px 22px;border:1px solid var(--color-accent,#3154d5);border-left-width:4px;border-radius:var(--radius-lg,14px);background:var(--color-accent-soft,#eef2ff)}
.goal__msg>strong{display:block;font-size:1.15rem;line-height:1.3;margin-bottom:8px;color:var(--color-text,#1a2033)}
.goal__msg p{margin:0 0 10px;color:var(--color-text-muted,#5b6275);line-height:1.5}.goal__msg p:last-child{margin-bottom:0}
.goal__msg a{font-weight:600}
.goal__msg ul.goal__plain{margin:0 0 12px}.goal__msg ul.goal__plain li{padding:8px 12px;border:1px solid var(--color-border,#d7dce6);border-radius:8px;background:var(--color-surface,#fff)}
@media (max-width:520px){.goal__msg{padding:16px}}
.goal__cards{list-style:none;margin:24px 0 8px;padding:0;display:grid;gap:12px}
.goal__card{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--color-border,#d7dce6);border-radius:var(--radius-lg,14px);padding:16px 18px;background:var(--color-surface,#fff)}
.goal__card.is-top{border-color:var(--color-accent,#3154d5);background:var(--color-accent-soft,#eef2ff);padding:20px 20px}
.goal__rank{flex:none;width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-weight:700;font-size:.95rem;background:var(--color-accent-soft,#eef2ff);color:var(--color-accent,#3154d5)}
.goal__card.is-top .goal__rank{background:var(--color-accent,#3154d5);color:var(--color-on-accent,#fff)}
.goal__body{min-width:0;flex:1}
.goal__flag{margin:0 0 4px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent,#3154d5)}
.goal__card h2{font-size:1.1rem;line-height:1.3;margin:0 0 6px}.goal__card.is-top h2{font-size:1.25rem}
.goal__card h2 a{color:var(--color-text,#1a2033);text-decoration:none}.goal__card h2 a:hover{color:var(--color-accent,#3154d5);text-decoration:underline}
.goal__out{margin:0 0 10px;color:var(--color-text-muted,#5b6275);line-height:1.5}
.goal__tags{margin:0 0 8px;display:flex;flex-wrap:wrap;gap:6px}
.goal__tag{font-size:.78rem;font-weight:600;padding:3px 8px;border-radius:6px;line-height:1.3}
.goal__tag--area{background:#e6ecff;color:#2a45b0}.goal__tag--fam{background:#e3f4ee;color:#1b6a50}.goal__tag--type{background:#f1ecfa;color:#5a3a99}
.goal__why{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:.8rem;color:var(--color-text-muted,#5b6275)}
.goal__chip{padding:1px 7px;border-radius:6px;border:1px solid var(--color-border,#d7dce6);background:var(--color-surface-raised,#fff);color:var(--color-text,#1a2033)}
.goal__sides{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:16px}
.goal__side{border:1px solid var(--color-border,#d7dce6);border-radius:var(--radius-md,12px);padding:4px 16px 14px;background:var(--color-surface,#f7f8fd)}
.goal h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#5b6275);margin:14px 0 8px}
.goal ul.goal__plain{list-style:none;margin:0;padding:0;display:grid;gap:6px}.goal ul.goal__plain a{text-decoration:none}.goal ul.goal__plain a:hover{text-decoration:underline}
@media (max-width:520px){.goal__card{padding:14px;gap:10px}.goal__card.is-top{padding:16px 14px}.goal__rank{width:28px;height:28px}}
[data-theme="dark"] .goal__tag--area{background:#233068;color:#c9d6ff}[data-theme="dark"] .goal__tag--fam{background:#173d31;color:#bfe9d9}[data-theme="dark"] .goal__tag--type{background:#35285a;color:#ddd0f7}
