@layer base,layout,components;
@layer base{
@font-face{font-family:Geist;src:url(/assets/fonts/geist-var-latin.19f9c92546aa.woff2) format("woff2");font-style:normal;font-weight:100 900;font-display:optional}
@font-face{font-family:"Instrument Serif";src:url(/assets/fonts/instrument-serif-italic.4f7aacc18d49.woff2) format("woff2");font-style:italic;font-weight:400;font-display:optional}
:root{color-scheme:light;--paper:#f4f1ec;--panel:#ffffff;--ink:#0b0b0c;--muted:#55514d;--line:#dad5ce;--teal:#0b0b0c;--tint:#e9e5df;--gold:#55514d;--focus:#0b0b0c;font-family:Geist,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--paper:#0b0b0c;--panel:#161617;--ink:#ffffff;--muted:#bdb8b3;--line:#66615d;--teal:#ffffff;--tint:#252526;--gold:#bdb8b3;--focus:#ffffff}}
:root[data-theme=dark]{color-scheme:dark;--paper:#0b0b0c;--panel:#161617;--ink:#ffffff;--muted:#bdb8b3;--line:#66615d;--teal:#ffffff;--tint:#252526;--gold:#bdb8b3;--focus:#ffffff}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.65}a{color:var(--teal);text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button,input,select{font:inherit}button{cursor:pointer}a,button,input,select,summary{-webkit-tap-highlight-color:transparent}button,input,select{min-height:46px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Geist,ui-sans-serif,system-ui,sans-serif;font-weight:650;letter-spacing:-.035em;line-height:1.08}h1{font-size:clamp(2.35rem,4.5vw,4.4rem);max-width:15ch;text-wrap:balance}h2{font-size:clamp(1.9rem,3vw,2.6rem)}h3{font-size:1.15rem;line-height:1.3;letter-spacing:-.02em}p{max-width:70ch}img{display:block;width:100%;height:auto}ul{padding-left:1.3rem}::selection{background:var(--teal);color:var(--paper)}[hidden]{display:none!important}
}
@layer layout{
.wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}.top{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:88px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;color:var(--ink);font-size:21px;font-weight:750;letter-spacing:-.05em;display:flex;align-items:center;gap:11px;white-space:nowrap}.brand i{width:26px;height:26px;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;transform:rotate(-8deg)}.brand i span{background:var(--teal);border-radius:2px}.brand i span:last-child{background:var(--gold)}nav{display:flex;align-items:center;gap:24px}nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;color:var(--ink);font-size:15px;font-weight:600}.theme{border:1px solid var(--line);background:transparent;color:var(--ink);padding:8px 12px;border-radius:99px;font-size:14px}.hero{padding-block:52px 44px}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}.hero .answer{margin-top:24px;font-size:18px;line-height:1.65;max-width:57ch}.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:750;color:var(--teal);margin-bottom:18px}.eyebrow:before{content:"";width:21px;height:1px;background:currentColor}.meta{font-size:13px;color:var(--muted);margin-top:20px}.hero-image{position:relative}.hero-image img{border-radius:100px 100px 12px 12px;aspect-ratio:5/4;object-fit:cover}.hero-image:after{content:"";position:absolute;inset:12px;border:1px solid #e8dfc349;border-radius:90px 90px 5px 5px;pointer-events:none}.section{padding-block:44px;border-top:1px solid var(--line)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:26px}.section-head p{max-width:40ch;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.workspace{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:start;margin-bottom:48px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.panel{padding:30px;background:var(--panel);border:1px solid var(--line);border-radius:16px}.result{position:sticky;top:24px;background:var(--tint);border-top:3px solid var(--teal)}.details-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px}.prose>*+*{margin-top:20px}.prose h2{margin-top:36px}.prose h2:first-child{margin-top:0}.prose h3{margin-top:26px}.footer{margin-top:60px;padding-block:40px;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;gap:36px}.footer p{font-size:14px;color:var(--muted);max-width:48ch}.footer nav{flex-wrap:wrap;gap:10px 24px}.footer nav a{font-size:14px}.footer .small{margin-top:28px;font-size:12px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:5px 14px;font-size:13px;margin-top:24px}.breadcrumbs a{min-height:44px;display:inline-flex;align-items:center}.skip{position:absolute;left:16px;top:-90px;z-index:10;padding:12px;background:var(--panel)}.skip:focus{top:12px}.tool-hero{padding-top:24px;padding-bottom:30px}.tool-hero h1{font-size:clamp(2.2rem,3.4vw,3.55rem);max-width:23ch}.tool-hero .answer{font-size:17px;margin-top:18px;max-width:85ch}.number{font-size:40px;line-height:1.18;font-weight:650;letter-spacing:-.055em;overflow-wrap:anywhere;margin-block:16px}.result[data-date-range] .number{font-size:27px;letter-spacing:-.03em}.result-label{font-weight:650;font-size:15px}.result p{font-size:15px}.tool-illustration{margin-top:28px}.tool-illustration img{border-radius:12px;aspect-ratio:5/4;object-fit:cover}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.top{min-height:68px;flex-wrap:wrap;gap:0 14px;padding-top:12px}.top nav{order:3;width:100%;justify-content:space-between;gap:8px;padding-top:5px}.top .theme{margin-left:auto;min-height:44px;font-size:12px;padding:6px 10px}.brand{font-size:20px}.brand i{width:22px;height:22px}.hero{padding-block:30px}.hero-grid{grid-template-columns:1fr;gap:28px}.hero-image{order:2;max-width:100%}.hero .answer{font-size:16px;margin-top:18px;line-height:1.6}.hero-image img{max-height:300px;border-radius:50px 50px 12px 12px}.hero-image:after{border-radius:40px 40px 5px 5px}.home-hero .hero-image{display:none}.eyebrow{font-size:11px;margin-bottom:14px}.meta{font-size:12px;margin-top:16px}.section{padding-block:30px}.section-head{display:block;margin-bottom:20px}.section-head p{margin-top:12px;font-size:15px}.grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace{grid-template-columns:1fr;gap:16px;margin-bottom:30px}.fields{gap:16px;grid-template-columns:1fr}.panel{padding:22px}.result{position:static;order:-1}.number{font-size:32px;margin-block:10px}.details-grid{grid-template-columns:1fr;gap:30px}.footer-top{display:block}.footer nav{margin-top:20px}.footer{margin-top:36px;padding-block:30px}.tool-hero{padding-top:16px;padding-bottom:24px}.tool-hero h1{font-size:35px}.tool-hero .answer{font-size:16px;line-height:1.55}.breadcrumbs{margin-top:8px;font-size:12px}.breadcrumbs a{min-height:40px}h1{font-size:40px}.quick-grid h3{font-size:16px}.footer .brand{margin-bottom:12px}}
@media(min-width:801px){.home-art-mobile{display:none}}
.brand{min-height:44px}nav a{min-width:44px}
@media(max-width:800px){.card p:not(.tag),.source,.note,.footer p:not(.small){font-size:15px}.result .eyebrow{display:none}.result .number{font-size:27px}.result{padding:18px 22px}.result p{font-size:15px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
}
@layer components{
.card{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:25px;position:relative;min-width:0}.card a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px;font-weight:650;text-decoration:none;color:var(--ink)}.card a:after{content:"↗";color:var(--teal);font-size:23px;font-weight:400}.card:focus-within,.card:hover{border-color:var(--teal)}.card p{font-size:14px;line-height:1.6;color:var(--muted);margin-top:12px}.card .tag{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);margin-bottom:8px}.quick-grid .card{padding:16px 18px}.quick-grid .card p{margin-top:5px;font-size:13px}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid var(--teal);border-radius:8px;padding:10px 16px;background:var(--teal);color:var(--paper);font-size:14px;font-weight:650;text-decoration:none}.button.secondary{background:transparent;color:var(--teal);border-color:var(--line)}label{display:block;font-size:14px;font-weight:600;line-height:1.45;margin-bottom:8px}label small{display:block;color:var(--muted);font-weight:400;font-size:12px}input,select{display:block;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);font-size:17px;min-width:0}input:invalid:not(:placeholder-shown){border-color:var(--focus)}.note{padding:16px 18px;border-left:3px solid var(--teal);background:var(--tint);font-size:14px;color:var(--ink);margin-top:24px}.formula{display:block;padding:20px;border:1px solid var(--line);border-radius:8px;font-family:ui-monospace,Consolas,monospace;font-size:14px;line-height:1.65;background:var(--panel);overflow-wrap:anywhere}.source{font-size:14px;line-height:1.65;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.source a{display:inline-block;min-height:44px;padding-block:9px;overflow-wrap:anywhere}.linklist{list-style:none;padding:0;margin:0}.linklist li{border-bottom:1px solid var(--line)}.linklist a{display:flex;min-height:50px;align-items:center;justify-content:space-between;font-size:15px;text-decoration:none}.linklist a:after{content:"→"}.pill{display:inline-block;padding:5px 10px;background:var(--tint);color:var(--teal);border:1px solid var(--line);border-radius:99px;font-size:12px;margin-top:15px}.count{color:var(--muted);font-size:13px;margin-top:8px}.search{max-width:540px;margin-bottom:28px}.statement{border-top:3px solid var(--teal);padding-top:24px}.statement strong{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:27px;font-weight:400;display:block;line-height:1.2;margin-bottom:14px}.home-art-mobile{margin-top:30px}.home-art-mobile img{border-radius:16px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
}

.founders{margin-top:28px}.founders img{border-radius:12px;max-width:450px;height:auto}.founders figcaption{font-size:15px;margin-top:12px;color:var(--muted)}.founder-story{border-top:1px solid var(--line);padding-top:28px}.founder-story p{margin-top:18px}.publisher-credit{margin-top:24px}.publisher-credit a{display:inline-flex;min-height:44px;align-items:center;color:var(--ink);font-size:15px}.footer .small{margin-top:12px}

.directory-art-phone{display:none}@media(max-width:800px){.directory-hero .hero-image{display:none}.directory-art-phone{display:block;margin-top:28px}.directory-art-phone img{border-radius:12px}}

.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.table-scroll:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sun-table table{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}.sun-table th,.sun-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}.sun-table thead th{font-weight:650;background:var(--tint)}.sun-table tbody th{font-weight:500}.sun-table tbody tr:last-child>*{border-bottom:0}.sun-table .count{margin-top:12px}@media(max-width:800px){.sun-table table{font-size:13px}.sun-table th,.sun-table td{padding:8px 4px}.sun-table th:first-child,.sun-table td:first-child{padding-left:8px}.sun-table thead th{white-space:normal;vertical-align:bottom}.sun-table td:last-child{white-space:normal}}

