/* V14.17 FAQ & lich ra mat — tuong thich nen sang/toi */
.tg-r17-story-shell,.tg-r17-home{margin:26px auto 30px;padding:20px;border-radius:16px;border:1px solid #5c4a36;background:linear-gradient(140deg,#191d35,#111c2c);color:#f3e9d8;box-shadow:0 8px 24px #0002}
.tg-r17-story-shell{max-width:1100px}
.tg-r17-home{margin:16px 0 22px}
.tg-r17-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;flex-wrap:wrap}
.tg-r17-header h2,.tg-r17-faq h2{font-size:clamp(17px,2.6vw,22px);margin:4px 0 0;color:#f7e6c5}
.tg-r17-eyebrow{color:#e4b465;font-size:11px;font-weight:800;letter-spacing:.12em}
.tg-r17-link{font-weight:700;color:#f5bd67;text-decoration:none}.tg-r17-link:hover{text-decoration:underline}
.tg-r17-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px}
.tg-r17-card{padding:15px;border:1px solid #46516c;background:#171d33;border-radius:12px;min-width:0;overflow-wrap:anywhere}
.tg-r17-card-top{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.tg-r17-card h3{font-size:17px;line-height:1.45;margin:12px 0 6px;color:#ffe2a7}
.tg-r17-card p{color:#cbcbd9;margin:7px 0;line-height:1.6;white-space:pre-line;font-size:14px}
.tg-r17-card time{color:#d6dced;font-size:12px;font-variant-numeric:tabular-nums}
.tg-r17-badge{background:#3b2b29;color:#ffd891;padding:4px 9px;border-radius:30px;font-size:11px;font-weight:750}
.tg-r17-storyname{font-weight:650}
.tg-r17-empty{margin:0;color:#b9c6d8;line-height:1.7;padding:12px;background:#ffffff09;border-radius:9px}
.tg-r17-faq{margin-top:24px}
.tg-r17-faq h2{margin:0 0 15px}
.tg-r17-faq details{margin:8px 0;border:1px solid #394259;border-radius:11px;background:#191c31;overflow:hidden}
.tg-r17-faq summary{cursor:pointer;color:#f1ecf4;font-size:15px;font-weight:750;padding:15px;line-height:1.5;list-style:none}
.tg-r17-faq summary::-webkit-details-marker{display:none}
.tg-r17-faq summary:before{content:'▸';color:#edbb70;display:inline-block;margin-right:9px;transition:transform .16s}
.tg-r17-faq details[open] summary:before{transform:rotate(90deg)}
.tg-r17-faq-answer{color:#c9c9de;line-height:1.75;padding:0 15px 16px;font-size:14px}
.tg-r17-faq-answer strong{color:#f1d291}.tg-r17-faq-answer a{color:#ffce7d}
.tg-r17-board{padding-bottom:28px}
.tg-r17-board-hero{margin:15px 0 18px;background:linear-gradient(100deg,#21233c,#10283a);border:1px solid #594730;border-radius:16px;padding:22px;color:#f6e8d4}
.tg-r17-board-hero h1{font-size:clamp(23px,4vw,34px);margin:10px 0}.tg-r17-board-hero p{max-width:800px;color:#ccced9;line-height:1.65;margin:0}
.tg-r17-disclaimer{font-size:13px;color:#bfcadd;margin:16px 0}.tg-r17-disclaimer a{color:#f8ca7a}
.tg-r17-admin{border:1px solid #574a3a;border-radius:14px;padding:18px;margin-top:16px;background:#151d2b}.tg-r17-admin>h2{margin:0 0 8px}
.tg-r17-admin-list{display:grid;gap:8px}.tg-r17-admin-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px;border:1px solid #405069;border-radius:10px;background:#1a2737;flex-wrap:wrap}
.tg-r17-admin-row>div:first-child{min-width:0;flex:1}.tg-r17-admin-row strong{display:block;overflow-wrap:anywhere}.tg-r17-admin-row small{display:block;color:#bcc6d5;line-height:1.6;margin-top:5px}
.tg-r17-form{padding:15px;border-radius:12px;background:#1c2b39;border:1px solid #46566a;margin:10px 0 16px}.tg-r17-form h3{margin:0 0 16px}
.tg-r17-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tg-r17-fields label{display:grid;gap:7px;font-size:13px;font-weight:700}
.tg-r17-fields input:not([type=checkbox]),.tg-r17-fields textarea,.tg-r17-fields select{min-width:0;width:100%;box-sizing:border-box;padding:10px;border:1px solid #617084;border-radius:9px;background:#101a27;color:#f8f1e6;font:inherit}
.tg-r17-fields .tg-r17-wide{grid-column:1/-1}.tg-r17-fields .tg-r17-check{display:flex;align-items:center;gap:8px;grid-column:1/-1}.tg-r17-fields .tg-r17-check input{width:18px;height:18px}
.tg-r17-form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}#tg-r17-admin-status{font-weight:650;color:#f5d28c;min-height:20px}
@media(max-width:680px){.tg-r17-story-shell,.tg-r17-home{padding:14px;margin:18px 0}.tg-r17-fields{grid-template-columns:1fr}.tg-r17-card{padding:12px}.tg-r17-faq summary{font-size:14px}}
/* Giao dien sang: uu tien mau den de noi dung de doc */
body.light .tg-r17-story-shell,body.light .tg-r17-home,body.light .tg-r17-board-hero{color:#fff}

/* V14.18 public release filters and calendar export */
.tg-r18-filter,.tg-r18-admin-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:end;padding:14px;margin:12px 0 10px;border:1px solid #46516c;border-radius:12px;background:#172037}
.tg-r18-filter label,.tg-r18-admin-filters label{display:grid;gap:7px;flex:1 1 175px;min-width:0;font-size:12px;font-weight:750;color:#eeddbf}
.tg-r18-filter .tg-r18-search-label{flex:2 1 290px}
.tg-r18-filter input,.tg-r18-filter select,.tg-r18-admin-filters input,.tg-r18-admin-filters select{width:100%;min-width:0;box-sizing:border-box;background:#0e1b2b;color:#fff;border:1px solid #68758b;border-radius:9px;padding:11px 12px;font:inherit;font-size:14px}
.tg-r18-filter input:focus,.tg-r18-filter select:focus,.tg-r18-admin-filters input:focus,.tg-r18-admin-filters select:focus{outline:2px solid #ffc978;outline-offset:1px}
.tg-r18-refresh,.tg-r18-calendar{background:#29354a;border:1px solid #9e854f;border-radius:9px;color:#ffe2aa;cursor:pointer;font-weight:750;font-size:13px;padding:10px 12px}
.tg-r18-calendar{margin-top:10px;display:inline-flex;align-items:center;justify-content:center;margin-left:9px}
.tg-r18-refresh:disabled{opacity:.6;cursor:wait}
.tg-r18-refresh:hover:not(:disabled),.tg-r18-calendar:hover{background:#405273}
.tg-r18-result{font-size:13px;font-weight:700;color:#e9ce9d;margin:0 0 12px}
.tg-r17-admin .tg-r18-admin-filters{margin:15px 0}
.tg-r17-card .tg-r17-link{display:inline-block;margin-top:12px}
@media(max-width:600px){.tg-r18-filter,.tg-r18-admin-filters{display:grid;grid-template-columns:1fr;align-items:stretch}.tg-r18-calendar{margin:10px 0 0}.tg-r18-refresh{width:100%}}

/* V14.19 – lịch lặp theo thứ trong tuần */
.tg-r19-week-group{margin:0;min-width:0;border:1px solid #7a694e;border-radius:11px;padding:12px;background:#101e2c}
.tg-r19-week-group legend{color:#ffdda0;font-weight:800;font-size:14px;padding:0 5px}
.tg-r19-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.tg-r19-weekdays .tg-r19-day{display:flex;align-items:center;justify-content:center;cursor:pointer}
.tg-r19-day input{width:17px;height:17px;accent-color:#e2a852;flex:0 0 auto}
.tg-r19-day span{font-size:12px}
.tg-r19-day:has(input:checked){background:#42351d;border-color:#eec47d;color:#ffe9b7}
.tg-r19-day{padding:10px 5px;border:1px solid #5b6980;border-radius:9px;display:flex!important;gap:5px!important}
.tg-r19-hint{color:#c8d0dc;font-weight:400;font-size:12px;line-height:1.6;margin:9px 0 0}
.tg-r19-repetition{color:#f5ce83!important;font-size:13px!important;font-weight:700}
.tg-r19-week-group[hidden],.tg-r19-until[hidden]{display:none!important}
@media(max-width:820px){.tg-r19-weekdays{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:480px){.tg-r19-weekdays{grid-template-columns:repeat(2,minmax(0,1fr))}}
