@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/playfair-display-latin-400-normal-CFtfchNt.woff2)format("woff2"),url(/assets/playfair-display-latin-400-normal-DHYHbkg3.woff)format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/playfair-display-latin-600-normal-CZLGqjJe.woff2)format("woff2"),url(/assets/playfair-display-latin-600-normal-CxxueQ0Z.woff)format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/playfair-display-vietnamese-400-normal-BV2APVTb.woff2)format("woff2"),url(/assets/playfair-display-vietnamese-400-normal-BbvUAu4N.woff)format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/playfair-display-vietnamese-600-normal-ICsRR-qJ.woff2)format("woff2"),url(/assets/playfair-display-vietnamese-600-normal-BPJkAZPN.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-400-normal-DQi5PRDE.woff2)format("woff2"),url(/assets/source-sans-3-latin-400-normal-AFMiCETP.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/source-sans-3-latin-500-normal-DiWS0tcR.woff2)format("woff2"),url(/assets/source-sans-3-latin-500-normal-BtDzq-z9.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-latin-600-normal-DeckBYAU.woff2)format("woff2"),url(/assets/source-sans-3-latin-600-normal-BvDVuF-j.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-vietnamese-400-normal-CwtaIDr2.woff2)format("woff2"),url(/assets/source-sans-3-vietnamese-400-normal-dYp9C364.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/source-sans-3-vietnamese-500-normal-BSXhk166.woff2)format("woff2"),url(/assets/source-sans-3-vietnamese-500-normal-7g9Z1MMl.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-vietnamese-600-normal-B2sTNYey.woff2)format("woff2"),url(/assets/source-sans-3-vietnamese-600-normal-DpSexF-T.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff")}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial}}}@layer theme{:root,:host{--font-sans:"Source Sans 3", system-ui, sans-serif;--font-mono:"IBM Plex Mono", monospace;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:#fafaf8;--color-foreground:#1a1a1a;--color-muted:#f5f3f0;--color-muted-foreground:#62615f;--color-accent:#9a6e08;--color-accent-secondary:#c59a3d;--color-border:#e3dfd8;--color-card:#fff;--color-ring:#9a6e08;--font-display:"Playfair Display", Georgia, serif;--shadow-soft:0 1px 2px #1a1a1a0a;--shadow-refined:0 12px 30px #1a1a1a0f}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.z-10{z-index:10}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.flex{display:flex}.hidden{display:none}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.h-\[76px\]{height:76px}.h-px{height:1px}.max-w-\[18ch\]{max-width:18ch}.flex-1{flex:1}.scroll-mt-20{scroll-margin-top:calc(var(--spacing) * 20)}.scroll-mt-24{scroll-margin-top:calc(var(--spacing) * 24)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-border{border-color:var(--color-border)}.border-border\/70{border-color:#e3dfd8b3}@supports (color:color-mix(in lab, red, red)){.border-border\/70{border-color:color-mix(in oklab, var(--color-border) 70%, transparent)}}.bg-border{background-color:var(--color-border)}.bg-foreground{background-color:var(--color-foreground)}.bg-muted\/50{background-color:#f5f3f080}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--color-muted) 50%, transparent)}}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[0\.68rem\]{font-size:.68rem}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.text-accent{color:var(--color-accent)}.text-background{color:var(--color-background)}.text-foreground{color:var(--color-foreground)}.text-muted-foreground{color:var(--color-muted-foreground)}.uppercase{text-transform:uppercase}@media (width>=40rem){.sm\:flex-row{flex-direction:row}}@media (width>=48rem){.md\:mt-12{margin-top:calc(var(--spacing) * 12)}.md\:mt-16{margin-top:calc(var(--spacing) * 16)}.md\:mb-12{margin-bottom:calc(var(--spacing) * 12)}.md\:mb-16{margin-bottom:calc(var(--spacing) * 16)}.md\:flex{display:flex}.md\:hidden{display:none}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:justify-between{justify-content:space-between}.md\:pb-10{padding-bottom:calc(var(--spacing) * 10)}}}:root{color:var(--color-foreground);background:var(--color-background);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{background:var(--color-background);min-height:100vh;color:var(--color-foreground);letter-spacing:.008em;margin:0;font-size:1rem;line-height:1.7;overflow-x:hidden}body:before{z-index:100;pointer-events:none;content:"";opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.055'/%3E%3C/svg%3E");position:fixed;inset:0}::selection{color:var(--color-foreground);background:#c59a3d47}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--color-ring);outline-offset:4px}button{font:inherit}.admin-login-page{background:var(--color-background);place-items:center;min-height:100svh;padding:2rem;display:grid;position:relative;overflow:hidden}.admin-login-page:before,.admin-login-page:after{content:"";background:var(--color-border);width:1px;height:32vh;position:absolute}.admin-login-page:before{top:0;left:18%}.admin-login-page:after{bottom:0;right:18%}.admin-login-mark{color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.16em;font-size:.68rem;font-weight:500;position:absolute;top:2rem;left:2rem}.admin-login-card{z-index:1;border:1px solid var(--color-border);border-top-color:var(--color-accent);background:var(--color-card);width:min(100%,30rem);box-shadow:var(--shadow-refined);padding:clamp(2rem,5vw,4rem)}.admin-login-card h1{font-family:var(--font-display);letter-spacing:-.035em;margin:1rem 0 0;font-size:clamp(2.5rem,7vw,4rem);font-weight:400;line-height:1}.admin-login-copy{color:var(--color-muted-foreground);margin:1.5rem 0 2rem}.admin-login-form,.admin-stack,.admin-editor-sections{display:grid}.admin-login-form{gap:1.25rem}.admin-back-link{color:var(--color-muted-foreground);margin-top:2rem;font-size:.875rem;text-decoration:none;display:inline-block}.admin-field{gap:.45rem;min-width:0;display:grid}.admin-field__label{color:var(--color-foreground);font-family:var(--font-mono);letter-spacing:.11em;text-transform:uppercase;font-size:.67rem;font-weight:500}.admin-field__hint,.admin-field__error{color:var(--color-muted-foreground);font-size:.78rem;line-height:1.4}.admin-field__error,.admin-form-error{color:#8b2f2f}.admin-input{border:1px solid var(--color-border);width:100%;min-height:46px;color:var(--color-foreground);background:var(--color-card);font-family:var(--font-sans);border-radius:4px;outline:0;padding:.68rem .8rem;font-size:1rem;transition:border-color .15s ease-out,box-shadow .15s ease-out}.admin-textarea{resize:vertical;min-height:8rem;line-height:1.6}.admin-input:hover{border-color:#c7c0b7}.admin-input:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px #9a6e0821}.admin-primary-button,.admin-secondary-button,.admin-add-button{cursor:pointer;border-radius:4px;justify-content:center;align-items:center;min-height:44px;font-size:.88rem;font-weight:600;text-decoration:none;transition:color .15s ease-out,background .15s ease-out,border-color .15s ease-out;display:inline-flex}.admin-primary-button{border:1px solid var(--color-accent);color:#fff;background:var(--color-accent);padding:.7rem 1.35rem}.admin-primary-button:hover:not(:disabled){background:#805a05;border-color:#805a05}.admin-secondary-button{border:1px solid var(--color-border);color:var(--color-foreground);background:var(--color-card);padding:.7rem 1.15rem}.admin-secondary-button:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.admin-primary-button:disabled,.admin-secondary-button:disabled,.admin-add-button:disabled{opacity:.46;cursor:not-allowed}.admin-form-error{margin:0;font-size:.875rem}.admin-state{text-align:center;place-content:center;justify-items:center;min-height:100svh;padding:2rem;display:grid}.admin-state--error h1{font-family:var(--font-display);margin:.75rem 0;font-size:clamp(2.25rem,6vw,4.5rem);font-weight:400}.admin-page{background:var(--color-background);min-height:100svh;padding-bottom:7rem}.admin-header{z-index:55;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fafaf8f0;justify-content:space-between;align-items:center;min-height:66px;padding-inline:clamp(1rem,4vw,3rem);display:flex;position:sticky;top:0}.admin-wordmark{color:var(--color-foreground);font-family:var(--font-display);font-size:1.35rem;text-decoration:none}.admin-header>div{color:var(--color-muted-foreground);align-items:center;gap:1rem;font-size:.8rem;display:flex}.admin-header-nav{align-items:center;gap:.4rem;display:flex}.admin-header-nav a{min-height:38px;color:var(--color-muted-foreground);border:1px solid #0000;padding:.45rem .75rem;font-size:.8rem;text-decoration:none}.admin-header-nav a:hover,.admin-header-nav a[aria-current=page]{border-color:var(--color-border);color:var(--color-foreground);background:var(--color-card)}.admin-header-context{max-width:45vw;color:var(--color-muted-foreground);font-family:var(--font-mono);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.68rem;overflow:hidden}.admin-header button{min-height:44px;color:var(--color-foreground);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--color-border);-webkit-text-decoration-color:var(--color-border);-webkit-text-decoration-color:var(--color-border);text-decoration-color:var(--color-border);text-underline-offset:4px;background:0 0;border:0}.admin-layout{grid-template-columns:16rem minmax(0,1fr);width:min(100%,90rem);min-width:0;margin-inline:auto;display:grid}.admin-sidebar{border-right:1px solid var(--color-border);height:calc(100svh - 66px);padding:clamp(2rem,4vw,3.5rem) 2rem;position:sticky;top:66px}.admin-sidebar h1{font-family:var(--font-display);margin:.8rem 0 2.5rem;font-size:2rem;font-weight:400;line-height:1.1}.admin-sidebar nav{border-top:1px solid var(--color-border);display:grid}.admin-sidebar nav a{border-bottom:1px solid var(--color-border);min-height:48px;color:var(--color-muted-foreground);grid-template-columns:2rem 1fr;align-items:center;font-size:.9rem;text-decoration:none;display:grid}.admin-sidebar nav a:hover{color:var(--color-foreground)}.admin-sidebar nav span,.admin-sidebar__meta{color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem}.admin-sidebar__meta{color:var(--color-muted-foreground);justify-content:space-between;margin-top:2rem;display:flex}.admin-main{min-width:0;padding:clamp(2rem,6vw,6rem)}.admin-intro{max-width:48rem;padding-bottom:clamp(4rem,8vw,7rem)}.admin-intro h2{max-width:13ch;font-family:var(--font-display);letter-spacing:-.045em;margin:1.2rem 0 1.5rem;font-size:clamp(3rem,6vw,5.75rem);font-weight:400;line-height:.98}.admin-intro>p:last-child{max-width:52ch;color:var(--color-muted-foreground)}.admin-editor-sections{gap:clamp(5rem,10vw,9rem)}.admin-editor-section{scroll-margin-top:6rem}.admin-section-heading{grid-template-columns:3rem 1fr;align-items:start;margin-bottom:2rem;display:grid}.admin-section-heading>span,.admin-item__index{color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.11em;font-size:.68rem}.admin-section-heading h2{font-family:var(--font-display);margin:0;font-size:clamp(2.2rem,4vw,3.5rem);font-weight:400;line-height:1}.admin-section-heading p{max-width:55ch;color:var(--color-muted-foreground);margin:.75rem 0 0}.admin-panel,.admin-item__body,.admin-note-panel{border:1px solid var(--color-border);background:var(--color-card);padding:clamp(1.25rem,3vw,2.25rem)}.admin-panel{gap:2rem;display:grid}.admin-localized-grid,.admin-grid-3,.admin-toggle-grid,.admin-social-row{gap:1rem;display:grid}.admin-localized-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.admin-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-stack{gap:.75rem}.admin-item{border:1px solid var(--color-border);background:var(--color-card)}.admin-item[open]{border-top-color:var(--color-accent);box-shadow:var(--shadow-soft)}.admin-item summary{cursor:pointer;grid-template-columns:2.5rem minmax(0,1fr) auto;align-items:center;min-height:64px;padding:.8rem 1.1rem;list-style:none;display:grid}.admin-item summary::-webkit-details-marker{display:none}.admin-item summary strong{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:1.18rem;font-weight:600;overflow:hidden}.admin-item summary>span:last-child{color:var(--color-muted-foreground);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem}.admin-item__body{background:var(--color-muted);border-width:1px 0 0;gap:1.75rem;display:grid}.admin-item-actions{justify-content:flex-end;gap:.5rem;display:flex}.admin-item-actions button,.admin-danger-action{border:1px solid var(--color-border);min-width:44px;min-height:44px;color:var(--color-muted-foreground);background:var(--color-card);cursor:pointer;padding:.5rem .75rem}.admin-item-actions button:disabled{opacity:.35;cursor:not-allowed}.admin-danger-action:hover{color:#8b2f2f;border-color:#8b2f2f}.admin-danger-action:disabled{opacity:.45;cursor:not-allowed}.admin-add-button{width:100%;color:var(--color-muted-foreground);background:0 0;border:1px dashed #c7c0b7;margin-top:.5rem;padding:.8rem}.admin-add-button:hover{border-color:var(--color-accent);color:var(--color-accent);background:#ffffff8c}.admin-toggle{border:1px solid var(--color-border);background:var(--color-card);cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:58px;padding:.65rem .8rem;display:flex;position:relative}.admin-toggle>span:first-child{display:grid}.admin-toggle strong{font-size:.9rem;font-weight:600}.admin-toggle small{color:var(--color-muted-foreground)}.admin-toggle input{opacity:0;position:absolute}.admin-toggle__track{background:var(--color-muted);border:1px solid #bbb5ac;border-radius:999px;flex:none;width:42px;height:24px;transition:background .15s ease-out,border-color .15s ease-out;position:relative}.admin-toggle__track:after{content:"";background:var(--color-muted-foreground);border-radius:50%;width:16px;height:16px;transition:transform .15s ease-out,background .15s ease-out;position:absolute;top:3px;left:3px}.admin-toggle input:checked+.admin-toggle__track{border-color:var(--color-accent);background:#b8860b24}.admin-toggle input:checked+.admin-toggle__track:after{background:var(--color-accent);transform:translate(18px)}.admin-toggle input:focus-visible+.admin-toggle__track{outline:2px solid var(--color-ring);outline-offset:3px}.admin-subsection-title{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:baseline;margin-top:1rem;padding-bottom:.65rem;display:flex}.admin-subsection-title h3{font-family:var(--font-display);margin:0;font-size:1.5rem;font-weight:400}.admin-subsection-title span{color:var(--color-muted-foreground);font-size:.8rem}.admin-social-row{grid-template-columns:.65fr 1.35fr auto;align-items:end}.admin-note-panel{gap:0;display:grid}.admin-note-panel p{border-bottom:1px solid var(--color-border);color:var(--color-muted-foreground);margin:0;padding:1rem 0}.admin-note-panel p:last-child{border-bottom:0}.admin-message{z-index:20;border:1px solid var(--color-border);background:var(--color-card);box-shadow:var(--shadow-soft);margin-bottom:2rem;padding:.85rem 1rem;font-size:.88rem;position:sticky;top:82px}.admin-message p,.admin-message ul{margin:0}.admin-message ul{max-height:12rem;margin-top:.75rem;padding-left:1.2rem;overflow:auto}.admin-message--error{border-left:3px solid #8b2f2f}.admin-message--success{border-left:3px solid var(--color-accent)}.admin-message button{color:var(--color-accent);cursor:pointer;background:0 0;border:0;margin-top:.75rem;text-decoration:underline}.admin-action-bar{z-index:60;border-top:1px solid var(--color-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fafaf8f5;justify-content:space-between;align-items:center;gap:1.5rem;min-height:82px;padding:.8rem clamp(1rem,4vw,3rem);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #1a1a1a0d}.admin-action-bar>div:first-child{display:grid}.admin-action-bar strong{font-size:.88rem}.admin-action-bar strong.is-dirty{color:var(--color-accent)}.admin-action-bar span{color:var(--color-muted-foreground);font-size:.75rem}.admin-action-bar__buttons{gap:.65rem;display:flex}.admin-preview-bar{z-index:80;min-height:42px;color:var(--color-background);background:var(--color-foreground);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;padding-inline:1.25rem;font-size:.67rem;display:flex;position:sticky;top:0}.admin-preview-bar a{color:inherit}.admin-apps-main,.admin-policy-main{width:min(100% - 2rem,76rem);margin-inline:auto;padding-block:clamp(3rem,7vw,7rem) 9rem}.admin-apps-heading,.admin-policy-titlebar{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:clamp(3rem,7vw,6rem);display:flex}.admin-apps-heading h1,.admin-policy-titlebar h1{font-family:var(--font-display);letter-spacing:-.045em;margin:.75rem 0 0;font-size:clamp(3.25rem,8vw,6.5rem);font-weight:400;line-height:.95}.admin-apps-heading p:last-child{color:var(--color-muted-foreground);margin:1.25rem 0 0}.admin-app-list{border-top:1px solid var(--color-foreground)}.admin-app-row{border-bottom:1px solid var(--color-border);min-height:86px;color:inherit;grid-template-columns:2.5rem minmax(0,1fr) 5rem 8rem 9rem;align-items:center;gap:1rem;padding:1rem;text-decoration:none;transition:background .15s ease-out;display:grid}.admin-app-row:hover{background:var(--color-card)}.admin-app-row>div{display:grid}.admin-app-row strong{font-family:var(--font-display);font-size:1.35rem}.admin-app-row>div span,.admin-app-row>span:nth-child(3),.admin-app-row time{color:var(--color-muted-foreground);font-family:var(--font-mono);letter-spacing:.05em;font-size:.66rem}.admin-apps-empty{border:1px solid var(--color-border);text-align:center;place-content:center;justify-items:center;min-height:22rem;display:grid}.admin-apps-empty h2{font-family:var(--font-display);margin:1rem 0 .5rem;font-size:2rem;font-weight:400}.admin-apps-empty p{color:var(--color-muted-foreground);margin:0}.admin-policy-main>.admin-intro{padding-bottom:clamp(3rem,7vw,6rem)}.admin-policy-titlebar code{color:var(--color-muted-foreground);margin-top:1rem;font-size:.78rem;display:inline-block}.policy-editor-sections{gap:clamp(4rem,8vw,7rem)}.policy-markdown-input{min-height:26rem;font-family:var(--font-mono);font-size:.86rem;line-height:1.65}.policy-editor-preview{border:1px solid var(--color-border);background:var(--color-background)}.policy-editor-preview summary{cursor:pointer;border-bottom:1px solid #0000;min-height:48px;padding:.8rem 1rem;font-weight:600}.policy-editor-preview[open] summary{border-bottom-color:var(--color-border)}.policy-editor-preview .policy-document{max-height:34rem;padding:1.5rem;overflow:auto}.policy-source-switch,.policy-pdf-card,.policy-pdf-actions{align-items:center;gap:1rem;display:flex}.policy-source-switch,.policy-pdf-card{justify-content:space-between}.policy-source-switch span{color:var(--color-muted-foreground)}.policy-source-switch input,.policy-pdf-actions input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.admin-secondary-button.is-disabled{opacity:.46;cursor:not-allowed}.policy-pdf-card{border:1px solid var(--color-border);background:var(--color-background);padding:1.5rem}.policy-pdf-card>div:first-child{gap:.35rem;display:grid}.policy-pdf-card strong{font-family:var(--font-display);font-size:1.45rem}.policy-pdf-card small{color:var(--color-muted-foreground)}.policy-pdf-preview{grid-template-rows:minmax(36rem,1fr) auto;gap:1rem;min-height:calc(100svh - 42px);padding:1rem;display:grid}.policy-pdf-preview iframe{border:1px solid var(--color-border);background:var(--color-card);width:100%;height:100%}.policy-pdf-preview .admin-secondary-button{justify-self:center}.policy-page{background:var(--color-background);min-height:100svh}.policy-header,.policy-footer{width:min(100% - 2rem,64rem);color:var(--color-muted-foreground);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;margin-inline:auto;font-size:.67rem;display:flex}.policy-header{border-bottom:1px solid var(--color-border);min-height:76px}.policy-main{width:min(100% - 2rem,48rem);margin-inline:auto;padding-block:clamp(4rem,9vw,8rem)}.policy-hero{border-bottom:1px solid var(--color-foreground);margin-bottom:clamp(4rem,9vw,7rem);padding-bottom:2rem}.policy-hero h1{font-family:var(--font-display);letter-spacing:-.045em;margin:1rem 0 2rem;font-size:clamp(3rem,8vw,6rem);font-weight:400;line-height:.98}.policy-meta{color:var(--color-muted-foreground);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;gap:1rem;font-size:.67rem;display:flex}.policy-document{color:var(--color-foreground);font-size:1.04rem;line-height:1.8}.policy-document h1,.policy-document h2,.policy-document h3,.policy-document h4{font-family:var(--font-display);letter-spacing:-.02em;margin:2.5em 0 .7em;font-weight:600;line-height:1.2}.policy-document h1{font-size:2.4rem}.policy-document h2{font-size:1.85rem}.policy-document h3{font-size:1.4rem}.policy-document p,.policy-document ul,.policy-document ol,.policy-document blockquote{margin-block:1.1rem}.policy-document a,.policy-state a,.policy-footer a{color:var(--color-accent);text-underline-offset:3px}.policy-document blockquote{border-left:2px solid var(--color-accent);color:var(--color-muted-foreground);margin-inline:0;padding-left:1.25rem}.policy-document code{background:var(--color-muted);font-family:var(--font-mono);padding:.1em .35em;font-size:.85em}.policy-document pre{background:var(--color-foreground);color:var(--color-background);padding:1rem;overflow-x:auto}.policy-document pre code{background:0 0;padding:0}.policy-document table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.policy-document th,.policy-document td{border:1px solid var(--color-border);text-align:left;min-width:8rem;padding:.65rem .8rem}.policy-footer{border-top:1px solid var(--color-border);min-height:100px}.policy-state{text-align:center;place-content:center;justify-items:center;gap:.8rem;min-height:100svh;padding:2rem;display:grid}.policy-state h1{max-width:16ch;font-family:var(--font-display);margin:0;font-size:clamp(2.5rem,7vw,5rem);font-weight:400;line-height:1}.policy-state button{border:1px solid var(--color-border);background:var(--color-card);cursor:pointer;min-height:44px;padding:.65rem 1rem}@media (width<=900px){.admin-layout{grid-template-columns:minmax(0,1fr)}.admin-sidebar{border-right:0;min-width:0;height:auto;padding:2rem 1rem 0;position:static;overflow:hidden}.admin-sidebar h1{margin-bottom:1.25rem}.admin-sidebar nav{border-bottom:1px solid var(--color-border);display:flex;overflow-x:auto}.admin-sidebar nav a{border-bottom:0;min-width:max-content;padding-right:1.5rem}.admin-sidebar__meta{display:none}.admin-main{padding:3rem 1rem 8rem}.admin-grid-3{grid-template-columns:1fr}.admin-app-row{grid-template-columns:2rem minmax(0,1fr) auto}.admin-app-row>span:nth-child(3),.admin-app-row time{display:none}}@media (width<=640px){.admin-login-page{padding:1rem}.admin-login-card{padding:1.5rem}.admin-header>div>span{display:none}.admin-header-nav{margin-left:auto}.admin-header-context{display:none}.admin-localized-grid,.admin-toggle-grid,.admin-social-row{grid-template-columns:1fr}.admin-social-row .admin-danger-action{justify-self:start}.admin-action-bar{align-items:stretch;gap:.65rem;padding:.65rem .75rem}.admin-action-bar>div:first-child{display:none}.admin-action-bar__buttons{width:100%}.admin-action-bar__buttons>*{flex:1;padding-inline:.5rem}.admin-item summary{grid-template-columns:2rem minmax(0,1fr)}.admin-item summary>span:last-child{display:none}.admin-preview-bar{gap:1rem}.admin-apps-heading,.admin-policy-titlebar,.policy-source-switch,.policy-pdf-card,.policy-pdf-actions,.policy-meta{flex-direction:column;align-items:stretch}.admin-apps-heading .admin-primary-button,.policy-pdf-actions>*,.policy-source-switch .admin-secondary-button{width:100%}.admin-app-row{padding-inline:.5rem}.admin-app-row>.status-badge{justify-self:end}.policy-markdown-input{min-height:20rem}}.site-container{width:min(100% - 2rem,64rem);margin-inline:auto}.site-section{padding-block:clamp(5rem,11vw,10rem)}.editorial-rule{background:var(--color-border);border:0;height:1px;margin:0}.skip-link{z-index:200;color:var(--color-background);background:var(--color-foreground);padding:.75rem 1rem;transition:transform .16s ease-out;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fafaf8eb;border-bottom:1px solid #e3dfd8c7;position:sticky;top:0}.wordmark{max-width:12rem;color:var(--color-foreground);font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:1.2rem;line-height:1.1;text-decoration:none;overflow:hidden}.nav-link{color:var(--color-muted-foreground);letter-spacing:.045em;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .18s ease-out;position:relative}.nav-link:after{content:"";background:var(--color-accent);transform-origin:100%;height:1px;transition:transform .18s ease-out;position:absolute;bottom:-.35rem;left:0;right:0;transform:scaleX(0)}.nav-link:hover{color:var(--color-foreground)}.nav-link:hover:after{transform-origin:0;transform:scaleX(1)}.locale-switch{min-height:44px;color:var(--color-border);font-family:var(--font-mono);letter-spacing:.08em;align-items:center;font-size:.65rem;display:flex}.locale-switch button{min-width:30px;min-height:44px;color:var(--color-muted-foreground);cursor:pointer;background:0 0;border:0;transition:color .16s ease-out}.locale-switch button:hover,.locale-switch button.is-active{color:var(--color-foreground)}.menu-button,.close-button{width:44px;height:44px;color:var(--color-foreground);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.menu-button{flex-direction:column;gap:6px}.menu-button span{background:currentColor;width:20px;height:1px}.close-button{font-family:var(--font-display);font-size:2rem}.mobile-navigation{z-index:60;background:var(--color-background);flex-direction:column;display:flex;position:fixed;inset:0}.mobile-nav-link{border-bottom:1px solid var(--color-border);color:var(--color-foreground);font-family:var(--font-display);align-items:baseline;gap:1rem;padding-block:1rem;font-size:clamp(2rem,10vw,3.25rem);line-height:1.1;text-decoration:none;display:flex}.mobile-nav-number{color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.12em;font-size:.65rem}.hero-section{align-items:center;min-height:calc(100svh - 76px);padding-block:clamp(4.5rem,10vw,8rem) 3rem;display:flex;position:relative;overflow:hidden}.ambient-glow{aspect-ratio:1;background:var(--color-accent-secondary);filter:blur(110px);opacity:.055;border-radius:999px;width:min(42rem,85vw);position:absolute;top:3%;left:50%;transform:translate(-50%)}.hero-title{max-width:14ch;font-family:var(--font-display);letter-spacing:-.045em;text-align:center;margin:clamp(1.5rem,4vw,2.75rem) auto 0;font-size:clamp(3rem,8.5vw,6.8rem);font-weight:400;line-height:.98}.hero-statement{max-width:17ch;font-family:var(--font-display);letter-spacing:-.018em;text-align:center;margin:clamp(1.4rem,3vw,2.25rem) auto 0;font-size:clamp(1.75rem,3.5vw,2.75rem);line-height:1.18}.hero-role{color:var(--color-muted-foreground);letter-spacing:.035em;text-align:center;margin-top:1.25rem;font-size:.95rem}.button-link{letter-spacing:.025em;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:.75rem;min-height:48px;padding:.75rem 1.35rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .18s ease-out,background-color .18s ease-out,border-color .18s ease-out,box-shadow .18s ease-out;display:inline-flex}.button-link--primary{color:#fff;background:var(--color-accent);box-shadow:0 4px 14px #9a6e0824}.button-link--primary:hover{background:#815c07;box-shadow:0 7px 18px #9a6e0830}.button-link--secondary{border-color:var(--color-foreground);color:var(--color-foreground);background:0 0}.button-link--secondary:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-muted)}.button-link--ghost{color:var(--color-muted-foreground);padding-inline:0}.section-eyebrow{color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;font-size:.7rem;font-weight:500}.section-title{max-width:20ch;font-family:var(--font-display);letter-spacing:-.035em;margin:0;font-size:clamp(2.35rem,5.4vw,4.3rem);font-weight:400;line-height:1.08}.work-section-title{text-align:center;margin-inline:auto}.editorial-copy{max-width:65ch;color:var(--color-muted-foreground);font-size:clamp(1.05rem,1.8vw,1.2rem);line-height:1.75}.about-grid{gap:3.5rem;display:grid}.current-note{border-top:2px solid var(--color-accent);background:var(--color-card);box-shadow:var(--shadow-soft);align-self:end;padding:2rem 1.75rem 4.75rem;position:relative}.current-note__label{color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;margin-bottom:1.25rem;font-size:.68rem;display:block}.current-note p{color:var(--color-foreground);font-family:var(--font-display);margin:0;font-size:1.35rem;line-height:1.45}.current-note__mark{color:var(--color-accent-secondary);font-size:1.25rem;position:absolute;bottom:1.35rem;right:1.75rem}.project-grid{gap:1.25rem;display:grid}.project-card{border:1px solid var(--color-border);border-top:2px solid var(--color-accent);height:100%;color:inherit;background:var(--color-card);box-shadow:var(--shadow-soft);border-radius:8px;text-decoration:none;transition:border-color .2s ease-out,background-color .2s ease-out,box-shadow .2s ease-out;display:block;overflow:hidden}a.project-card:hover{box-shadow:var(--shadow-refined);background:#fffefb;border-color:#d2c5a9}.project-preview{border-bottom:1px solid var(--color-border);background:#eeeae3;place-items:center;min-height:13rem;display:grid;overflow:hidden}.project-card--featured .project-preview{min-height:18rem}.project-preview--2{background:#ebe6dc}.project-preview--3{background:#f1eee8}.project-preview__paper{background:var(--color-background);border:1px solid #1a1a1a1f;width:66%;min-height:72%;padding:1.4rem;position:relative;transform:rotate(-2deg);box-shadow:0 18px 45px #1a1a1a1c}.project-preview--2 .project-preview__paper{width:76%;transform:rotate(2deg)translateY(8%)}.project-preview--3 .project-preview__paper{transform:rotate(0)}.project-preview__index{color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.1em;margin-bottom:2rem;font-size:.68rem;display:block}.project-preview__line{background:#1a1a1a47;width:68%;height:1px;margin-top:.8rem;display:block}.project-preview__line--long{background:var(--color-foreground);width:92%;height:2px}.project-preview__line--short{width:44%}.project-preview__seal{aspect-ratio:1;border:1px solid var(--color-accent);width:2.5rem;color:var(--color-accent);font-family:var(--font-display);border-radius:999px;place-items:center;font-size:1.1rem;display:grid;position:absolute;bottom:1.4rem;right:1.4rem}.project-card__body{padding:1.5rem}.project-card__title{font-family:var(--font-display);margin:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:600;line-height:1.2}.project-card__summary{color:var(--color-muted-foreground);margin:.9rem 0 0;line-height:1.65}.project-card__footer{border-top:1px solid var(--color-border);color:var(--color-muted-foreground);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:1rem;margin-top:1.75rem;padding-top:1rem;font-size:.63rem;display:flex}.project-tag{color:var(--color-muted-foreground);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem}.status-badge{border:1px solid var(--color-border);min-height:1.5rem;color:var(--color-muted-foreground);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding-inline:.5rem;font-size:.59rem;display:inline-flex}.status-badge--gold{color:var(--color-accent);background:#c59a3d0f;border-color:#9a6e0861}.lab-intro{gap:2rem;display:grid}.tool-row{border-bottom:1px solid var(--color-border);color:inherit;grid-template-columns:2rem 1fr;gap:1rem;padding-block:1.65rem;text-decoration:none;transition:background-color .18s ease-out,padding .18s ease-out;display:grid}a.tool-row:hover{background:var(--color-muted);padding-inline:.75rem}.tool-row__number{color:var(--color-accent);font-family:var(--font-mono);padding-top:.35rem;font-size:.65rem}.tool-row__main h3{font-family:var(--font-display);margin:0;font-size:1.35rem;font-weight:600}.tool-row__main p{max-width:58ch;color:var(--color-muted-foreground);margin:.45rem 0 0;line-height:1.55}.tool-row__meta{flex-wrap:wrap;grid-column:2;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.tool-access{color:var(--color-muted-foreground);font-family:var(--font-mono);letter-spacing:.07em;text-transform:uppercase;font-size:.63rem}.principles-grid{border-top:1px solid #fafaf833;margin-top:clamp(4rem,8vw,7rem);display:grid}.principle-item{border-bottom:1px solid #fafaf833;padding-block:2.25rem}.principle-item__number{color:var(--color-accent-secondary);font-family:var(--font-mono);letter-spacing:.1em;margin-bottom:2rem;font-size:.65rem;display:block}.principle-item h3{color:var(--color-background);font-family:var(--font-display);margin:0;font-size:1.6rem;font-weight:400}.principle-item p{color:#fafaf89e;margin:1rem 0 0;line-height:1.65}.contact-layout{align-items:end;gap:3rem;display:grid}.contact-title{max-width:18ch;font-family:var(--font-display);letter-spacing:-.04em;margin:1rem 0 0;font-size:clamp(2.5rem,6.5vw,5.25rem);font-weight:400;line-height:1.04}.editorial-link{min-height:44px;color:var(--color-muted-foreground);text-underline-offset:5px;align-items:center;gap:.4rem;transition:color .16s ease-out;display:inline-flex}.editorial-link:hover{color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}.reveal{opacity:0;transition:opacity .56s ease-out,transform .56s ease-out;transform:translateY(10px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.loading-screen,.error-screen,.not-found{text-align:center;place-content:center;min-height:100svh;padding:2rem;display:grid}.loading-screen{color:var(--color-muted-foreground);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.loading-mark{color:var(--color-accent);margin-bottom:1rem;font-size:1.5rem;display:block}.error-screen h1,.not-found h1{max-width:16ch;font-family:var(--font-display);margin:1rem auto 2rem;font-size:clamp(2.5rem,7vw,5rem);font-weight:400;line-height:1.08}.error-screen button,.not-found a{border:1px solid var(--color-foreground);min-height:44px;color:var(--color-foreground);cursor:pointer;background:0 0;padding:.7rem 1rem;text-decoration:none}@media (width>=768px){.menu-button,.mobile-navigation{display:none}.site-container{width:min(100% - 4rem,64rem)}.about-grid{grid-template-columns:minmax(0,1.3fr) minmax(16rem,.7fr);align-items:start;gap:clamp(4rem,8vw,7rem)}.project-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.project-grid>div{grid-column:span 5}.project-grid>.project-grid__featured{grid-area:span 2/span 7}.project-card--featured .project-preview{min-height:25rem}.lab-intro{grid-template-columns:1.15fr .85fr;align-items:end;gap:5rem}.tool-row{grid-template-columns:2.5rem 1fr auto;align-items:center;gap:1.5rem;padding-block:1.8rem}.tool-row__meta{grid-column:auto;justify-content:flex-end;min-width:12rem}.principles-grid{grid-template-columns:repeat(3,1fr)}.principle-item{border-bottom:0;border-right:1px solid #fafaf833;min-height:20rem;padding:2.5rem 2rem}.principle-item:first-child{padding-left:0}.principle-item:last-child{border-right:0;padding-right:0}.contact-layout{grid-template-columns:1.35fr .65fr;gap:5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}