/* 25 October: task-first layouts and private chat only. */
@font-face{font-family:"Noto Sans Thai";src:url(/assets/fonts/noto-sans-thai.1f5a173641bb.woff2) format("woff2");font-style:normal;font-weight:100 900;font-display:optional}
:root{--control:#817b75}
:root[data-theme=dark]{--control:#8d8780}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--control:#8d8780}}
body{padding-bottom:calc(72px + env(safe-area-inset-bottom));overflow-wrap:break-word}
.top{position:relative;flex-wrap:wrap;gap:12px}
.top>.brand{margin-right:auto}
.top .theme{flex:none;width:44px;height:44px;min-height:44px;padding:0;font-size:22px;margin:0;border-color:var(--control)}
.main-nav{order:3}
.language-switcher{position:relative;flex:none;order:2}
.language-switcher summary{display:flex;align-items:center;justify-content:center;list-style:none;min-height:44px;min-width:44px;padding:6px;border:1px solid var(--control);border-radius:99px;font-size:14px;font-weight:650;cursor:pointer}
.language-switcher summary::-webkit-details-marker{display:none}
.top .languages{position:absolute;inset-inline-end:0;top:calc(100% + 8px);z-index:50;display:flex;flex-direction:column;align-items:stretch;gap:0;width:180px;padding:8px;background:var(--panel);border:1px solid var(--control);border-radius:12px;box-shadow:0 10px 25px #0002}
.languages a{min-height:44px;padding-inline:12px;font-size:15px}
.languages a[aria-current=page]{background:var(--tint);border-radius:6px}
.hero-image img,.tool-illustration img{height:auto;max-height:none;object-fit:contain}
.category-art{max-width:600px;margin:20px auto 40px}
.category-art img{border-radius:16px;aspect-ratio:5/4;object-fit:contain}
.workspace{scroll-margin-top:20px}
.result{min-height:270px}
.advanced{margin-top:20px;border-top:1px solid var(--line)}
.advanced summary{padding:14px 0;min-height:48px;cursor:pointer;font-weight:650}
.advanced .fields{padding-top:12px}
input,select{border-color:var(--control)}
label small{font-size:14px;line-height:1.45}
.field-error{font-size:14px;line-height:1.5;padding-top:8px;color:var(--ink)}
input[aria-invalid=true]{border-width:2px}
.button.secondary{border-color:var(--control)}
.button:disabled{opacity:.55;cursor:not-allowed}
.result-actions{gap:8px;margin-top:18px}
.result-actions .button{flex:1 1 auto}
.breadcrumbs a{min-height:44px}
.prose a:not(.button){text-underline-offset:.2em}
h1,h2,h3{overflow-wrap:anywhere;hyphens:auto}
html[lang=th] body,html[lang=th] h1,html[lang=th] h2,html[lang=th] h3{font-family:Geist,"Noto Sans Thai",sans-serif;letter-spacing:0}
html[lang=th] h1,html[lang=th] h2{line-height:1.35}
html[lang=th] .statement strong{font-family:"Noto Sans Thai",sans-serif;font-style:normal}
.tg-float{position:fixed;z-index:30;display:flex;align-items:center;max-width:calc(100vw - env(safe-area-inset-left) - env(safe-area-inset-right));background:var(--ink);color:var(--paper);box-shadow:0 5px 20px #0003}
.tg-float[hidden]{display:none!important}
.tg-float :focus-visible{outline:3px solid var(--paper);outline-offset:-5px}
.tg-float-link{display:flex;align-items:center;justify-content:center;gap:8px;flex:1 1 auto;min-width:0;min-height:48px;padding:8px 12px;color:var(--paper);font-size:15px;line-height:1.4;font-weight:650;text-decoration:none;white-space:normal;overflow-wrap:anywhere}
.tg-float-link:hover{text-decoration:underline}
.tg-close{flex:0 0 44px;width:44px;height:44px;margin:2px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;font-size:24px;line-height:1}
.tg-close:hover{background:#8884}
@media(min-width:768px){.tg-float{right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));border-radius:99px;max-width:min(480px,calc(100vw - 48px))}}
@media(max-width:767px){.tg-float{left:0;right:0;bottom:0;padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);min-height:calc(48px + env(safe-area-inset-bottom))}}
@media(max-width:800px){
 .top{gap:8px;padding-top:8px}.top .main-nav{width:100%;order:3;padding-top:0}.top .language-switcher{order:2}.top .brand{font-size:19px}
 .hero{padding-block:24px}.hero .answer{font-size:16px;line-height:1.55;margin-top:14px}
 .home-hero h1{font-size:clamp(32px,9vw,40px)}
 .home-hero{padding-bottom:12px}.home-hero+.section{padding-top:18px}.home-hero+.section .section-head{margin-bottom:12px}.quick-grid .card{padding:12px 14px}
 .tool-hero{padding-top:12px;padding-bottom:22px}.tool-hero h1{font-size:clamp(28px,8.2vw,35px)}
 .result{order:0;padding:22px;min-height:260px}.fields{gap:18px}
 .breadcrumbs{margin-top:4px}.breadcrumbs a{min-height:44px}.card p:not(.tag){font-size:15px}
 .top .languages{width:180px;order:0;padding:8px;gap:0}.top .languages a{font-size:15px}
 .category-art{margin-top:8px}.hero-image img{max-height:none}
 .footer{padding-bottom:30px}
}
@media(prefers-reduced-motion:reduce){.tg-float{transition:none;animation:none}}
@media print{
 :root{color-scheme:light;--paper:#fff;--panel:#fff;--ink:#000;--muted:#333;--line:#888;--tint:#fff}
 body{padding:0;font-size:12pt}.top,.footer,.tg-float,.skip,.button-row,.details-grid aside,.tool-illustration,.category-art,.hero-image{display:none!important}
 .wrap{width:100%}.hero{padding:10px 0}.workspace,.details-grid{display:block}.panel{margin:12px 0;padding:14px;break-inside:avoid}.result{position:static;min-height:0}.table-scroll{overflow:visible}
}
