@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-cyrillic-ext-wght-normal-RO72NYA2.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-cyrillic-wght-normal-CK2XY27K.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-vietnamese-wght-normal-Y2R7JZKV.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-latin-ext-wght-normal-XEQ56JUF.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-latin-wght-normal-T72VVCUW.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans: "Geist Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-lg: 1rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--brand-blue: oklch(.5967 .2212 258);--link: oklch(.5106 .1868 257.7);--background: oklch(98.5% .001 106.423);--foreground: oklch(14.7% .004 49.25);--card: #fff;--primary: var(--foreground);--primary-foreground: #fff;--secondary: oklch(97% .001 106.424);--accent: oklch(97% .001 106.424);--muted: oklch(97% .001 106.424);--muted-foreground: oklch(.535 .0127 58.071);--accent-strong: oklch(94.7% .002 56);--accent-hover: oklch(95.9% .002 56);--destructive: oklch(.58 .22 27);--border: oklch(92.3% .003 48.717);--border-card: color-mix(in oklch, var(--border) 70%, transparent);--border-subtle: color-mix(in oklch, var(--border) 50%, transparent);--border-control: oklch(86.9% .005 56.366);--ring: var(--brand-blue);--sidebar: oklch(97% .001 106.424);--sidebar-foreground: oklch(26.8% .007 34.298);--success-bg: oklch(96.2% .044 156.743);--success-border: oklch(92.5% .084 155.995);--success-fg: oklch(52.7% .154 150.069);--warning-bg: oklch(96.2% .059 95.617);--warning-border: oklch(92.4% .12 95.746);--warning-fg: oklch(55.5% .163 48.998);--danger-bg: oklch(93.6% .032 17.717);--danger-border: oklch(88.5% .062 18.334);--danger-fg: oklch(50.5% .213 27.518);--info-bg: oklch(95.1% .026 236.824);--info-border: oklch(90.1% .058 230.902);--info-fg: oklch(50% .134 242.749);--radius: .75rem;--radius-sm: .4rem;--radius-md: .5rem;--radius-lg: .625rem;--radius-xl: .875rem;--shadow-xs: 0 0 1px 0 rgb(0 0 0 / .05);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 16px -4px rgb(0 0 0 / .08), 0 1px 4px -2px rgb(0 0 0 / .05);--shadow-lg: 0 16px 48px -12px rgb(0 0 0 / .18), 0 2px 8px -2px rgb(0 0 0 / .06);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:1.45;color:var(--foreground);background:var(--sidebar);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 0}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}a.link,.link{color:var(--link)}a.link:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--ring);outline-offset:1px}.icon{width:1rem;height:1rem;flex:none}.muted{color:var(--muted-foreground)}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.mono{font-family:Geist Mono Variable,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-sm)}.num{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;height:2.25rem;padding:0 .75rem;border:1px solid transparent;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:500;white-space:nowrap;cursor:pointer;background:transparent;transition:background-color .12s,opacity .12s,transform .06s;-webkit-user-select:none;user-select:none}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-xs)}.btn-primary:hover:not(:disabled){opacity:.85}.btn-outline{background:var(--card);border-color:var(--border-control);box-shadow:var(--shadow-xs)}.btn-outline:hover:not(:disabled),.btn-ghost:hover:not(:disabled){background:var(--accent-strong)}.btn-destructive{background:var(--card);color:var(--destructive);border-color:var(--border-control)}.btn-destructive:hover:not(:disabled){background:var(--danger-bg)}.btn-danger{background:var(--destructive);color:#fff}.btn-danger:hover:not(:disabled){opacity:.85}.btn-sm{height:1.75rem;padding:0 .5rem;border-radius:var(--radius-md);font-size:var(--text-xs)}.btn-lg{height:2.5rem;padding:0 1rem}.btn-icon{width:2.25rem;padding:0}.btn-icon.btn-sm{width:1.75rem}.btn-block{width:100%}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.card{background:var(--card);border:1px solid var(--border-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);min-width:0}.card-header{display:flex;align-items:center;gap:.5rem;min-height:2.75rem;padding:.625rem .75rem;border-bottom:1px solid var(--border-subtle)}.card-title{display:flex;align-items:center;gap:.5rem;font-size:var(--text-lg);font-weight:600;flex:1}.card-title .icon{color:var(--muted-foreground)}.card-content{padding:.75rem;display:flex;flex-direction:column;gap:1rem}.card-footer{padding:.75rem;border-top:1px solid var(--border-subtle)}.card-flush{padding:0;overflow-x:auto}.badge{display:inline-flex;align-items:center;gap:.25rem;height:1.25rem;padding:0 .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:500;white-space:nowrap;background:var(--secondary);color:var(--sidebar-foreground)}.badge-success{background:var(--success-bg);border-color:var(--success-border);color:var(--success-fg)}.badge-warning{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-fg)}.badge-danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-fg)}.badge-info{background:var(--info-bg);border-color:var(--info-border);color:var(--info-fg)}.badge-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.chip{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border:1px solid var(--border-control);border-radius:999px;font-size:var(--text-xs);font-weight:500;background:var(--card);line-height:1.2;white-space:nowrap}button.chip{cursor:pointer}button.chip:hover{background:var(--accent-hover)}.chip.selected{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.chip .icon{width:.75rem;height:.75rem}.chips{display:flex;flex-wrap:wrap;gap:.375rem}.table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-base)}.table th{position:sticky;top:0;z-index:1;height:2.25rem;padding:.625rem .75rem;background:var(--muted);color:var(--muted-foreground);font-size:var(--text-sm);font-weight:400;text-align:left;white-space:nowrap;border-bottom:1px solid var(--border-subtle)}.table td{padding:.75rem .5rem;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.table th:first-child,.table td:first-child{padding-left:1rem}.table th:last-child,.table td:last-child{padding-right:1rem}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:color-mix(in oklch,var(--accent-strong) 50%,transparent)}.table .right{text-align:right}.table .shrink{width:1%;white-space:nowrap}.table-empty{padding:3rem 1rem;text-align:center;color:var(--muted-foreground)}.thumb{width:2rem;height:2rem;flex:none;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--muted);object-fit:cover;display:inline-grid;place-items:center;color:var(--muted-foreground)}.thumb .icon{width:.875rem;height:.875rem}.field{display:flex;flex-direction:column;gap:.375rem;min-width:0}.field>label,.label{font-size:var(--text-sm);font-weight:500}.hint{font-size:var(--text-xs);color:var(--muted-foreground)}.field-error{font-size:var(--text-xs);color:var(--destructive)}.input,.select,.textarea{width:100%;height:2.25rem;padding:0 .75rem;border:1px solid var(--border-control);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-xs);font-size:var(--text-base);outline:none;transition:border-color .12s,box-shadow .12s}.input::placeholder,.textarea::placeholder{color:color-mix(in oklch,var(--muted-foreground) 75%,transparent)}.input:focus,.select:focus,.textarea:focus{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklch,var(--ring) 20%,transparent)}.input[readonly],.input:disabled{background:var(--muted);color:var(--muted-foreground)}.invalid,.invalid:focus{border-color:var(--destructive);box-shadow:0 0 0 3px color-mix(in oklch,var(--destructive) 15%,transparent)}.textarea{height:auto;min-height:6rem;padding:.5rem .75rem;resize:vertical;line-height:1.5}.select{appearance:none;padding-right:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23787168' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 15 5 5 5-5M7 9l5-5 5 5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:.9rem;cursor:pointer}.input-sm{height:2rem;font-size:var(--text-sm);padding:0 .5rem}.input-group{position:relative;display:flex;align-items:center}.input-group>z-icon>.icon{position:absolute;left:.625rem;color:var(--muted-foreground);pointer-events:none}.input-group>.input{padding-left:2rem}.input-group>.prefix{position:absolute;left:.75rem;color:var(--muted-foreground);pointer-events:none}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}@media(max-width:640px){.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}}.checkbox{width:1rem;height:1rem;accent-color:var(--primary);cursor:pointer}.alert{display:flex;gap:.5rem;align-items:flex-start;padding:.625rem .75rem;border:1px solid var(--danger-border);border-radius:var(--radius-lg);background:var(--danger-bg);color:var(--danger-fg);font-size:var(--text-sm)}.alert .icon{margin-top:.1rem}.alert ul{margin:0;padding-left:1rem}.alert-info{border-color:var(--info-border);background:var(--info-bg);color:var(--info-fg)}.alert-warning{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning-fg)}.page{display:flex;flex-direction:column}.page-header{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:1rem;background:var(--card)}.page-header.bordered{border-bottom:1px solid var(--border-subtle)}.page-title{display:flex;flex-direction:column;gap:.125rem;flex:1 1 14rem;min-width:0}.page-title h1{display:flex;align-items:center;gap:.5rem;font-size:var(--text-xl);font-weight:600;letter-spacing:-.01em;overflow-wrap:anywhere}.page-title p{font-size:var(--text-sm);color:var(--muted-foreground)}.page-actions{display:flex;align-items:center;gap:.5rem}.page-body{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:80rem;margin:0 auto;padding:0 1rem 1rem}@media(min-width:1024px){.page-header{padding:1.5rem 1.5rem 1rem}.page-title h1{font-size:var(--text-2xl)}.page-body{padding:0 1.5rem 1.5rem}}.layout-8-4{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem}.layout-8-4>.main,.layout-8-4>.aside{display:flex;flex-direction:column;gap:1.5rem;min-width:0}@media(min-width:1024px){.layout-8-4{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.toolbar .spacer{flex:1}.search-input{width:15rem;max-width:100%}.search-input .input{height:2.125rem}.tabs{display:inline-flex;gap:.125rem;padding:.1875rem;border-radius:var(--radius-lg);background:var(--accent-strong);overflow-x:auto;max-width:100%}.tab{height:1.75rem;padding:0 .625rem;border:0;border-radius:var(--radius-md);background:transparent;font-size:var(--text-sm);font-weight:500;color:var(--muted-foreground);cursor:pointer;white-space:nowrap}.tab.active{background:var(--card);color:var(--foreground);box-shadow:var(--shadow-sm)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:3rem 1rem;text-align:center;color:var(--muted-foreground)}.empty-state .icon{width:2rem;height:2rem}.empty-state strong{color:var(--foreground);font-size:var(--text-lg)}.skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--accent-strong),var(--accent-hover),var(--accent-strong));background-size:200% 100%;animation:shimmer 1.2s infinite;height:1rem}@keyframes shimmer{to{background-position:-200% 0}}.menu{position:absolute;z-index:30;min-width:10rem;padding:.25rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-md)}.menu-item{display:flex;align-items:center;gap:.5rem;width:100%;height:2rem;padding:0 .5rem;border:0;border-radius:var(--radius-md);background:transparent;font-size:var(--text-sm);text-align:left;cursor:pointer}.menu-item:hover{background:var(--accent-strong)}.menu-item.danger{color:var(--destructive)}.menu-sep{height:1px;margin:.25rem -.25rem;background:var(--border-subtle)}.serp{display:flex;flex-direction:column;gap:.125rem;padding:.75rem;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--card);font-family:Arial,var(--font-sans)}.serp-url{font-size:.75rem;color:#202124;overflow-wrap:anywhere}.serp-title{font-size:1.05rem;line-height:1.3;color:#1a0dab;overflow-wrap:anywhere}.serp-desc{font-size:.8125rem;color:#4d5156;line-height:1.45}.overlay{position:fixed;inset:0;z-index:50;background:#0c0a0966;animation:fade-in .15s ease-out}@keyframes fade-in{0%{opacity:0}}.dialog{position:fixed;z-index:51;left:50%;top:50%;width:min(28rem,calc(100vw - 2rem));transform:translate(-50%,-50%);display:flex;flex-direction:column;gap:1rem;padding:1.25rem;border-radius:var(--radius-xl);background:var(--card);box-shadow:var(--shadow-lg)}.dialog h2{font-size:var(--text-lg);font-weight:600}.dialog-actions{display:flex;justify-content:flex-end;gap:.5rem}
