:root{--page-top:clamp(2rem, 5vw, 4.5rem);--sticky-top:calc(var(--content-top) + var(--space-5));--control-radius:999px}.private-view{background:0 0}.private-view :where(h1,h2,h3){font-weight:700}.private-view :focus-visible{outline-color:var(--focus-ring)}.gallery-intro{--on-dark:var(--text);--on-dark-secondary:var(--text);--on-dark-muted:var(--muted);--on-dark-subtle:var(--muted);--dark:var(--panel);--dark-line:var(--line);--accent-on-dark:var(--accent);--shadow-on-dark:var(--float);padding-top:var(--page-top);background:0 0}.gallery-intro-heading{padding-bottom:var(--space-6);align-items:end;gap:var(--space-5)}.gallery-identity{min-width:0}.gallery-intro h1{letter-spacing:-.04em;text-wrap:balance;font-size:clamp(3rem,6.3vw,6rem);line-height:1.08}.private-view[lang=th] .gallery-intro h1{letter-spacing:-.02em;font-size:clamp(2.75rem,5.6vw,5.25rem);line-height:1.3}.gallery-name-counterpart{margin-top:var(--space-3);color:var(--muted);font-size:var(--font-size-body)}.gallery-location{margin-bottom:var(--space-1);flex:none}.gallery-opening{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:7%;padding-block:40px 36px}.gallery-statement h2{letter-spacing:-.025em;font-size:clamp(1.75rem,2.5vw,2.5rem);line-height:1.25}.gallery-statement h2 span{display:block}.private-view[lang=th] .gallery-statement h2{letter-spacing:0;line-height:1.4}.gallery-summary{margin-top:var(--space-4);max-width:44ch}.gallery-hero-actions{align-items:center;gap:var(--space-3) var(--space-5);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.gallery-hero-actions .gallery-button{margin-top:0}.gallery-button{background:var(--accent);color:var(--on-accent);border-radius:999px}.gallery-button:hover{background:var(--accent-hover);box-shadow:none}.gallery-image-action{box-shadow:var(--ring)}.gallery-display-main{border-radius:var(--card-radius);box-shadow:var(--lift);border:0}.showcase-directions>button{box-shadow:var(--ring);background:var(--panel);border:0}.gallery-display figcaption{align-items:start;gap:var(--space-3)}.gallery-display figcaption>span:first-child{flex:none}.gallery-display figcaption>span:last-child{color:var(--text);text-align:left}.gallery-image-action{background:var(--accent);color:var(--on-accent)}.gallery-project-copy:has(.project-story-question) h3{text-wrap:balance;font-size:clamp(1.5rem,2.5vw,2.25rem);line-height:1.3}.gallery-project-copy>.project-story-question{margin:var(--space-4) 0 0;font-size:var(--font-size-body);letter-spacing:0;text-wrap:pretty;font-weight:600;line-height:1.7}.gallery-project-copy>p{max-width:56ch}.gallery-project-meta{gap:var(--space-2);margin-block:var(--space-5)}.gallery-project.selected-work-row{padding-bottom:40px}.gallery-project-image.selected-work-image{border-radius:var(--card-radius);background:var(--surface-muted);box-shadow:none;border:0}.selected-work-row:hover .gallery-project-image.selected-work-image{box-shadow:var(--lift)}.gallery-project-open{box-shadow:var(--ring);border:0}.gallery-practice{background:0 0;border-block:0}.gallery-practice-layout{border-radius:var(--card-radius);background:var(--surface-muted);padding:clamp(1.5rem,4vw,3.5rem)}.gallery-explore a{border-bottom-color:var(--line-strong)}.gallery-contact{width:min(100% - 96px, var(--maxw));margin:var(--space-section) auto 0;border-radius:var(--card-radius);padding-block:clamp(2.5rem,6vw,4.5rem)}.gallery-contact>.gallery-container{width:calc(100% - 2*clamp(1.5rem,5vw,3.5rem))}:where(.gallery-collection-item,.about-record,.contact-letter,.reading-aside-card,.ai-panel,.article-pagination a,.author-card,.access-form,.skills-page .skills-access,.harness-package,.skills-page .skill-card,.gallery-note-list article){border-radius:var(--card-radius);background:var(--panel);box-shadow:var(--ring);border:0}.gallery-note-list article{padding-inline:var(--space-5)}.notes-reading .ai-panel-invite{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface-muted);width:100%;min-height:64px;color:var(--text);box-shadow:none;font:inherit;text-align:left;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 0 clamp(20px,4vw,28px);padding:12px 16px;transition:border-color .15s,background-color .15s;display:grid}.notes-reading .ai-panel-invite:hover{border-color:var(--accent-line);background:var(--surface)}.notes-reading .ai-panel-invite:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.ai-panel-invite-label{overflow-wrap:anywhere;align-items:center;gap:10px;min-width:0;font-size:.9rem;font-weight:600;line-height:1.5;display:inline-flex}.ai-panel-invite-label svg{color:var(--accent);flex-shrink:0}.ai-panel-invite-action{border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:8px 12px;font-size:.82rem;font-weight:600;line-height:1.2;display:inline-flex}.ai-panel-invite-action svg{flex-shrink:0}@media (max-width:560px){.notes-reading .ai-panel-invite{gap:8px;padding:12px}.notes-reading .ai-panel-invite-label{gap:8px}.notes-reading .ai-panel-invite-action{padding-inline:10px}.notes-reading .ai-panel-head{flex-wrap:wrap;gap:8px;padding:12px 14px}.notes-reading .ai-panel-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 14px;display:grid}.notes-reading .ai-panel-form>div{min-width:0}.notes-reading .ai-panel-form>.ui-button:nth-of-type(2),.notes-reading .ai-panel-form>.gallery-text-link{grid-column:1/-1;justify-self:stretch}.notes-reading .ai-panel-hints{padding:0 14px 14px}}:where(.gallery-collection-item,.article-pagination a,.skills-page .skill-card,.gallery-note-list article):hover{box-shadow:var(--lift);transform:translateY(-3px)}.gallery-collection-item:hover{border-color:#0000}.gallery-collection-image{background:var(--surface-muted);border-bottom:0}:where(.tech-chips li,.skill-tiles li){background:var(--surface-muted);border:0;border-radius:999px}.tech-chips li:hover{color:var(--text);box-shadow:var(--ring)}.gallery-index,.skills-page.gallery-index{padding-top:var(--page-top)}.project-side,.reading-aside,.access-form{top:var(--sticky-top)}.project-narrative-section,.skills-collection,.skills-page .skills-access{scroll-margin-top:var(--sticky-top)}@media (max-width:760px){.gallery-intro{padding-top:28px}.gallery-intro-heading{align-items:start;gap:var(--space-3);padding-bottom:var(--space-5)}.gallery-intro h1{font-size:clamp(2.5rem,10vw,3.75rem)}.private-view[lang=th] .gallery-intro h1{font-size:clamp(2.25rem,9.5vw,3.5rem)}.gallery-name-counterpart{margin-top:var(--space-2);font-size:var(--font-size-small)}.gallery-location{font-size:var(--font-size-caption);margin:0}.gallery-opening{gap:var(--space-5);grid-template-columns:minmax(0,1fr);padding-block:24px}.gallery-statement h2{font-size:1.35rem}.gallery-summary{margin-top:var(--space-3);font-size:var(--font-size-small);line-height:1.75}.gallery-hero-actions{margin-top:var(--space-4);gap:var(--space-2) var(--space-4)}.gallery-hero-actions .gallery-text-link{font-size:var(--font-size-small)}.gallery-display figcaption{flex-direction:column;gap:2px}.gallery-display figcaption>span:last-child{max-width:100%}.gallery-intro-foot{gap:0}.gallery-work{padding-top:48px}.gallery-contact{width:calc(100% - 40px)}}.gallery-index-heading{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);margin-bottom:clamp(32px,5vw,64px);padding-bottom:clamp(24px,4vw,48px)}.gallery-index-heading h1,.about-opening h1{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(2.25rem,4.8vw,4.5rem);font-weight:500}.gallery-index-heading p{max-width:48ch;line-height:1.8}.private-view[lang=th] :is(.gallery-index-heading h1,.about-opening h1,.project-opening h1){letter-spacing:-.01em;line-height:1.4}:is(.gallery-project-collection,.about-layout,.contact-layout,.project-opening-summary,.project-narrative)>*{min-width:0}.gallery-project-collection{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3vw,40px)}.gallery-collection-lead{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.about-layout,.contact-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(32px,6vw,88px)}.about-biography{max-width:68ch}.about-record{top:var(--sticky-top);position:sticky}.about-skill-row{grid-template-columns:minmax(0,.7fr) minmax(0,2fr)}.project-opening-summary{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(24px,6vw,80px)}.project-narrative{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(32px,6vw,80px)}.project-opening h1{text-wrap:balance;font-size:clamp(2rem,4.2vw,3.75rem);font-weight:500}.project-gallery-stage{border-radius:var(--card-radius);overflow:hidden}.project-thumbnails{scroll-snap-type:x proximity}.project-thumbnails button{scroll-snap-align:start;border-radius:var(--radius-inset);min-height:44px;overflow:hidden}.reading-layout{grid-template-columns:minmax(0,72ch) minmax(180px,240px);gap:clamp(32px,5vw,72px)}.reading-document{overflow-wrap:anywhere}.reading-toc a{min-height:36px}.gallery-reading-list a{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) auto;gap:clamp(20px,4vw,48px)}.gallery-reading-list h2{text-wrap:pretty}.contact-address{min-width:0;line-height:1.5}.contact-aside .gallery-text-link{min-height:44px}.skills-demo-play{min-width:44px;min-height:44px}.skills-page .skills-access{scroll-margin-top:var(--sticky-top)}@media (max-width:1100px){.gallery-collection-lead{grid-template-columns:minmax(0,1fr)}.gallery-collection-lead .gallery-collection-image{aspect-ratio:16/9;border-right:0;min-height:0}.gallery-collection-lead .gallery-collection-copy{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:24px;display:grid}}@media (max-width:900px){.gallery-index-heading{grid-template-columns:minmax(0,1fr);gap:20px}.about-layout,.contact-layout,.project-opening-summary,.project-narrative{grid-template-columns:minmax(0,1fr);gap:32px}.about-record,.project-side{position:static}.reading-layout{grid-template-columns:minmax(0,1fr);max-width:72ch}.gallery-reading-list a{grid-template-columns:minmax(0,1fr);gap:12px}.reading-toc a{min-height:44px}.project-opening-summary dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.gallery-index-heading h1,.about-opening h1{font-size:clamp(2rem,8vw,3rem)}.gallery-project-collection,.gallery-collection-lead .gallery-collection-copy,.about-skill-row{grid-template-columns:minmax(0,1fr)}.gallery-collection-lead .gallery-collection-copy{gap:0}.about-skill-row{gap:16px}.notes-reading .reading-prose{font-size:1rem;line-height:1.85}.project-opening{margin-bottom:28px}.project-narrative{margin-top:40px}.contact-letter{padding:24px 20px}.contact-address{font-size:clamp(.9rem,4vw,1.4rem)}.skills-page .skills-access{padding:24px 20px}}
