:root{
  --bg:#faf8f5; --card:#ffffff; --ink:#23201c; --muted:#6b6257;
  --line:#e7e1d8; --accent:#9a6a2f; --accent-soft:#f3ead9;
  --good:#2f7d4f; --warn:#b8860b; --bad:#b14b3c;
}
*{box-sizing:border-box}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
.wrap{max-width:880px; margin:0 auto; padding:32px 20px 80px}
header{border-bottom:3px solid var(--accent); padding-bottom:16px; margin-bottom:8px}
h1{font-size:2rem; margin:.2em 0}
h2{font-size:1.3rem; margin:1.8em 0 .5em; padding-top:.4em; border-top:1px solid var(--line)}
.lede{color:var(--muted); font-style:italic}
.frame{background:var(--accent-soft); border-left:4px solid var(--accent); padding:14px 18px; border-radius:8px; margin:18px 0}
table{width:100%; border-collapse:collapse; margin:14px 0; font-size:.93rem; background:var(--card); border-radius:10px; overflow:hidden; box-shadow:0 1px 3px rgba(0,0,0,.06)}
th,td{padding:10px 12px; text-align:left; vertical-align:top; border-bottom:1px solid var(--line)}
th{background:#2d2823; color:#fff; font-weight:600; font-size:.85rem}
tr:last-child td{border-bottom:none}
tbody tr:nth-child(even){background:#fbf9f6}
.pick{background:#eef6f0 !important}
.pick td:first-child{box-shadow:inset 3px 0 0 var(--good)}
.tag{display:inline-block; font-size:.78rem; font-weight:600; padding:2px 8px; border-radius:999px}
.t-good{background:#e3f1e8; color:var(--good)} .t-warn{background:#f7eecf; color:var(--warn)} .t-bad{background:#f6e2dd; color:var(--bad)}
ul{padding-left:1.2em} li{margin:.3em 0}
a{color:var(--accent); text-decoration:none; border-bottom:1px solid #d8c4a4}
a:hover{border-bottom-color:var(--accent)}
.rec{background:var(--card); border:1px solid var(--line); border-radius:12px; padding:18px 20px; margin:16px 0; box-shadow:0 1px 3px rgba(0,0,0,.06)}
.rec h2{border:none; margin-top:0; color:var(--accent)}
.small{font-size:.82rem; color:var(--muted)}
.photo-ph{background:repeating-linear-gradient(45deg,#f0e9dd,#f0e9dd 10px,#ebe2d3 10px,#ebe2d3 20px); border:1px dashed #c9b894; border-radius:10px; padding:28px; text-align:center; color:var(--muted); margin:14px 0}
footer{margin-top:40px; color:var(--muted); font-size:.82rem; text-align:center}
