        :root{
            --bg:#f4f4f5;--card:#ffffff;--text:#2b2b2b;--muted:#6b7280;--line:#e5e7eb;--primary:#3f3f46;--primary-contrast:#ffffff;--primary-hover:#2e2e33;--radius:14px;--radius-sm:10px;--shadow:0 6px 24px rgba(0,0,0,.08),0 2px 8px rgba(0,0,0,.06);--input-bg:#fff;--input-border:#d1d5db;--input-focus:#3f3f46;--ghost:#eeeeee;--soft:#ededf0;--stripe-a:rgba(0,0,0,.025);--stripe-b:rgba(0,0,0,.045)
        }
        body.dark{--bg:#1e1e1e;--card:#2c2c2c;--text:#f3f4f6;--muted:#9ca3af;--line:#374151;--primary:#facc15;--primary-contrast:#000000;--primary-hover:#eab308;--input-bg:#1f2937;--input-border:#4b5563;--input-focus:#facc15;--ghost:#2d2d2d;--soft:#374151;--stripe-a:rgba(255,255,255,.06);--stripe-b:rgba(255,255,255,.09)}
        *{box-sizing:border-box}
        html,body{height:100%}
        body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans";color:var(--text);background:var(--bg);line-height:1.35}
        h1,h2,h3,p{margin:0}
        body::before,body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-2}
        body::before{background:radial-gradient(circle at 1px 1px,rgba(0,0,0,.06) 1px,transparent 1.6px) 0 0/20px 20px;opacity:.28}
        body::after{background:linear-gradient(to right,rgba(0,0,0,.05) 1px,transparent 1px) 0 0/40px 40px,linear-gradient(to bottom,rgba(0,0,0,.05) 1px,transparent 1px) 0 0/40px 40px,repeating-linear-gradient(-45deg,rgba(0,0,0,.02) 0 10px,rgba(0,0,0,.04) 10px 20px);mix-blend-mode:multiply;opacity:.35}
        .wrap{max-width:1180px;margin:24px auto 64px;padding:0 16px}
        .topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#4b4b50;margin-bottom:10px}
        .brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.2px}
        .langselect{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}
        .langselect select{border:1px dashed var(--line);border-radius:10px;padding:8px 10px;background:#fff;transition:filter .15s}
        .langselect select:hover{filter:brightness(.97)}
        .muted{color:var(--muted);font-size:12px}
        .card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--line);overflow:hidden}
        .card__head{padding:18px 20px;border-bottom:1px dashed var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;background:repeating-linear-gradient(-45deg,var(--stripe-a) 0 10px,var(--stripe-b) 10px 20px)}
        .card__title{font-size:20px;font-weight:800;letter-spacing:.2px;display:flex;align-items:center;gap:10px}
        .card__subtitle{color:var(--muted);font-size:12px}
        .card__body{padding:20px 20px 8px;background:linear-gradient(180deg,rgba(0,0,0,.015),rgba(0,0,0,0) 80%)}
        .card__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 20px;border-top:1px dashed var(--line);background:repeating-linear-gradient(-45deg,var(--stripe-a) 0 10px,var(--stripe-b) 10px 20px)}
        .section{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line)}
        .section__title{font-size:14px;font-weight:800;color:var(--muted);margin-bottom:10px;display:flex;gap:8px;align-items:center}
        .grid{display:grid;gap:14px}
        .grid--2{grid-template-columns:1fr 300px}
        .grid--3{grid-template-columns:1fr 80px 1fr}
        .grid--inline{grid-template-columns:240px auto;align-items:end}
        .row{margin-bottom:10px}
        .row-split{display:grid;grid-template-columns:1fr 260px;gap:14px;align-items:end}
        .row-split-4{display:grid;grid-template-columns:1fr 1fr 1fr 260px;gap:14px;align-items:end}
        .keyword-link{display:grid;grid-template-columns:150px 1fr 150px 1fr auto;gap:12px;align-items:center}
        .actions{display:flex;gap:12px}
        label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px;font-weight:700;letter-spacing:.2px}
        .ctrl{width:100%;appearance:none;background:var(--input-bg);border:1px dashed var(--input-border);border-radius:var(--radius-sm);padding:12px 12px;outline:none;font-size:14px;transition:border-color .2s,box-shadow .2s,background-color .25s,filter .15s}
        .ctrl:hover{filter:brightness(.98)}
        .ctrl:focus{border-color:var(--input-focus);box-shadow:0 0 0 4px rgba(63,63,70,.12)}
        textarea.ctrl{min-height:84px;resize:vertical}
        select.ctrl{background-image:linear-gradient(45deg,transparent 50%,#6b7280 50%),linear-gradient(135deg,#6b7280 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 14px) calc(50% - 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:36px}
        body.dark .ctrl{color:#fff}
        input[type="checkbox"]{accent-color:var(--primary)}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:2px dashed var(--line);border-radius:12px;padding:10px 14px;font-size:14px;font-weight:800;cursor:pointer;user-select:none;text-decoration:none;background:var(--card);color:var(--text);transition:transform .02s ease-in,background-color .2s,border-color .2s,color .2s,filter .15s}
        .btn:hover{filter:brightness(.95)}
        .btn:active{transform:scale(.98);filter:brightness(.9)}
        button:disabled,.btn:disabled{opacity:.5}
        .btn--primary{background:var(--primary);color:var(--primary-contrast);border-style:solid}
        .btn--primary:hover{background:var(--primary-hover)}
        .btn--ghost{background:var(--ghost)}
        .btn--soft{background:var(--soft)}
        .btn--icon{width:40px;height:40px;padding:0;font-weight:900}
        #themeToggle{display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s,transform .2s}
        #themeToggle:hover{transform:scale(1.1)}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:end;justify-content:space-between;margin-bottom:10px;border-bottom:1px dashed var(--line);padding-bottom:12px}
.filters{display:grid;grid-template-columns:300px 180px 160px 160px;gap:10px;align-items:end}
.table-wrap{border:1px dashed var(--line);border-radius:12px;overflow:auto;max-height:520px;background:var(--card)}
.toolbar .actions{position:relative}
.col-chooser{display:none;position:absolute;top:100%;right:0;background:var(--card);color:var(--text);border:1px dashed var(--line);border-radius:12px;padding:12px;box-shadow:var(--shadow);z-index:10}
.col-chooser label{display:flex;align-items:center;gap:6px;font-size:13px;margin-bottom:6px}
.col-chooser.is-open{display:block}
        table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}
        thead th{position:sticky;top:0;background:linear-gradient(0deg,rgba(0,0,0,.03),rgba(0,0,0,.03)),var(--card);font-weight:800;text-align:left;border-bottom:1px dashed var(--line);padding:12px 12px}
        tbody td{padding:10px 12px;border-bottom:1px dashed var(--line);vertical-align:middle}
        tbody tr:hover{background:var(--ghost)}
        .col-actions{width:240px}
        .badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px dashed var(--line);background:var(--ghost);font-weight:700;font-size:12px}
        .status--active{color:#065f46}
        .status--inactive{color:#7f1d1d}
        .ctx-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border:1px dashed var(--line);background:var(--ghost);border-radius:999px;font-size:12px;margin-right:6px}
        .avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#e5e7eb,#cbd5e1);border:1px dashed var(--line);background-size:cover;background-position:center}
        .avatar.has-image{border:1px solid var(--line)}
        .select-all{width:18px;height:18px}
        .pagination{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
        .pagination .btn{padding:8px 10px}
        .dual{display:grid;grid-template-columns:1fr 60px 1fr;gap:16px;align-items:center;margin-top:10px}
        .listbox{background:#fff;border:1px dashed var(--line);border-radius:12px;height:420px;overflow:auto;padding:10px;box-shadow:inset 0 0 0 1px rgba(0,0,0,0.02);transition:filter .15s,background-color .25s}
        .listbox:hover{filter:brightness(.98)}
        .list-item{padding:8px 10px;border-radius:8px;cursor:pointer;user-select:none;display:flex;align-items:center;gap:8px;transition:background-color .2s,filter .15s}
        .list-item:hover{background:#f1f1f3}
        .list-item.is-selected{background:#e7e7eb;outline:1px dashed #cfcfd6}
        .dual__controls{display:grid;gap:10px;justify-items:center}
        .tagbox{display:flex;flex-wrap:wrap;gap:8px;align-items:center;border:1px dashed var(--line);border-radius:12px;padding:8px;background:var(--input-bg);min-height:52px}
        .tag{display:inline-flex;align-items:center;gap:8px;border:1px dashed var(--line);border-radius:999px;padding:6px 10px;background:var(--ghost);font-size:13px;font-weight:700;color:var(--text);cursor:pointer;user-select:none;transition:filter .15s,background-color .2s}
        .tag:hover{filter:brightness(.95)}
        .tag i{opacity:.7}
        .fieldset .tag{margin-bottom:8px}
        .tagbox input{flex:1 1 160px;min-width:140px;border:0;outline:none;padding:8px;font-size:14px;background:transparent}
        .levels-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;align-items:start}
        .levels-panel{border:1px dashed var(--line);border-radius:12px;padding:12px;background:#fafafa}
        .levels-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:12px;align-items:center;margin-bottom:10px}
        .level-badge{font-weight:800;font-size:13px;color:#3b3b3b;display:flex;align-items:center;gap:8px}
        .chip{display:inline-flex;align-items:center;gap:8px;border:1px dashed var(--line);border-radius:999px;padding:8px 12px;background:#fff;font-size:14px;font-weight:700;transition:filter .15s,background-color .2s}
        .chip:hover{filter:brightness(.96)}
        .chip input{accent-color:var(--primary)}
        .interp-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}
        .interp-combos{margin-top:14px}
        .combo-card{border:1px dashed var(--line);border-radius:12px;padding:12px;background:#fff;margin-bottom:12px;transition:filter .15s}
        .combo-card:hover{filter:brightness(.98)}
        .combo-title{font-weight:800;margin-bottom:8px;color:#3b3b3b;font-size:14px;display:flex;align-items:center;gap:8px}
        .auth-wrap{display:grid;place-items:center;min-height:calc(100vh - 100px)}
        .auth-card{width:100%;max-width:460px}
        .pass-wrap{position:relative}
        .pass-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:1px dashed var(--line);border-radius:10px;background:#fafafa;padding:6px 8px;cursor:pointer}
        #screensStack{position:relative;transition:height .28s ease}
        .screen{position:absolute;inset:0;opacity:0;transform:translateY(12px) scale(.985);filter:grayscale(.1) saturate(.9);pointer-events:none;visibility:hidden;transition:opacity .28s ease,transform .28s ease,filter .28s ease}
        .screen.is-active{opacity:1;transform:translateY(0) scale(1);filter:none;pointer-events:auto;visibility:visible}
        .screen.is-leaving{opacity:0;transform:translateY(-8px) scale(.985)}
        @media (max-width:1024px){.interp-grid{grid-template-columns:1fr}}
        @media (max-width:980px){.filters{grid-template-columns:1fr 1fr}.col-actions{width:220px}}
@media (max-width:880px){
            .grid--2{grid-template-columns:1fr}
            .grid--3{grid-template-columns:1fr}
            .grid--inline{grid-template-columns:1fr}
            .row-split{grid-template-columns:1fr}
            .row-split-4{grid-template-columns:1fr}
            .keyword-link{grid-template-columns:1fr}
            .dual{grid-template-columns:1fr}
            .dual__controls{grid-template-columns:repeat(2,1fr)}
            .dual__controls .btn{width:100%}
        .levels-grid{grid-template-columns:1fr}
        .col-actions{width:200px}
        }

        .modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.6);opacity:0;pointer-events:none;transition:opacity .3s}
        .modal.is-active{opacity:1;pointer-events:auto}
        .modal-content{background:#fff;padding:2rem;border-radius:var(--radius);max-width:90%;box-shadow:0 4px 16px rgba(0,0,0,.2);transform:scale(.9);transition:transform .3s}
        body.dark .modal-content{background-color:#1a1a1a}
        .modal.is-active .modal-content{transform:scale(1)}
        .modal-content .actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.5rem}
        .modal-content button{margin-left:0}
        .file-drop{border:2px dashed var(--line);border-radius:12px;padding:20px;text-align:center;background:#fff;cursor:pointer;transition:border-color .2s,background-color .2s,transform .2s}
        .file-drop-zone{color:var(--muted)}
        .file-drop.is-dragover{border-color:var(--primary);background:var(--ghost);transform:scale(1.02)}
        .file-preview{margin-top:10px;opacity:0;transform:scale(.95);transition:opacity .2s,transform .2s}
        .file-drop.has-file .file-preview{opacity:1;transform:scale(1)}
        .file-info{margin-top:10px;font-size:13px;color:var(--muted);opacity:0;transform:translateY(-4px);max-height:0;overflow:hidden;transition:opacity .2s,transform .2s,max-height .2s}
        .file-drop.has-file .file-info{opacity:1;transform:translateY(0);max-height:40px}
        .file-preview img{max-width:100%;border-radius:8px}
        .file-clear{margin-top:10px}
        .toast-container{position:fixed;top:1rem;right:1rem;display:flex;flex-direction:column;gap:.5rem;z-index:1000}
        .toast{padding:1rem 1.25rem;border-radius:var(--radius);color:#fff;background:var(--primary);box-shadow:var(--shadow);opacity:0;transform:translateY(-20px);transition:opacity .3s,transform .3s}
        .toast.is-showing{opacity:1;transform:translateY(0)}
        .toast-success{background:#16a34a}
        .toast-error{background:#dc2626}
        .loading-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;opacity:0;pointer-events:none;transition:opacity .3s;z-index:1000}
        .loading-overlay.is-active{opacity:1;pointer-events:auto}
        .spinner{width:40px;height:40px;border:4px solid #fff;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}
        .loading-text{color:#fff;font-weight:700}
        @keyframes spin{to{transform:rotate(360deg)}}
        textarea.auto-resize{overflow:hidden;transition:height .2s}
