:root{--bg: #fbf7f1;--surface: #ffffff;--text: #2a1d1a;--muted: #6b5a55;--border: #e7dcd2;--brand: #7a1f2b;--brand-ink: #ffffff;--gold: #b9831a;--good: #1f6b3a;--good-bg: #e5f3e9;--neutral: #5a5248;--neutral-bg: #efebe6;--caution: #8a4b06;--caution-bg: #fbeedd;--focus: #1d4ed8;--radius: 12px;--font: "Noto Sans Thai", "Sukhumvit Set", Thonburi, "Leelawadee UI", Tahoma, system-ui, sans-serif}@media(prefers-color-scheme:dark){:root{--bg: #1a1413;--surface: #251d1b;--text: #f3ebe6;--muted: #c2b3ad;--border: #3e322f;--brand: #e0798a;--brand-ink: #1a1413;--gold: #e2b44f;--good: #8fd6a6;--good-bg: #1d3325;--neutral: #d6cec6;--neutral-bg: #352d2a;--caution: #f3bf7a;--caution-bg: #3d2c17;--focus: #93b4ff}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.65}a{color:var(--brand)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:8px;top:-40px;background:var(--surface);padding:6px 10px;z-index:10}.skip-link:focus{top:8px}.site-header,main,.site-footer{max-width:760px;margin:0 auto;padding-left:16px;padding-right:16px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:12px;height:52px}.brand{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--text);text-decoration:none}.brand-mark{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--brand);color:var(--brand-ink);font-size:16px}.header-link{font-size:14px}h1{font-size:1.5rem;line-height:1.3;margin:4px 0}h2{font-size:1.25rem;line-height:1.35;margin:28px 0 8px}h3{font-size:1.05rem;margin:18px 0 6px}.lead{margin:0 0 12px;color:var(--muted);font-size:.95rem}.tool{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 14px 16px}.mode-switch{display:flex;gap:6px;margin-bottom:10px}.mode-switch button{flex:1;min-height:40px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text);font:inherit;font-size:.9rem;cursor:pointer}.mode-switch button[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.field{margin-bottom:10px}label,.label{display:block;font-weight:600;margin-bottom:4px}.optional{font-weight:400;color:var(--muted);font-size:.9em}input[type=text],input[type=tel],input[type=number],input[type=time],select{width:100%;min-height:48px;padding:10px 12px;font:inherit;font-size:1.15rem;color:var(--text);background:var(--bg);border:2px solid var(--border);border-radius:10px}input:focus,select:focus{border-color:var(--focus)}input[aria-invalid=true]{border-color:var(--caution)}.hint{margin:4px 0 0;font-size:.85rem;color:var(--muted)}.error{margin:4px 0 0;font-size:.9rem;color:var(--caution);font-weight:600}.actions{display:flex;gap:8px;margin-top:12px}button{font:inherit}.btn-primary,.btn-secondary,.btn-ghost,.btn-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 18px;border-radius:10px;font-weight:700;cursor:pointer;text-decoration:none;border:2px solid transparent}.btn-primary{flex:1;background:var(--brand);color:var(--brand-ink);font-size:1.05rem}.btn-ghost{background:transparent;border-color:var(--border);color:var(--text);font-weight:600}.btn-secondary{background:var(--neutral-bg);color:var(--text);border-color:var(--border)}.btn-cta{background:var(--gold);color:#1d1406}.result:empty{display:none}.result{margin-top:16px;scroll-margin-top:12px}.result-card{border-top:1px solid var(--border);padding-top:8px}.result-title{margin-top:8px}.result-title:focus{outline:none}.reveal{animation:reveal .32s ease-out both}@keyframes reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.reveal{animation:none}.bar-fill{transition:none!important}html{scroll-behavior:auto}}.grade-row{display:flex;gap:14px;align-items:flex-start}.grade,.grade-sm{display:inline-grid;place-items:center;flex:none;font-weight:800;border-radius:12px;color:#fff}.grade{width:64px;height:64px;font-size:2rem}.grade-sm{width:32px;height:32px;font-size:1rem;border-radius:8px}.grade-A{background:#1f6b3a}.grade-B{background:#3d7a2a}.grade-C{background:#8a6a06}.grade-D{background:#9a4a0a}.grade-F{background:#7a1f2b}.score-line{margin:0}.summary{margin:4px 0 0}.digits-line{font-size:.9rem;color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}.muted{color:var(--muted)}.bars{list-style:none;padding:0;margin:0}.bars li{display:grid;grid-template-columns:7.5em 1fr 2.5em;align-items:center;gap:8px;margin:6px 0;font-size:.9rem}.bar-track{height:10px;background:var(--neutral-bg);border-radius:999px;overflow:hidden}.bar-fill{display:block;height:100%;background:var(--brand);border-radius:999px}.bar-value{text-align:right;font-weight:700}.tag{display:inline-block;padding:0 8px;border-radius:999px;font-size:.8rem;font-weight:700;white-space:nowrap}.tag-good,.chip-good{background:var(--good-bg);color:var(--good)}.tag-neutral,.chip-neutral{background:var(--neutral-bg);color:var(--neutral)}.tag-caution,.chip-caution{background:var(--caution-bg);color:var(--caution)}.pair-list{list-style:none;padding:0;margin:0}.pair-list li{display:grid;grid-template-columns:auto auto 1fr;gap:4px 8px;align-items:baseline;padding:6px 0;border-bottom:1px dashed var(--border)}.pair-num{font-weight:800;font-size:1.1rem;min-width:2ch}.pair-text{font-size:.95rem}.chips{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0}.chip{padding:2px 10px;border-radius:999px;font-size:.85rem}.all-pairs{margin-top:12px}.all-pairs summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.copy-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}.copy-status{font-size:.9rem;color:var(--good)}.copy-fallback{width:100%;margin-top:8px;font:inherit;font-size:.9rem;padding:8px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text)}.cta{margin-top:28px;padding:14px;border-radius:var(--radius);border:1px dashed var(--gold);background:var(--bg)}.cta-title{margin:0;font-weight:700}.cta-body{margin:4px 0 10px;font-size:.95rem}.cta-links{display:flex;flex-wrap:wrap;gap:8px}.cta-note{margin:8px 0 0;font-size:.8rem;color:var(--muted)}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse;font-size:.92rem}caption{text-align:left;font-size:.85rem;color:var(--muted);padding-bottom:6px}th,td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--border);vertical-align:top}thead th{font-size:.85rem;color:var(--muted);white-space:nowrap}.compare-table td,.compare-table th{white-space:nowrap}.best-row{background:var(--good-bg)}.best-badge{display:block;font-size:.8rem;color:var(--good);font-weight:700}.content{margin-top:8px}.content p,.content li{max-width:68ch}.faq details{border-bottom:1px solid var(--border);padding:4px 0}.faq summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}.faq details p{margin-top:0}.disclaimer{margin:24px 0;padding:12px 14px;border-left:4px solid var(--gold);background:var(--surface);font-size:.9rem}.tool-cards{list-style:none;padding:0;margin:0;display:grid;gap:10px}.tool-card{display:block;padding:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;color:var(--text)}.tool-card:hover{border-color:var(--brand)}.tool-name{display:block;font-weight:700;color:var(--brand);font-size:1.05rem}.tool-blurb{display:block;font-size:.92rem;color:var(--muted)}.related{margin:32px 0}.site-footer{border-top:1px solid var(--border);margin-top:32px;padding-top:16px;padding-bottom:32px;font-size:.85rem;color:var(--muted)}.footer-note{margin:0 0 8px}.footer-links{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:4px 16px}.footer-links a{display:inline-block;padding:6px 0}@media(min-width:640px){h1{font-size:1.9rem}.tool{padding:20px 22px}.tool-cards{grid-template-columns:1fr 1fr}}.letters{font-size:1.15rem;letter-spacing:.2em}.steps{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:6px 0 0}.steps li{display:inline-flex;flex-direction:column;align-items:center;min-width:44px;padding:4px 8px;border:1px solid var(--border);border-radius:8px;background:var(--bg)}.steps .ch{font-size:1.2rem;font-weight:700}.steps .val{font-size:.85rem;color:var(--muted)}.steps .letter{border-color:var(--gold)}.swatch-item{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;margin-right:6px}.swatch{display:inline-block;width:22px;height:22px;border-radius:50%;border:2px solid var(--border);flex:none}.swatch-lg .swatch{width:34px;height:34px}.color-list{list-style:none;padding:0;margin:0}.color-list li{display:grid;grid-template-columns:8.5em 1fr;gap:8px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--border)}.color-list .k{font-weight:600}.notes{margin:10px 0 0;padding-left:1.2em;font-size:.9rem;color:var(--muted)}.date-row{display:grid;grid-template-columns:1fr 1.7fr 1.2fr;gap:8px}.day-table td,.day-table th{white-space:nowrap}fieldset.plain{border:0;padding:0;margin:0 0 10px;min-width:0}fieldset.plain legend{padding:0}label.sub{font-weight:400;font-size:.85rem;color:var(--muted)}
