@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans+Thai:wght@300;400;500;600;700&display=swap";@keyframes progressSlide{0%{transform:translate(-100%)}50%{transform:translate(0%)}to{transform:translate(100%)}}@keyframes authFadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.auth-page{background-color:var(--body-bg-fallback);background-color:var(--body-bg-oklch);background-image:radial-gradient(ellipse 70% 30% at 50% 0%, var(--primary-glow) 0%, transparent 100%);flex-direction:column;justify-content:center;align-items:center;padding:2rem 1rem;font-family:Inter,IBM Plex Sans Thai,sans-serif;display:flex;position:fixed;inset:0}.auth-card{background:var(--card-bg);border:1px solid #ffffffb3;border-radius:20px;flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:360px;padding:2rem 1.75rem;animation:.35s both authFadeIn;display:flex;position:relative;box-shadow:inset 0 1px #ffffffe6,0 1px 3px #0f193c1a,0 4px 16px #0f193c1a,0 12px 32px #0f193c12}[data-theme=dark] .auth-card{border-color:var(--border)}.auth-brand{align-self:flex-start;align-items:center;gap:.45rem;display:flex}.auth-brand-logo{-o-object-fit:contain;object-fit:contain;width:18px;height:18px}.auth-brand-text{color:var(--text-3);letter-spacing:.01em;font-size:.82rem;font-weight:500}.auth-brand-highlight{color:var(--primary);font-weight:700}.auth-divider{background:var(--border);width:100%;height:1px;margin:.25rem 0}.auth-icon-container{border-radius:var(--radius-md);justify-content:center;align-items:center;width:56px;height:56px;margin-top:.5rem;display:flex}.auth-icon-container--loading,.auth-icon-container--unauthenticated{background:var(--primary-light);border:1.5px solid var(--primary-mid);color:var(--primary)}.auth-icon-container--error{background:var(--rose-light);border:1.5px solid var(--rose-mid);color:var(--rose)}.auth-icon-container--expired{background:var(--amber-light);border:1.5px solid var(--amber-mid);color:var(--amber-text)}.auth-title{color:var(--text);text-align:center;letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:700;line-height:1.3}.auth-subtitle{color:var(--text-3);text-align:center;max-width:260px;margin:0;font-size:.8rem;line-height:1.65}.auth-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:100px;align-items:center;gap:.35rem;padding:.22rem .65rem;font-size:.65rem;font-weight:600;display:inline-flex}.auth-badge--error{color:var(--rose);background:var(--rose-light);border:1px solid var(--rose-mid)}.auth-badge--unauthenticated{color:var(--primary);background:var(--primary-light);border:1px solid var(--primary-mid)}.auth-badge--expired{color:var(--amber-text);background:var(--amber-light);border:1px solid var(--amber-mid)}.auth-progress-track{background:var(--border);border-radius:100px;width:100%;height:2px;margin-top:.25rem;overflow:hidden}.auth-progress-bar{background:var(--primary);border-radius:100px;width:45%;height:100%;animation:1.4s ease-in-out infinite progressSlide}.auth-btn{background:var(--primary);color:#fff;border-radius:var(--radius-md);justify-content:center;align-items:center;width:100%;margin-top:.5rem;padding:.7rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:background .18s,transform .15s;display:flex;box-shadow:0 2px 8px #0f193c26}.auth-btn:hover{opacity:.9}.auth-btn:active{transform:scale(.98)}.auth-footer{color:var(--text-4);text-align:center;letter-spacing:.02em;margin-top:1.5rem;font-size:.68rem}.uc-overlay{z-index:600;background:oklch(.08 .003 var(--neutral-h,75) / .78);-webkit-backdrop-filter:blur(8px);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.uc-dialog{background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--border);flex-direction:column;width:100%;max-width:580px;max-height:90svh;display:flex;overflow:hidden;box-shadow:inset 0 1px #ffffffe6,0 2px 8px #0f193c14,0 12px 40px #0f193c24,0 40px 80px #0f193c1a}.uc-header{border-bottom:1px solid var(--border);background:var(--gray-50);flex-shrink:0;align-items:flex-start;gap:.875rem;padding:1.25rem 1.25rem 1.125rem;display:flex}.uc-icon{border-radius:var(--radius-md);background:var(--primary-light);width:40px;height:40px;color:var(--primary);box-shadow:var(--shadow-sm);flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:flex}.uc-title{color:var(--text);text-wrap:balance;flex:1;margin:0;padding-top:2px;font-size:.9375rem;font-weight:600;line-height:1.45}.uc-lang-toggle{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-sm);flex-shrink:0;gap:2px;margin-top:2px;padding:2px;display:flex}.uc-lang-btn{border-radius:calc(var(--radius-sm) - 2px);letter-spacing:.04em;cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);color:var(--text-4);background:0 0;border:none;padding:.25rem .625rem;font-size:.6875rem;font-weight:700;line-height:1}.uc-lang-btn.active{background:var(--primary);color:#fff;box-shadow:var(--shadow-xs)}.uc-body{overscroll-behavior:contain;flex-direction:column;flex:1;gap:1.125rem;padding:1.25rem;display:flex;overflow-y:auto}.uc-body::-webkit-scrollbar{width:4px}.uc-body::-webkit-scrollbar-track{background:0 0}.uc-body::-webkit-scrollbar-thumb{background:var(--border-hi);border-radius:2px}.uc-intro{color:var(--text-2);text-wrap:pretty;margin:0;font-size:.875rem;line-height:1.7}.uc-section{flex-direction:column;gap:.625rem;display:flex}.uc-section-heading{color:var(--text);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.8125rem;font-weight:700}.uc-section-body{color:var(--text-2);text-wrap:pretty;margin:0;font-size:.875rem;line-height:1.65}.uc-icon-list{flex-direction:column;gap:.75rem;display:flex}.uc-icon-bullet{color:var(--text-2);align-items:flex-start;gap:.625rem;font-size:.875rem;line-height:1.6;display:flex}.uc-ibullet-icon{flex-shrink:0;margin-top:.175em}.uc-ibullet-icon--emerald{color:var(--emerald)}.uc-ibullet-icon--rose{color:var(--rose)}.uc-ibullet-icon--primary{color:var(--primary)}.uc-bullet-highlight{color:var(--rose);font-weight:600}.uc-callout{background:var(--primary-glow);border:1px solid var(--border);border-radius:var(--radius-md);align-items:flex-start;gap:.75rem;padding:.875rem 1rem;display:flex}.uc-callout-icon{color:var(--primary);flex-shrink:0;margin-top:1px}.uc-callout-text{color:var(--primary-dark);margin:0;font-size:.8125rem;line-height:1.65}[data-theme=dark] .uc-callout-text{color:var(--text-2)}.uc-footer{border-top:1px solid var(--border);background:var(--gray-50);flex-direction:column;flex-shrink:0;gap:.875rem;padding:1rem 1.25rem;display:flex}.uc-check-area{border:1.5px solid var(--border-hi);border-radius:var(--radius-md);background:var(--card-bg);transition:background var(--dur-base) var(--ease), border-color var(--dur-base) var(--ease);padding:.75rem .875rem}.uc-check-area:has(input:checked){background:var(--primary-light);border-color:var(--primary-mid)}.uc-check-row{cursor:pointer;align-items:flex-start;gap:.625rem;display:flex}.uc-check-row input[type=checkbox]{appearance:none;border:1.5px solid var(--border-hi);background:var(--card-bg);cursor:pointer;width:17px;height:17px;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border-radius:4px;flex-shrink:0;margin-top:.175em;position:relative}.uc-check-row input[type=checkbox]:checked{background:var(--primary);border-color:var(--primary)}.uc-check-row input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-top:none;border-left:none;width:6px;height:9px;position:absolute;top:1.5px;left:4px;transform:rotate(45deg)}.uc-check-row input[type=checkbox]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.uc-check-label{color:var(--text-2);-webkit-user-select:none;user-select:none;cursor:pointer;font-size:.8125rem;line-height:1.6}.uc-actions{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.uc-back-btn{color:var(--text-3);cursor:pointer;transition:color var(--dur-fast) var(--ease);background:0 0;border:none;align-items:center;gap:.3rem;padding:.375rem 0;font-size:.8125rem;font-weight:500;line-height:1.4;text-decoration:none;display:inline-flex}.uc-back-btn:hover{color:var(--text-2)}.uc-back-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-xs)}.uc-confirm-btn{border-radius:var(--radius-sm);cursor:pointer;background:var(--primary);color:#fff;min-width:110px;transition:background var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), transform .1s var(--ease);box-shadow:var(--shadow-primary);border:none;padding:.5rem 1.75rem;font-size:.875rem;font-weight:600;line-height:1.4}.uc-confirm-btn:not(:disabled):hover{background:var(--primary-hover);box-shadow:var(--shadow-primary), 0 0 0 3px var(--primary-glow)}.uc-confirm-btn:not(:disabled):active{transform:scale(.97)}.uc-confirm-btn:not(:disabled):focus-visible{outline:2px solid var(--primary);outline-offset:2px}.uc-confirm-btn:disabled{opacity:.38;cursor:not-allowed;box-shadow:none;pointer-events:none}@media (width<=480px){.uc-overlay{-webkit-backdrop-filter:none;background:oklch(.08 .003 var(--neutral-h,75) / .92);justify-content:stretch;align-items:stretch;padding:0}.uc-dialog{width:100%;max-width:100%;height:100svh;max-height:100svh;box-shadow:none;border:none;border-radius:0}.uc-header{padding:.875rem 1rem .75rem;padding-top:calc(.875rem + env(safe-area-inset-top,0px));gap:.5rem}.uc-icon{display:none}.uc-title{font-size:.875rem;line-height:1.4}.uc-body{gap:.875rem;padding:1rem}.uc-intro{font-size:.8125rem;line-height:1.65}.uc-section-body,.uc-icon-bullet{font-size:.8125rem}.uc-callout-text{font-size:.75rem}.uc-footer{padding:.875rem 1rem;padding-bottom:calc(.875rem + env(safe-area-inset-bottom,0px));gap:.625rem}.uc-actions{flex-direction:column-reverse;align-items:stretch;gap:.375rem}.uc-confirm-btn{width:100%;min-width:0;padding:.6875rem 1rem}.uc-back-btn{justify-content:center;padding:.25rem 0;font-size:.75rem}}@media (prefers-reduced-motion:reduce){.uc-check-area,.uc-check-row input[type=checkbox],.uc-confirm-btn{transition:none!important}}@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}::view-transition-old(root){animation-duration:.22s;animation-timing-function:cubic-bezier(.16,1,.3,1)}::view-transition-new(root){animation-duration:.22s;animation-timing-function:cubic-bezier(.16,1,.3,1)}:root{--radius:.625rem;--background:oklch(97.2% .004 258.7);--foreground:oklch(16% .02 258.7);--card-bg:oklch(100% 0 0);--card-foreground:oklch(16% .02 258.7);--popover:oklch(100% 0 0);--popover-foreground:oklch(16% .02 258.7);--secondary:oklch(96% .004 258.7);--secondary-foreground:oklch(22% .02 258.7);--muted:oklch(97.5% .002 258.7);--muted-foreground:oklch(46% .016 258.7);--accent:oklch(95% .01 258.7);--accent-foreground:oklch(22% .02 258.7);--destructive:var(--rose);--input-border:oklch(16% .02 258.7/.06);--ring:var(--primary);--success:var(--emerald);--success-foreground:oklch(35% .08 145);--info:var(--teal);--info-foreground:oklch(35% .08 195);--warning:var(--amber);--warning-foreground:var(--amber-text);--destructive-foreground:oklch(100% 0 0);--primary:oklch(50% .17 260);--primary-light:oklch(96% .015 260);--primary-mid:oklch(90% .04 260);--primary-hover:oklch(43% .17 260);--primary-glow:oklch(50% .17 260/.12);--primary-dark:oklch(32% .15 260);--teal:oklch(58% .14 195);--teal-light:oklch(96% .015 195);--teal-mid:oklch(88% .04 195);--teal-hover:oklch(50% .14 195);--rose:oklch(60% .16 25);--rose-light:oklch(97% .02 25);--rose-mid:oklch(88% .05 25);--rose-hover:oklch(52% .16 25);--amber:oklch(76% .13 78);--amber-light:oklch(97% .02 78);--amber-mid:oklch(92% .05 78);--amber-text:oklch(42% .11 70);--emerald:oklch(62% .15 145);--emerald-light:oklch(96% .015 145);--emerald-mid:oklch(88% .05 145);--emerald-end:oklch(55% .15 155);--gray-50:oklch(98.5% .003 258.7);--gray-100:oklch(96% .006 258.7);--gray-200:oklch(91% .008 258.7);--gray-300:oklch(84% .01 258.7);--gray-400:oklch(70% .014 258.7);--gray-500:oklch(56% .016 258.7);--gray-600:oklch(44% .016 258.7);--gray-700:oklch(33% .018 258.7);--gray-800:oklch(24% .018 258.7);--gray-900:oklch(16% .02 258.7);--text:oklch(16% .02 258.7);--text-2:oklch(33% .018 258.7);--text-3:oklch(56% .016 258.7);--text-4:oklch(70% .014 258.7);--border:oklch(16% .02 258.7/.08);--border-hi:oklch(16% .02 258.7/.15);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:2.5rem;--space-8:3rem;--radius-xl:24px;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--radius-xs:6px;--radius-pill:100px;--shadow-xs:0 1px 2px oklch(16% .02 258.7/.03);--shadow-sm:0 1px 2px oklch(16% .02 258.7/.02), 0 3px 8px oklch(16% .02 258.7/.04);--shadow-md:0 2px 4px oklch(16% .02 258.7/.02), 0 6px 16px oklch(16% .02 258.7/.04);--shadow-lg:0 4px 8px oklch(16% .02 258.7/.03), 0 12px 28px oklch(16% .02 258.7/.06);--shadow-xl:0 8px 16px oklch(16% .02 258.7/.04), 0 24px 48px oklch(16% .02 258.7/.08);--shadow-primary:0 4px 14px oklch(47.14% .1794 258.7/.15);--shadow-teal:0 4px 12px oklch(58.52% .1706 253.27/.12);--shadow-card:0 0 0 1px oklch(16% .02 258.7/.05), 0 2px 4px oklch(16% .02 258.7/.02), 0 6px 16px oklch(16% .02 258.7/.04);--shadow-card-hover:0 0 0 1px oklch(16% .02 258.7/.08), 0 4px 8px oklch(16% .02 258.7/.04), 0 12px 32px oklch(16% .02 258.7/.08);--z-sticky:50;--z-dropdown:200;--z-modal-backdrop:9999;--z-modal:10050;--z-loading:10100;--z-toast:10200;--ease:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--ease-spring-premium:cubic-bezier(.25, 1, .5, 1);--ease-out-premium:var(--ease-out);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.28s;--data-card-bg:oklch(100% 0 0);--btn-ok-bg:oklch(97% .02 188.43);--btn-ok-text:oklch(30% .08 188.43);--btn-ok-border:oklch(88% .06 188.43);--btn-err-bg:oklch(97% .02 24.11);--btn-err-text:oklch(45% .18 24.11);--btn-err-border:oklch(88% .07 24.11);--ap-suggest-bg:oklch(96% .012 258.7);--ap-error-bg:oklch(97% .02 24.11);--ap-include-bg:oklch(97% .025 75);--ap-exclude-bg:oklch(96% .012 253.27);--glass-bg:oklch(100% 0 0/.92);--glass-border:oklch(16% .02 258.7/.06);--card:var(--card-bg);--primary-foreground:oklch(100% 0 0);--success-subtle:var(--emerald-light);--warning-fg:var(--amber-text);--font-mono:"IBM Plex Mono", monospace;--body-bg-fallback:#f6f7f8;--body-bg-oklch:oklch(97.2% .004 258.7);--header-bg-fallback:#ffffffe0;--header-bg-oklch:oklch(100% 0 0/.88);--showcase-radius:var(--radius-xl);--showcase-shadow:inset 0 1px 0 #ffffffe6, 0 1px 3px oklch(25% .03 258.7/.05), 0 10px 28px -14px oklch(25% .03 258.7/.14), 0 28px 56px -28px oklch(25% .03 258.7/.1);--showcase-dur:.38s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--body-bg-fallback);background-color:var(--body-bg-oklch);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;padding:2.5rem 2rem 6rem;font-family:Inter,IBM Plex Sans Thai,-apple-system,sans-serif;overflow-x:hidden}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}button{cursor:pointer;transition:transform var(--dur-fast) var(--ease-out);border:none;font-family:Inter,IBM Plex Sans Thai,sans-serif}button:active:not(:disabled){transform:scale(.97)}.stagger-rows>tr{animation:fadeUp .25s var(--ease) both}.stagger-rows>tr:first-child{animation-delay:0s}.stagger-rows>tr:nth-child(2){animation-delay:40ms}.stagger-rows>tr:nth-child(3){animation-delay:80ms}.stagger-rows>tr:nth-child(4){animation-delay:.12s}.stagger-rows>tr:nth-child(5){animation-delay:.16s}.stagger-rows>tr:nth-child(6){animation-delay:.2s}.stagger-rows>tr:nth-child(7){animation-delay:.24s}.stagger-rows>tr:nth-child(8){animation-delay:.28s}.stagger-rows>tr:nth-child(9){animation-delay:.32s}.stagger-rows>tr:nth-child(10){animation-delay:.36s}.stagger-rows>tr:nth-child(n+11){animation-delay:.4s}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.45}}@keyframes pulse{50%{opacity:.5}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.95)translateY(12px)}to{opacity:1;transform:none}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes aurora1{0%{transform:translate(0)scale(1)}to{transform:translate(10%,15%)scale(1.2)}}@keyframes aurora2{0%{transform:translate(0)scale(1)}to{transform:translate(-12%,-10%)scale(1.15)}}@keyframes aurora3{0%{transform:translate(0)scale(1)}50%{transform:translate(5%,-8%)scale(1.1)}to{transform:translate(-5%,5%)scale(.95)}}.bg-blob-mid{pointer-events:none;z-index:-1;background:radial-gradient(60% 420px at 50% -8%,oklch(47.14% .1794 258.7/.06) 0%,oklch(58.52% .1706 253.27/.03) 35%,#0000 72%);width:100vw;height:520px;position:absolute;top:0;left:50%;transform:translate(-50%)}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-spin{animation:1s linear infinite spin}.hidden{display:none!important}.text-mono{font-family:IBM Plex Mono,monospace}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus{outline:none}:focus-visible{outline:2.5px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,[role=button]:focus-visible,label[tabindex]:focus-visible{outline:2.5px solid var(--primary);outline-offset:3px;border-radius:var(--radius-md)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary);outline-offset:0;border-radius:var(--radius-sm)}[data-theme=dark]{--neutral-h:75;--background:oklch(.205 .004 var(--neutral-h));--foreground:oklch(.9 .003 var(--neutral-h));--card-bg:oklch(.225 .005 var(--neutral-h));--card-foreground:var(--foreground);--muted:oklch(.25 .005 var(--neutral-h));--muted-foreground:oklch(.62 .006 var(--neutral-h));--secondary:oklch(.29 .006 var(--neutral-h));--accent:oklch(.29 .006 var(--neutral-h));--primary-fill:oklch(58% .14 253.27);--primary:oklch(65% .12 253.27);--primary-light:oklch(29% .02 253.27);--primary-mid:oklch(34% .03 253.27);--primary-hover:oklch(70% .1 253.27);--primary-glow:oklch(58% .12 253.27/.18);--primary-dark:oklch(.225 .005 var(--neutral-h));--teal:oklch(72% .1 188.43);--teal-light:oklch(26% .025 188.43);--teal-mid:oklch(40% .06 188.43);--teal-hover:oklch(65% .09 188.43);--rose:oklch(68% .12 24.11);--rose-light:oklch(28% .03 24.11);--rose-mid:oklch(40% .06 24.11);--rose-hover:oklch(75% .12 24.11);--amber:oklch(80% .1 75);--amber-light:oklch(28% .03 75);--amber-mid:oklch(42% .06 75);--amber-text:oklch(82% .09 75);--success-foreground:oklch(80% .08 145);--info-foreground:oklch(80% .08 195);--emerald:oklch(72% .1 188.43);--emerald-light:oklch(26% .025 188.43);--text:oklch(.9 .003 var(--neutral-h));--text-2:oklch(.78 .004 var(--neutral-h));--text-3:oklch(.62 .006 var(--neutral-h));--text-4:oklch(.5 .005 var(--neutral-h));--border:oklch(.9 .003 var(--neutral-h) / .12);--border-hi:oklch(.9 .003 var(--neutral-h) / .2);--shadow-xs:0 1px 2px #0000001f;--shadow-sm:0 1px 2px #00000014, 0 3px 8px #00000026;--shadow-md:0 2px 4px #00000014, 0 6px 16px #0000002e;--shadow-lg:0 4px 8px #0000001f, 0 12px 28px #0003;--shadow-xl:0 8px 16px #00000026, 0 24px 48px #00000047;--shadow-primary:0 4px 14px oklch(58% .12 253.27/.15);--shadow-teal:0 4px 12px oklch(72% .1 188.43/.12);--shadow-card:0 0 0 1px oklch(.9 .003 var(--neutral-h) / .12), 0 1px 2px #0000001a, 0 4px 12px #0000001f;--shadow-card-hover:0 0 0 1px oklch(.9 .003 var(--neutral-h) / .16), 0 2px 4px #0000001f, 0 8px 24px #0000002e;--gray-50:oklch(.2 .003 var(--neutral-h));--gray-100:oklch(.24 .003 var(--neutral-h));--gray-200:oklch(.32 .003 var(--neutral-h));--gray-300:oklch(.42 .003 var(--neutral-h));--gray-400:oklch(.5 .003 var(--neutral-h));--gray-500:oklch(.6 .003 var(--neutral-h));--gray-600:oklch(.72 .003 var(--neutral-h));--gray-700:oklch(.82 .003 var(--neutral-h));--gray-800:oklch(.88 .003 var(--neutral-h));--gray-900:oklch(.94 .003 var(--neutral-h));--data-card-bg:oklch(.225 .005 var(--neutral-h));--btn-ok-bg:oklch(26% .04 145);--btn-ok-text:oklch(78% .08 145);--btn-ok-border:oklch(34% .06 145);--btn-err-bg:oklch(26% .04 25);--btn-err-text:oklch(72% .1 25);--btn-err-border:oklch(34% .06 25);--ap-suggest-bg:oklch(26% .03 260);--ap-error-bg:oklch(26% .035 25);--ap-include-bg:oklch(26% .035 78);--ap-exclude-bg:oklch(26% .03 195);--glass-bg:oklch(.225 .005 var(--neutral-h) / .92);--glass-border:oklch(.9 .003 var(--neutral-h) / .12);--body-bg-fallback:#302f2c;--body-bg-oklch:oklch(.2 .004 var(--neutral-h));--header-bg-fallback:#2d2b28d9;--header-bg-oklch:oklch(.21 .005 var(--neutral-h) / .85);--showcase-shadow:inset 0 1px 0 #ffffff08, 0 1px 3px #0003, 0 10px 28px -14px #0000002e, 0 28px 56px -28px #00000026}[data-theme=dark] body{color:var(--text)}[data-theme=dark] .app-header{background:var(--header-bg-oklch)!important;border-color:var(--border)!important;box-shadow:var(--shadow-md)!important}[data-theme=dark] .step-wizard{background:var(--header-bg-oklch)!important;border-color:var(--border)!important;box-shadow:var(--shadow-sm)!important}[data-theme=dark] .home-version{background:var(--card-bg)!important;border-color:var(--border)!important}[data-theme=dark] .panel-card{background:var(--card-bg)!important;border-color:var(--border)!important;box-shadow:var(--shadow-card)!important}[data-theme=dark] .panel-card:hover{border-color:var(--border-hi)!important;box-shadow:var(--shadow-card-hover)!important}[data-theme=dark] .module-card,[data-theme=dark] .data-card{background:var(--card-bg)!important;border-color:var(--border)!important;box-shadow:var(--shadow-card)!important}[data-theme=dark] .data-card:hover{border-color:var(--border-hi)!important}[data-theme=dark] .modal-overlay{background:oklch(.1 .003 var(--neutral-h) / .8)}[data-theme=dark] .modal-box{background:var(--card-bg)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-xl)!important}[data-theme=dark] .ocr-loading-overlay{background:oklch(.1 .003 var(--neutral-h) / .8)}[data-theme=dark] .ocr-loading-box{background:var(--card-bg);border-color:var(--border)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--card-bg);border-color:var(--border);color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] input::-moz-placeholder{color:var(--text-4)}[data-theme=dark] textarea::-moz-placeholder{color:var(--text-4)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-4)}[data-theme=dark] .field-input,[data-theme=dark] .tbl-input,[data-theme=dark] .tbl-select,[data-theme=dark] .ap-field-input,[data-theme=dark] .ap-tbl-input,[data-theme=dark] .ap-tbl-select,[data-theme=dark] .ap-edit-input:hover,[data-theme=dark] .ap-sum-from-doc,[data-theme=dark] .ap-search-input-wrap input{background:var(--card-bg)!important;border-color:var(--border)!important;color:var(--text)!important}[data-theme=dark] th,[data-theme=dark] .tbl-head-cell,[data-theme=dark] .ap-acct-table th,[data-theme=dark] .ap-review-table th,[data-theme=dark] .mapping-table th{background:var(--muted)!important;color:var(--text-3)!important;border-color:var(--border)!important}[data-theme=dark] td{border-color:var(--border)!important}[data-theme=dark] tr:hover td{background:#ffffff06!important}[data-theme=dark] .btn-outline,[data-theme=dark] .btn-cancel{border-color:var(--border-hi)!important;color:var(--text-2)!important;background:0 0!important}[data-theme=dark] .btn-outline:hover,[data-theme=dark] .btn-cancel:hover{background:#ffffff0f!important}[data-theme=dark] .btn-confirm{background:var(--primary-fill)!important;color:oklch(98% 0 0)!important;border-color:var(--primary-fill)!important;box-shadow:0 2px 8px oklch(58% .14 253.27/.25)!important}[data-theme=dark] .btn-confirm:hover{background:oklch(62% .14 253.27)!important;box-shadow:0 4px 14px oklch(58% .14 253.27/.35)!important}[data-theme=dark] .btn-icon{border-color:var(--border);color:var(--text-3);background:0 0}[data-theme=dark] .btn-icon:hover{color:var(--text);background:#ffffff0f}[data-theme=dark] .upload-drop{background:var(--card-bg);border-color:var(--border-hi)}[data-theme=dark] .upload-drop:hover{background:var(--primary-light)}[data-theme=dark] .vendor-dropdown,[data-theme=dark] .cs-dropdown{background:var(--card-bg)!important;border-color:var(--border)!important}[data-theme=dark] .vendor-item:hover,[data-theme=dark] .cs-option:hover{background:var(--primary-light)!important}[data-theme=dark] .toast{background:var(--card-bg);border-color:var(--border);color:var(--text)!important}[data-theme=dark] .step.active{background:var(--primary-light)!important;border-color:var(--primary-mid)!important;color:var(--text)!important}[data-theme=dark] .dark-toggle{color:#fbbf24!important}[data-theme=dark] .ap-account-card,[data-theme=dark] .ap-success-wrap,[data-theme=dark] .ap-step-nav,[data-theme=dark] .file-info-strip,[data-theme=dark] .preview-toolbar,[data-theme=dark] .preview-frame,[data-theme=dark] .vendor-search-input-wrap,[data-theme=dark] .preview-toggle-btn,[data-theme=dark] .mapping-table th select{background:var(--card-bg)!important;border-color:var(--border)!important;color:var(--text)!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=768px){body{padding:1.25rem 1rem 5rem}}@media (width<=480px){body{padding:.875rem .75rem 4rem}}:root{--header-top:.75rem;--header-height:4rem;--header-bottom:calc(var(--header-top) + var(--header-height) + .75rem)}.app-container{max-width:1480px;animation:fadeUp .35s var(--ease) both;margin:0 auto;padding:1.5rem}@media (width<=768px){.app-container{padding:1rem}}@media (width<=480px){.app-container{padding:.75rem}}.app-header{--module-accent:var(--primary);--module-accent-soft:var(--primary-light);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:inset 0 1px 0 oklch(100% 0 0/.6), var(--shadow-sm);animation:fadeDown .3s var(--ease) both;z-index:var(--z-sticky);-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);background-color:var(--header-bg-fallback);background-color:var(--header-bg-oklch);align-items:center;gap:.875rem;margin-bottom:2rem;padding:.75rem .875rem .75rem .625rem;display:flex;position:sticky;top:.75rem;overflow:hidden}.app-header:after{content:"";background:linear-gradient(90deg, transparent, var(--module-accent) 45%, var(--module-accent) 55%, transparent);opacity:.45;pointer-events:none;height:1px;position:absolute;bottom:0;left:18%;right:18%}.app-header-back{background:var(--muted);border:1px solid var(--border);height:32px;color:var(--text-2);letter-spacing:.01em;cursor:pointer;transition:background .18s var(--ease), color .18s var(--ease), border-color .18s var(--ease), transform .12s var(--ease);border-radius:100px;flex-shrink:0;align-items:center;gap:.4rem;padding:0 .75rem 0 .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.app-header-back:hover{background:var(--module-accent-soft);border-color:var(--module-accent);color:var(--module-accent)}.app-header-back:active{transform:scale(.97)}.app-header-back svg{transition:transform .18s var(--ease)}.app-header-back:hover svg{transform:translate(-2px)}.app-header-sep{background:var(--border);flex-shrink:0;width:1px;height:28px}.app-header .brand{z-index:1;flex:1;align-items:center;gap:.75rem;min-width:0;display:flex;position:relative}.app-header .logo-box{border-radius:var(--radius-md);background:var(--module-accent);width:38px;height:38px;box-shadow:inset 0 1px 0 oklch(100% 0 0/.25), inset 0 -1px 0 oklch(0% 0 0/.08), 0 0 0 3px var(--module-accent-soft), var(--shadow-xs);background-image:linear-gradient(135deg,oklch(100% 0 0/.12) 0%,oklch(0% 0 0/0) 60%);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.app-header .logo-box .logo-img{-o-object-fit:contain;object-fit:contain;filter:brightness(0)invert();opacity:.96;width:28px;height:28px}.app-header .brand-text{flex-direction:column;gap:.05rem;min-width:0;display:flex}.app-header-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--text-4);align-items:center;gap:.35rem;font-size:.62rem;font-weight:700;line-height:1.2;display:flex}.app-header-eyebrow:before{content:"";background:var(--module-accent);border-radius:50%;flex-shrink:0;width:4px;height:4px}.app-header-title,.app-header h1{letter-spacing:-.02em;color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.02rem;font-weight:700;line-height:1.2;overflow:hidden}.app-header-actions{flex-shrink:0;align-items:center;gap:.625rem;display:flex}.app-header[data-module=credit-card]{--module-accent:oklch(47.14% .1794 258.7);--module-accent-soft:oklch(95% .014 258.7)}.app-header[data-module=ap-invoice]{--module-accent:oklch(58.52% .1706 253.27);--module-accent-soft:oklch(95% .014 253.27)}.app-header[data-module=mapping]{--module-accent:oklch(56% .1 188.43);--module-accent-soft:oklch(95% .018 188.43)}[data-theme=dark] .app-header{box-shadow:inset 0 1px 0 oklch(100% 0 0/.04), var(--shadow-md)}[data-theme=dark] .app-header[data-module=credit-card]{--module-accent:oklch(62% .05 258.7);--module-accent-soft:oklch(26% .015 258.7)}[data-theme=dark] .app-header[data-module=ap-invoice]{--module-accent:oklch(62% .05 253.27);--module-accent-soft:oklch(26% .015 253.27)}[data-theme=dark] .app-header[data-module=mapping]{--module-accent:oklch(62% .04 188.43);--module-accent-soft:oklch(24% .012 188.43)}[data-theme=dark] .app-header-back{background:var(--muted);border-color:var(--border);color:var(--text-2)}.main-grid{grid-template-columns:1fr 1fr;align-items:start;gap:1.5rem;width:100%;display:grid}@media (width<=1100px){.main-grid{grid-template-columns:1fr}}.main-content{animation:fadeUp .3s var(--ease) both;grid-template-columns:360px 1fr;align-items:start;gap:1.75rem;display:grid}.main-content.hide-data{grid-template-columns:360px 1fr}.main-content.hide-data .data-column{opacity:.25;pointer-events:none;filter:blur(1.5px)grayscale();transition:opacity .3s,filter .3s;display:block}@media (width<=1100px){.main-content{grid-template-columns:1fr}}.data-column{flex-direction:column;gap:1.25rem;display:flex}.section-header{align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.section-title{letter-spacing:.12em;text-transform:uppercase;color:var(--text-4);align-items:center;gap:.6rem;margin-bottom:1rem;font-size:.72rem;font-weight:700;display:flex}.section-title i{color:var(--primary)}@media (width<=1100px){.preview-column{position:static}}@media (width<=768px){.app-header{gap:.625rem;margin-bottom:1.25rem;padding:.625rem .75rem}.app-header-back span{display:none}.app-header-back{padding:0 .5rem}.app-header-eyebrow{display:none}.app-header-title{font-size:.95rem}.form-actions{flex-flow:wrap}.form-actions>.btn-submit,.form-actions>.btn-danger{order:-1;justify-content:center;width:100%}.form-actions>.btn-cancel{flex:1;justify-content:center;margin-right:0!important}.form-actions>.btn-icon{flex:none;width:auto}.form-actions-sep{display:none}.btn-add-row{width:calc(100% - 2rem);margin:.75rem 1rem}.total-summary-grid{grid-template-columns:1fr 1fr}.main-content{gap:1.25rem}.data-column{gap:1rem}}@media (width<=480px){.app-header{border-radius:var(--radius-lg);gap:.5rem;margin-bottom:1rem;padding:.5rem .625rem}.app-header .logo-box{width:32px;height:32px}.app-header-sep{height:22px}.main-content{gap:1rem}.section-title{font-size:.68rem}}.step-wizard-wrap{justify-content:center;margin-bottom:1.75rem;display:flex;overflow-x:auto}.step-wizard-wrap::-webkit-scrollbar{display:none}.step-wizard{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-pill);width:100%;min-width:max-content;box-shadow:var(--shadow-xs);justify-content:center;align-items:center;padding:4px;display:flex;position:relative}.step-wizard:before{display:none}.step{border-radius:var(--radius-pill);color:var(--text-4);transition:color var(--dur-base) var(--ease), background-color var(--dur-base) var(--ease);white-space:nowrap;align-items:center;gap:.55rem;padding:.5rem 1rem;font-size:.8rem;font-weight:500;display:flex;position:relative}.step.active{color:var(--primary);border:none;font-weight:700}.step.done{color:var(--emerald);font-weight:500}.step.done.clickable{cursor:pointer;transition:background var(--dur-base) var(--ease), transform var(--dur-fast) var(--ease)}.step.done.clickable:hover{background:var(--emerald-light);transform:translateY(-1px)}.step.done.clickable:active{transform:translateY(0)}.step-num{width:22px;height:22px;transition:background-color var(--dur-base) var(--ease), border-color var(--dur-base) var(--ease), color var(--dur-base) var(--ease), box-shadow var(--dur-base) var(--ease);border:2px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:IBM Plex Mono,monospace;font-size:.62rem;font-weight:700;display:flex}.step.active .step-num{border-color:var(--primary);color:var(--primary)}.step.done .step-num{background:linear-gradient(135deg, var(--emerald) 0%, var(--emerald-end) 100%);color:#fff;box-shadow:0 2px 8px oklch(from var(--emerald) l c h / .35);border:none}.step-sep{background:var(--border);border-radius:var(--radius-pill);max-width:40px;height:2px;transition:background var(--dur-slow) var(--ease);flex:1}@media (width<=640px){.step-wizard-wrap{margin-bottom:1.25rem}.step{gap:.4rem;padding:.45rem .75rem}.step-sub-label{display:none!important}.step-sep{max-width:16px}}@keyframes pulse-ring{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.04)}}.panel-card.step-active{position:relative}.panel-card.step-active:after{content:"";border-radius:calc(var(--radius-lg) + 3px);border:2px solid var(--primary);opacity:0;pointer-events:none;animation:1.8s ease-out infinite pulse-ring;position:absolute;inset:-3px}.panel-card.step-active{border-color:var(--primary)}.panel-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:box-shadow .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease);padding:1.5rem}@media (hover:hover) and (pointer:fine){.panel-card:hover{box-shadow:var(--shadow-card-hover);border-color:var(--border-hi);transform:translateY(-2px)}}.field-label{letter-spacing:0;color:var(--text-3);align-items:center;gap:.4rem;margin-bottom:1rem;font-size:.72rem;font-weight:600;display:flex}.field-label i{color:var(--primary);font-size:.7rem}.upload-drop{text-align:center;border:2px dashed var(--border-hi);cursor:pointer;width:100%;min-height:160px;transition:background-color var(--dur-base) var(--ease), border-color var(--dur-base) var(--ease), box-shadow var(--dur-base) var(--ease), transform var(--dur-base) var(--ease);border-radius:var(--radius-lg);background:linear-gradient(135deg,#f8fafce6 0%,#f0ecff66 100%);flex-direction:column;justify-content:center;align-items:center;padding:1rem 1.25rem;display:flex;position:relative;overflow:hidden}.upload-drop:after{content:"";border-radius:inherit;pointer-events:none;background:radial-gradient(70% 50% at 50% 100%,#8058f10a 0%,#0000 70%);position:absolute;inset:0}.upload-drop:hover,.upload-drop.dragover{border-color:var(--primary);background:var(--primary-light);box-shadow:0 0 0 3px var(--primary-glow);transform:scale(1.005)}.upload-drop.dragover{box-shadow:0 0 0 4px var(--primary-glow), var(--shadow-md);border-style:solid;transform:scale(1.01)}.upload-drop.dropping{transition:transform var(--dur-fast) var(--ease-out);transform:scale(.98)}.upload-drop input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.upload-icon{color:var(--gray-300);transition:color .25s, transform .25s var(--ease);margin-bottom:.65rem;font-size:1.75rem}@media (hover:hover) and (pointer:fine){.upload-drop:hover .upload-icon{color:var(--primary);transform:scale(1.1)translateY(-2px)}}.upload-drop.dragover .upload-icon{color:var(--primary);transform:scale(1.1)translateY(-2px)}.upload-label{color:var(--text-3);font-size:.875rem;font-weight:600}.upload-drop:hover .upload-label{color:var(--primary)}.upload-hint{color:var(--text-4);margin-top:.3rem;font-family:IBM Plex Mono,monospace;font-size:.72rem}.how-to-list{flex-direction:column;gap:.7rem;display:flex}.how-to-item{align-items:flex-start;gap:.65rem;display:flex}.how-step-num{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-top:1px;font-size:.62rem;font-weight:700;display:flex}.how-step-num.gold{background:var(--amber-light);border:1px solid var(--amber-mid);color:var(--amber)}.how-step-num.teal{background:var(--teal-light);border:1px solid var(--teal-mid);color:var(--teal)}.how-to-item span{color:var(--text-3);font-size:.8rem;line-height:1.5}.preview-column{top:var(--header-bottom,6rem);position:sticky}.preview-toolbar{border:1px solid var(--border-hi);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:#fff;border-bottom:none;align-items:center;gap:.2rem;padding:.5rem .75rem;display:flex}.prev-tool-group{align-items:center;gap:.1rem;display:flex}.prev-tool-sep{background:var(--border-hi);flex-shrink:0;width:1px;height:1.3rem;margin:0 .35rem}.prev-zoom-pct{color:var(--text-2);text-align:center;background:var(--primary-light);border-radius:var(--radius-sm);min-width:2.8rem;padding:.15rem 0;font-family:IBM Plex Mono,monospace;font-size:.75rem;font-weight:700}.prev-tool-btn{height:2rem;color:var(--text-3);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);white-space:nowrap;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.3rem;padding:0 .55rem;font-size:.83rem;display:inline-flex}.prev-tool-btn:active:not(:disabled){transform:scale(.93)}.prev-tool-btn span{font-size:.75rem;font-weight:600}.prev-tool-btn:hover:not(:disabled){background:var(--primary-light);color:var(--primary);border-color:var(--primary-mid)}.prev-tool-btn:disabled{opacity:.3;cursor:not-allowed}.prev-pdf-badge{color:var(--rose);background:var(--rose-light);border:1px solid var(--rose-mid);border-radius:var(--radius-sm);flex-shrink:0;align-items:center;gap:.3rem;padding:.15rem .5rem;font-size:.72rem;font-weight:700;display:inline-flex}.prev-tool-hint{color:var(--text-4);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.7rem;overflow:hidden}.preview-frame{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;justify-content:flex-start;align-items:stretch;transition:box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden}.preview-frame .placeholder-text{flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:280px;display:flex}.preview-frame--docked{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.preview-frame:hover{box-shadow:var(--shadow-md);border-color:var(--border-hi)}.prev-img-wrap{justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.prev-img{-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;user-select:none;max-width:100%;max-height:75vh;padding:.5rem;display:block}.placeholder-text{text-align:center;padding:2.5rem}.placeholder-icon-wrap{border-radius:var(--radius-lg);background:var(--gray-50);border:1px solid var(--border);width:64px;height:64px;color:var(--gray-300);justify-content:center;align-items:center;margin:0 auto 1rem;font-size:1.6rem;display:flex}.placeholder-text p{color:var(--text-4);font-size:.85rem;line-height:1.55}#pdfPreview{border:none;width:100%;height:600px;display:none}.file-info-strip{border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);background:#fff;justify-content:space-between;align-items:center;gap:.8rem;margin-top:.6rem;padding:.55rem 1rem;font-size:.8rem;display:none}.file-info-strip i{color:var(--primary);flex-shrink:0}.file-info-strip .file-name{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.btn-zoom-action{background:var(--primary);color:#fff;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);transition:background-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);align-items:center;gap:.5rem;margin-left:auto;padding:.45rem 1rem;font-size:.8rem;font-weight:600;display:inline-flex}@media (hover:hover) and (pointer:fine){.btn-zoom-action:hover{background:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}}.btn-zoom-action:active{transform:scale(.97)}.btn-zoom-action.hidden{display:none}.data-card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:box-shadow .25s var(--ease), border-color .25s var(--ease);border:1px solid #ffffffb3;overflow:hidden}.data-card.overflow-visible{overflow:visible}.data-card.overflow-visible .card-title{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.data-card:hover{box-shadow:var(--shadow-card-hover);border-color:#ffffffe6}.card-title{border-bottom:1px solid var(--border);color:var(--text-2);background:var(--muted);justify-content:space-between;align-items:center;padding:.875rem 1.5rem;font-size:.85rem;font-weight:600;display:flex}.card-title-left{align-items:center;gap:.6rem;display:flex}.card-title i{border-radius:var(--radius-sm);background:var(--primary-light);width:26px;height:26px;color:var(--primary);flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;display:flex}.card-body{padding:1.5rem}.card-body-flush{padding:0}.row-count{color:var(--text-4);background:var(--gray-100);border-radius:var(--radius-pill);padding:.18rem .55rem;font-family:IBM Plex Mono,monospace;font-size:.7rem}.header-form{grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:1.25rem;display:grid}.form-field{flex-direction:column;gap:.3rem;display:flex}.form-field label{letter-spacing:0;color:var(--text-3);font-size:.72rem;font-weight:600;line-height:1.3}.form-field label span{color:var(--text-4);margin-top:2px;font-size:.68rem;font-weight:600;display:block}.form-field input{border:none;border-bottom:1.5px solid var(--border);color:var(--text);width:100%;transition:border-color var(--dur-base);background:0 0;border-radius:0;outline:none;padding:.45rem 0;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.9rem;font-weight:500}.form-field input:focus{border-bottom-color:var(--primary)}.form-field input::placeholder{color:var(--text-4)}.table-wrapper{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);background:var(--gray-50);border-bottom:1.5px solid var(--border);white-space:nowrap;padding:.8rem 1rem;font-size:.72rem;font-weight:700;line-height:1.4}.data-table th span{color:var(--text-4);margin-top:2px;font-size:.68rem;font-weight:600;display:block}.data-table tbody tr{border-bottom:1px solid var(--gray-100);transition:background-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease)}.data-table tbody tr:nth-child(2n){background:var(--gray-50)}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:var(--gray-100)}.data-table tbody tr:hover td:first-child{border-top-left-radius:var(--radius-sm);border-bottom-left-radius:var(--radius-sm)}.data-table tbody tr:hover td:last-child{border-top-right-radius:var(--radius-sm);border-bottom-right-radius:var(--radius-sm)}.data-table td{vertical-align:middle;padding:.5rem 1rem}input[type=text].detail-input{border-radius:var(--radius-sm);color:var(--text);width:100%;min-width:90px;transition:border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;outline:none;padding:.4rem .6rem;font-family:IBM Plex Mono,monospace;font-size:.83rem}input[type=text].detail-input:hover{border-color:var(--border);background:var(--gray-100)}input[type=text].detail-input:focus{border-color:var(--primary);background:var(--primary-light)}.form-actions{border-top:1px solid var(--border);background:var(--gray-50);justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}.btn-cancel{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-3);box-shadow:var(--shadow-xs);transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);cursor:pointer;align-items:center;gap:.45rem;padding:.65rem 1.25rem;font-size:.85rem;font-weight:500;display:inline-flex}.btn-cancel:hover{border-color:var(--border-hi);color:var(--text-2);background:var(--gray-50)}.btn-cancel:active{transform:scale(.97)}.btn-submit{background:var(--primary);border:1px solid var(--primary-dark);border-radius:var(--radius-md);color:#fff;box-shadow:var(--shadow-sm);transition:background-color var(--dur-fast) var(--ease), box-shadow var(--dur-base) var(--ease), transform var(--dur-fast) var(--ease);cursor:pointer;align-items:center;gap:.45rem;padding:.65rem 1.5rem;font-size:.85rem;font-weight:600;display:inline-flex}@media (hover:hover) and (pointer:fine){.btn-submit:hover{background:var(--primary-hover);box-shadow:var(--shadow-sm)}}.btn-submit:active{transform:scale(.97)}.btn-submit:disabled{opacity:.42;cursor:not-allowed;box-shadow:none!important;transform:none!important}.btn{border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-base) var(--ease), transform .15s var(--ease-spring-premium);-webkit-user-select:none;user-select:none;color:inherit;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.85rem;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.65;cursor:default;pointer-events:none}.btn-sm{padding:.45rem .85rem;font-size:.75rem}.btn-primary{background:var(--primary);color:#fff;border:1px solid var(--primary-dark);box-shadow:var(--shadow-sm)}@media (hover:hover) and (pointer:fine){.btn-primary:hover{background:var(--primary-hover);box-shadow:var(--shadow-sm)}}.btn-primary:active{transform:scale(.97)}.btn-secondary{background:var(--card-bg);color:var(--text-2);border:1px solid var(--border);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:var(--gray-50);border-color:var(--border-hi)}.btn-secondary:active{transform:scale(.97)}.btn-success{background:var(--emerald);color:#fff;border:1px solid var(--emerald-mid);box-shadow:var(--shadow-sm)}@media (hover:hover) and (pointer:fine){.btn-success:hover{background:var(--emerald-mid);box-shadow:var(--shadow-sm)}}.btn-success:active{transform:scale(.97)}.btn-outline{border:1px solid var(--border);color:var(--text-2);box-shadow:var(--shadow-xs);background:0 0}.btn-outline:hover{border-color:var(--primary-mid);color:var(--primary);background:var(--primary-light)}.btn-outline:active{transform:scale(.97)}.btn-overwrite{background:var(--rose);border-radius:var(--radius-md);color:#fff;box-shadow:0 2px 10px oklch(from var(--rose) l c h / .2);transition:background-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);cursor:pointer;align-items:center;gap:.45rem;padding:.65rem 1.4rem;font-size:.85rem;font-weight:600;display:inline-flex}@media (hover:hover) and (pointer:fine){.btn-overwrite:hover{background:var(--rose-hover);transform:translateY(-1px)}}.btn-overwrite:active{transform:scale(.98)}.btn-danger{background:var(--rose-light);border:1px solid var(--rose-mid);border-radius:var(--radius-md);color:var(--rose);transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);cursor:pointer;align-items:center;gap:.45rem;padding:.65rem 1.25rem;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.85rem;font-weight:500;display:inline-flex}@media (hover:hover) and (pointer:fine){.btn-danger:hover{background:var(--rose);color:#fff;border-color:var(--rose);transform:translateY(-1px)}}.btn-danger:active{transform:scale(.98)}.btn-icon{border:1px solid var(--border-hi);border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-3);cursor:pointer;transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);background:#fff;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.8rem;display:inline-flex}.btn-icon:hover{border-color:var(--primary-mid);color:var(--primary);background:var(--primary-light)}.btn-icon:active{transform:scale(.97)}.btn-icon:disabled{cursor:not-allowed;opacity:.45;background:var(--muted);border-color:var(--border);color:var(--text-4)}.btn-icon:disabled:hover{border-color:var(--border);color:var(--text-4);background:var(--muted)}.btn-icon:disabled:active{transform:none}.form-actions-sep{background:var(--border-hi);flex-shrink:0;align-self:center;width:1px;height:22px;margin:0 .25rem}.toast{border-radius:var(--radius-lg);pointer-events:all;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);min-width:300px;max-width:90vw;color:var(--text);animation:slideInDown .25s var(--ease) both;background:#ffffffeb;border:1px solid #e2e8f0cc;align-items:center;gap:.75rem;padding:.85rem 1.4rem;font-size:.875rem;font-weight:600;display:flex;box-shadow:0 12px 28px #0f172a1f,0 4px 10px #0f172a0f}.toast.success{border-color:var(--emerald-mid);background:var(--emerald)}@supports (color:color-mix(in lab, red, red)){.toast.success{background:color-mix(in oklch, var(--emerald) 8%, var(--card-bg))}}.toast.success i{color:var(--emerald)}.toast.error{border-color:var(--rose-mid);background:var(--rose)}@supports (color:color-mix(in lab, red, red)){.toast.error{background:color-mix(in oklch, var(--rose) 8%, var(--card-bg))}}.toast.error i{color:var(--rose)}.toast.info{border-color:var(--primary-mid);background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.toast.info{background:color-mix(in oklch, var(--primary) 8%, var(--card-bg))}}.toast.info i{color:var(--primary)}.toast.warning{border-color:var(--amber-mid);background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.toast.warning{background:color-mix(in oklch, var(--amber) 8%, var(--card-bg))}}.toast.warning i{color:var(--amber)}.modal-overlay{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:var(--z-modal);background:#08061499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-icon{border-radius:var(--radius-lg);justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 1.25rem;font-size:1.3rem;display:flex}.modal-icon.error{background:var(--rose-light);border:1px solid var(--rose-mid);color:var(--rose)}.modal-icon.warning{background:var(--amber-light);border:1px solid var(--amber-mid);color:var(--amber)}.modal-icon.success{background:var(--emerald-light);border:1px solid var(--emerald-mid);color:var(--emerald)}.modal-icon.info{background:var(--primary-light);border:1px solid var(--primary-mid);color:var(--primary)}.modal-title{color:var(--text);text-align:center;letter-spacing:-.01em;margin-bottom:.5rem;font-size:1.1rem;font-weight:700}.modal-msg{color:var(--text-3);text-align:center;white-space:pre-line;margin-bottom:1.5rem;font-size:.875rem;line-height:1.65}.modal-box{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);box-sizing:border-box;width:90%;max-width:420px;box-shadow:var(--shadow-xl);text-align:center;padding:2.5rem 2.25rem 2rem;position:relative;overflow:hidden}.modal-doc{background:var(--gray-100);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);margin:.75rem 0;padding:.35rem .65rem;font-family:IBM Plex Mono,monospace;font-size:.8rem;display:inline-block}.modal-actions{justify-content:center;gap:.75rem;margin-top:1.75rem;display:flex}.missing-cell{color:var(--rose);background:var(--rose-light);font-weight:700;border:1px dashed var(--rose-mid)!important}.total-summary-card{border-top:2px solid var(--primary)}.total-summary-card .card-title{background:var(--muted);border-bottom-color:var(--border)}.total-summary-card .card-title i{background:var(--primary);color:#fff}.total-summary-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;display:grid}.total-summary-item{background:var(--gray-50);border-radius:var(--radius-md);border:1px solid var(--border);transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);flex-direction:column;gap:.35rem;padding:1rem;display:flex}@media (hover:hover) and (pointer:fine){.total-summary-item:hover{border-color:var(--primary-mid);background:var(--primary-light);box-shadow:var(--shadow-sm);transform:translateY(-2px)}}.total-summary-label{letter-spacing:0;color:var(--text-3);font-size:.72rem;font-weight:600}.total-summary-value{color:var(--primary);letter-spacing:-.02em;font-family:IBM Plex Mono,monospace;font-size:1.15rem;font-weight:700}.status-badge{border-radius:var(--radius-pill);align-items:center;gap:.35rem;padding:.28rem .7rem;font-size:.72rem;font-weight:600;line-height:1;display:inline-flex}.status-badge.info{background:var(--primary-light);color:var(--primary);border:1px solid var(--primary-mid)}.status-badge.success{background:var(--emerald-light);color:var(--emerald);border:1px solid var(--emerald-mid)}.text-right{text-align:right!important}.text-center{text-align:center!important}.text-left{text-align:left!important}.text-mono{font-family:IBM Plex Mono,monospace;font-size:.83rem}.jv-table thead tr{background:var(--gray-50);color:var(--text-3)}.jv-table thead th{color:var(--text-3);background:var(--gray-50);border-bottom:2px solid var(--border-hi)}.jv-meta-field{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--card-bg);padding:.45rem .75rem;position:relative}.jv-meta-label{background:var(--card-bg);letter-spacing:0;color:var(--text-4);padding:0 4px;font-size:.72rem;font-weight:600;position:absolute;top:-8px;left:8px}.jv-meta-value{color:var(--text-2);font-size:.875rem}.btn-cancel:disabled{background:var(--gray-100);color:var(--text-4);border-color:var(--border);cursor:not-allowed}.status-badge.gray{background:var(--gray-200);color:var(--text-3);border:1px solid var(--gray-300)}.status-badge.blue{background:var(--primary);color:#fff;border:1px solid var(--primary-dark)}.status-badge.warning{background:var(--amber-light);color:var(--amber-text);border:1px solid var(--amber-mid)}.status-badge.tag{border-radius:var(--radius-xs)}.mapping-alert{background:var(--amber-light);border:1px solid var(--amber-mid);border-radius:var(--radius-md);color:var(--amber-text);align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem 1.25rem;font-size:.875rem;font-weight:500;display:flex}.mapping-alert i{color:var(--amber-text);flex-shrink:0}.mapping-alert.is-danger{background:var(--rose-light);border-color:var(--rose-mid);color:var(--destructive)}@media (width<=640px){.mapping-alert{flex-wrap:wrap}.mapping-alert>span{flex:calc(100% - 2rem)!important}.mapping-alert>.btn{width:100%;margin-top:.25rem;margin-left:0}}.jv-total-row{background:var(--gray-50);border-top:2px solid var(--border-hi)}.jv-total-row td{color:var(--text);font-family:IBM Plex Mono,monospace;font-weight:700}.extraction-status-strip{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);animation:fadeDown .2s var(--ease-out) both;align-items:center;gap:.6rem;padding:.55rem 1rem;display:flex;position:relative;overflow:hidden}.extraction-status-strip:before{content:"";background:linear-gradient(90deg, var(--primary), var(--teal));background-size:200% 100%;height:2px;animation:1.8s infinite shimmer;position:absolute;top:0;left:0;right:0}.extraction-spinner{border:2px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.7s linear infinite spin}.extraction-status-text{color:var(--text-3);flex:1;min-width:0;font-family:IBM Plex Mono,monospace;font-size:.8rem}.extraction-elapsed{color:var(--text-4);flex-shrink:0;font-family:IBM Plex Mono,monospace;font-size:.72rem}@media (width<=640px){.step-label{display:none}.step.active .step-label{display:inline}.step-sep{max-width:10px}.step{gap:.35rem;padding:.4rem .55rem}.step-wizard{justify-content:flex-start;padding:.5rem .75rem}.step-wizard-wrap{justify-content:flex-start;margin-bottom:1.25rem}}.card-title-badges{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}@media (width<=640px){.panel-card,.card-body{padding:1.1rem 1rem}.card-title{flex-direction:column;align-items:flex-start;gap:.5rem;padding:.875rem 1rem}.card-title-badges{margin-top:.25rem}}@media (width<=580px){.upload-drop{min-height:110px;padding:1.5rem 1rem 1.25rem}.upload-icon{margin-bottom:.4rem;font-size:1.8rem}.how-to-list{gap:.5rem}.how-to-item span{font-size:.75rem}}@media (width<=768px){.data-table th{padding:.75rem .875rem}.data-table td{padding:.65rem .875rem}input[type=text].detail-input{min-height:40px;padding:.55rem;font-size:.85rem}.form-field input{min-height:40px;padding:.6rem 0;font-size:.95rem}}@media (width<=1100px){.prev-img{max-height:45vh}#pdfPreview{height:45vh;min-height:280px}}@media (width<=640px){.prev-img{max-height:35vh}#pdfPreview{height:35vh;min-height:220px}.prev-tool-hint{display:none}.prev-tool-btn{height:1.75rem;padding:0 .4rem;font-size:.75rem}.preview-toolbar{flex-wrap:wrap;gap:.15rem;padding:.4rem .6rem}}@media (width<=768px){.btn,.btn-cancel,.btn-submit,.btn-danger,.btn-overwrite{min-height:44px}.btn-sm{min-height:36px;padding:.55rem .9rem}}@media (width<=480px){.modal-box{border-radius:var(--radius-lg);width:calc(100% - 2rem);max-width:100%;padding:1.5rem 1.25rem}.modal-actions{flex-direction:column-reverse;gap:.6rem;margin-top:1.25rem}.modal-actions .btn{justify-content:center;width:100%;min-height:44px}.modal-title{font-size:1rem}}@media (width<=768px){.jv-table{min-width:720px}}@media (width<=640px){.ai-suggest-bar{flex-wrap:wrap;gap:.4rem}}.preview-pdf-iframe{border:none;flex-shrink:0;width:100%;height:500px;display:block}@media (width<=1100px){.preview-pdf-iframe{height:45vh;min-height:280px}}@media (width<=640px){.preview-pdf-iframe{height:35vh;min-height:220px}}.mapping-modal{z-index:var(--z-modal-backdrop);visibility:visible;opacity:1;transition:opacity var(--dur-base) var(--ease), visibility var(--dur-base) var(--ease);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.mapping-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1;background:#0f172a99;position:absolute;inset:0}.mapping-modal-content{z-index:2;background:var(--data-card-bg,white);border-radius:var(--radius-xl);width:90%;max-width:860px;box-shadow:var(--shadow-xl);animation:modalScaleIn .35s var(--ease);border:1px solid var(--border);flex-direction:column;max-height:90vh;display:flex;position:relative}.mapping-modal-header{background:var(--gray-50);border-bottom:1px solid var(--border);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:1.25rem}.mapping-modal-body{flex:1;padding:1.5rem;overflow-y:auto}.mapping-modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:1rem;padding:1.25rem 1.5rem;display:flex}[data-theme=dark] .mapping-modal-content{background:var(--card-bg)}[data-theme=dark] .mapping-modal-header{background:var(--muted)}.bank-detection-banner{background:var(--primary-light);border:1px solid var(--primary-mid);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:1rem;padding:.6rem .75rem .6rem .9rem;font-size:.83rem;display:flex}.bank-detection-banner.unknown{background:var(--gray-50);border-color:var(--border);border-left-color:var(--text-4)}.bank-detection-info{color:var(--primary);flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;display:flex}.bank-detection-banner.unknown .bank-detection-info{color:var(--text-3)}.bank-detection-icon{flex-shrink:0;align-items:center;display:flex}.bank-detection-label{color:var(--text-4);white-space:nowrap;font-weight:500}.bank-detection-value{white-space:nowrap;font-weight:700}.extraction-warning-banner{border-radius:var(--radius-md);color:#92400e;background:#fffbeb;border:1px solid #f59e0b;align-items:flex-start;gap:.5rem;padding:.6rem .75rem;font-size:.83rem;display:flex}.extraction-warning-icon{flex-shrink:0;align-items:center;margin-top:.15rem;display:flex}.extraction-warning-body{min-width:0}.extraction-warning-label{font-weight:700;display:block}.extraction-warning-text{margin:.2rem 0 0;line-height:1.4}.bank-reextract-btn{white-space:nowrap;flex-shrink:0;align-items:center;gap:.35rem;transition:transform .16s cubic-bezier(.23,1,.32,1),background .16s,color .16s,border-color .16s;display:inline-flex}.bank-reextract-btn:active:not(:disabled){transform:scale(.97)}.bank-reextract-chevron{transition:transform .2s cubic-bezier(.23,1,.32,1)}.bank-reextract-btn.is-open .bank-reextract-chevron{transform:rotate(180deg)}.bank-reextract-dropdown{z-index:var(--z-sticky);background:var(--data-card-bg,white);border:1px solid var(--border-hi);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);transform-origin:100% 0;opacity:0;pointer-events:none;flex-direction:column;gap:.1rem;min-width:220px;padding:.35rem;transition:opacity .15s cubic-bezier(.23,1,.32,1),transform .15s cubic-bezier(.23,1,.32,1);display:flex;position:absolute;top:calc(100% + 6px);right:0;transform:scale(.94)translateY(-6px)}.bank-reextract-dropdown.is-open{opacity:1;pointer-events:auto;transform:scale(1)translateY(0)}.bank-reextract-hint{color:var(--text-4);letter-spacing:.07em;text-transform:uppercase;padding:.3rem .65rem .35rem;font-size:.71rem;font-weight:600}.bank-reextract-option{border-radius:var(--radius-sm);width:100%;color:var(--text-2);cursor:pointer;text-align:left;opacity:0;background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem .65rem;font-size:.83rem;font-weight:500;transition:background .12s ease-out,color .12s ease-out,transform .12s cubic-bezier(.23,1,.32,1);display:flex;transform:translateY(4px)}.bank-reextract-dropdown.is-open .bank-reextract-option{animation:.18s cubic-bezier(.23,1,.32,1) forwards bankOptIn;animation-delay:calc(40ms + var(--i,0) * 28ms)}@keyframes bankOptIn{to{opacity:1;transform:translateY(0)}}@media (hover:hover) and (pointer:fine){.bank-reextract-option:hover{background:var(--primary-light);color:var(--primary)}}.bank-reextract-option:active{transform:scale(.97)}.bank-reextract-option.is-current{background:var(--primary-light);color:var(--primary);font-weight:700}.bank-reextract-option-label{align-items:center;gap:.4rem;display:flex}.bank-reextract-option-tag{color:var(--primary);background:var(--primary-mid);border-radius:var(--radius-pill);opacity:.85;padding:.05rem .35rem;font-size:.7rem;font-weight:600}[data-theme=dark] .bank-detection-banner{background:var(--primary-glow);border-color:var(--primary-mid)}[data-theme=dark] .bank-detection-banner.unknown{background:var(--gray-100);border-color:var(--border);border-left-color:var(--text-4)}[data-theme=dark] .extraction-warning-banner{color:#fcd34d;background:#451a03;border-color:#b45309}[data-theme=dark] .bank-reextract-dropdown{background:var(--gray-100);border-color:var(--border)}.modal-icon-wrapper{border-radius:var(--radius-md);border-style:solid;border-width:1.5px;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 1.25rem;display:flex}.modal-input-group{text-align:left;margin:.25rem 0 1rem}.modal-input-label{color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.35rem;font-size:.72rem;font-weight:700;display:block}.modal-input{box-sizing:border-box;border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--muted);width:100%;color:var(--text);outline:none;padding:.55rem .85rem;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.modal-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.modal-input--error,.modal-input--error:focus{border-color:var(--rose);background:var(--rose-light);box-shadow:0 0 0 3px var(--rose-light)}.modal-input-wrap{align-items:center;display:flex;position:relative}.modal-input--with-reveal{padding-right:2.6rem}.modal-input::-ms-reveal{display:none}.modal-input::-ms-clear{display:none}.modal-input-reveal{border-radius:var(--radius-sm);width:1.9rem;height:1.9rem;color:var(--text-3);cursor:pointer;transition:color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;margin:auto 0;padding:0;display:inline-flex;position:absolute;top:0;bottom:0;right:.4rem}.modal-input-reveal:hover{color:var(--text);background:var(--gray-100)}.modal-input-reveal:disabled{cursor:default;opacity:.45}.modal-info .modal-icon-wrapper{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.modal-info .btn-confirm{background:var(--primary);color:#fff}.modal-success .modal-icon-wrapper{background:var(--emerald-light);border-color:var(--emerald);color:var(--emerald)}.modal-success .btn-confirm{background:var(--emerald);color:#fff}.modal-warning .modal-icon-wrapper{background:var(--amber-light);border-color:var(--amber);color:var(--amber)}.modal-warning .btn-confirm{background:var(--amber);color:#fff}.modal-error .modal-icon-wrapper{background:var(--rose-light);border-color:var(--rose);color:var(--rose)}.modal-error .btn-confirm{background:var(--rose);color:#fff}.cc-step-title{align-items:center;gap:.5rem;display:inline-flex}.cc-alert-text{flex:1}.cc-loader-text{color:var(--text-4);align-items:center;gap:.3rem;margin-left:.5rem;font-size:.75rem;font-weight:400;display:inline-flex}.w-120{width:120px}.w-90{width:90px}.w-110{width:110px}.w-140{width:140px}.cc-empty-row-text{text-align:center;color:var(--gray-500);padding:2rem}.cc-missing-cell-text{align-items:center;gap:.3rem;display:inline-flex}.cc-account-name-cell{color:var(--text-3);font-size:.85rem}.cc-mr-auto{margin-right:auto}.cc-section-title-container{justify-content:space-between;align-items:center;display:flex}.cc-flex-center-gap{align-items:center;gap:1rem;display:flex}.cc-loading-text-primary{color:var(--primary);align-items:center;gap:.3rem;margin-left:10px;font-size:.8rem;display:inline-flex}.cc-pb-0{padding-bottom:0}.cc-mapping-grid-container{grid-template-columns:70px minmax(210px,auto) minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:.5rem;width:100%;display:grid}.cc-mapping-grid-container .mapping-header{font-weight:600}.cc-mapping-type-credit{color:var(--primary);background:var(--primary-light);border-radius:var(--radius-xs);text-align:center;padding:.2rem .5rem;font-weight:700}.cc-mapping-type-debit{color:var(--amber);background:var(--ap-include-bg,var(--caution-amber-light,var(--amber-light)));border-radius:var(--radius-xs);text-align:center;padding:.2rem .5rem;font-weight:700}.cc-mapping-label-clickable{cursor:pointer;color:var(--primary);text-decoration:underline}.cc-map-ar-btn{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;padding:0;font-family:inherit;display:inline-flex}.cc-map-ar-title{color:var(--primary);font-size:.85rem;font-weight:600}.cc-map-ar-btn:hover .cc-map-ar-title,.cc-map-ar-btn:focus-visible .cc-map-ar-title{text-decoration:underline}.cc-map-ar-count{border-radius:var(--radius-full,100px);flex-shrink:0;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.cc-map-ar-count.missing{color:var(--rose);background:var(--btn-err-bg,var(--rose-light))}.cc-map-ar-count.ready{color:var(--teal);background:var(--teal-light)}.cc-map-ar-chevron{color:var(--primary);flex-shrink:0;transition:transform .15s}.cc-map-ar-btn:hover .cc-map-ar-chevron{transform:translate(2px)}.cc-grid-span-3{grid-column:span 3}.cc-mapping-status{border-radius:var(--radius-md);border:1px solid;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.85rem;display:flex}.cc-mapping-status.missing{color:var(--rose);background:var(--btn-err-bg,var(--rose-light));border-color:var(--rose-mid)}.cc-mapping-status.ready{color:var(--teal);background:var(--teal-light);border-color:var(--teal)}.cc-flex-shrink-0{flex-shrink:0}.cc-bullet-divider-missing{color:var(--rose-mid)}.cc-required-badge{flex-shrink:0;margin-left:auto}.cc-ready-subtext{opacity:.75;font-size:.78rem}.cc-label-flex-container{align-items:center;gap:.5rem;display:flex}.cc-history-badge{color:var(--emerald);background:var(--emerald-light);border-radius:var(--radius-xs);border:1px solid var(--emerald-mid);align-items:center;gap:.4rem;padding:3px 8px;font-size:.75rem;font-weight:600;display:flex}.cc-suggestion-buttons{gap:.3rem;display:flex}.cc-btn-accept{background:var(--emerald-light);color:var(--emerald);border:1px solid var(--emerald-mid);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);align-items:center;gap:.3rem;padding:.25rem .65rem;font-size:.78rem;font-weight:600;display:flex}.cc-btn-reject{background:var(--btn-err-bg,var(--rose-light));color:var(--btn-err-text,var(--rose));border:1px solid var(--btn-err-border,var(--rose-mid));border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);align-items:center;gap:.3rem;padding:.25rem .65rem;font-size:.78rem;font-weight:600;display:flex}.cc-btn-reject:hover{background:var(--rose);color:#fff;border-color:var(--rose)}.cc-btn-accept:hover{background:var(--emerald);color:#fff;border-color:var(--emerald)}.cc-btn-accept:focus-visible,.cc-btn-reject:focus-visible{outline:2.5px solid var(--primary);outline-offset:2px}.cc-btn-accept:active,.cc-btn-reject:active{transform:scale(.97)}.cc-btn-accept:disabled,.cc-btn-reject:disabled{opacity:.42;cursor:not-allowed;pointer-events:none}.cc-badge-primary{background:var(--primary-light);color:var(--primary);border:1px solid var(--primary-mid);border-radius:var(--radius-xs);padding:.2rem .65rem;font-size:.8rem;font-weight:600}.cc-badge-gray{background:var(--gray-100);color:var(--text-2);border:1px solid var(--border);border-radius:var(--radius-xs);padding:.2rem .65rem;font-size:.8rem;font-weight:500}.cc-table-header-row{background-color:var(--bg-table-header,var(--gray-50));color:var(--text-table-header,var(--text-3))}.cc-table-header-row th{color:inherit;background:inherit;border-bottom:2px solid var(--border-hi)}.cc-badge-teal-bold{background:var(--teal-light);color:var(--teal);border:1px solid var(--teal-mid);border-radius:var(--radius-xs);padding:.15rem .5rem;font-size:.78rem;font-weight:700}.cc-mono-text{font-family:IBM Plex Mono,monospace;font-size:.83rem}.cc-max-w-160-wrap{white-space:normal;max-width:160px}.cc-desc-cell{white-space:normal;max-width:180px;color:var(--text-2);font-size:.83rem}.cc-badge-primary-nowrap{background:var(--primary-light);color:var(--primary);border:1px solid var(--primary-mid);border-radius:var(--radius-xs);white-space:nowrap;padding:.15rem .5rem;font-size:.78rem;font-weight:600}.cc-mono-only{font-family:IBM Plex Mono,monospace}.cc-mono-semi-bold{font-family:IBM Plex Mono,monospace;font-weight:600}.cc-mono-bold-teal{color:var(--teal);font-family:IBM Plex Mono,monospace;font-weight:700}.cc-font-bold{font-weight:700}.cc-mono-bold{font-family:IBM Plex Mono,monospace;font-weight:700}.cc-modal-overlay-container{background:var(--modal-overlay-bg,#00000073);z-index:var(--z-modal-backdrop);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cc-modal-icon-teal{color:var(--teal);justify-content:center;margin-bottom:.75rem;display:flex}.cc-modal-icon-rose{color:var(--rose);justify-content:center;margin-bottom:.75rem;display:flex}.cc-modal-title{margin-bottom:.65rem;font-size:1.1rem;font-weight:700}.cc-modal-body-text{color:var(--text-2);margin-bottom:1rem;font-size:.92rem;line-height:1.7}.cc-modal-info-box-teal{background:var(--teal-light);border:1px solid var(--teal-mid);border-radius:var(--radius-sm);color:var(--teal);text-align:left;align-items:flex-start;gap:.5rem;margin-bottom:1.25rem;padding:.55rem .85rem;font-size:.83rem;display:flex}.cc-modal-info-box-rose{background:var(--btn-err-bg,var(--rose-light));border:1px solid var(--btn-err-border,var(--rose-mid));border-radius:var(--radius-sm);color:var(--btn-err-text,var(--rose));text-align:left;align-items:flex-start;gap:.5rem;margin-bottom:1.5rem;padding:.55rem .85rem;font-size:.83rem;display:flex}.cc-info-icon-flag{flex-shrink:0;margin-top:.15rem}.cc-modal-error-box{background:var(--btn-err-bg,var(--rose-light));border:1px solid var(--btn-err-border,var(--rose-mid));border-radius:var(--radius-sm);color:var(--btn-err-text,var(--rose));text-align:left;margin-bottom:1.25rem;padding:.6rem .85rem;font-size:.85rem}.cc-error-icon-alert{flex-shrink:0;margin-right:.4rem}.cc-btn-danger-rose{background:var(--rose)!important;color:#fff!important}.date-input{position:relative}.date-input-trigger{border:none;border-bottom:1.5px solid var(--border);width:100%;color:var(--text);cursor:pointer;text-align:left;transition:border-color var(--dur-base) var(--ease);background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:.5rem;padding:.45rem 0;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.9rem;font-weight:500;display:flex}.date-input-trigger:hover:not(:disabled){border-bottom-color:var(--primary)}.date-input-trigger:disabled{cursor:default;opacity:.7}.date-input-trigger svg{color:var(--text-4);transition:color var(--dur-base) var(--ease);flex-shrink:0}.date-input-trigger:hover:not(:disabled) svg{color:var(--primary)}.date-input-placeholder{color:var(--text-4)}.date-input-popover{z-index:var(--z-sticky);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transform-origin:0 0;animation:dateInPop var(--dur-base) var(--ease) both;--rdp-accent-color:var(--primary);--rdp-accent-background-color:var(--primary-light);--rdp-day-width:2.3rem;--rdp-day-height:2.3rem;--rdp-day_button-width:2.1rem;--rdp-day_button-height:2.1rem;--rdp-day_button-border-radius:var(--radius-md);--rdp-selected-border:none;--rdp-today-color:var(--primary);--rdp-outside-opacity:.35;--rdp-font-family:"Inter", "IBM Plex Sans Thai", sans-serif;--rdp-weekday-opacity:1;max-width:calc(100vw - 24px);color:var(--text-2);padding:.6rem;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.85rem;position:absolute;top:calc(100% + 6px);left:0}.date-input-popover.align-right{transform-origin:100% 0;left:auto;right:0}@keyframes dateInPop{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.date-input-popover{animation:.12s both dateInFade}@keyframes dateInFade{0%{opacity:0}to{opacity:1}}}.date-input-popover .rdp-root{margin:0}.date-input-popover .rdp-month_caption{color:var(--text-2);padding-bottom:.4rem;font-size:.92rem;font-weight:700}.date-input-popover .rdp-weekday{color:var(--text-4);text-transform:uppercase;letter-spacing:.04em;font-size:.68rem;font-weight:600}.date-input-popover .rdp-day_button{border-radius:var(--radius-md);color:var(--text-2);transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);border:none;font-weight:500}.date-input-popover .rdp-day_button:hover:not([disabled]){background:var(--primary-light);color:var(--primary)}.date-input-popover .rdp-selected .rdp-day_button{background:var(--primary);color:#fff;box-shadow:var(--shadow-primary);font-weight:700}.date-input-popover .rdp-selected .rdp-day_button:hover{background:var(--primary-hover);color:#fff}.date-input-popover .rdp-today:not(.rdp-selected) .rdp-day_button{color:var(--primary);font-weight:700}.date-input-popover .rdp-button_previous,.date-input-popover .rdp-button_next{border-radius:var(--radius-sm);transition:background-color var(--dur-fast) var(--ease)}.date-input-popover .rdp-button_previous:hover:not([disabled]),.date-input-popover .rdp-button_next:hover:not([disabled]){background:var(--primary-light)}.date-input-popover .rdp-chevron{fill:var(--text-3);transition:fill var(--dur-fast) var(--ease)}.date-input-popover .rdp-button_previous:hover:not([disabled]) .rdp-chevron,.date-input-popover .rdp-button_next:hover:not([disabled]) .rdp-chevron{fill:var(--primary)}.date-input-popover .rdp-dropdown_root{border-radius:var(--radius-sm);color:var(--text-2);transition:background-color var(--dur-fast) var(--ease);align-items:center;padding:.2rem .5rem;font-weight:700;display:inline-flex;position:relative}.date-input-popover .rdp-dropdown_root:hover{background:var(--primary-light)}.date-input-popover .rdp-dropdown{cursor:pointer}.date-input-popover .rdp-dropdown_root .rdp-chevron{margin-left:.15rem}.gl-help-tip{background:var(--gray-200);width:14px;height:14px;color:var(--text-3);cursor:help;vertical-align:middle;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:.3rem;font-size:.62rem;font-style:normal;font-weight:700;display:inline-flex}.gl-help-tip:hover{background:var(--primary-light);color:var(--primary)}.prev-page-thumbs{flex-direction:column;flex:1;gap:1rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.prev-page-thumb-item{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--muted);flex-direction:column;flex-shrink:0;gap:4px;display:flex;overflow:hidden}.prev-page-thumb-img{-webkit-user-select:none;user-select:none;width:100%;display:block}.prev-page-thumb-label{color:var(--text-3);text-align:center;background:var(--card-bg);border-top:1px solid var(--border);padding:4px 8px 5px;font-size:.72rem;font-weight:500}.pdf-selector-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:.75rem 1.25rem;display:flex}@media (width<=480px){.pdf-selector-footer{flex-direction:column-reverse}.pdf-selector-footer .btn{justify-content:center;width:100%}}.segmented-control{background:var(--muted);border-radius:var(--radius-pill);border:1px solid var(--border);-webkit-user-select:none;user-select:none;width:100%;max-width:300px;margin:0 auto 2rem;padding:2px;display:inline-flex;position:relative}.segmented-btn{z-index:2;color:var(--text-3);border-radius:var(--radius-pill);transition:color .15s var(--ease-out-premium);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:.35rem;padding:.45rem 1rem;font-size:.82rem;font-weight:600;display:flex;position:relative}.lang-toggle{white-space:nowrap;height:36px;color:var(--text-2);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;transition:color .15s var(--ease-out-premium), background .15s var(--ease-out-premium);align-items:center;gap:.3rem;padding:0 .7rem;font-size:.8rem;font-weight:600;display:inline-flex}.lang-toggle:hover{color:var(--text);background:var(--muted)}.theme-toggle{width:36px;height:36px;color:var(--text-2);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;transition:color .15s var(--ease-out-premium), background .15s var(--ease-out-premium);justify-content:center;align-items:center;display:inline-flex}.theme-toggle:hover{color:var(--text);background:var(--muted)}.segmented-btn:hover{color:var(--text-2)}.segmented-btn.active{color:var(--text)}.segmented-indicator{z-index:1;background:var(--card-bg);border-radius:var(--radius-pill);border:.5px solid var(--border);position:absolute;inset:2px auto 2px 2px;box-shadow:0 1px 3px #00000014,0 1px 1px #0000000a}.ios-sheet-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:var(--z-modal-backdrop);background:#0f172a66;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.ios-sheet{background:var(--card-bg);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border:1px solid var(--border);width:100%;max-width:500px;box-shadow:var(--shadow-xl);border-bottom:none;padding:1.5rem 1.5rem 3rem;position:relative}.ios-sheet-handle{background:var(--gray-300);border-radius:var(--radius-pill);opacity:.7;width:36px;height:5px;margin:-.5rem auto 1.25rem}.ios-sheet-close{background:var(--gray-100);width:28px;height:28px;color:var(--text-3);cursor:pointer;transition:background var(--dur-fast) var(--ease);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:1rem;right:1rem}.ios-sheet-close:hover{background:var(--gray-200);color:var(--text)}.ios-sheet-close:active{transform:scale(.97)}.custom-search-select-input{width:100%;transition:border-color .18s var(--ease-out), background-color .18s var(--ease-out), color .18s var(--ease-out);border-radius:6px;outline:none;padding:.5rem .65rem;font-family:DM Mono,monospace;font-size:.85rem}.custom-search-select-top{cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .8rem;transition:background .1s;display:flex}.error-boundary-wrap{background:var(--bg-1,#f8f9fc);min-height:100vh;font-family:var(--font-sans,system-ui, sans-serif);justify-content:center;align-items:center;padding:2rem;display:flex}.error-boundary-card{background:var(--bg-2,white);border:1px solid var(--border,#e2e8f0);text-align:center;border-radius:1rem;width:100%;max-width:480px;padding:2.5rem;box-shadow:0 4px 24px #00000014}.error-boundary-icon{background:#ef44441a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 1.25rem;font-size:1.75rem;display:flex}.error-boundary-title{color:var(--text-1,#111);margin:0 0 .5rem;font-size:1.125rem;font-weight:700}.error-boundary-pre{background:var(--bg-3,#f1f5f9);text-align:left;color:var(--text-2,#374151);white-space:pre-wrap;word-break:break-word;border-radius:.5rem;margin:.75rem 0 1.25rem;padding:.75rem;font-size:.75rem;overflow-x:auto}.error-boundary-btn-primary{background:var(--purple,#7c3aed);color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600}.error-boundary-btn-secondary{color:var(--text-2,#374151);border:1px solid var(--border,#e2e8f0);cursor:pointer;background:0 0;border-radius:.5rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600}.pdf-selector-overlay{z-index:400;background:oklch(0% 0 0/.55);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.pdf-selector-dialog{background:var(--card-bg);color:var(--text);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--border);flex-direction:column;width:100%;max-width:700px;max-height:90vh;display:flex;overflow:hidden}.pdf-selector-alert{border-radius:var(--radius-sm);background:var(--amber-light);border:1px solid var(--amber-mid);color:var(--amber-text);align-items:flex-start;gap:6px;margin-top:8px;padding:6px 10px;font-size:.75rem;line-height:1.45;display:flex}.pdf-selector-thumbnail-btn{text-align:left;cursor:pointer;border-radius:var(--radius-md);transition:border-color var(--dur-fast) var(--ease);background:0 0;background-color:var(--card-bg);border:2px solid;outline:none;flex-direction:column;padding:0;display:flex;position:relative}.pdf-selector-checkbox{color:#fff;width:18px;height:18px;box-shadow:var(--shadow-sm);border-radius:4px;justify-content:center;align-items:center;transition:all .12s;display:flex;position:absolute;top:6px;right:6px}.isel-wrap{align-items:center;display:inline-flex}.isel-trigger{border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;white-space:nowrap;min-height:28px;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:.28rem;padding:.22rem .4rem;font-family:inherit;font-size:.83rem;font-weight:500;line-height:1;display:inline-flex}.isel-trigger:hover,.isel-trigger[data-open=true]{background:var(--accent);color:var(--text)}.isel-trigger:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.isel-trigger:disabled{opacity:.4;cursor:not-allowed}.isel-trigger[data-warning=true],.isel-trigger[data-accent=amber]{color:var(--amber-text)}.isel-trigger[data-accent=blue]{color:var(--primary)}.isel-trigger[data-accent=green]{color:var(--success-foreground)}.isel-trigger[data-accent=muted]{color:var(--text-3)}.isel-dot,.isel-opt-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.isel-dot[data-accent=amber],.isel-opt-dot[data-accent=amber]{background:var(--amber)}.isel-dot[data-accent=blue],.isel-opt-dot[data-accent=blue]{background:var(--primary)}.isel-dot[data-accent=green],.isel-opt-dot[data-accent=green]{background:var(--emerald)}.isel-dot[data-accent=muted],.isel-opt-dot[data-accent=muted]{background:var(--text-4)}.isel-label{line-height:1}.isel-chevron{color:var(--text-4);transition:transform .18s var(--ease-out);flex-shrink:0}.isel-trigger[data-open=true] .isel-chevron{transform:rotate(180deg)}.isel-panel{background:var(--popover);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:80px;max-width:240px;max-height:240px;z-index:var(--z-dropdown);outline:none;padding:3px;display:block;overflow:hidden auto}.isel-panel[data-placement=below]{animation:.14s cubic-bezier(.16,1,.3,1) both iselOpenBelow}.isel-panel[data-placement=above]{animation:.14s cubic-bezier(.16,1,.3,1) both iselOpenAbove}@keyframes iselOpenBelow{0%{opacity:0;transform:scale(.95)translateY(-6px)}to{opacity:1;transform:none}}@keyframes iselOpenAbove{0%{opacity:0;transform:scale(.95)translateY(6px)}to{opacity:1;transform:none}}.isel-option{border-radius:var(--radius-xs);cursor:pointer;text-align:left;width:100%;min-height:32px;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:.45rem;padding:.4rem .6rem;font-family:inherit;display:flex}.isel-option:hover,.isel-option[data-active=true]{background:var(--accent)}.isel-option[data-selected=true]{background:var(--primary-light)}.isel-opt-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.isel-opt-label{color:var(--text);font-size:.82rem;font-weight:400;line-height:1.2}.isel-option[data-selected=true] .isel-opt-label{color:var(--primary);font-weight:600}.isel-option[data-selected=true][data-accent=amber]{background:var(--amber-light)}.isel-option[data-selected=true][data-accent=amber] .isel-opt-label{color:var(--amber-text)}.isel-option[data-selected=true][data-accent=green]{background:var(--emerald-light)}.isel-option[data-selected=true][data-accent=green] .isel-opt-label{color:var(--success-foreground)}.isel-option[data-selected=true][data-accent=muted]{background:var(--muted)}.isel-option[data-selected=true][data-accent=muted] .isel-opt-label{color:var(--text-3);font-weight:500}.isel-opt-desc{color:var(--text-4);white-space:nowrap;text-overflow:ellipsis;font-size:.71rem;overflow:hidden}.isel-opt-check{color:var(--primary);opacity:.8;flex-shrink:0;margin-left:auto}.isel-option[data-selected=true][data-accent=amber] .isel-opt-check{color:var(--amber-text)}.isel-option[data-selected=true][data-accent=green] .isel-opt-check{color:var(--success-foreground)}.isel-option[data-selected=true][data-accent=muted] .isel-opt-check{color:var(--text-3)}[data-theme=dark] .isel-panel{background:var(--card-bg);border-color:var(--border)}[data-theme=dark] .isel-option[data-selected=true]{background:var(--primary-light)}[data-theme=dark] .isel-option[data-selected=true][data-accent=amber]{background:var(--amber-light)}[data-theme=dark] .isel-option[data-selected=true][data-accent=green]{background:var(--emerald-light)}[data-theme=dark] .isel-trigger:hover,[data-theme=dark] .isel-trigger[data-open=true]{background:var(--accent);color:var(--text)}@media (prefers-reduced-motion:reduce){.isel-panel{animation:none}.isel-chevron,.isel-trigger,.isel-option{transition:none}}.ui-quota--link{text-decoration:none}.ui-quota{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);cursor:default;-webkit-user-select:none;user-select:none;transition:border-color .18s var(--ease), box-shadow .18s var(--ease);align-items:stretch;display:flex;position:relative;overflow:hidden}.ui-quota:hover{border-color:var(--border-hi);box-shadow:var(--shadow-sm)}.ui-quota:after{content:"";background:var(--quota-color,var(--teal));width:100%;height:2px;transform:scaleX(var(--used-pct-factor,0));transform-origin:0;border-radius:0 99px 99px 0;transition:transform .9s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;left:0}.ui-quota-col{flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.14rem;padding:.3rem .75rem;display:flex}.ui-quota-col+.ui-quota-col{border-left:1px solid var(--border)}.ui-quota-col.col-remain{background:var(--muted)}.ui-quota-col.col-remain .ui-quota-value{color:var(--primary)}.ui-quota.is-low .col-remain .ui-quota-value{color:var(--rose)}.ui-quota-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);white-space:nowrap;font-size:.56rem;font-weight:700;line-height:1}.ui-quota-value{white-space:nowrap;font-family:IBM Plex Mono,monospace;font-size:.8rem;font-weight:700;line-height:1}.ui-quota--skeleton{opacity:.45;pointer-events:none}.ui-quota-placeholder{color:var(--text-4)!important}.ui-quota.is-low{border-color:var(--rose-mid)}.ui-quota.is-low .col-remain{background:var(--rose-light)}[data-theme=dark] .ui-quota{background:var(--card-bg);border-color:var(--border)}[data-theme=dark] .ui-quota.is-low{border-color:var(--rose-mid)}[data-theme=dark] .ui-quota.is-low .col-remain{background:var(--rose-light)}@media (width<=768px){.ui-quota-col.col-used{display:none}}@media (width<=480px){.ui-quota-col.col-total{display:none}.ui-quota-col{padding:.25rem .6rem}.ui-quota-value{font-size:.75rem}}.usage-bar-bg{background:var(--border);border-radius:99px;width:60px;height:3px;overflow:hidden}.usage-bar-fill{border-radius:99px;height:100%}[data-sonner-toaster]{--normal-bg:var(--card-bg);--normal-border:var(--border);--normal-text:var(--text);--success-bg:oklch(97% .04 188.43);--success-border:var(--emerald);--success-text:var(--success-foreground);--error-bg:oklch(97% .04 24.11);--error-border:var(--rose);--error-text:var(--destructive);--warning-bg:oklch(97% .04 75);--warning-border:var(--amber);--warning-text:var(--warning-foreground);--info-bg:oklch(97% .025 253.27);--info-border:var(--teal);--info-text:var(--info-foreground);font-family:Inter,IBM Plex Sans Thai,sans-serif}[data-sonner-toast]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lg)!important;transition-timing-function:var(--ease-out)!important}[data-sonner-toast] [data-button]{transition:transform var(--dur-fast) var(--ease-out)}[data-sonner-toast] [data-button]:active{transform:scale(.97)}[data-theme=dark] [data-sonner-toaster]{--success-bg:oklch(25% .02 188.43);--error-bg:oklch(26% .03 24.11);--warning-bg:oklch(26% .025 75);--info-bg:oklch(25% .02 253.27)}.page-skeleton{background-color:var(--body-bg-fallback);background-color:var(--body-bg-oklch);background-image:radial-gradient(ellipse 70% 30% at 50% 0%, var(--primary-glow) 0%, transparent 100%);z-index:100;animation:sk-fade-in .2s var(--ease) both;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes sk-fade-in{0%{opacity:0}to{opacity:1}}.page-skeleton-bar{background:linear-gradient(90deg, var(--primary), var(--teal));width:0%;height:3px;box-shadow:0 0 10px var(--primary-glow);border-radius:0 99px 99px 0;animation:1.8s cubic-bezier(.1,.6,.3,1) forwards sk-bar-grow;position:fixed;top:0;left:0}@keyframes sk-bar-grow{0%{width:0%}60%{width:72%}90%{width:88%}to{width:88%}}.page-skeleton-body{width:min(480px,90vw);animation:sk-body-in .35s .1s var(--ease) both;flex-direction:column;gap:16px;display:flex}@keyframes sk-body-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.page-skeleton-header{justify-content:space-between;align-items:center;display:flex}.page-skeleton-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;gap:16px;padding:24px;display:flex}.page-skeleton-footer{justify-content:flex-end;align-items:center;gap:10px;display:flex}@keyframes sk-shimmer{0%{background-position:-300%}to{background-position:300%}}.sk-block{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--gray-100) 25%, var(--gray-200) 50%, var(--gray-100) 75%);background-size:300% 100%;animation:1.6s infinite sk-shimmer}.sk-title{border-radius:var(--radius-md);width:180px;height:22px}.sk-badge{border-radius:99px;width:80px;height:22px}.sk-upload-zone{border-radius:var(--radius-md);border:1.5px dashed var(--border-hi);background:linear-gradient(90deg, var(--gray-50) 25%, var(--gray-100) 50%, var(--gray-50) 75%);background-size:300% 100%;flex-direction:column;justify-content:center;align-items:center;gap:10px;height:120px;animation:1.8s infinite sk-shimmer;display:flex}.sk-icon{border-radius:8px;width:32px;height:32px}.sk-line{border-radius:99px;height:12px}.sk-line-sm{width:55%}.sk-line-md{width:75%}.sk-line-lg{width:85%}.sk-line-full{width:100%}.sk-divider{background:var(--border);height:1px;margin:2px 0}.sk-pills{gap:8px;display:flex}.sk-pill{border-radius:99px;width:80px;height:26px}.sk-btn{border-radius:var(--radius-md);width:90px;height:34px}.sk-btn-primary{width:110px}[data-theme=dark] .sk-block,[data-theme=dark] .sk-upload-zone{background:linear-gradient(90deg, var(--gray-100) 25%, var(--gray-200) 50%, var(--gray-100) 75%);background-size:300% 100%;animation:1.6s infinite sk-shimmer}:root{--maint-banner-h:2.5rem;--maint-scrim:oklch(16% .02 258.7/.96);--maint-on-scrim:oklch(98% .003 258.7)}body.has-maint-banner{padding-top:var(--maint-banner-h)}body{transition:padding-top var(--dur-slow) var(--ease-out)}body.has-maint-banner .app-header{top:calc(.75rem + var(--maint-banner-h))}.maint-banner{z-index:var(--z-modal-backdrop);min-height:var(--maint-banner-h);padding:0 var(--space-4);background:var(--amber-light);border-bottom:1px solid var(--amber-mid);box-shadow:var(--shadow-sm);color:var(--amber-text);animation:maint-banner-in var(--dur-slow) var(--ease-out) both;justify-content:center;align-items:center;display:flex;position:fixed;inset:0 0 auto}.maint-banner__inner{align-items:center;gap:var(--space-3);min-width:0;display:flex}.maint-banner__icon{opacity:.85;flex:none;display:inline-flex}.maint-banner__label{letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:600;overflow:hidden}.maint-banner__window{font-family:var(--font-mono);letter-spacing:-.01em;white-space:nowrap;opacity:.9;font-size:.75rem}.maint-banner__countdown{border-radius:var(--radius-pill);background:var(--amber);flex:none;padding:.1rem .5rem}@supports (color:color-mix(in lab, red, red)){.maint-banner__countdown{background:color-mix(in oklch, var(--amber) 22%, transparent)}}.maint-banner__countdown{font-family:var(--font-mono);white-space:nowrap;font-size:.7rem;font-weight:500}.maint-banner__dismiss{min-width:2.75rem;min-height:2.75rem;color:inherit;opacity:.65;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out);background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin:-.5rem -.75rem -.5rem 0;display:inline-flex;position:relative}.maint-banner__dismiss:before{content:"";border-radius:var(--radius-pill);width:1.65rem;height:1.65rem;transition:background-color var(--dur-fast) var(--ease-out);background:0 0;position:absolute}.maint-banner__dismiss>svg{position:relative}.maint-banner__dismiss:hover{opacity:1}.maint-banner__dismiss:hover:before{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.maint-banner__dismiss:hover:before{background:color-mix(in oklch, var(--amber) 24%, transparent)}}.maint-banner__dismiss:focus-visible{opacity:1;outline:none}.maint-banner__dismiss:focus-visible:before{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.maint-banner__dismiss:focus-visible:before{background:color-mix(in oklch, var(--amber) 24%, transparent)}}.maint-banner__dismiss:focus-visible:before{box-shadow:0 0 0 2px var(--amber-text)}@keyframes maint-banner-in{0%{opacity:0;transform:translateY(-100%)}}.maint-banner--leaving{animation:maint-banner-out var(--dur-base) var(--ease-in) both;pointer-events:none}@keyframes maint-banner-out{to{opacity:0;transform:translateY(-100%)}}@media (width<=30rem){.maint-banner__window{display:none}}.maint-overlay{z-index:var(--z-modal);text-align:center;background:var(--maint-scrim);color:var(--maint-on-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:maint-overlay-in var(--dur-slow) var(--ease-out) both;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex;position:fixed;inset:0}@keyframes maint-overlay-in{0%{opacity:0}}.maint-overlay__chip{width:3.5rem;height:3.5rem;color:var(--amber);background:oklch(76% .13 78/.14);border-radius:999px;place-items:center;animation:2.6s ease-in-out infinite maint-pulse;display:grid}@keyframes maint-pulse{0%,to{box-shadow:0 0 oklch(76% .13 78/.28)}50%{box-shadow:0 0 0 12px oklch(76% .13 78/0)}}.maint-overlay__title{margin:0;font-size:1.5rem;font-weight:700}.maint-overlay__body{color:oklch(98% .003 258.7/.85);max-width:32rem;margin:0}.maint-overlay__sub{color:oklch(98% .003 258.7/.7);margin:0}.maint-overlay__retry{min-height:2.75rem;color:var(--maint-on-scrim);cursor:pointer;background:0 0;border:1px solid oklch(98% .003 258.7/.3);border-radius:.5rem;margin-top:.5rem;padding:.5rem 1.25rem}.maint-overlay__retry:hover{background:oklch(98% .003 258.7/.1)}.maint-overlay__retry:focus-visible{outline:2px solid var(--maint-on-scrim);outline-offset:2px}@media (prefers-reduced-motion:reduce){.maint-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}.maint-overlay__chip{animation:none}body{transition:none}.maint-banner,.maint-overlay{animation:maint-fade-in var(--dur-fast) linear both}.maint-banner--leaving{animation:maint-fade-out var(--dur-fast) linear both}@keyframes maint-fade-in{0%{opacity:0}}@keyframes maint-fade-out{to{opacity:0}}}@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-gray-400:oklch(70.7% .022 261.325);--spacing:.25rem;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.order-1{order:1}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-screen{height:100vh}.w-90{width:calc(var(--spacing) * 90)}.w-110{width:calc(var(--spacing) * 110)}.w-120{width:calc(var(--spacing) * 120)}.w-140{width:calc(var(--spacing) * 140)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.overflow-visible{overflow:visible}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.text-center{text-align:center}.text-right{text-align:right}.text-gray-400{color:var(--color-gray-400)}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--ap-vendor-bg:oklch(97% .014 295);--ap-vendor-border:oklch(84% .06 295);--ap-vendor-pill-border:oklch(89% .05 295);--ap-vendor-icon-bg:oklch(52% .18 295);--ap-vendor-text:oklch(20% .06 295);--ap-vendor-text-muted:oklch(42% .14 295);--amber-text-dark:var(--amber-text);--blue-text-dark:var(--primary-hover);--amber-border-light:var(--amber-mid);--blue-border-light:var(--primary-mid);--ap-error-text:oklch(42% .18 24.11);--ap-none-bg:var(--emerald-light);--ap-inv-desc-bg:oklch(98% .005 295);--ap-inv-desc-border:oklch(84% .06 295);--ap-inv-desc-shadow:0 0 0 3px oklch(from var(--ap-vendor-icon-bg) l c h / .15);--ap-error-border:var(--rose-mid)}.ap-split-layout{transition:grid-template-columns var(--dur-slow) var(--ease);grid-template-columns:340px 1fr;align-items:start;gap:1.5rem;display:grid}.ap-split-layout.full-width{grid-template-columns:1fr}.ap-preview-side{top:var(--header-bottom,6rem);flex-direction:column;gap:.75rem;display:flex;position:sticky}.ap-preview-side .preview-column{position:static}.ap-work-area{flex-direction:column;gap:1.25rem;min-width:0;display:flex}.preview-toggle-btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--dur-base);border:1px solid var(--border-hi);color:var(--text-3);box-shadow:var(--shadow-xs);background:#fff;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.8rem;font-weight:700;display:inline-flex}.preview-toggle-btn:hover{background:var(--primary-light);color:var(--primary);border-color:var(--primary-mid);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.preview-toggle-btn.show{background:var(--primary);color:#fff;border:none;align-self:flex-start;margin-bottom:.5rem}.preview-toggle-btn.show:hover{background:var(--primary-hover)}.lang-toggle{background:var(--primary-light);border:1px solid var(--primary-mid);color:var(--primary);cursor:pointer;transition:all var(--dur-base);letter-spacing:.04em;border-radius:100px;align-items:center;gap:.4rem;padding:.4rem .9rem;font-size:.78rem;font-weight:700;display:inline-flex}.lang-toggle:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.vendor-search-wrap{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-md);z-index:10;margin-bottom:1rem;padding:1rem;position:relative}.vendor-search-input-wrap{border:1.5px solid var(--border-hi);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:all var(--dur-base);background:#fff;align-items:center;gap:.55rem;padding:0 .85rem;display:flex}.vendor-search-input-wrap:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px oklch(from var(--primary) l c h / .1)}.vendor-search-input-wrap i{color:var(--text-4);pointer-events:none;flex-shrink:0;font-size:.8rem}.vendor-search-input{min-width:0;color:var(--text);background:0 0;border:none;border-radius:0;outline:none;flex:1;padding:.6rem 0;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.87rem;font-weight:500}.vendor-search-input.matched{color:var(--btn-ok-text);font-weight:600}.vendor-search-input-wrap:has(.vendor-search-input.matched){border-color:var(--emerald);box-shadow:0 0 0 3px oklch(from var(--emerald) l c h / .1)}.vendor-dropdown{z-index:1000;border:1px solid var(--border-hi);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);background:#fff;max-height:360px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.vendor-dropdown-item{cursor:pointer;border-bottom:1px solid var(--gray-100);transition:background var(--dur-fast);padding:.75rem 1rem}.vendor-dropdown-item:last-child{border-bottom:none}.vendor-dropdown-item:hover{background:var(--primary-light)}.vendor-dropdown-item .vd-name{color:var(--text);font-size:.85rem;font-weight:600}.vendor-dropdown-item .vd-meta{gap:1.2rem;margin-top:.2rem;display:flex}.vendor-dropdown-item .vd-tax,.vendor-dropdown-item .vd-branch{color:var(--text-4);font-family:IBM Plex Mono,monospace;font-size:.72rem}.data-card.card-vendor{overflow:visible}.data-card.card-vendor .card-title{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.vendor-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-xs);align-items:center;gap:.3rem;padding:.2rem .55rem;font-size:.68rem;font-weight:700;display:inline-flex}.vendor-badge.mapped{background:var(--emerald-light);color:var(--emerald);border:1px solid var(--emerald-mid)}.vendor-badge.unmapped{background:var(--amber-light);color:var(--amber);border:1px solid var(--amber-mid)}.mapping-table-wrap{overflow-x:auto}.mapping-table-wrap--padded{padding:.5rem}.mapping-table-more-rows{text-align:center;color:var(--text-4);padding:.75rem;font-size:.8rem;font-style:italic}.mapping-table{border-collapse:collapse;width:100%;min-width:900px}.mapping-table th{background:var(--gray-50);border:1px solid var(--border);text-align:left;min-width:110px;padding:.6rem}.mapping-table th .col-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-4);white-space:nowrap;margin-bottom:.35rem;font-size:.6rem;font-weight:800}.mapping-table th select{border-radius:var(--radius-sm);border:1.5px solid var(--border-hi);width:100%;color:var(--text-2);cursor:pointer;transition:border-color var(--dur-fast);background:#fff;outline:none;padding:.4rem .5rem;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.78rem;font-weight:600}.mapping-table th select:focus{border-color:var(--primary)}.mapping-table th select.ignored{background:var(--gray-100);color:var(--text-4);border-style:dashed}.mapping-table th select.mapped{border-color:var(--primary-mid);color:var(--primary);background:var(--primary-light)}.mapping-table td{border:1px solid var(--gray-100);color:var(--text-2);vertical-align:middle;padding:.65rem .75rem;font-size:.83rem}.mapping-table tbody tr{transition:background-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease)}.mapping-table tbody tr:hover{background:var(--gray-100)}.mapping-table tbody tr:hover td:first-child{border-top-left-radius:var(--radius-sm);border-bottom-left-radius:var(--radius-sm)}.mapping-table tbody tr:hover td:last-child{border-top-right-radius:var(--radius-sm);border-bottom-right-radius:var(--radius-sm)}.mapping-table td.is-numeric{text-align:right;font-family:IBM Plex Mono,monospace}.mapping-table td.is-ignored{color:var(--text-4);background:var(--gray-50);font-style:italic}.ap-review-table{border-collapse:collapse;width:100%;min-width:700px}.ap-review-table th{background:var(--gray-50);border-bottom:1.5px solid var(--border);text-align:left;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);white-space:nowrap;padding:.7rem .85rem;font-size:.7rem;font-weight:700}.ap-review-table td{border-bottom:1px solid var(--gray-100);vertical-align:middle;padding:.3rem .5rem}.ap-review-table tbody tr{transition:background-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease)}.ap-review-table tbody tr:hover{background:var(--gray-100)}.ap-review-table tbody tr:hover td:first-child{border-top-left-radius:var(--radius-sm);border-bottom-left-radius:var(--radius-sm)}.ap-review-table tbody tr:hover td:last-child{border-top-right-radius:var(--radius-sm);border-bottom-right-radius:var(--radius-sm)}.ap-group-modal-overlay{z-index:var(--z-modal-backdrop);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#08061499;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.ap-group-modal{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);width:min(540px,100%);max-height:min(85vh,720px);box-shadow:var(--shadow-xl);flex-direction:column;display:flex;overflow:hidden}.ap-group-modal-header{border-bottom:1px solid var(--border);align-items:flex-start;gap:.7rem;padding:1.25rem;display:flex}.ap-group-modal-header-icon{border-radius:var(--radius-md);background:var(--primary-light);width:32px;height:32px;color:var(--primary);flex:none;place-items:center;display:grid}.ap-group-modal-header-text{flex-direction:column;gap:.15rem;min-width:0;display:flex}.ap-group-modal-title{letter-spacing:-.01em;color:var(--text);font-size:.95rem;font-weight:700;line-height:1.2}.ap-group-modal-subtitle{color:var(--text-3);text-wrap:pretty;font-size:.78rem;line-height:1.45}.ap-group-modal-body{flex-direction:column;flex:auto;min-height:0;padding:1rem 1.25rem 1.1rem;display:flex;overflow:hidden}.ap-group-modal-list-head{flex:none;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.5rem;display:flex}.ap-group-modal-list-head-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);font-size:.68rem;font-weight:700}.ap-group-modal-selectall{color:var(--primary);cursor:pointer;border-radius:var(--radius-xs);transition:background-color var(--dur-fast) var(--ease);background:0 0;border:none;margin:-.15rem -.35rem;padding:.15rem .35rem;font-size:.76rem;font-weight:600}.ap-group-modal-selectall:hover{background:var(--primary-light)}.ap-group-modal-list{border:1px solid var(--border);border-radius:var(--radius-md);overscroll-behavior:contain;flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.ap-group-modal-empty{text-align:center;color:var(--text-3);padding:1.25rem;font-size:.82rem}.ap-group-modal-row{border-bottom:1px solid var(--border);cursor:pointer;color:var(--text-2);background:var(--card-bg);transition:background-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);grid-template-columns:auto 1fr auto minmax(86px,auto);align-items:center;gap:.7rem;padding:.55rem .7rem;font-size:.85rem;line-height:1.35;display:grid}.ap-group-modal-row:last-child{border-bottom:none}@media (hover:hover) and (pointer:fine){.ap-group-modal-row:hover{background:var(--gray-50)}}.ap-group-modal-row.is-selected{background:var(--primary-light);color:var(--text)}.ap-group-modal-row.is-selected .ap-group-modal-row-desc{font-weight:600}.ap-group-modal-row.is-selected{box-shadow:inset 2px 0 0 var(--primary)}.ap-group-modal-row.is-conflict{background:var(--rose-light);box-shadow:inset 2px 0 0 var(--rose)}.ap-group-modal-check{width:16px;height:16px;accent-color:var(--primary);cursor:pointer;flex:none}.ap-group-modal-row.is-conflict .ap-group-modal-check{accent-color:var(--rose)}.ap-group-modal-row-desc{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ap-group-modal-row-profile{border-radius:var(--radius-sm);background:var(--gray-100);border:1px solid var(--border);letter-spacing:-.01em;color:var(--text-3);white-space:nowrap;justify-self:start;padding:.1rem .4rem;font-family:IBM Plex Mono,monospace;font-size:.68rem}.ap-group-modal-row.is-conflict .ap-group-modal-row-profile{background:var(--card-bg);border-color:var(--rose-mid);color:var(--rose)}.ap-group-modal-row-amt{text-align:right;font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace;font-size:.82rem}.ap-group-modal-summary{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--gray-50);flex:none;justify-content:space-between;align-items:center;gap:.75rem;min-height:2.4rem;margin-top:.65rem;padding:.5rem .75rem;display:flex}.ap-group-modal-summary[data-state=error]{border-color:var(--rose-mid);background:var(--rose-light)}.ap-group-modal-summary-hint{color:var(--text-3);font-size:.8rem}.ap-group-modal-summary-hint--error{color:var(--rose);font-weight:500}.ap-group-modal-summary-hint--info{color:var(--text-2);font-weight:500}.ap-group-modal-summary-meta{color:var(--text-2);align-items:center;gap:.5rem;font-size:.82rem;display:inline-flex}.ap-group-modal-summary-meta strong{color:var(--text);font-weight:700}.ap-group-modal-summary-profile{border-radius:var(--radius-sm);background:var(--card-bg);border:1px solid var(--border);color:var(--text-3);padding:.1rem .4rem;font-family:IBM Plex Mono,monospace;font-size:.68rem}.ap-group-modal-summary-total{color:var(--text);font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace;font-size:.92rem;font-weight:600}.ap-group-modal-field{flex:none;margin-top:.9rem}.ap-group-modal-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin-bottom:.4rem;font-size:.68rem;font-weight:700;display:block}.ap-group-modal-input{background:var(--card-bg);width:100%;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);padding:.55rem .7rem;font-size:.9rem}.ap-group-modal-input::placeholder{color:var(--text-4)}.ap-group-modal-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.ap-group-modal-input--error{border-color:var(--rose)}.ap-group-modal-input--error:focus{box-shadow:0 0 0 3px var(--rose-light)}.ap-group-modal-warn{color:var(--rose);margin-top:.45rem;font-size:.78rem}.ap-group-modal-footer{border-top:1px solid var(--border);background:var(--gray-50);justify-content:flex-end;gap:.5rem;padding:.85rem 1.25rem;display:flex}.ap-review-table tfoot td{background:var(--gray-50);border-top:2px solid var(--border);padding:.75rem .85rem;font-family:IBM Plex Mono,monospace;font-size:.83rem;font-weight:700}.ap-edit-input{border-radius:var(--radius-sm);width:100%;color:var(--text);transition:all var(--dur-fast);background:0 0;border:1px solid #0000;outline:none;padding:.4rem .6rem;font-family:inherit;font-size:.83rem}.ap-edit-input:hover{border-color:var(--border);background:#fff}.ap-edit-input:focus{border-color:var(--primary);background:var(--primary-light)}.ap-edit-input.numeric{text-align:right;font-family:IBM Plex Mono,monospace}.ap-edit-input.category{color:var(--primary);font-weight:600}.ap-tax-na{color:var(--muted-foreground);cursor:default;display:inline-block}.ap-tax-unmatched{color:var(--amber-text);border-color:var(--amber)!important}.ap-valid-warn{background:var(--amber-light);border:1px solid var(--amber-mid);border-radius:var(--radius-md);color:var(--amber);align-items:center;gap:.75rem;padding:.85rem 1rem;font-size:.85rem;font-weight:600;display:flex}.ap-valid--checklist{align-items:flex-start}.ap-valid-check-list{flex-direction:column;gap:.3rem;margin:.35rem 0 0;padding:0;list-style:none;display:flex}.ap-valid-check-list li{align-items:center;gap:.35rem;font-size:.78rem;font-weight:400;display:flex}.ap-check-ok{opacity:.65}.ap-check-fail{font-weight:600}.ap-cell-missing{background:var(--rose-light)}.ap-required-badge{vertical-align:middle;margin-left:.35rem}.data-card.ap-summary-card{border-top:2px solid var(--teal)}.ap-summary-row{border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;padding:.6rem 0;display:flex}.ap-summary-row:last-child{border-bottom:none}.ap-summary-label{color:var(--text-2);font-size:.87rem;font-weight:500}.ap-summary-values{align-items:center;gap:.75rem;display:flex}.ap-sum-from-table{color:var(--text-2);text-align:right;min-width:90px;font-family:IBM Plex Mono,monospace;font-size:.85rem;font-weight:600}.ap-sum-from-table.diff{color:var(--rose);font-weight:700}.ap-sum-from-doc{text-align:right;border:1.5px solid var(--border-hi);border-radius:var(--radius-sm);background:var(--gray-50);width:110px;transition:all var(--dur-fast);color:var(--text);outline:none;padding:.35rem .6rem;font-family:IBM Plex Mono,monospace;font-size:.85rem;font-weight:700}.ap-sum-from-doc:focus{border-color:var(--primary);background:var(--primary-light)}.ap-sum-from-doc.diff{border-color:var(--rose-mid);background:var(--rose-light);color:var(--rose)}.ap-adjust-btn{text-transform:uppercase;letter-spacing:.05em;background:var(--gray-800);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast);align-items:center;gap:.25rem;padding:.3rem .6rem;font-size:.68rem;font-weight:700;display:inline-flex}.ap-adjust-btn:hover{background:var(--gray-700)}.ap-adjust-btn:focus-visible{outline:2.5px solid var(--primary);outline-offset:2px}.ap-adjust-btn:active{transform:scale(.97)}.ap-adjust-btn:disabled{opacity:.42;cursor:not-allowed;pointer-events:none}.ap-doc-inconsistent{color:var(--amber-text);text-align:right;max-width:16rem;font-size:.68rem;font-weight:600;line-height:1.2}.ap-doc-fix-banner{background:var(--amber-light);border:1px solid var(--amber-mid);border-radius:var(--radius-sm);align-items:center;gap:.5rem;margin:0 0 .5rem;padding:.55rem .75rem;display:flex}.ap-doc-fix-icon{color:var(--amber-text);flex-shrink:0}.ap-doc-fix-text{color:var(--amber-text);flex:1;font-size:.72rem;font-weight:600;line-height:1.25}.ap-doc-fix-btn{background:var(--gray-800);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast);flex-shrink:0;align-items:center;gap:.3rem;padding:.35rem .65rem;font-size:.7rem;font-weight:700;display:inline-flex}.ap-doc-fix-btn:hover{background:var(--gray-700)}.ap-doc-fix-btn:focus-visible{outline:2.5px solid var(--primary);outline-offset:2px}.ap-doc-fix-btn:active{transform:scale(.97)}.ap-grand-total-row{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin-top:.5rem;padding:.85rem 1rem;display:flex}.ap-valid-ok{background:var(--emerald-light);border:1px solid var(--emerald-mid);border-radius:var(--radius-md);color:var(--btn-ok-text);align-items:center;gap:.75rem;padding:.85rem 1rem;font-size:.85rem;font-weight:600;display:flex}.ap-valid-err{background:var(--rose-light);border:1px solid var(--rose-mid);border-radius:var(--radius-md);color:var(--rose);align-items:center;gap:.75rem;padding:.85rem 1rem;font-size:.85rem;font-weight:600;display:flex}.ap-account-card{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);background:#fff;overflow:hidden}.ap-account-card-header{border-bottom:1px solid var(--border);background:var(--gray-50);align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex}.ap-account-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;display:flex}.ap-account-icon.blue{background:var(--primary-light);color:var(--primary)}.ap-account-icon.green{background:var(--emerald-light);color:var(--emerald)}.ap-account-icon.violet{background:var(--primary-light);color:var(--primary)}.ap-account-body{padding:1rem 1.25rem}.ap-static-field{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);padding:.5rem .75rem;font-family:IBM Plex Mono,monospace;font-size:.83rem;font-weight:600}.ap-acct-table{border-collapse:collapse;width:100%}.data-card.card-acct{overflow:visible}.data-card.card-acct .card-title{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.data-card.card-acct .table-wrapper{overflow:visible}.ap-acct-table th{background:var(--gray-50);border-bottom:1.5px solid var(--border);text-align:left;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);padding:.7rem 1rem;font-size:.7rem;font-weight:700}.ap-acct-table td{border-bottom:1px solid var(--gray-100);vertical-align:middle;padding:.6rem 1rem}.ap-acct-table tbody tr:hover{background:var(--primary-light)}.ap-acct-table .cat-badge{background:var(--primary-light);color:var(--primary);border-radius:var(--radius-sm);padding:.2rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}.ap-search-input-wrap{position:relative}.ap-search-input-wrap i{color:var(--text-4);pointer-events:none;font-size:.75rem;position:absolute;top:50%;left:.6rem;transform:translateY(-50%)}.ap-search-input-wrap input{border:1.5px solid var(--border-hi);border-radius:var(--radius-sm);width:100%;color:var(--text);transition:all var(--dur-fast);box-shadow:var(--shadow-xs);background:#fff;outline:none;padding:.5rem .75rem .5rem 1.9rem;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.83rem;font-weight:600}.ap-search-input-wrap input:focus{border-color:var(--primary);box-shadow:0 0 0 3px oklch(from var(--primary) l c h / .1)}.ap-success-wrap{border:1px solid var(--emerald-mid);border-radius:var(--radius-xl);text-align:center;max-width:640px;box-shadow:var(--shadow-md);background:#fff;margin:0 auto;padding:3rem;position:relative;overflow:hidden}.ap-success-wrap:before{content:"";background:linear-gradient(90deg, var(--emerald) 0%, var(--emerald-end) 100%);height:4px;position:absolute;top:0;left:0;right:0}.ap-success-icon{background:var(--emerald-light);width:88px;height:88px;color:var(--emerald);box-shadow:0 0 0 12px oklch(from var(--emerald) l c h / .08);animation:success-pop .48s var(--ease-spring-premium) both;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.5rem;font-size:2.2rem;display:flex}@keyframes success-pop{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.ap-success-icon{animation:none}}.ap-success-doc-no{background:var(--emerald-light);color:var(--emerald);border-radius:var(--radius-sm);padding:.25rem .75rem;font-family:IBM Plex Mono,monospace;font-size:1rem;font-weight:700;display:inline-block}.ap-success-grid{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-md);text-align:left;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0;padding:1.25rem;display:grid}.ap-success-field-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:.25rem;font-size:.68rem;font-weight:700}.ap-success-field-val{color:var(--text);font-size:.88rem;font-weight:600}.ap-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:5rem 2rem;display:flex}.ap-spinner{border:3px solid var(--primary-light);border-top-color:var(--primary);border-radius:50%;width:44px;height:44px;animation:.75s linear infinite spin}.ap-error-wrapper{max-width:480px;margin:0 auto;padding:2rem 0}.ap-error-box{background:var(--rose-light);border:1px solid var(--rose-mid);border-radius:var(--radius-lg);align-items:flex-start;gap:1rem;max-width:500px;margin:0 auto;padding:1.25rem 1.5rem;display:flex}.ap-error-retry{margin-top:.75rem}.ap-error-box i{color:var(--rose);flex-shrink:0;margin-top:.1rem;font-size:1.1rem}.ap-error-title{color:var(--rose);margin-bottom:.3rem;font-size:.87rem;font-weight:700}.ap-error-msg{color:var(--ap-error-text);font-size:.82rem}.ap-step-nav{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);background:#fff;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}[data-theme=dark]{--ap-vendor-bg:var(--primary-light);--ap-vendor-border:var(--primary-mid);--ap-vendor-icon-bg:var(--primary-mid);--ap-vendor-text:var(--text);--ap-vendor-text-muted:var(--muted-foreground);--ap-vendor-pill-border:var(--primary-mid);--ap-inv-desc-bg:var(--card-bg);--ap-inv-desc-border:var(--border);--ap-inv-desc-shadow:0 0 0 3px var(--primary-light)}@media (width<=900px){.ap-split-layout{grid-template-columns:1fr}.ap-preview-side{position:static}}@media (width<=768px){.mapping-table-wrap{scroll-behavior:auto}.ap-edit-input{min-height:40px;padding:.55rem .6rem}.ap-acct-table td,.ap-acct-table th,.ap-review-table th{padding:.65rem .75rem}.ap-review-table td{padding:.5rem .6rem}.vendor-dropdown{max-height:260px}.ap-step-nav{flex-wrap:wrap;gap:.75rem}.ap-step-nav .btn{flex:1;justify-content:center;min-height:44px}.ap-success-wrap{padding:2rem 1.5rem}}@media (width<=640px){.ap-split-layout{gap:1rem}.ap-success-grid{grid-template-columns:1fr}.ap-success-wrap{border-radius:var(--radius-lg);padding:1.5rem 1rem}.ap-success-icon{width:68px;height:68px;box-shadow:0 0 0 8px oklch(from var(--emerald) l c h / .08);font-size:1.7rem}.ap-step-nav{flex-direction:column;align-items:stretch;padding:.875rem 1rem}.ap-step-nav .btn{min-height:44px}.ap-account-card-header{flex-wrap:wrap;gap:.5rem;padding:.875rem 1rem}.ap-account-body{padding:.875rem 1rem}.vendor-search-wrap{padding:.75rem}.ap-summary-values{flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.ap-sum-from-doc{width:90px;font-size:.8rem}.ap-sum-from-table{min-width:70px;font-size:.8rem}.ap-grand-total-row{flex-wrap:wrap;gap:.5rem}.mapping-table th{min-width:80px}.mapping-table td{padding:.55rem .6rem;font-size:.78rem}}.ap-taxtype-select{border-radius:var(--radius-sm);width:100%;color:var(--text);cursor:pointer;appearance:none;background:0 0;border:1px solid #0000;outline:none;padding:.4rem .6rem;font-family:inherit;font-size:.83rem;font-weight:400;transition:border-color .15s,background .15s}.ap-taxtype-select:hover{border-color:var(--border);background-color:#fff}.ap-taxtype-select:focus{border-color:var(--primary);background-color:var(--primary-light)}.ap-delete-item-btn{color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;line-height:1;transition:color .15s,background .15s;display:flex}.ap-delete-item-btn:hover:not(:disabled){color:var(--rose);background:var(--rose-light)}.ap-delete-item-btn:disabled{opacity:.25;cursor:not-allowed}:root{--ttd-ease-out:cubic-bezier(.23, 1, .32, 1);--ttd-ease-in:cubic-bezier(.55, 0, 1, .45)}.ttd-root{align-items:center;gap:.5rem;margin-bottom:.75rem;display:inline-flex;position:relative}.ttd-label{color:var(--text-3);white-space:nowrap;flex-shrink:0;font-size:.8rem}.ttd-trigger{cursor:pointer;border:1px solid var(--ttd-border);background:var(--ttd-bg);color:var(--ttd-color);transition:transform .1s var(--ttd-ease-out), box-shadow .12s var(--ttd-ease-out), background .12s ease, border-color .12s ease;-webkit-user-select:none;user-select:none;border-radius:99px;outline:none;align-items:center;gap:.35rem;padding:.22rem .55rem .22rem .6rem;font-size:.8rem;font-weight:700;display:inline-flex}.ttd-trigger[data-value=Include]{--ttd-color:var(--amber-text);--ttd-bg:var(--ap-include-bg);--ttd-border:var(--amber-mid)}.ttd-trigger[data-value=Exclude]{--ttd-color:var(--primary-hover);--ttd-bg:var(--ap-exclude-bg);--ttd-border:var(--primary-mid)}.ttd-trigger[data-value=None]{--ttd-color:var(--emerald);--ttd-bg:var(--ap-none-bg);--ttd-border:var(--emerald-mid)}.ttd-trigger:hover{filter:brightness(.96);box-shadow:0 1px 4px #00000014}.ttd-trigger:active{box-shadow:none;transform:scale(.97)}.ttd-trigger-icon{flex-shrink:0;align-items:center;display:flex}.ttd-trigger-text{line-height:1}.ttd-chevron{color:currentColor;opacity:.7;transition:transform var(--dur-base) var(--ttd-ease-out);flex-shrink:0;margin-left:.1rem;transform:rotate(0)}.ttd-chevron--open{transform:rotate(-180deg)}.ttd-panel{z-index:100;background:var(--card-bg);border:1px solid var(--border-hi);border-radius:var(--radius-lg);transform-origin:0 0;opacity:0;pointer-events:none;min-width:230px;transition:opacity var(--dur-fast) var(--ttd-ease-in), transform var(--dur-fast) var(--ttd-ease-in);padding:.3rem;position:absolute;top:calc(100% + 6px);left:0;transform:scale(.95)translateY(-4px);box-shadow:0 8px 24px #0000001a,0 2px 6px #0000000f}.ttd-panel[data-open=true]{opacity:1;pointer-events:auto;transition:opacity var(--dur-base) var(--ttd-ease-out), transform var(--dur-base) var(--ttd-ease-out);transform:scale(1)translateY(0)}.ttd-option{border-radius:var(--radius-md,7px);cursor:pointer;text-align:left;width:100%;transition:background var(--dur-fast) var(--ease);opacity:0;background:0 0;border:none;align-items:center;gap:.55rem;padding:.45rem .55rem;display:flex;transform:translateY(3px)}.ttd-panel[data-open=true] .ttd-option{animation:ttdOptionIn var(--dur-base) var(--ttd-ease-out) both;animation-delay:var(--ttd-delay,0s)}@keyframes ttdOptionIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ttd-option:hover{background:var(--gray-50)}.ttd-option:active{background:var(--gray-100);transform:scale(.97)}.ttd-option[data-active=true]{background:var(--primary-light)}.ttd-option-dot{width:9px;height:9px;transition:background .15s ease, transform .15s var(--ttd-ease-out);border-radius:50%;flex-shrink:0}.ttd-option[data-active=true] .ttd-option-dot{transform:scale(1.25)}.ttd-option-badge{border-radius:var(--radius-pill);white-space:nowrap;flex-shrink:0;align-items:center;gap:.3rem;padding:.15rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.ttd-option-badge[data-value=Include]{color:var(--amber-text);background:var(--ap-include-bg);border:1px solid var(--amber-mid)}.ttd-option-badge[data-value=Exclude]{color:var(--primary-hover);background:var(--ap-exclude-bg);border:1px solid var(--primary-mid)}.ttd-option-badge[data-value=None]{color:var(--emerald);background:var(--ap-none-bg);border:1px solid var(--emerald-mid)}.ttd-option[data-value=Include] .ttd-option-dot{border:2px solid var(--amber-text);background:0 0}.ttd-option[data-value=Include][data-active=true] .ttd-option-dot{background:var(--amber-text)}.ttd-option[data-value=Exclude] .ttd-option-dot{border:2px solid var(--primary-hover);background:0 0}.ttd-option[data-value=Exclude][data-active=true] .ttd-option-dot{background:var(--primary-hover)}.ttd-option[data-value=None] .ttd-option-dot{border:2px solid var(--emerald);background:0 0}.ttd-option[data-value=None][data-active=true] .ttd-option-dot{background:var(--emerald)}.ttd-option[data-index="0"]{--ttd-delay:0s}.ttd-option[data-index="1"]{--ttd-delay:28ms}.ttd-option[data-index="2"]{--ttd-delay:56ms}.ttd-option-sub{color:var(--text-3);white-space:nowrap;font-size:.73rem;font-weight:400}[data-theme=dark] .ttd-panel{background:var(--card-bg);border-color:var(--border-hi);box-shadow:0 8px 28px #00000059,0 2px 6px #0003}[data-theme=dark] .ttd-trigger:hover{filter:brightness(1.08);box-shadow:none}@media (prefers-reduced-motion:reduce){.ttd-panel{transition:opacity var(--dur-fast) var(--ease);transform:none!important}.ttd-panel[data-open=true]{transition:opacity var(--dur-fast) var(--ease)}.ttd-option{opacity:1;transform:none;animation:none!important}.ttd-chevron{transition:none}}.ap-total-label{color:var(--text-3)}.ap-total-val-emerald{text-align:right;color:var(--emerald)}.ap-total-val-rose-bold{text-align:right;color:var(--rose);font-weight:800}.ap-review-summary-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1rem;display:grid}.ap-valid-icon{flex-shrink:0}.ap-valid-title{font-weight:700}.ap-valid-desc{margin-top:.2rem;font-size:.8rem;font-weight:400}.ap-nav-right{flex-direction:column;align-items:flex-end;gap:.35rem;display:flex}.ap-vendor-warning{color:var(--amber-text);align-items:center;gap:.3rem;font-size:.75rem;font-weight:600;display:flex}.btn-disabled,.btn:disabled{opacity:.55;cursor:not-allowed}.ap-card-header-actions{align-items:center;gap:.5rem;display:flex}.ap-success-step-wrap{padding:2rem 0}.ap-success-title{color:var(--text);margin-bottom:.75rem;font-size:1.75rem;font-weight:800}.ap-success-subtitle{color:var(--text-3);margin-bottom:1.5rem;line-height:1.6}.ap-success-val-highlight{color:var(--primary);font-weight:700}.ap-success-summary-box{background:var(--ap-summary-bg,white);border:1px solid var(--border);border-radius:8px;grid-row:span 2;padding:1rem}[data-theme=dark] .ap-success-summary-box{background:var(--card-bg)}.ap-success-summary-row{justify-content:space-between;margin-bottom:.4rem;font-size:.83rem;display:flex}.ap-success-summary-label{color:var(--text-3)}.ap-success-summary-val{color:var(--text);font-family:IBM Plex Mono,monospace;font-weight:600}.ap-success-summary-val.color-rose{color:var(--rose)}.ap-success-summary-divider{background:var(--border);height:1px;margin:.6rem 0}.ap-success-total-row{justify-content:space-between;display:flex}.ap-success-total-label{font-weight:800}.ap-success-total-val{color:var(--emerald);font-family:IBM Plex Mono,monospace;font-size:1.05rem;font-weight:800}.ap-success-next-hint{color:var(--muted-foreground);margin-bottom:.5rem;font-size:.8rem}.ap-success-actions{justify-content:center;gap:.75rem;display:flex}.ap-vendor-info-pill{border-right:1px solid var(--ap-vendor-pill-border);flex-direction:column;flex:1;justify-content:center;gap:.15rem;padding:.55rem 1rem;display:flex}.ap-vendor-info-pill.last{border-right:none}.ap-vendor-info-pill-label{color:var(--ap-vendor-text-muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.3rem;font-size:.68rem;font-weight:700;display:flex}.ap-vendor-info-pill-value{color:var(--ap-vendor-text);font-size:.84rem;font-weight:700}.ap-account-card-title{color:var(--text);font-size:.87rem;font-weight:700}.ap-account-card .field-label{margin-bottom:.3rem}.ap-account-body-grid{grid-template-columns:1fr;gap:.6rem;display:grid}.ap-account-body-grid-pair{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.ap-static-field.highlight-primary{color:var(--primary);font-weight:700}.ap-static-field.highlight-emerald{color:var(--emerald);font-weight:700}.ap-mapping-step-container{box-sizing:border-box;flex-direction:column;gap:1.25rem;width:100%;max-width:1080px;margin:0 auto;display:flex}.ap-vendor-info-bar{background:var(--ap-vendor-bg);border:1.5px solid var(--ap-vendor-border);border-radius:12px;flex-wrap:wrap;align-items:stretch;gap:0;min-width:0;padding:0;display:flex;overflow:hidden}.ap-vendor-name-section{border-right:1.5px solid var(--ap-vendor-border);flex-shrink:0;align-items:center;gap:.6rem;min-width:0;padding:.7rem 1.1rem;display:flex}.ap-vendor-icon-container{background:var(--ap-vendor-icon-bg);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.ap-vendor-display-name{color:var(--ap-vendor-text);font-size:.92rem;font-weight:700}.ap-vendor-code{color:var(--ap-vendor-text-muted);margin-top:.05rem;font-size:.75rem;font-weight:600}.ap-vendor-pills-container{flex-wrap:wrap;flex:1;align-items:stretch;gap:0;display:flex}.ap-invoice-desc-container{flex-direction:column;gap:.3rem;display:flex}.ap-invoice-desc-label{color:var(--ap-vendor-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.ap-invoice-desc-input{box-sizing:border-box;border:1.5px solid var(--ap-inv-desc-border);background:var(--ap-inv-desc-bg);width:100%;color:var(--ap-vendor-text);border-radius:8px;outline:none;padding:.55rem .85rem;font-size:.88rem;transition:border-color .2s,box-shadow .2s}.ap-invoice-desc-input:focus{border-color:var(--ap-vendor-icon-bg);box-shadow:var(--ap-inv-desc-shadow)}.ap-fixed-gl-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1.25rem;display:grid}.ai-suggest-bar{align-items:center;gap:.5rem;display:flex}.ai-suggest-bar__accept-btn{background:var(--btn-ok-bg);color:var(--btn-ok-text);border:1px solid var(--btn-ok-border);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);align-items:center;gap:.4rem;padding:.35rem .75rem;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.8rem;font-weight:600;display:inline-flex}.ai-suggest-bar__accept-btn:hover{background:var(--emerald);color:oklch(100% 0 0);border-color:var(--emerald);box-shadow:0 2px 8px oklch(from var(--emerald) l c h / .25)}.ai-suggest-bar__accept-btn:focus-visible{outline:2.5px solid var(--primary);outline-offset:2px}.ai-suggest-bar__accept-btn:active{box-shadow:none;transform:scale(.97)}.ai-suggest-bar__suggest-btn{background:var(--primary);color:oklch(100% 0 0);border-radius:var(--radius-sm);cursor:pointer;box-shadow:var(--shadow-primary);transition:background var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);border:none;align-items:center;gap:.4rem;padding:.35rem .75rem;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.8rem;font-weight:600;display:inline-flex}.ai-suggest-bar__suggest-btn:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 4px 14px oklch(from var(--primary) l c h / .3);transform:translateY(-1px)}.ai-suggest-bar__suggest-btn:focus-visible{outline:2.5px solid var(--primary);outline-offset:2px}.ai-suggest-bar__suggest-btn:active:not(:disabled){box-shadow:none;transform:scale(.97)}.ai-suggest-bar__suggest-btn:disabled{background:var(--gray-100);color:var(--text-4);box-shadow:none;cursor:not-allowed}.ai-suggest-bar__refresh-btn{background:var(--card-bg);color:var(--text-2);border:1px solid var(--border-hi);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);align-items:center;gap:.4rem;padding:.35rem .75rem;font-family:Inter,IBM Plex Sans Thai,sans-serif;font-size:.8rem;font-weight:500;display:inline-flex}.ai-suggest-bar__refresh-btn:hover:not(:disabled){background:var(--gray-50);border-color:var(--border);color:var(--text)}.ai-suggest-bar__refresh-btn:focus-visible{outline:2.5px solid var(--primary);outline-offset:2px}.ai-suggest-bar__refresh-btn:active:not(:disabled){transform:scale(.97)}.ai-suggest-bar__refresh-btn:disabled{opacity:.42;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.ai-suggest-bar__accept-btn,.ai-suggest-bar__suggest-btn,.ai-suggest-bar__refresh-btn{transition:none}}.ap-card-title-right{align-items:center;gap:.6rem;display:flex}.ap-card-title-sub{color:var(--text-3);font-size:.8rem}.ap-acct-table th.col-description{width:40%}.ap-acct-table th.col-dept,.ap-acct-table th.col-acc{width:26%}.ap-acct-table th.col-actions{width:8%}.ap-acct-table tbody tr.row-suggest{background:var(--ap-suggest-bg)}.ap-acct-table tbody tr.row-error{background:var(--ap-error-bg)}.ap-acct-table td.ap-line-desc{color:var(--text-2);padding-left:1rem;font-size:.83rem}.ap-summary-badges{gap:.4rem;display:flex}.ap-sum-discount-no-diff{color:var(--rose)!important}.ap-grand-total-label{font-size:1rem;font-weight:800}.ap-field-error-ring{outline:2px solid var(--ap-error-border);border-radius:7px}.ap-suggest-btn{cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border-style:solid;border-width:1px;border-radius:6px;align-items:center;padding:3px 8px;font-size:.75rem;display:flex}.ap-suggest-btn:focus-visible{outline:2.5px solid var(--primary);outline-offset:2px}.ap-suggest-btn:active{box-shadow:none;transform:scale(.95)}.ap-suggest-btn--ok{background:var(--btn-ok-bg);color:var(--btn-ok-text);border-color:var(--btn-ok-border)}.ap-suggest-btn--ok:hover{background:var(--emerald);color:oklch(100% 0 0);border-color:var(--emerald);box-shadow:0 1px 6px oklch(from var(--emerald) l c h / .3)}.ap-suggest-btn--err{background:var(--btn-err-bg);color:var(--btn-err-text);border-color:var(--btn-err-border)}.ap-suggest-btn--err:hover{background:var(--rose);color:oklch(100% 0 0);border-color:var(--rose);box-shadow:0 1px 6px oklch(from var(--rose) l c h / .3)}@media (prefers-reduced-motion:reduce){.ap-suggest-btn{transition:none}}.ap-suggest-actions{justify-content:center;gap:.25rem;display:flex}.ap-step-nav-end{flex-direction:column;align-items:flex-end;gap:.35rem;display:flex}.ap-mapping-warning{color:var(--amber-text);align-items:center;gap:.3rem;font-size:.75rem;font-weight:600;display:flex}.btn:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed}.ap-grand-total-table-val{color:var(--text);font-family:IBM Plex Mono,monospace;font-size:1rem;font-weight:800}.ap-grand-total-table-val.diff{color:var(--rose)}.ap-sum-from-doc.grand-total{font-size:.95rem;font-weight:800}[data-theme=dark] .ap-adjust-btn,[data-theme=dark] .ap-doc-fix-btn{background:var(--gray-200);color:var(--text)}[data-theme=dark] .ap-adjust-btn:hover,[data-theme=dark] .ap-doc-fix-btn:hover{background:var(--gray-300)}.vendor-new-btn{color:var(--primary);background:var(--ap-exclude-bg,#eff6ff);border:1px solid var(--primary);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;text-decoration:none;display:inline-flex}.vendor-refresh-btn{background:var(--gray-50);border:1px solid var(--border);width:1.75rem;height:1.75rem;color:var(--text-3);border-radius:999px;justify-content:center;align-items:center;transition:background-color .12s,opacity .12s;display:inline-flex}:is(body:has(.admin-shell),body:has(.admin-login-page)){background-image:none;padding:0!important}.admin-shell{background:radial-gradient(ellipse 60% 30% at 20% 0%, oklch(47.14% .1794 258.7/.08) 0%, transparent 60%), radial-gradient(ellipse 50% 30% at 90% 100%, oklch(58.52% .1706 253.27/.07) 0%, transparent 55%), var(--background);min-height:100vh;color:var(--text);grid-template-columns:248px 1fr;font-family:Inter,IBM Plex Sans Thai,sans-serif;display:grid}[data-theme=dark] .admin-shell{background:radial-gradient(ellipse 60% 30% at 20% 0%, oklch(58.52% .1706 253.27/.13) 0%, transparent 60%), radial-gradient(ellipse 50% 30% at 90% 100%, oklch(47.14% .1794 258.7/.12) 0%, transparent 55%), var(--background)}.admin-sidebar{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-right:1px solid var(--border);height:100vh;box-shadow:var(--shadow-sm);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.admin-logo{border-bottom:1px solid var(--border);align-items:center;gap:.7rem;padding:1.4rem 1.25rem 1.1rem;display:flex}.admin-logo-icon{border-radius:var(--radius-md);background:var(--primary-light);width:36px;height:36px;color:var(--primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.admin-logo-icon svg{display:block}.admin-logo-text{letter-spacing:-.01em;color:var(--text);font-size:1rem;font-weight:800}.admin-logo-text:after{content:"CONSOLE";letter-spacing:.18em;color:var(--text-4);margin-top:1px;font-size:.58rem;font-weight:600;display:block}.admin-nav{flex-direction:column;flex:1;gap:2px;padding:.85rem .6rem;display:flex}.admin-nav-item{border-radius:var(--radius-md);color:var(--text-3);transition:background .18s var(--ease), color .18s var(--ease), transform .18s var(--ease);cursor:pointer;align-items:center;gap:.7rem;padding:.55rem .85rem;font-size:.83rem;font-weight:500;text-decoration:none;display:flex;position:relative}.admin-nav-item:hover{background:var(--gray-50);color:var(--text)}.admin-nav-item.active{background:var(--primary-light);color:var(--primary);font-weight:600}.admin-nav-item.active:before{content:"";background:var(--primary);border-radius:0 3px 3px 0;width:3px;position:absolute;top:25%;bottom:25%;left:-.6rem}.admin-nav-icon{color:currentColor;opacity:.85;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.admin-nav-item.active .admin-nav-icon{opacity:1}.admin-skip-link{z-index:100;background:var(--primary);color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-md);transition:transform .18s var(--ease);padding:.55rem 1rem;font-size:.78rem;font-weight:700;text-decoration:none;position:absolute;top:.5rem;left:.5rem;transform:translateY(-200%)}.admin-skip-link:focus{transform:translateY(0)}.admin-sidebar-footer{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:.6rem;margin:.5rem;padding:.85rem 1rem;display:flex}.admin-sidebar-toggles{gap:.4rem;width:100%;display:flex}.admin-sidebar-toggles .lang-toggle,.admin-sidebar-toggles .theme-toggle{height:32px}.admin-user-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.admin-user-email{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;font-weight:600;overflow:hidden}.admin-user-role{color:var(--primary);text-transform:uppercase;letter-spacing:.1em;font-size:.6rem;font-weight:700}.admin-logout-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--card-bg);width:30px;height:30px;color:var(--text-3);cursor:pointer;transition:all .18s var(--ease);flex-shrink:0;justify-content:center;align-items:center;display:flex}.admin-logout-btn svg{display:block}.admin-logout-btn:hover{background:var(--rose-light);border-color:var(--rose-mid);color:var(--rose)}.admin-main{min-width:0;padding:2rem 2.25rem 3rem}.admin-page{max-width:1320px;animation:fadeUp .4s var(--ease) both;margin:0 auto}.admin-page-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.admin-page-title{letter-spacing:-.025em;color:var(--text);margin:0;font-size:1.5rem;font-weight:800;line-height:1.15}.admin-page-controls{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.admin-card,.admin-chart-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);margin-bottom:1.25rem;overflow:hidden}.admin-card:hover,.admin-chart-card:hover{border-color:var(--border-hi);box-shadow:var(--shadow-md)}.admin-chart-card{padding:1.1rem 1.25rem .8rem}.admin-chart-title{color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.5rem;margin:0 0 .85rem;font-size:.78rem;font-weight:700;display:flex}.admin-chart-title:before{content:"";background:var(--primary);border-radius:50%;width:6px;height:6px}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.85rem;margin-bottom:1.5rem;display:grid}.kpi-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-5) var(--space-4);box-shadow:var(--shadow-sm);transition:transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);position:relative;overflow:hidden}.kpi-card:before{content:"";background:radial-gradient(circle, var(--primary) 0%, transparent 70%);opacity:.07;pointer-events:none;border-radius:50%;width:140px;height:140px;position:absolute;top:-35%;right:-25%}.kpi-card--green:before{background:radial-gradient(circle, var(--emerald) 0%, transparent 70%)}.kpi-card--red:before{background:radial-gradient(circle, var(--rose) 0%, transparent 70%)}.kpi-card--yellow:before{background:radial-gradient(circle, var(--amber) 0%, transparent 70%)}.kpi-card:hover{border-color:var(--border-hi);box-shadow:var(--shadow-md);transform:translateY(-2px)}.kpi-icon{border-radius:var(--radius-md);background:var(--primary-light);width:38px;height:38px;color:var(--primary);margin-bottom:var(--space-3);justify-content:center;align-items:center;display:flex;position:relative}.kpi-card--green .kpi-icon{background:var(--emerald-light);color:var(--emerald)}.kpi-card--red .kpi-icon{background:var(--rose-light);color:var(--rose)}.kpi-card--yellow .kpi-icon{background:var(--amber-light);color:var(--amber)}.kpi-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin-bottom:.45rem;font-size:.66rem;font-weight:700}.kpi-value{color:var(--text);letter-spacing:-.025em;font-feature-settings:"tnum";font-size:1.6rem;font-weight:800;line-height:1.05}.kpi-trend{margin-left:.3rem;font-size:.95rem}.kpi-trend--up{color:var(--emerald)}.kpi-trend--down{color:var(--rose)}.kpi-sub{color:var(--text-4);margin-top:.35rem;font-size:.72rem}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.82rem}.admin-th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);background:var(--gray-50);border-bottom:1px solid var(--border);white-space:nowrap;padding:.75rem 1rem;font-size:.66rem;font-weight:700}.admin-th.sortable{padding:0;transition:background .15s}.admin-th.sortable:hover{background:var(--primary-light)}.admin-th-sort{width:100%;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;align-items:center;padding:.75rem 1rem;transition:color .15s;display:inline-flex}.admin-th.text-right .admin-th-sort{justify-content:flex-end}.admin-th-sort:hover{color:var(--primary)}.admin-th.text-right{text-align:right}.admin-tr{transition:background .12s var(--ease)}.admin-tr:hover{background:var(--primary-light)}.admin-td{border-bottom:1px solid var(--border);color:var(--text-2);white-space:nowrap;font-feature-settings:"tnum";padding:.65rem 1rem}.admin-td.text-right{text-align:right}.admin-td-empty{text-align:center;color:var(--text-4);padding:3rem 1rem;font-size:.85rem;font-style:italic}.admin-table-loading{text-align:center;color:var(--text-3);padding:3rem 1rem;font-size:.85rem}.admin-table-loading:before{content:"";border:2px solid var(--border);border-top-color:var(--primary);vertical-align:-3px;border-radius:50%;width:14px;height:14px;margin-right:.5rem;animation:.7s linear infinite spin;display:inline-block}.admin-table-pagination{border-top:1px solid var(--border);color:var(--text-3);background:var(--gray-50);justify-content:flex-end;align-items:center;gap:.7rem;padding:.7rem 1rem;font-size:.76rem;display:flex}.pagination-info{flex:1}.pagination-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;color:var(--text-2);transition:all .15s var(--ease);padding:.3rem .85rem;font-size:.76rem;font-weight:600}.pagination-btn:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary-mid);color:var(--primary)}.pagination-btn:disabled{opacity:.45;cursor:not-allowed}.admin-select,.admin-date-input{border:1px solid var(--border-hi);border-radius:var(--radius-md);background:var(--card-bg);color:var(--text);cursor:pointer;transition:all .15s var(--ease);box-shadow:var(--shadow-xs);padding:.45rem .75rem;font-family:inherit;font-size:.8rem;font-weight:500}.admin-select:hover,.admin-date-input:hover{border-color:var(--primary-mid)}.admin-select:focus,.admin-date-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.admin-form-group{flex-direction:column;gap:.4rem;margin-bottom:1.1rem;display:flex}.admin-form-label{color:var(--text-2);letter-spacing:.02em;font-size:.74rem;font-weight:700}.admin-form-input{border:1.5px solid var(--border-hi);border-radius:var(--radius-md);color:var(--text);background:var(--card-bg);transition:all .15s var(--ease);box-shadow:var(--shadow-xs);padding:.6rem .85rem;font-family:inherit;font-size:.88rem}.admin-form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.admin-date-range{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);align-items:center;gap:.45rem;padding:.2rem .5rem;display:flex}.admin-date-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;font-size:.68rem;font-weight:600}.admin-date-sep{color:var(--text-4)}.admin-date-range .admin-date-input{box-shadow:none;background:0 0;border:none;padding:.35rem .4rem}.admin-date-range .admin-date-input:focus{box-shadow:none}.admin-checkbox-label{cursor:pointer;color:var(--text-2);align-items:center;gap:.45rem;font-size:.82rem;display:flex}.status-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:100px;padding:.18rem .65rem;font-size:.68rem;font-weight:700;display:inline-block}.status-badge.ok{background:var(--emerald-light);color:var(--emerald);border:1px solid var(--emerald-mid)}.status-badge.error{background:var(--rose-light);color:var(--destructive);border:1px solid var(--rose-mid)}.status-badge.warn{background:var(--amber-light);color:var(--amber-text);border:1px solid var(--amber-mid)}.text-red{color:var(--rose)}.text-yellow{color:var(--amber)}.admin-mono{color:var(--text-2);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.76rem}.admin-sub-text{color:var(--text-4);font-size:.72rem}.admin-truncation-note{margin-top:.6rem}.admin-btn-danger-sm,.alert-resolve-btn{border-radius:var(--radius-sm);cursor:pointer;transition:all .15s var(--ease);white-space:nowrap;padding:.3rem .85rem;font-family:inherit;font-size:.75rem;font-weight:600}.admin-btn-danger-sm{border:1px solid var(--rose-mid);background:var(--card-bg);color:var(--rose)}.admin-btn-danger-sm:hover{background:var(--rose);color:#fff;border-color:var(--rose)}.alert-resolve-btn{border:1px solid var(--primary-mid);background:var(--card-bg);color:var(--primary);align-self:center}.alert-resolve-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.alert-list{flex-direction:column;display:flex}.alert-item{border-bottom:1px solid var(--border);background:var(--card-bg);transition:background .15s var(--ease);align-items:flex-start;gap:1rem;padding:1rem 1.2rem;display:flex}.alert-item:last-child{border-bottom:none}.alert-item:hover{background:var(--gray-50)}.alert-item--critical{background:var(--rose-light);box-shadow:inset 0 0 0 1px var(--rose-mid)}.alert-item--warn{background:var(--amber-light);box-shadow:inset 0 0 0 1px var(--amber-mid)}.alert-meta{flex-wrap:wrap;flex:1;align-items:center;gap:.55rem;min-width:0;display:flex}.alert-severity{text-transform:uppercase;letter-spacing:.08em;border-radius:100px;padding:.18rem .55rem;font-size:.62rem;font-weight:800}.alert-severity--critical{background:var(--rose-light);color:oklch(45% .18 24.11)}.alert-severity--warn{background:var(--amber-light);color:oklch(42% .13 75)}[data-theme=dark] .alert-severity--critical{color:var(--rose)}[data-theme=dark] .alert-severity--warn{color:var(--amber-text)}.alert-metric{color:var(--text);font-size:.88rem;font-weight:700}.alert-module{background:var(--gray-100);color:var(--text-2);border-radius:100px;padding:.15rem .55rem;font-size:.7rem;font-weight:600}.alert-tenant{color:var(--text-4);font-family:IBM Plex Mono,monospace;font-size:.7rem}.alert-body{flex:2;min-width:0}.alert-description{color:var(--text);margin:0 0 .25rem;font-size:.85rem}.alert-values{color:var(--text-2);margin:0 0 .25rem;font-size:.78rem}.alert-time{color:var(--text-4);margin:0;font-size:.7rem}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.skeleton{border-radius:var(--radius-sm);background:oklch(91% .006 258.7);position:relative;overflow:hidden}.skeleton:after{content:"";will-change:transform;background:linear-gradient(90deg,#0000 0%,oklch(97% .004 258.7/.75) 50%,#0000 100%);animation:1.5s ease-in-out infinite skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}[data-theme=dark] .skeleton{background:oklch(26% .018 258.7)}[data-theme=dark] .skeleton:after{background:linear-gradient(90deg,#0000 0%,oklch(34% .022 258.7/.6) 50%,#0000 100%)}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none}}.skeleton-label{border-radius:4px;width:48%;height:.6rem}.skeleton-value{border-radius:6px;width:62%;height:1.7rem;margin-top:.5rem}.skeleton-cell{border-radius:4px;height:.85rem;display:inline-block}.skeleton-chart{border-radius:var(--radius-md);height:260px;display:block}.sk-w-50{width:50%}.sk-w-55{width:55%}.sk-w-60{width:60%}.sk-w-68{width:68%}.sk-w-72{width:72%}.sk-w-78{width:78%}.sk-w-80{width:80%}.sk-w-85{width:85%}.kpi-card-skeleton .kpi-label{visibility:hidden}.admin-tr.skeleton-row .admin-td{padding-top:.9rem;padding-bottom:.9rem}.chart-empty{height:200px;color:var(--text-4);justify-content:center;align-items:center;font-size:.85rem;font-style:italic;display:flex}.admin-login-page{background:radial-gradient(50% 40% at 50% 20%,oklch(47.14% .1794 258.7/.18) 0%,#0000 70%),radial-gradient(40% 30% at 80% 90%,oklch(58.52% .1706 253.27/.15) 0%,#0000 60%),oklch(96% .008 258.7);justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;font-family:Inter,IBM Plex Sans Thai,sans-serif;display:flex}[data-theme=dark] .admin-login-page{background:radial-gradient(50% 40% at 50% 20%,oklch(58.52% .1706 253.27/.22) 0%,#0000 70%),radial-gradient(40% 30% at 80% 90%,oklch(47.14% .1794 258.7/.18) 0%,#0000 60%),oklch(14% .018 258.7)}.admin-login-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:100%;max-width:400px;padding:var(--space-7) var(--space-6);box-shadow:var(--shadow-xl);animation:modalScaleIn .4s var(--ease) both}.admin-login-header{text-align:center;margin-bottom:var(--space-6)}.admin-login-icon{border-radius:var(--radius-lg);background:var(--primary-light);width:56px;height:56px;color:var(--primary);margin-bottom:var(--space-4);justify-content:center;align-items:center;display:inline-flex}.admin-login-icon svg{display:block}.admin-login-title{margin:0 0 var(--space-1);letter-spacing:-.02em;color:var(--text);font-size:1.4rem;font-weight:800}.admin-login-subtitle{color:var(--text-3);margin:0;font-size:.82rem}.admin-login-form .admin-form-input{padding:.7rem .9rem;font-size:.9rem}.admin-login-btn{background:var(--primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;width:100%;margin-top:var(--space-2);letter-spacing:.02em;box-shadow:var(--shadow-primary);transition:all .18s var(--ease);border:none;padding:.75rem;font-family:inherit;font-size:.92rem;font-weight:700}.admin-login-btn:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 8px 24px var(--primary);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.admin-login-btn:hover:not(:disabled){box-shadow:0 8px 24px color-mix(in oklch, var(--primary) 30%, transparent)}}.admin-login-btn:active:not(:disabled){transform:translateY(0)}.admin-login-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}[data-theme=dark] .admin-sidebar{border-color:var(--border);background:oklch(20% .022 258.7/.85)}[data-theme=dark] .admin-nav-item:hover{background:var(--gray-100)}[data-theme=dark] .admin-nav-item.active{background:var(--primary-light)}[data-theme=dark] .admin-sidebar-footer{background:var(--gray-100)}[data-theme=dark] .admin-th,[data-theme=dark] .admin-table-pagination{background:oklch(20% .022 258.7)}[data-theme=dark] .admin-tr:hover{background:var(--primary-light)}[data-theme=dark] .alert-item:hover,[data-theme=dark] .alert-module{background:var(--gray-100)}@media (width<=900px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{border-right:none;border-bottom:1px solid var(--border);flex-direction:row;width:100%;height:auto;position:relative;overflow-x:auto}.admin-nav{flex-flow:row;gap:.25rem;padding:.5rem}.admin-nav-section{display:contents}.admin-nav-section-label{display:none}.admin-nav-section+.admin-nav-section{margin-top:0}.admin-nav-item{white-space:nowrap}.admin-nav-item.active:before{display:none}.admin-logo{border-right:1px solid var(--border);border-bottom:none;flex-shrink:0}.admin-sidebar-footer{flex-shrink:0;margin:.4rem}.admin-main{padding:1.25rem 1rem 2rem}.admin-page-title{font-size:1.25rem}}@media (width<=540px){.admin-main{padding:1rem .75rem 2rem}.kpi-value{font-size:1.35rem}.admin-page-header{flex-direction:column;align-items:stretch}.admin-page-controls{width:100%}}@media (width<=768px){.admin-nav-item,.pagination-btn,.admin-select,.admin-date-input,.alert-resolve-btn,.admin-btn-danger-sm{min-height:44px}.admin-logout-btn,.admin-icon-btn{width:44px;height:44px}.admin-th-sort{min-height:44px}}.admin-icon-btn{border:1px solid var(--border-hi);border-radius:var(--radius-sm);background:var(--card-bg);width:1.75rem;height:1.75rem;color:var(--text-3);cursor:pointer;transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.admin-icon-btn:hover{border-color:var(--primary-mid);color:var(--primary);background:var(--primary-light)}.admin-icon-btn:active{transform:scale(.92)}.admin-icon-btn:focus-visible{outline:2.5px solid var(--primary);outline-offset:2px}.tenant-detail{flex-direction:column;gap:1.1rem;padding:.9rem .5rem;display:flex}.tenant-detail-meta{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;display:flex}.tenant-detail-section h4{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);margin:0 0 .5rem;font-size:.78rem;font-weight:700}.tenant-chips{flex-wrap:wrap;gap:.4rem;display:flex}.tenant-chip{background:var(--gray-100);border:1px solid var(--border);color:var(--text-2);border-radius:100px;padding:.22rem .7rem;font-size:.75rem;font-weight:600}.tenant-chip.danger{background:var(--rose-light);border-color:var(--rose-mid);color:oklch(45% .18 24.11)}[data-theme=dark] .tenant-chip.danger{color:var(--rose)}.tenant-quota-list{flex-direction:column;gap:.6rem;display:flex}.tenant-quota-label{text-transform:capitalize;justify-content:space-between;gap:.75rem;margin-bottom:.3rem;font-size:.8rem;font-weight:600;display:flex}.tenant-quota-bar{background:var(--gray-100);border-radius:100px;height:6px;overflow:hidden}.tenant-quota-fill{background:var(--primary);border-radius:100px;height:100%}.tenant-detail-skeleton-line{border-radius:4px;width:140px;height:.85rem;display:inline-block}.tenant-chip-skeleton{border-radius:var(--radius-pill);width:92px;height:1.5rem;display:inline-block}.tenant-quota-fill-skeleton{border-radius:100px;width:45%;height:100%}.tenant-quota-fill.warn{background:var(--amber)}.tenant-quota-fill.over{background:var(--rose)}.admin-table--mini{font-size:.85rem}.tenant-detail-error{border-radius:var(--radius-md);background:var(--rose-light);border:1px solid var(--rose-mid);color:var(--text-2);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.7rem .9rem;font-size:.85rem;display:flex}.quota-cell{min-width:170px}.quota-usage-cell{flex-direction:column;align-items:flex-end;gap:.1rem;display:inline-flex}.quota-manage-list{flex-direction:column;gap:.6rem;display:flex}.quota-manage-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.quota-manage-meta{text-transform:capitalize;min-width:140px}.quota-limit-input{width:110px}.module-toggle-list{flex-wrap:wrap;gap:.5rem 1.25rem;display:flex}.admin-nav-section+.admin-nav-section{margin-top:var(--space-4)}.admin-nav-section-label{padding:0 var(--space-3);margin-bottom:var(--space-2);letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);font-size:.66rem;font-weight:700}.ui-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.ui-card-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);display:flex}.ui-card-heading{align-items:center;gap:var(--space-3);min-width:0;display:flex}.ui-card-icon{border-radius:var(--radius-sm);background:var(--primary-light);width:32px;height:32px;color:var(--primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ui-card-title{color:var(--text);letter-spacing:-.01em;font-size:.95rem;font-weight:700}.ui-card-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.ui-card-body{padding:var(--space-5)}.ui-card+.ui-card{margin-top:var(--space-5)}.ui-page-header{margin-bottom:var(--space-5)}.ui-page-header-row{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.ui-page-title{letter-spacing:-.025em;min-width:0;color:var(--text);font-size:1.5rem;font-weight:800;line-height:1.15}@media (width<=768px){.ui-page-title{font-size:1.25rem}}.ui-page-description{color:var(--text-3);max-width:70ch;margin-top:var(--space-2);font-size:.85rem}.ui-page-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;flex-shrink:0;display:flex}.ui-tabs{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-5);gap:2px;padding:3px;display:inline-flex}.ui-tab{border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:none;padding:.45rem 1rem;font-family:inherit;font-size:.82rem;font-weight:600}.ui-tab:hover{color:var(--text)}.ui-tab.active{background:var(--card-bg);color:var(--primary);box-shadow:var(--shadow-xs)}.ui-switch-label{align-items:center;gap:var(--space-2);cursor:pointer;color:var(--text-2);font-size:.85rem;display:inline-flex}.ui-switch-label.disabled{cursor:not-allowed;opacity:.55}.ui-switch{border-radius:var(--radius-pill);border:1px solid var(--border-hi);background:var(--gray-200);cursor:pointer;width:38px;height:22px;transition:background .18s var(--ease), border-color .18s var(--ease);flex-shrink:0;padding:0;position:relative}.ui-switch.checked{background:var(--primary);border-color:var(--primary)}.ui-switch:disabled{cursor:not-allowed}.ui-switch-thumb{width:16px;height:16px;box-shadow:var(--shadow-xs);transition:transform .18s var(--ease-spring-premium);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.ui-switch.checked .ui-switch-thumb{transform:translate(16px)}.ui-empty-state{text-align:center;padding:var(--space-8) var(--space-5);color:var(--text-3);flex-direction:column;align-items:center;display:flex}.ui-empty-icon{border-radius:var(--radius-md);background:var(--gray-50);width:48px;height:48px;color:var(--text-4);margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.ui-empty-title{color:var(--text-2);margin-bottom:var(--space-1);font-size:.92rem;font-weight:700}.ui-empty-description{max-width:40ch;margin-bottom:var(--space-4);font-size:.82rem}[data-theme=dark] .ui-tabs{background:var(--muted)}[data-theme=dark] .ui-switch{background:var(--gray-300)}[data-theme=dark] .status-badge.neutral{background:var(--gray-100);color:var(--text-3);border:1px solid var(--border)}.status-badge.neutral{background:var(--gray-100);color:var(--text-3);border:1px solid var(--border-hi)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
