:root{--ci-sage:#9bb37e;--ci-sage-light:#c4d2af;--ci-sage-pale:#e8efd9;--ci-charcoal:#1c1f29;--ci-cream:#faf9f6;--bg-1:#dfe3e8;--bg-2:#f4f4f1;--bg-3:#fbfbf9;--bg-glow:rgba(255,255,255,0.9);--z-overlay:1000;--z-overlay-backdrop:1000;--glass-1:rgba(255,255,255,0.55);--glass-2:rgba(255,255,255,0.75);--glass-3:rgba(255,255,255,0.92);--glass-edge:rgba(255,255,255,0.75);--glass-edge-soft:rgba(255,255,255,0.45);--glass-shadow:0 10px 40px -10px rgba(40,55,78,0.18),0 2px 6px -1px rgba(40,55,78,0.06),inset 0 1px 0 rgba(255,255,255,0.65);--ink:#1a2230;--ink-2:#2b3445;--ink-3:#434b5c;--ink-mute:#5c6678;--ink-dim:#6b7488;--accent:var(--ci-sage);--accent-soft:var(--ci-sage-pale);--success:#2f9a6c;--warn:#815c1c;--warning:var(--warn);--warn-1:var(--warn);--warn-ink:var(--warn);--ok-ink:var(--success);--danger:#c54c46;--info-accent:var(--ci-sage);--sage-deep:#3d5132;--olive-link:#556b2f;--olive-link-hover:#3f5121;--create-bubble:#5b6271;--create-bubble-strong:#3f4554;--status-success-head:#166534;--status-warning-head:#92400e;--status-info-head:#1e40af;--color-bg:var(--bg-2);--color-surface:var(--glass-2);--color-surface-2:var(--glass-1);--color-surface-hover:var(--glass-3);--color-border:var(--glass-edge);--color-border-strong:var(--glass-edge);--color-text:var(--ink);--color-text-muted:var(--ink-3);--color-text-subtle:var(--ink-mute);--color-accent:#0c0c0c;--color-accent-hover:#000000;--color-accent-soft:var(--glass-2);--color-accent-text:var(--ink);--color-success:var(--success);--color-success-bg:rgba(47,154,108,0.15);--color-warning:var(--warn);--color-warning-bg:rgba(192,138,42,0.15);--color-danger:var(--danger);--color-danger-bg:rgba(199,80,73,0.15);--color-info:var(--accent);--color-info-bg:var(--accent-soft);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:1.5rem;--space-8:2rem;--space-10:3rem;--space-12:3rem;--space-16:4rem;--bp-phone:480px;--bp-tablet:768px;--bp-desktop:1024px;--bp-shell:720px;--radius-ctl:6px;--radius-sm:10px;--radius:14px;--radius-pill:999px;--control-h:40px;--control-h-sm:34px;--shadow-sm:0 1px 2px rgba(20,20,16,0.04);--shadow:0 1px 2px rgba(20,20,16,0.04),0 10px 28px -20px rgba(20,20,16,0.22);--shadow-lift:0 24px 60px -34px rgba(20,20,16,0.34);--ease-standard:cubic-bezier(0.2,0,0,1);--ease-decel:cubic-bezier(0.22,0.61,0.36,1);--ease-emphasized:cubic-bezier(0.3,0,0,1);--ease-spring:cubic-bezier(0.34,1.4,0.64,1);--dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;--duration-fast:var(--dur-fast);--duration-base:var(--dur-base);--duration-slow:var(--dur-slow);--elev-0:none;--elev-1:0 1px 2px rgba(40,55,78,0.06),0 1px 3px rgba(40,55,78,0.05);--elev-2:0 4px 12px -4px rgba(40,55,78,0.14),0 2px 4px -2px rgba(40,55,78,0.08);--elev-3:0 12px 30px -8px rgba(40,55,78,0.2),0 4px 8px -4px rgba(40,55,78,0.1);--elev-4:0 24px 56px -12px rgba(40,55,78,0.28),0 8px 16px -8px rgba(40,55,78,0.14);--focus-ring-width:2px;--focus-ring-offset:2px;--rail-gutter:44px;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.75rem;--display-1:40px;--display-2:32px;--display-3:26px;--display-ghost:98px;--text-subhero:22px;--font-display:var(--font-prompt),ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-body:var(--font-sarabun),ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-sans:var(--font-body);--font-serif:var(--font-body);--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--font-thai:var(--font-body)}@layer elements, register;@layer elements{*,:after,:before{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,html{margin:0;padding:0;min-height:100%}body{font-family:var(--font-sans);font-size:15px;line-height:1.5;color:var(--ink);background:linear-gradient(170deg,var(--bg-2) 0,var(--bg-3) 60%);background-attachment:fixed}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}code{font-family:var(--font-mono);font-size:.9em;background:rgba(255,255,255,.5);padding:.1em .3em;border-radius:4px}h1,h2,h3,h4{margin:0;line-height:1.25;letter-spacing:-.01em}h1:lang(th),h2:lang(th),h3:lang(th),h4:lang(th){line-height:1.5}button{font-family:inherit;font-size:inherit}}.app-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:18px;padding-right:var(--rail-gutter)}.surface{background:var(--glass-3);border:1px solid var(--glass-edge);border-radius:var(--radius);box-shadow:var(--glass-shadow);position:relative;overflow:hidden}.surface--padded{padding:22px}.surface__header{padding:18px 22px;border-bottom:1px solid rgba(40,55,78,.08);display:flex;align-items:flex-start;gap:14px}.surface__header>:first-child{flex:1 1;min-width:0}.surface__header>.row{margin-left:auto}.surface__title{font-family:var(--font-serif);font-weight:500;font-size:18px;letter-spacing:-.01em;line-height:1.2;color:var(--ink);margin-right:auto}.surface__subtitle{font-size:var(--text-sm);color:var(--ink-mute);margin-top:4px}.surface__body{padding:18px 22px}.page-header{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px 24px;padding:6px 4px;margin-bottom:18px}.page-header>:first-child{min-width:0}.page-header>.row{margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.page-header__title-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}.page-header__title-aside{display:flex;align-items:baseline;flex-shrink:0}.page-header__title{font-family:var(--font-serif);font-size:28px;font-weight:600;line-height:1.15;letter-spacing:-.01em;color:var(--ink)}.page-header__title em,.page-header__title i{font-style:italic;color:var(--accent);font-weight:400}.page-header__subtitle{font-size:13.5px;color:var(--ink-3);margin-top:6px;max-width:540px}.page-header__back{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:500;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-mute);margin-bottom:10px;text-decoration:none;transition:color .12s ease}.page-header__back:hover{color:var(--ink)}.hub-stack{margin-top:var(--space-4);gap:var(--space-4)}.hub-stack,.stack{display:flex;flex-direction:column}.stack{gap:18px}.row{display:flex;align-items:center;gap:12px}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-weight:500;font-size:10.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-mute);background:transparent;padding:12px 16px;border-bottom:1px solid rgba(40,55,78,.1);white-space:nowrap;vertical-align:top}.table th:first-child{padding-left:20px}.table th:last-child{padding-right:20px}.table td{padding:12px 16px;border-bottom:1px solid rgba(40,55,78,.06);color:var(--ink);vertical-align:middle}.table td:first-child{padding-left:20px}.table td:last-child{padding-right:20px}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:rgba(255,255,255,.35)}.table a{color:var(--olive-link);font-weight:500}.table a:hover{color:var(--olive-link-hover);text-decoration:underline}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.table--sticky thead th{position:-webkit-sticky;position:sticky;top:0;z-index:2;background:var(--paper)}.table__sortbtn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;font:inherit;text-transform:inherit;letter-spacing:inherit}.table__sortbtn:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color,var(--gold-ink,#7d652f));outline-offset:var(--focus-ring-offset);box-shadow:none;border-radius:4px}.table__sortglyph{font-size:9px;line-height:1;color:var(--ink-2,var(--ink))}.table__sortbtn:not(:has(.table__sortglyph)):after{content:"⇅"/"";font-size:9px;line-height:1;color:var(--ink-mute);opacity:.55;transition:opacity .12s ease,color .12s ease}.table__sortbtn:not(:has(.table__sortglyph)):focus-visible:after,.table__sortbtn:not(:has(.table__sortglyph)):hover:after{color:var(--ink-2,var(--ink));opacity:1}.table__filter{display:block;margin-top:6px;min-height:32px;font-size:12px;border:1px solid var(--line-2);border-radius:6px;background:var(--paper);color:inherit;padding:4px 8px;max-width:100%}.table--linked tbody tr{position:relative}.table--linked tbody tr:hover{background:rgba(0,0,0,.02)}.table--linked td{position:relative}.table__rowlink{color:inherit;text-decoration:none;font-weight:500}.table__rowlink:after{content:"";position:absolute;inset:0;z-index:0}.table--linked td>:not(.table__rowlink){position:relative;z-index:1}.table__grouphead td{background:var(--paper-2);font-weight:600;border-top:1px solid var(--line)}.table__grouptoggle{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.table__grouptoggle:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color,var(--gold-ink,#7d652f));outline-offset:var(--focus-ring-offset);box-shadow:none;border-radius:4px}.table__groupcount{color:var(--ink-3);font-weight:500;margin-left:6px}.table__groupagg{margin-left:12px;font-weight:500}.table-facets{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:8px}.table-facets__field{display:inline-flex;align-items:center;gap:8px}.table-facets__label{font-size:10.5px;font-weight:500;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-mute)}.table-facets .table__filter{display:inline-block;margin-top:0;max-width:14rem}.table-facets__value{font-size:12px;color:var(--ink-2,var(--ink))}.table__filtertext{width:100%;min-width:7rem}.table__filtertext::placeholder{color:var(--ink-mute);opacity:1}.table th.table__menucell,.table th.table__num,.table__num{text-align:right}.table__input{display:block;width:100%;box-sizing:border-box;min-height:30px;font:inherit;color:inherit;padding:4px 8px;border:1px solid var(--line-2);border-radius:6px;background:var(--paper)}.table__input--num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.table__input--check{display:inline-block;width:auto;min-height:0;padding:0;accent-color:var(--ci-sage)}.table__input:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color,var(--gold-ink,#7d652f));outline-offset:var(--focus-ring-offset);border-color:var(--focus-ring-color,var(--gold-ink,#7d652f));box-shadow:none}.table__cell--dirty{box-shadow:inset 3px 0 0 0 var(--ink-2,var(--ink))}.table__cell--dirty .table__input{border-color:var(--ink-2,var(--ink))}.table__cellerr{display:block;margin-top:2px;font-size:11px;line-height:1.3;color:var(--warn,var(--ink-2,var(--ink)))}.table__editbar{display:flex;align-items:center;gap:12px;padding:8px 12px;border-top:1px solid var(--line);position:-webkit-sticky;position:sticky;bottom:0;background:var(--paper)}.table__editsummary{font-size:12px;color:var(--ink-2,var(--ink))}.table__editactions{display:flex;gap:8px;margin-left:auto}.table__editdiscard,.table__editsave{all:unset;cursor:pointer;font:inherit;font-size:12px;padding:4px 12px;border:1px solid var(--line-2);border-radius:6px}.table__editsave{border-color:var(--ci-sage)}.table__editsave:disabled{cursor:not-allowed;opacity:.5}.table__editdiscard:focus-visible,.table__editsave:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color,var(--gold-ink,#7d652f));outline-offset:var(--focus-ring-offset);box-shadow:none}.table__menucell{width:40px;text-align:right}.table__kebab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-radius:6px;color:var(--ink-3);cursor:pointer;font:inherit;line-height:1;padding:0 4px}.table__kebab:hover{background:var(--k1-fill,color-mix(in srgb,var(--ink) 5%,transparent));color:var(--ink)}.table__kebab:focus-visible{outline:2px solid var(--ink-3);outline-offset:1px}.table__selcell{width:32px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.pill,.sr-only{white-space:nowrap}.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;font-size:10.5px;font-weight:500;letter-spacing:.2px;border-radius:999px;background:rgba(255,255,255,.7);color:var(--ink-3);border:1px solid var(--glass-edge-soft)}.pill--success{background:rgba(47,154,108,.15);color:var(--success);border-color:transparent}.pill--warning{background:color-mix(in srgb,var(--warn) 15%,transparent);color:var(--warn);border-color:transparent}.pill--danger{background:rgba(199,80,73,.15);color:var(--danger);border-color:transparent}.pill--accent,.pill--info{background:var(--accent-soft);color:var(--sage-deep);border-color:transparent}.page-header__title-aside .pill.pill--header{font-family:var(--font-serif);font-size:var(--display-1);font-weight:500;line-height:1.05;letter-spacing:-.5px;padding:0;border:none;border-radius:0;background:transparent}.page-header__title-aside .pill.pill--header.pill--success{color:var(--status-success-head)}.page-header__title-aside .pill.pill--header.pill--warning{color:var(--status-warning-head)}.page-header__title-aside .pill.pill--header.pill--danger{color:var(--danger)}.page-header__title-aside .pill.pill--header.pill--info{color:var(--status-info-head)}.page-header__title-aside .pill.pill--header.pill--accent{color:var(--sage-deep)}.page-header__title-aside .pill.pill--header:not(.pill--success,.pill--warning,.pill--danger,.pill--info,.pill--accent){color:var(--ink-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border-radius:999px;border:1px solid var(--glass-edge);background:var(--glass-3);font-weight:500;font-size:13px;letter-spacing:.2px;cursor:pointer;transition:transform .05s ease,background .12s ease;text-decoration:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.btn,.btn:hover{color:var(--ink)}.btn:hover{background:rgba(255,255,255,.85);border-color:var(--glass-edge)}.btn:active{transform:translateY(.5px)}.btn--primary{background:#0c0c0c;box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.1)}.btn--primary,.btn--primary:hover{color:#fff;border-color:rgba(255,255,255,.08)}.btn--primary:hover{background:#000000}.btn--ghost{background:transparent;border-color:transparent;color:var(--ink-3);box-shadow:none}.btn--ghost:hover{background:rgba(255,255,255,.5);color:var(--ink)}.btn--muted{background:#a5adbd;box-shadow:0 4px 12px -6px rgba(40,55,78,.25),inset 0 1px 0 rgba(255,255,255,.18)}.btn--muted,.btn--muted:hover{color:#fff;border-color:rgba(255,255,255,.12)}.btn--muted:hover{background:#8d96a7}.btn--sm{padding:5px 12px;font-size:10.5px;letter-spacing:.6px;text-transform:uppercase}a[data-busy=true]{opacity:.7;pointer-events:none;cursor:default}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 22px;color:var(--ink-3)}.empty__icon{width:48px;height:48px;border-radius:12px;background:var(--glass-2);color:var(--accent);display:grid;place-items:center;margin-bottom:16px}.empty__title{font-family:var(--font-serif);font-size:20px;font-weight:400;color:var(--ink);margin-bottom:6px;letter-spacing:-.2px}.empty__body{font-size:13px;max-width:360px}.empty__action{margin-top:var(--space-4);display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center}.empty--inline{align-items:flex-start;justify-content:flex-start;text-align:left;padding:var(--space-3) 0;font-size:var(--t-sm)}.empty--inline .empty__title{font-family:inherit;font-size:var(--t-sm);font-weight:500;color:var(--ink-2);margin-bottom:0;letter-spacing:0}.empty--inline .empty__body{margin-top:var(--space-1);max-width:60ch}.empty--inline .empty__action{justify-content:flex-start;margin-top:var(--space-3)}.bar-row{display:grid;grid-template-columns:120px 1fr 56px;grid-gap:12px;gap:12px;align-items:center;font-size:13px;padding:8px 0}.bar-row__label{color:var(--ink-3);font-weight:500}.bar-row__track{background:rgba(255,255,255,.6);border:1px solid var(--glass-edge-soft);border-radius:999px;overflow:hidden;height:8px}.bar-row__fill{height:100%;border-radius:999px;background:var(--accent);transition:width .3s ease}.bar-row__fill--success{background:var(--success)}.bar-row__fill--warning{background:var(--warn)}.bar-row__fill--danger{background:var(--danger)}.bar-row__value{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}.bar-row--held{grid-template-columns:1fr auto;row-gap:4px}.bar-row--held .bar-row__label{grid-column:1;grid-row:1}.bar-row--held .bar-row__value{grid-column:2;grid-row:1}.bar-row__heldnote{grid-column:1/-1;grid-row:2;font-size:11px;line-height:1.3;color:var(--ink-3);font-style:italic;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.auth{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;position:relative;z-index:1}.auth__card{background:var(--glass-3);border:1px solid var(--glass-edge);border-radius:var(--radius);box-shadow:var(--glass-shadow);padding:32px;flex-direction:column;gap:16px}.auth__alt,.auth__card{width:380px;max-width:100%;display:flex}.auth__alt .btn{flex:1 1}.auth__method{display:flex;flex-direction:column;gap:14px}.auth__divider{display:flex;align-items:center;gap:12px;color:var(--ink-3);font-size:var(--text-sm);letter-spacing:.6px;text-transform:uppercase}.auth__divider:after,.auth__divider:before{content:"";flex:1 1;height:1px;background:var(--glass-edge)}.auth__brand{display:flex;align-items:center;gap:12px;margin-bottom:8px}.auth__brand-mark{width:40px;height:40px;flex:0 0 40px;aspect-ratio:1/1;border-radius:50%;color:var(--ink);display:grid;place-items:center;font-weight:600;font-size:14px;overflow:hidden;border:3px solid transparent;background:linear-gradient(#ffffff,#ffffff) padding-box,linear-gradient(135deg,rgba(15,23,42,.28),rgba(15,23,42,.12)) border-box;box-shadow:0 1px 3px rgba(15,23,42,.06)}.auth__brand-mark img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}.auth__title{font-family:var(--font-serif);font-size:22px;font-weight:400;letter-spacing:-.4px;white-space:nowrap;margin:0}.auth__subtitle{font-size:13.5px;color:var(--ink-3);margin:0}.field{display:flex;flex-direction:column;gap:4px}.field__label{font-size:var(--text-sm);color:var(--ink-mute);font-weight:500;letter-spacing:.6px;text-transform:uppercase}.field__input{padding:10px 14px;border:1px solid var(--glass-edge);border-radius:12px;font-size:13px;background:var(--glass-3);color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.7);transition:border-color .12s ease,box-shadow .12s ease}.field__input:focus{outline:none;border-color:var(--focus-ring-color,var(--gold-ink,#7d652f));box-shadow:0 0 0 3px color-mix(in srgb,var(--focus-ring-color,var(--gold-ink,#7d652f)) 22%,transparent),inset 0 1px 0 rgba(255,255,255,.7)}.field__input:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color,var(--gold-ink,#7d652f));outline-offset:var(--focus-ring-offset)}.field__input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.field__input[type=number]::-webkit-inner-spin-button,.field__input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.alert{padding:12px 16px;border-radius:var(--radius-sm);font-size:13px}.alert--danger{background:rgba(199,80,73,.12);color:var(--danger)}.paginator{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface);font-size:var(--text-sm)}.paginator__summary{color:var(--color-text-muted)}.paginator__controls{display:flex;align-items:center;gap:var(--space-3)}.paginator__pageNum{color:var(--color-text);white-space:nowrap}.paginator__btn{min-width:80px;text-align:center}.paginator__btn--disabled{opacity:.45;pointer-events:none}.skeleton{display:inline-block;height:.95em;border-radius:4px;background:linear-gradient(90deg,var(--color-surface-2) 0,var(--color-border) 50%,var(--color-surface-2) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite;vertical-align:middle}.skeleton--text{min-width:24px}.table--skeleton td,.table--skeleton th{pointer-events:none}.inline-loader{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) 0;color:var(--color-text-muted);font-size:var(--text-sm)}.inline-loader__label{color:var(--color-text-subtle)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.viz{font-family:var(--font-sans);color:var(--ink)}.viz-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-height:120px;padding:var(--space-6) var(--space-4);text-align:center;color:var(--ink-mute);font-size:var(--text-sm)}.viz-state__title{font-weight:500;color:var(--ink-3)}@media (max-width:720px){.app-main{padding-bottom:calc(58px + env(safe-area-inset-bottom, 0px));padding-right:0}}.touch{min-height:44px;min-width:44px}@media (max-width:720px){.app-main .touch,.app-main [role=button],.app-main a.btn,.app-main button,.app-main input[type=button],.app-main input[type=submit]{min-height:44px}}:where(a[href],button,[role=button],input,select,textarea,summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color,var(--gold-ink,#7d652f));outline-offset:var(--focus-ring-offset)}.btn:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color,var(--gold-ink,#7d652f));outline-offset:var(--focus-ring-offset)}.adjcell__pop{--focus-ring-color:var(--gold-ink,#7d652f)}[data-reveal]{animation:fe-reveal var(--dur-slow) var(--ease-decel) both}@keyframes fe-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.hover-lift{transition:transform var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--elev-2)}.premium-card{position:relative;border-radius:var(--radius);background:var(--glass-3);border:1px solid var(--glass-edge);box-shadow:var(--elev-2);padding:var(--space-6);overflow:hidden;animation:fe-premium-enter var(--dur-slow) var(--ease-spring) both;transition:box-shadow var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-standard)}.premium-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--ci-sage),var(--ci-sage-light))}.premium-card:hover{box-shadow:var(--elev-3)}.premium-card:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color,var(--gold-ink,#7d652f));outline-offset:var(--focus-ring-offset)}@keyframes fe-premium-enter{0%{opacity:0;transform:translateY(8px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}.premium-card__badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;margin-bottom:var(--space-3);border-radius:var(--radius-pill);background:var(--ci-sage-pale);color:var(--sage-deep);font-size:var(--text-xs);font-weight:600;letter-spacing:.02em}.premium-card__badge-mark{font-size:13px;line-height:1;color:var(--accent)}.premium-card__body{color:var(--ink-2)}.premium-card__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--glass-edge-soft)}.surface-skeleton{display:flex;flex-direction:column;gap:var(--space-3);padding:22px}.surface-skeleton__head{margin-bottom:var(--space-2)}@media (prefers-reduced-motion:reduce){.premium-card,[data-reveal]{animation:none}.hover-lift,.premium-card{transition:none}.hover-lift:hover{transform:none}}html[lang=th],html[lang=th] *,html[lang=th] :after,html[lang=th] :before{letter-spacing:normal!important;text-transform:none!important}@layer elements{:where(:lang(th)) *{line-height:1.5}}