@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,[data-theme=light]{--bg:#fbfdfc;--side:#f1f6f4;--card:#fff;--ink:#0c1a18;--mute:#4f6460;--line:#e1ebe8;--brand:#2a9d8f;--accent:#1a7a6f;--on-accent:#fff;--soft:#ddf1ee;--chip:#eef5f3;--warm:#ba2526;--warm-soft:#fbe3de;--shadow-sm:0 1px 3px #0c1a180d;--shadow-lg:0 18px 42px #0c1a1824;--backdrop:#0c1a187a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0a1211;--side:#0e1918;--card:#111c1b;--ink:#eaf4f2;--mute:#9db3af;--line:#1f2e2c;--brand:#2a9d8f;--accent:#4fc4b5;--on-accent:#04201c;--soft:#12332f;--chip:#172625;--warm:#f3a59a;--warm-soft:#3a1b19;--shadow-sm:0 1px 3px #00000059;--shadow-lg:0 20px 48px #0000008c;--backdrop:#030807b8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}[data-theme=dark]{--bg:#0a1211;--side:#0e1918;--card:#111c1b;--ink:#eaf4f2;--mute:#9db3af;--line:#1f2e2c;--brand:#2a9d8f;--accent:#4fc4b5;--on-accent:#04201c;--soft:#12332f;--chip:#172625;--warm:#f3a59a;--warm-soft:#3a1b19;--shadow-sm:0 1px 3px #00000059;--shadow-lg:0 20px 48px #0000008c;--backdrop:#030807b8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--radius-sm:10px;--radius-md:12px;--radius-lg:16px;--touch-min:44px;--font-sans:"Plus Jakarta Sans Variable", "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-size:15px;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--side);border-right:1px solid var(--line);flex-direction:column;gap:24px;height:100vh;padding:20px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.brand-mark{align-items:center;gap:12px;padding:6px 8px;display:flex}.brand-badge{border-radius:var(--radius-md);background:var(--accent);width:36px;height:36px;color:var(--on-accent);letter-spacing:-.02em;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:inline-flex}.brand-title{color:var(--ink);font-size:16px;font-weight:700;line-height:1.2}.brand-subtitle{color:var(--mute);font-size:12px}.sidebar-nav{flex-direction:column;gap:4px;display:flex}.nav-link{min-height:var(--touch-min);border-radius:var(--radius-md);color:var(--mute);align-items:center;gap:10px;padding:0 14px;font-weight:600;text-decoration:none;transition:background-color .14s,color .14s;display:flex}.nav-link:hover{background:var(--chip);color:var(--ink);text-decoration:none}.nav-link.active{background:var(--soft);color:var(--accent)}.sidebar-footer{border-radius:var(--radius-md);background:var(--chip);color:var(--mute);margin-top:auto;padding:12px;font-size:12px}.main-column{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;background:var(--bg);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 28px;display:flex;position:sticky;top:0}.topbar-left,.topbar-right{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.country-picker{align-items:center;gap:10px;display:flex}.country-picker label{color:var(--mute);font-size:13px;font-weight:600}.tz-pill{background:var(--chip);border:1px solid var(--line);color:var(--mute);border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;display:inline-flex}.mobile-menu-btn,.sidebar-backdrop{display:none}.page-content{flex-direction:column;gap:20px;width:100%;max-width:1440px;margin:0 auto;padding:28px;display:flex}@media (width<=960px){.app-shell{grid-template-columns:1fr}.mobile-menu-btn{display:inline-flex}.sidebar{z-index:50;width:268px;box-shadow:var(--shadow-lg);transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-backdrop.open{background:var(--backdrop);z-index:45;display:block;position:fixed;inset:0}.topbar{padding:12px 18px}.page-content{padding:20px 18px}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-header h1{letter-spacing:-.02em;margin:0;font-size:24px;font-weight:700}.page-subtitle{color:var(--mute);margin:4px 0 0;font-size:14px}.header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px}.card-flush{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.btn{min-height:var(--touch-min);min-width:var(--touch-min);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;text-decoration:none;transition:background-color .14s,border-color .14s,opacity .14s;display:inline-flex}.btn:hover:not(:disabled){background:var(--chip);text-decoration:none}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent);filter:brightness(.95)}.btn-soft{background:var(--soft);color:var(--accent);border-color:#0000}.btn-soft:hover:not(:disabled){background:var(--soft);filter:brightness(.96)}.btn-danger{background:var(--warm-soft);color:var(--warm);border-color:#0000}.btn-danger:hover:not(:disabled){filter:brightness(.96)}.btn-compact{padding:0 12px;font-size:13px}.input,.select,.textarea{width:100%;min-height:var(--touch-min);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--card);color:var(--ink);padding:8px 12px;transition:border-color .14s}.select{width:auto;min-width:168px}.textarea{resize:vertical;min-height:96px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent)}.field{flex-direction:column;gap:6px;display:flex}.field-label{color:var(--ink);justify-content:space-between;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.field-hint{color:var(--mute);font-size:12px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.form-stack{flex-direction:column;gap:16px;display:flex}.checkbox-label{min-height:var(--touch-min);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:0 10px;font-weight:500;display:inline-flex}.checkbox-label input[type=checkbox],.checkbox-cell input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);cursor:pointer}.checkbox-cell{min-width:var(--touch-min);min-height:var(--touch-min);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.filter-bar{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.filter-group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-item{align-items:center;gap:8px;display:flex}.filter-item label{color:var(--mute);font-size:13px;font-weight:600}.table-wrap{width:100%;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.data-table th{background:var(--side);color:var(--mute);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line);white-space:nowrap;padding:12px 16px;font-size:12px;font-weight:700}.data-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:12px 16px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--bg)}.data-table tbody tr.row-highlighted{background:var(--soft)}.row-actions,.chip-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip{background:var(--chip);color:var(--mute);border:1px solid var(--line);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.chip-accent{background:var(--soft);color:var(--accent);border-color:#0000}.chip-warm{background:var(--warm-soft);color:var(--warm);border-color:#0000}.swatch{border:1px solid var(--line);border-radius:5px;flex-shrink:0;width:16px;height:16px;display:inline-block}.banner{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--chip);flex-direction:column;gap:6px;padding:14px 16px;font-size:14px;display:flex}.banner-error{background:var(--warm-soft);color:var(--warm);border-color:var(--warm)}.banner-warning{background:var(--soft);color:var(--ink);border-left:4px solid var(--accent)}.pagination-bar{border-top:1px solid var(--line);background:var(--card);color:var(--mute);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:13px;display:flex}.split-workspace{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}@media (width<=1024px){.split-workspace{grid-template-columns:1fr}}.compare-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}@media (width<=768px){.compare-grid{grid-template-columns:1fr}}.compare-card{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--bg);flex-direction:column;gap:8px;padding:16px;display:flex}.compare-card.target{border-color:var(--accent);background:var(--soft)}.selector-list{flex-direction:column;gap:8px;display:flex}.selector-row{align-items:center;gap:8px;display:flex}.code-preview{border-radius:var(--radius-md);background:var(--bg);border:1px solid var(--line);white-space:pre-wrap;word-break:break-word;max-height:320px;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;overflow-y:auto}.modal-backdrop{z-index:80;background:var(--backdrop);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:560px;max-height:calc(100vh - 40px);display:flex;overflow:hidden}.modal-panel.modal-wide{max-width:880px}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;display:flex}.modal-header h2{margin:0;font-size:18px;font-weight:700}.modal-body{flex-direction:column;gap:16px;padding:20px 22px;display:flex;overflow-y:auto}.modal-footer{border-top:1px solid var(--line);background:var(--side);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:14px 22px;display:flex}.centered-screen{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);width:100%;max-width:480px;box-shadow:var(--shadow-sm);flex-direction:column;gap:16px;padding:28px;display:flex}.state-box{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;display:flex}.state-box h3{margin:0;font-size:17px}.state-box p{color:var(--mute);max-width:480px;margin:0}@keyframes pulse-shimmer{0%,to{opacity:.55}50%{opacity:1}}.skeleton-line{background:var(--chip);border-radius:6px;height:16px;animation:1.4s ease-in-out infinite pulse-shimmer}.toast-viewport{z-index:100;pointer-events:none;flex-direction:column;gap:10px;width:calc(100vw - 40px);max-width:400px;display:flex;position:fixed;bottom:20px;right:20px}.toast-item{pointer-events:auto;background:var(--card);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 10px 16px;font-size:14px;display:flex}.toast-item.toast-error{border-left-color:var(--warm)}.color-picker-row{align-items:center;gap:10px;display:flex}.color-input-swatch{width:48px;height:var(--touch-min);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--card);cursor:pointer;flex-shrink:0;padding:4px}.muted{color:var(--mute)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px}.truncate{text-overflow:ellipsis;white-space:nowrap;max-width:340px;overflow:hidden}.candidate-list{flex-direction:column;gap:8px;max-height:280px;display:flex;overflow-y:auto}.candidate-option{min-height:var(--touch-min);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--card);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.candidate-option:hover{background:var(--chip)}.candidate-option.selected{border-color:var(--accent);background:var(--soft)}
