/* Cookie consent banner + settings (see js/consent.js). Self-contained: works on the site layout and on landing pages. */
.tc-bar{position:fixed;left:0;right:0;bottom:0;z-index:2147483000;display:flex;align-items:center;justify-content:space-between;gap:16px 28px;flex-wrap:wrap;
    padding:18px max(16px,calc((100% - 1200px)/2));background:#3d4247;color:#fff;font:400 1rem/1.55 "Anuphan",system-ui,-apple-system,"Segoe UI",sans-serif;box-shadow:0 -4px 20px rgba(0,0,0,.25)}
.tc-msg{margin:0;flex:1 1 420px}
.tc-msg a{color:#60a5fa;text-decoration:underline;text-underline-offset:3px;margin-left:2px}
.tc-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.tc-btn,.tc-link{font:inherit;cursor:pointer}
.tc-link{background:none;border:0;color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px;padding:8px 10px}
.tc-btn{border-radius:999px;padding:10px 24px;font-weight:700;border:2px solid transparent}
.tc-main{background:#fff;color:#111}
.tc-main:hover{background:#f1f5f9}
.tc-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.tc-ghost:hover{border-color:#fff}
.tc-overlay{position:fixed;inset:0;z-index:2147483001;background:rgba(15,23,42,.55);display:flex;align-items:center;justify-content:center;padding:16px;font:400 1rem/1.5 "Anuphan",system-ui,-apple-system,"Segoe UI",sans-serif}
.tc-modal{background:#fff;color:#0f172a;border-radius:16px;max-width:520px;width:100%;max-height:92vh;overflow:auto;padding:22px 22px 18px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.tc-modal h2{font-size:1.25rem;margin:0 0 10px}
.tc-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid #e5e9f2;cursor:pointer}
.tc-txt{display:flex;flex-direction:column;gap:2px}
.tc-txt small{color:#64748b;font-size:.85rem;line-height:1.4}
.tc-row input{position:absolute;opacity:0;pointer-events:none}
.tc-sw{flex:none;width:46px;height:26px;border-radius:999px;background:#cbd5e1;position:relative;transition:background .2s}
.tc-sw::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.tc-row input:checked+.tc-sw{background:#16a34a}
.tc-row input:checked+.tc-sw::after{transform:translateX(20px)}
.tc-row input:disabled+.tc-sw{opacity:.55}
.tc-row input:focus-visible+.tc-sw{outline:3px solid #93c5fd;outline-offset:2px}
.tc-modal .tc-actions{justify-content:flex-end;margin-top:12px;padding-top:14px;border-top:1px solid #e5e9f2}
.tc-modal .tc-ghost{color:#0f172a;border-color:#cbd5e1}
.tc-modal .tc-main{background:#0f172a;color:#fff}
@media (max-width:575.98px){.tc-bar{padding:14px 16px}.tc-actions{width:100%;justify-content:space-between}.tc-btn{padding:9px 16px;flex:1}}
