/* Hallmark · modern-minimal · custom Exploera identity · documentation workbench · N9 · Ft2
   Hallmark · pre-emit critique: P4 H5 E4 S5 R5 V4 · existing identity and token system; Local responsive review; PRD pending. */
@import url('/tokens.css');
*{box-sizing:border-box}html,body{margin:0;overflow-x:clip}body{font:var(--text-body)/1.75 var(--font-body);color:var(--color-ink);background:var(--color-paper)}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}button,a,input,summary,select{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--color-accent)}.skip{position:absolute;top:-100px;left:var(--space-4);background:var(--color-paper);padding:var(--space-3);z-index:5}.skip:focus{top:var(--space-2)}.masthead{min-height:78px;border-bottom:var(--rule-width) solid var(--color-line);display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-8);gap:var(--space-4);flex-wrap:wrap}.brand{color:var(--color-ink);font-size:1.5rem;font-weight:750;letter-spacing:-.06em;white-space:nowrap}.brand span{margin-left:var(--space-3);padding-left:var(--space-3);border-left:var(--rule-width) solid var(--color-line);font-size:var(--text-small);font-weight:500;letter-spacing:0;color:var(--color-muted)}.masthead nav{display:flex;gap:var(--space-6);flex-wrap:wrap}.masthead nav a{color:var(--color-muted);font-size:var(--text-small);white-space:nowrap}.workspace{max-width:1600px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr)}.sidebar{padding:var(--space-6);border-bottom:var(--rule-width) solid var(--color-line);background:var(--color-wash)}.search label{display:block;font-size:var(--text-small);font-weight:600;margin-bottom:var(--space-2)}input,select{min-width:0;max-width:100%;width:100%;padding:.65rem .75rem;border:var(--rule-width) solid var(--color-line);border-radius:var(--radius-control);background:var(--color-paper);color:var(--color-ink)}#search-count{font-size:var(--text-small);color:var(--color-muted);min-height:1.2rem;margin:.3rem 0}.group-title,.eyebrow{font-size:.66rem;letter-spacing:.12em;font-weight:700;color:var(--color-muted);margin:var(--space-6) 0 var(--space-2)}.side-link{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:.4rem .65rem;margin:.1rem -.65rem;color:var(--color-muted);border-radius:var(--radius-control);font-size:.85rem}.side-link:hover{color:var(--color-ink);background:var(--color-line);text-decoration:none}.side-link[aria-current=page]{color:var(--color-accent);background:var(--color-tint);font-weight:600}.sidebar-foot{margin-top:var(--space-8);padding-top:var(--space-4);border-top:var(--rule-width) solid var(--color-line);font-size:var(--text-small);color:var(--color-muted)}main{min-width:0;padding:var(--space-6) var(--space-4) var(--space-12)}#status{padding:.65rem .9rem;background:var(--color-warning-bg);color:var(--color-warning);border-radius:var(--radius-control);font-size:var(--text-small);margin-bottom:var(--space-8)}article{max-width:850px;margin:auto}h1,h2,h3{font-family:var(--font-display);font-style:normal;line-height:1.25;min-width:0;overflow-wrap:anywhere}h1{font-size:var(--text-title);font-weight:650;letter-spacing:-.04em;margin:var(--space-2) 0 var(--space-6)}h2{font-size:1.25rem;letter-spacing:-.02em;margin:var(--space-12) 0 var(--space-4);padding-top:var(--space-4);border-top:var(--rule-width) solid var(--color-line)}h3{font-size:1rem}.lede{font-size:1.12rem;line-height:1.8;color:var(--color-muted);max-width:65ch}.pill{display:inline-block;padding:.1rem .5rem;border-radius:var(--radius-control);font:var(--text-small)/1.7 var(--font-code);color:var(--color-accent);background:var(--color-tint)}.step{display:grid;grid-template-columns:32px minmax(0,1fr);gap:var(--space-4);margin:var(--space-6) 0}.step-number{font:var(--text-small)/2 var(--font-code);color:var(--color-accent)}.step h3{margin:.2rem 0}.step p{margin:var(--space-2) 0;color:var(--color-muted)}.note{padding:var(--space-4);border-left:3px solid var(--color-accent);background:var(--color-wash);margin:var(--space-6) 0;font-size:.88rem}.code-wrap{min-width:0;margin:var(--space-4) 0}.code-tools{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-small);color:var(--color-muted);margin-bottom:var(--space-2)}button{border:var(--rule-width) solid var(--color-line);background:var(--color-paper);border-radius:var(--radius-control);padding:.25rem .65rem;color:var(--color-ink);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-default)}button:hover{background:var(--color-tint)}button:active{transform:translateY(1px)}button:disabled{opacity:.6;cursor:default}pre{max-width:100%;overflow:auto;padding:var(--space-6);background:var(--color-code);color:var(--color-code-ink);border-radius:var(--radius-control);font:.78rem/1.8 var(--font-code);tab-size:2}code{font-family:var(--font-code);overflow-wrap:anywhere}.table-wrap{width:100%;overflow:auto}table{border-collapse:collapse;width:100%;font-size:.82rem}th,td{border-bottom:var(--rule-width) solid var(--color-line);text-align:left;padding:.75rem .5rem;vertical-align:top;overflow-wrap:anywhere}th{font-size:var(--text-small);color:var(--color-muted)}details{border-bottom:var(--rule-width) solid var(--color-line);padding:var(--space-3) 0}summary{cursor:pointer;overflow-wrap:anywhere}.context{display:none}.context a{display:block;font-size:var(--text-small);color:var(--color-muted);margin:var(--space-3) 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-info{margin-top:var(--space-8);padding-top:var(--space-4);border-top:var(--rule-width) solid var(--color-line);font-size:var(--text-small);color:var(--color-muted)}footer{max-width:1600px;margin:auto;padding:var(--space-6) var(--space-8);border-top:var(--rule-width) solid var(--color-line);font-size:var(--text-small);color:var(--color-muted);display:flex;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.operation-title{font-size:1.3rem;line-height:1.6;font-family:var(--font-code);letter-spacing:-.02em}.result{display:block;border-bottom:var(--rule-width) solid var(--color-line);padding:var(--space-4) 0;overflow-wrap:anywhere}.result small{display:block;color:var(--color-muted)}.empty{padding:var(--space-8) 0;color:var(--color-muted)}.filters{display:flex;gap:var(--space-3);flex-wrap:wrap}.filters select{width:auto;flex:1 1 160px}.schema{padding-left:var(--space-4);border-left:var(--rule-width) solid var(--color-line)}[hidden]{display:none!important}@media(min-width:48rem){.workspace{grid-template-columns:245px minmax(0,1fr)}.sidebar{border-right:var(--rule-width) solid var(--color-line);border-bottom:0}.masthead{padding-inline:var(--space-8)}main{padding:var(--space-12) var(--space-8)}}@media(min-width:78rem){.workspace{grid-template-columns:255px minmax(0,1fr) 205px}.context{display:block;padding:var(--space-12) var(--space-6)}main{padding-inline:var(--space-12)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

