/* ===== Review sách phát triển bản thân — giấy kem, mực xanh rêu, điểm nhấn vàng đồng ===== */
:root{--paper:#fbf6ec;--paper-2:#f3ead7;--ink:#1f2a24;--muted:#58655d;--green:#1f6f5c;--green-d:#14503f;--gold:#c9962b;--rust:#b4461f;--line:#e2d6bb;--white:#fffdf8;--shadow:0 6px 20px rgba(60,45,10,.09);--r:16px}
*{box-sizing:border-box}
html{font-size:17px;scroll-behavior:smooth}
@media(min-width:1600px){html{font-size:19px}}
@media(min-width:2200px){html{font-size:25px}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;line-height:1.7}
h1,h2,h3{font-family:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;font-weight:800;letter-spacing:-.01em;line-height:1.25;margin:0 0 .5em;color:var(--green-d)}
h1{font-size:clamp(2rem,5vw,3.2rem)}h2{font-size:clamp(1.5rem,3vw,2.1rem);margin-top:1.6em}h3{font-size:1.2rem}
p{margin:0 0 1em}a{color:var(--green)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}.narrow{max-width:760px}
@media(min-width:1600px){.wrap{max-width:1240px}.narrow{max-width:880px}}
.small{font-size:.88rem;color:var(--muted)}
.skip{position:absolute;left:-9999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
:focus-visible{outline:4px solid var(--gold);outline-offset:3px;border-radius:8px}

/* đầu trang */
.top{background:var(--white);border-bottom:2px solid var(--line);position:sticky;top:0;z-index:20}
.top .wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
.brand{font-weight:800;font-size:1.1rem;color:var(--green-d);text-decoration:none;margin-right:auto}
.top nav{display:flex;gap:4px;flex-wrap:wrap}
.top nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:.92rem;padding:.35em .8em;border-radius:99px}
.top nav a:hover,.top nav a[aria-current]{background:var(--paper-2);color:var(--green-d)}

/* banner YMYL */
.ymyl{background:#fff4d6;border-bottom:1px solid #ecd48b;font-size:.86rem;text-align:center;padding:7px 12px;color:#5a4300}

/* hero */
.hero{padding:64px 0 48px;background:linear-gradient(180deg,var(--paper-2),var(--paper));border-bottom:1px solid var(--line)}
.eyebrow{font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;color:var(--gold);margin:0 0 6px}
.lead{font-size:1.15rem;color:var(--muted);max-width:660px}
.btn{display:inline-block;background:var(--green);color:#fff;text-decoration:none;font-weight:700;padding:.7em 1.4em;border-radius:99px;box-shadow:var(--shadow);margin:6px 8px 6px 0}
.btn:hover{background:var(--green-d)}.btn.ghost{background:transparent;color:var(--green-d);border:2px solid var(--green)}

section{padding:20px 0}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));margin:14px 0}
.card{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:20px;box-shadow:var(--shadow)}
.card h3{margin-bottom:.3em}.card p:last-child{margin-bottom:0}
.num{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff;font-weight:800;margin-bottom:10px}
.flag{border-left:5px solid var(--rust);background:#fff3ee}
.flag h3{color:var(--rust)}
.empty{text-align:center;padding:36px 20px;border:2px dashed var(--line);border-radius:var(--r);background:var(--white)}
.empty .big{font-size:2.4rem}
.note{background:#eef6f2;border-left:5px solid var(--green);padding:12px 16px;border-radius:8px;margin:1em 0}
.warn{background:#fff4d6;border-left:5px solid var(--gold);padding:12px 16px;border-radius:8px;margin:1em 0}
ul.tick{list-style:none;padding:0}ul.tick li{padding-left:1.6em;position:relative;margin-bottom:.5em}
ul.tick li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:800}
ul.cross li::before{content:"✗";color:var(--rust)}
table{width:100%;border-collapse:collapse;background:var(--white);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}
th,td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--paper-2);color:var(--green-d)}
.score{display:inline-block;min-width:4.5em;text-align:center;border:2px dashed var(--line);border-radius:8px;color:var(--muted);font-weight:700}
.crumb{font-size:.9rem;margin:22px 0 8px}
.foot{margin-top:50px;background:#1c3a31;color:#e6efe9;padding:28px 0;font-size:.92rem}.foot a{color:#f3d98a}.foot p{margin:0 0 8px}
@media(max-width:560px){.hero{padding:42px 0 34px}.top .wrap{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