#menu-toggle{width:100%;text-align:left;margin-top:var(--space-2);min-height:44px}.sidebar nav{display:none}#menu-toggle[aria-expanded=true]+nav{display:block}.sidebar-foot{display:none}@media(min-width:48rem){#menu-toggle{display:none}.sidebar nav,.sidebar-foot{display:block}}
.contract-info p{overflow-wrap:anywhere}.result{white-space:normal}.result small{font-family:var(--font-body)}@media(pointer:coarse){button{min-height:44px}}

/* Same documentation skeleton; Thai wrapping and visible locale control. */
.language-switch{align-items:center}.language-switch a{padding:.35rem .65rem;border:1px solid var(--color-line);border-radius:var(--radius-control);min-height:44px;display:inline-flex;align-items:center}.language-switch a[aria-current=true]{background:var(--color-tint);color:var(--color-accent);font-weight:650}html[lang=th] h1,html[lang=th] h2,html[lang=th] h3{letter-spacing:0;line-height:1.5}html[lang=th] .eyebrow,html[lang=th] .group-title{letter-spacing:0;font-size:.78rem}html[lang=th] .side-link{white-space:normal;overflow-wrap:anywhere}html[lang=th] .context a{white-space:normal}.code-tools{gap:var(--space-3)}.code-tools span{overflow-wrap:anywhere}#menu-toggle{white-space:normal}

/* Reference index: existing Exploera tokens and documentation workbench. */
.reference-download{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-3)}.reference-help{color:var(--color-muted);font-size:var(--text-small);margin:var(--space-2) 0 var(--space-4)}.reference-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);padding-block:var(--space-4);border-block:var(--rule-width) solid var(--color-line)}.reference-field{min-width:0;font-size:var(--text-small);font-weight:600}.reference-field>span{display:block;margin-bottom:var(--space-2)}.reference-query{grid-column:span 2}.reference-clear{align-self:end;min-height:44px}.reference-jump{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);padding-block:var(--space-3);border-bottom:var(--rule-width) solid var(--color-line)}.reference-jump-link{font-size:var(--text-small);white-space:nowrap;padding-block:var(--space-2)}.reference-count{font-size:var(--text-small);color:var(--color-muted);margin-block:var(--space-6)}.reference-category{scroll-margin-top:var(--space-6);margin-block:var(--space-12)}.reference-category h2{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-3);font-style:normal}.group-count{font:var(--text-small)/1.4 var(--font-code);color:var(--color-muted);font-weight:400}.reference-module{margin-top:var(--space-8)}.reference-module h3{display:flex;gap:var(--space-3);align-items:baseline;margin:0;padding-bottom:var(--space-3);border-bottom:var(--rule-width) solid var(--color-line);overflow-wrap:anywhere;min-width:0}.operation-row{display:grid;grid-template-columns:4rem minmax(0,1fr);gap:var(--space-3);border-bottom:var(--rule-width) solid var(--color-line);padding:var(--space-4) var(--space-2);color:var(--color-ink);transition:background var(--dur-fast) var(--ease-default)}.operation-row:hover{background:var(--color-wash);text-decoration:none}.operation-row:active{background:var(--color-tint)}.operation-method{font:600 var(--text-small)/1.8 var(--font-code);color:var(--color-accent)}.operation-body{min-width:0}.operation-path{display:block;font:var(--text-small)/1.8 var(--font-code);overflow-wrap:anywhere}.operation-summary{display:block;color:var(--color-muted);margin-top:var(--space-1);overflow-wrap:anywhere}.operation-kind{display:inline-block;color:var(--color-muted);font:var(--text-small)/1.8 var(--font-code);margin-top:var(--space-2)}.reference-results{min-width:0}#status{background:var(--color-wash);color:var(--color-muted)}@media(max-width:40rem){.reference-filters{grid-template-columns:minmax(0,1fr)}.reference-query{grid-column:auto}.reference-category h2{font-size:1.3rem}.operation-row{grid-template-columns:3.3rem minmax(0,1fr);gap:var(--space-2)}}

.reference-module{scroll-margin-top:var(--space-6)}.reference-module-menu{margin:var(--space-4) 0 var(--space-6)}.reference-module-menu summary{font-size:var(--text-small);color:var(--color-accent)}.reference-module-menu nav{display:flex;gap:var(--space-2) var(--space-4);flex-wrap:wrap;padding-top:var(--space-3)}
