:root {
    --ck-bg: #060810;
    --ck-surface: #0a0e1a;
    --ck-card: #0c1220;
    --ck-border: #1e293b;
    --ck-text: #e2e8f0;
    --ck-muted: #94a3b8;
    --ck-dim: #475569;
    --ck-green: #4ade80;
    --ck-green-bg: #052e16;
    --ck-red: #f87171;
    --ck-red-bg: #300a0a;
    --ck-yellow: #facc15;
    --ck-yellow-bg: #1c1a05;
    --ck-blue: #06b6d4;
    --ck-blue-bg: #0c1a30;
    --ck-font: 'Noto Sans', sans-serif;
    --ck-mono: 'JetBrains Mono', monospace;
    --ck-radius: 8px;
}

.webseo-ck-body { margin:0;padding:0;background:var(--ck-bg);color:var(--ck-text);font-family:var(--ck-font);min-height:100vh; }
*,*::before,*::after { box-sizing:border-box; }

/* ── Login ────────────────────────── */
.ck-login-screen { min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--ck-bg);background-image:radial-gradient(ellipse at 20% 50%,rgba(74,222,128,.04) 0%,transparent 50%),radial-gradient(ellipse at 80% 50%,rgba(6,182,212,.04) 0%,transparent 50%);padding:20px; }
.ck-login-card { width:100%;max-width:380px;background:var(--ck-card);border:1px solid var(--ck-border);border-radius:16px;padding:40px 32px 28px;animation:ckUp .5s ease; }
.ck-login-brand { text-align:center;margin-bottom:32px; }
.ck-login-icon { font-size:48px;background:linear-gradient(135deg,var(--ck-green),var(--ck-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:block;margin-bottom:12px; }
.ck-login-title { margin:0;font-size:22px;font-weight:900;background:linear-gradient(135deg,var(--ck-green),var(--ck-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent; }
.ck-login-subtitle { margin:4px 0 0;color:var(--ck-dim);font-size:13px; }
.ck-input-group { display:flex;align-items:center;gap:10px;background:var(--ck-surface);border:1px solid var(--ck-border);border-radius:8px;padding:0 14px;margin-bottom:12px;transition:border-color .2s; }
.ck-input-group:focus-within { border-color:var(--ck-green); }
.ck-input-group .material-symbols-outlined { color:var(--ck-dim);font-size:20px; }
.ck-input-group input { flex:1;background:none;border:none;outline:none;color:var(--ck-text);font-size:14px;padding:12px 0;font-family:var(--ck-font); }
.ck-input-group input::placeholder { color:var(--ck-dim); }
.ck-login-error { margin-top:12px;padding:10px 14px;background:var(--ck-red-bg);border:1px solid #dc2626;border-radius:8px;color:var(--ck-red);font-size:13px;text-align:center; }
.ck-login-footer { margin-top:24px;text-align:center;color:var(--ck-dim);font-size:11px;display:flex;align-items:center;justify-content:center;gap:4px; }
.ck-login-footer a { color:var(--ck-muted);text-decoration:none; }

/* ── Buttons ──────────────────────── */
.ck-btn-primary { display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px;background:linear-gradient(135deg,#16a34a,#0891b2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:800;cursor:pointer;transition:opacity .2s,transform .1s;font-family:var(--ck-font); }
.ck-btn-primary:hover { opacity:.9; }
.ck-btn-primary:active { transform:scale(.98); }
.ck-btn-primary:disabled { opacity:.5;cursor:wait; }
.ck-btn-primary .material-symbols-outlined { font-size:18px; }
.ck-btn-sm { width:auto;padding:10px 16px;font-size:12px; }
.ck-btn-icon { background:var(--ck-surface);border:1px solid var(--ck-border);border-radius:8px;padding:8px;cursor:pointer;color:var(--ck-muted);display:flex;align-items:center;transition:color .2s; }
.ck-btn-icon:hover { color:var(--ck-green); }

.ck-btn-scan {
    display:flex;align-items:center;gap:8px;
    padding:12px 24px;border-radius:8px;border:none;cursor:pointer;
    background:linear-gradient(135deg,#16a34a,#059669);
    color:#fff;font-size:14px;font-weight:800;font-family:var(--ck-font);
    box-shadow:0 0 20px rgba(74,222,128,.15);
    transition:all .2s;
}
.ck-btn-scan:hover { box-shadow:0 0 30px rgba(74,222,128,.3);transform:translateY(-1px); }
.ck-btn-scan:active { transform:scale(.98); }
.ck-btn-scan:disabled { opacity:.5;cursor:wait;box-shadow:none; }
.ck-btn-scan .material-symbols-outlined { font-size:20px; }

/* ── App Layout (full width) ─────── */
.ck-app { padding:12px 16px; }

.ck-header { display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:0 4px; }
.ck-header-brand { display:flex;align-items:center;gap:10px; }
.ck-logo-icon { font-size:30px;background:linear-gradient(135deg,var(--ck-green),var(--ck-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent; }
.ck-app-title { margin:0;font-size:18px;font-weight:900;background:linear-gradient(135deg,var(--ck-green),var(--ck-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent; }
.ck-app-subtitle { margin:0;color:var(--ck-dim);font-size:10px; }
.ck-header-actions { display:flex;align-items:center;gap:8px; }
.ck-req-badge { font-size:11px;color:var(--ck-muted);font-family:var(--ck-mono);background:var(--ck-surface);border:1px solid var(--ck-border);padding:4px 10px;border-radius:20px; }

/* ── Toolbar ──────────────────────── */
.ck-toolbar {
    display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;
    margin-bottom:12px;padding:12px 16px;
    background:var(--ck-surface);border:1px solid var(--ck-border);border-radius:var(--ck-radius);
}
.ck-toolbar-left { display:flex;align-items:center;gap:12px;flex-wrap:wrap; }
.ck-toolbar-right { display:flex;align-items:center;gap:8px; }

.ck-cache-info { font-size:11px;color:var(--ck-dim);font-family:var(--ck-mono); }
.ck-cache-info strong { color:var(--ck-muted); }

.ck-search-input-wrap { display:flex;align-items:center;gap:6px;background:var(--ck-card);border:1px solid var(--ck-border);border-radius:8px;padding:0 12px;transition:border-color .2s; }
.ck-search-input-wrap:focus-within { border-color:var(--ck-green); }
.ck-search-input-wrap .material-symbols-outlined { color:var(--ck-dim);font-size:18px; }
#ck-search-input { flex:1;width:160px;background:none;border:none;outline:none;color:var(--ck-text);font-size:14px;font-weight:700;font-family:var(--ck-mono);padding:10px 0;letter-spacing:.5px; }
#ck-search-input::placeholder { color:var(--ck-dim);font-weight:400;font-family:var(--ck-font);font-size:12px; }

/* ── Methodology ──────────────────── */
.ck-method-bar { margin-bottom:12px;background:var(--ck-surface);border:1px solid var(--ck-border);border-radius:var(--ck-radius);overflow:hidden; }
.ck-method-toggle { width:100%;display:flex;align-items:center;gap:8px;padding:10px 16px;background:none;border:none;color:var(--ck-dim);font-size:12px;font-weight:700;cursor:pointer;font-family:var(--ck-font);text-align:left;transition:color .2s; }
.ck-method-toggle:hover { color:var(--ck-green); }
.ck-method-toggle .material-symbols-outlined { font-size:16px; }
.ck-method-arrow { margin-left:auto;transition:transform .3s; }
.ck-method-arrow.open { transform:rotate(180deg); }
.ck-method-content { padding:0 16px 16px;border-top:1px solid var(--ck-border);animation:ckUp .3s ease; }
.ck-method-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px; }
.ck-method-card { background:var(--ck-bg);border-radius:8px;padding:12px;border:1px solid var(--ck-border); }
.ck-method-card-icon { margin-bottom:4px; }
.ck-method-card-icon .material-symbols-outlined { font-size:20px; }
.ck-method-card h4 { margin:0 0 6px;font-size:12px;font-weight:800;color:var(--ck-text); }
.ck-method-card ul { margin:0;padding:0 0 0 14px;font-size:10px;color:var(--ck-muted);line-height:1.7; }
.ck-method-card ul strong { color:var(--ck-text); }

/* ── Progress Bar ─────────────────── */
.ck-progress { margin-bottom:12px;padding:12px 16px;background:var(--ck-surface);border:1px solid var(--ck-border);border-radius:var(--ck-radius); }
.ck-progress-header { display:flex;justify-content:space-between;align-items:center;margin-bottom:6px; }
.ck-progress-text { font-size:12px;color:var(--ck-muted); }
.ck-progress-pct { font-size:12px;font-weight:700;color:var(--ck-green);font-family:var(--ck-mono); }
.ck-progress-track { height:6px;background:var(--ck-bg);border-radius:3px;overflow:hidden; }
.ck-progress-fill { height:100%;background:linear-gradient(90deg,var(--ck-green),var(--ck-blue));border-radius:3px;transition:width .3s ease;width:0; }

/* ── Progress Checklist ────────────── */
.ck-progress-checklist { margin-top:10px; }
.ck-checklist { display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 0; }
.ck-cl-ticker { font-family:var(--ck-mono);font-weight:900;font-size:16px;color:var(--ck-green);min-width:60px; }
.ck-cl-step { display:flex;align-items:center;gap:4px;font-size:11px;padding:4px 10px;border-radius:6px;background:var(--ck-bg);border:1px solid var(--ck-border);transition:all .3s; }
.ck-cl-step .material-symbols-outlined { font-size:16px; }
.ck-step-pending { color:var(--ck-dim); }
.ck-step-active { color:var(--ck-yellow);border-color:#a16207;background:var(--ck-yellow-bg);animation:ckPulse 1.5s infinite; }
.ck-step-done { color:var(--ck-green);border-color:#16a34a;background:var(--ck-green-bg); }
.ck-step-fail { color:var(--ck-red);border-color:#dc2626;background:var(--ck-red-bg); }
@keyframes ckPulse{0%,100%{opacity:1}50%{opacity:.6}}

/* ── Loading ──────────────────────── */
.ck-loading { text-align:center;padding:24px 0; }
.ck-loading-spinner { width:32px;height:32px;border:3px solid var(--ck-border);border-top-color:var(--ck-green);border-radius:50%;margin:0 auto 8px;animation:ckSpin 1s linear infinite; }
.ck-loading-text { color:var(--ck-dim);font-size:13px; }
.ck-loading-steps { margin-top:10px;display:flex;flex-direction:column;align-items:center;gap:3px; }
.ck-step { font-size:11px;color:var(--ck-dim);display:flex;align-items:center;gap:5px;transition:color .3s; }
.ck-step.done { color:var(--ck-green); }
.ck-step.active { color:var(--ck-yellow); }
.ck-step .material-symbols-outlined { font-size:14px; }

/* ── TABLE (full width, stock board) ── */
.ck-table-wrap {
    background:var(--ck-surface);border:1px solid var(--ck-border);
    border-radius:var(--ck-radius);overflow:hidden;margin-bottom:12px;
    animation:ckUp .4s ease;
}

.ck-table-header {
    padding:10px 16px;border-bottom:1px solid var(--ck-border);
    display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;
}
.ck-table-title { display:flex;align-items:center;gap:6px;font-size:13px;font-weight:800;color:var(--ck-green); }
.ck-table-title .material-symbols-outlined { font-size:18px; }
.ck-table-meta { display:flex;align-items:center;gap:12px; }
.ck-timestamp { font-size:10px;color:var(--ck-muted);font-family:var(--ck-mono); }
.ck-hint { font-size:10px;color:var(--ck-dim); }
.ck-table-scroll { overflow-x:auto; }

.ck-table { width:100%;border-collapse:collapse;font-size:12px;font-family:var(--ck-mono); }
.ck-table th {
    padding:10px 8px;text-align:left;position:sticky;top:0;z-index:2;
    color:var(--ck-dim);font-weight:700;font-size:10px;
    letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;
    cursor:pointer;user-select:none;background:var(--ck-surface);
    border-bottom:2px solid var(--ck-border);
}
.ck-table th:hover { color:var(--ck-green); }
.ck-table th.sorted { color:var(--ck-green); }

.ck-table td { padding:9px 8px;border-bottom:1px solid #111827;white-space:nowrap; }
.ck-table tbody tr { transition:background .15s;cursor:pointer; }
.ck-table tbody tr:hover { background:#0d1525; }
.ck-table tbody tr:nth-child(even) { background:rgba(255,255,255,.01); }

.ck-col-sticky { position:sticky;left:0;z-index:1;background:var(--ck-surface); }
.ck-col-reason { white-space:normal!important;min-width:220px;max-width:340px; }

.ck-ticker { font-weight:800;color:var(--ck-green);font-size:13px; }
.ck-name { color:var(--ck-muted);font-size:11px;font-family:var(--ck-font); }
.ck-price { font-weight:700;color:var(--ck-text);font-size:13px; }
.ck-change-up { font-weight:700;color:var(--ck-green); }
.ck-change-down { font-weight:700;color:var(--ck-red); }
.ck-neutral-val { color:#cbd5e1; }
.ck-buy-val { color:var(--ck-green);font-weight:700; }
.ck-sell-val { color:var(--ck-red);font-weight:700; }
.ck-sl-val { color:var(--ck-yellow);font-weight:700; }
.ck-reason-text { color:var(--ck-muted);font-size:10px;font-family:var(--ck-font);line-height:1.4;white-space:normal; }

.ck-badge { display:inline-block;padding:3px 8px;border-radius:4px;font-size:10px;font-weight:700;white-space:nowrap;border:1px solid; }
.ck-badge-buy { background:var(--ck-green-bg);border-color:#16a34a;color:var(--ck-green); }
.ck-badge-sell { background:var(--ck-red-bg);border-color:#dc2626;color:var(--ck-red); }
.ck-badge-hold { background:var(--ck-yellow-bg);border-color:#a16207;color:var(--ck-yellow); }
.ck-badge-neutral { background:var(--ck-blue-bg);border-color:#1d4ed8;color:#60a5fa; }

.ck-conf { display:flex;align-items:center;gap:5px; }
.ck-conf-bar { width:48px;height:5px;background:#1a1a2e;border-radius:3px;overflow:hidden; }
.ck-conf-fill { height:100%;border-radius:3px; }
.ck-conf-num { font-size:11px;font-weight:700; }

/* ── Detail ───────────────────────── */
.ck-detail-panel { background:var(--ck-card);border:1px solid var(--ck-border);border-radius:var(--ck-radius);padding:20px;margin-bottom:12px;animation:ckUp .3s ease; }
.ck-detail-top { display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:14px; }
.ck-detail-ticker { font-family:var(--ck-mono);font-size:24px;font-weight:900;color:var(--ck-green); }
.ck-detail-name { color:var(--ck-muted);font-size:12px; }
.ck-detail-price { font-size:20px;font-weight:800;font-family:var(--ck-mono);text-align:right; }
.ck-detail-changes { display:flex;gap:5px;margin-top:4px;flex-wrap:wrap;justify-content:flex-end; }
.ck-detail-rec { background:var(--ck-bg);border-radius:8px;padding:12px;border:1px solid var(--ck-border);margin-bottom:12px;display:flex;justify-content:space-between;align-items:center; }
.ck-detail-rec-label { font-size:10px;color:var(--ck-dim);letter-spacing:2px;text-transform:uppercase; }
.ck-zones { display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:12px; }
.ck-zone { border-radius:7px;padding:8px;text-align:center; }
.ck-zone-label { font-size:8px;color:var(--ck-dim);text-transform:uppercase;letter-spacing:1px;margin-bottom:2px; }
.ck-zone-value { font-weight:800;font-size:12px;font-family:var(--ck-mono); }
.ck-indicators { display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:5px;margin-bottom:12px; }
.ck-indicator { background:var(--ck-bg);border-radius:5px;padding:5px 7px;border:1px solid #111827; }
.ck-indicator-label { font-size:8px;color:var(--ck-dim); }
.ck-indicator-value { font-size:11px;font-weight:700;font-family:var(--ck-mono);color:var(--ck-text); }
.ck-signals { display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px; }
.ck-signal-item { text-align:center; }
.ck-signal-label { font-size:8px;color:var(--ck-dim);margin-bottom:1px; }
.ck-summary { font-size:13px;line-height:1.7;color:var(--ck-muted);margin-bottom:10px; }
.ck-info-block { margin-bottom:6px; }
.ck-info-block-title { font-size:10px;font-weight:700;margin-bottom:2px; }
.ck-info-block-text { font-size:11px;color:var(--ck-muted);line-height:1.5; }
.ck-detail-close { margin-top:6px;padding:5px 14px;border-radius:5px;border:1px solid var(--ck-border);background:transparent;color:var(--ck-dim);cursor:pointer;font-size:11px;font-family:var(--ck-font); }

/* ── Tabs ─────────────────────────── */
.ck-tabs { display:flex;gap:2px;margin-bottom:12px;background:var(--ck-surface);border-radius:var(--ck-radius);padding:4px;border:1px solid var(--ck-border); }
.ck-tab { flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px;border:none;background:none;color:var(--ck-dim);font-size:13px;font-weight:700;cursor:pointer;border-radius:6px;font-family:var(--ck-font);transition:all .2s; }
.ck-tab:hover { color:var(--ck-muted); }
.ck-tab.active { background:var(--ck-card);color:var(--ck-green);box-shadow:0 1px 4px rgba(0,0,0,.3); }
.ck-tab .material-symbols-outlined { font-size:18px; }
.ck-tab-content { display:none; }
.ck-tab-content.active { display:block;animation:ckUp .3s ease; }

/* ── Portfolio ────────────────────── */
.ck-portfolio-header { margin-bottom:14px; }
.ck-portfolio-title { margin:0;font-size:18px;font-weight:800;color:var(--ck-text);display:flex;align-items:center;gap:8px; }
.ck-portfolio-title .material-symbols-outlined { color:var(--ck-green); }
.ck-portfolio-desc { margin:4px 0 0;font-size:12px;color:var(--ck-muted); }
.ck-portfolio-desc strong { color:var(--ck-yellow); }

.ck-pf-form { display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;padding:14px;background:var(--ck-surface);border:1px solid var(--ck-border);border-radius:var(--ck-radius); }
.ck-pf-input { padding:10px 12px;border-radius:6px;border:1px solid var(--ck-border);background:var(--ck-card);color:var(--ck-text);font-size:13px;font-family:var(--ck-mono);outline:none;transition:border-color .2s; }
.ck-pf-input:focus { border-color:var(--ck-green); }
.ck-pf-ticker { width:80px;text-transform:uppercase;font-weight:700; }
.ck-pf-price { width:120px; }
.ck-pf-qty { width:80px; }

/* ── Alerts ───────────────────────── */
.ck-pf-alerts { margin-bottom:12px; }
.ck-alert { display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:8px;margin-bottom:6px;font-size:12px;animation:ckPulse 2s infinite; }
.ck-alert .material-symbols-outlined { font-size:20px; }
.ck-alert strong { font-family:var(--ck-mono); }
.ck-alert-danger { background:var(--ck-red-bg);border:1px solid #dc2626;color:var(--ck-red); }
.ck-alert-warn { background:var(--ck-yellow-bg);border:1px solid #a16207;color:var(--ck-yellow); }

/* ── Disclaimer & Footer ─────────── */
.ck-disclaimer { margin:0 auto 12px;background:var(--ck-yellow-bg);border:1px solid #713f12;border-radius:8px;padding:10px 16px;font-size:11px;color:#a16207;line-height:1.6;display:flex;align-items:flex-start;gap:8px; }
.ck-disclaimer .material-symbols-outlined { font-size:18px;flex-shrink:0;margin-top:1px; }
.ck-disclaimer strong { color:#ca8a04; }
.ck-footer { text-align:center;padding:10px 0;color:var(--ck-dim);font-size:10px; }
.ck-footer a { color:var(--ck-muted);text-decoration:none; }

/* ── Animations ───────────────────── */
@keyframes ckUp { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }
@keyframes ckSpin { to{transform:rotate(360deg)} }

/* ── Responsive ───────────────────── */
@media (max-width:900px) { .ck-method-grid{grid-template-columns:repeat(2,1fr);} .ck-zones{grid-template-columns:repeat(2,1fr);} }
@media (max-width:640px) { .ck-toolbar{flex-direction:column;align-items:stretch;} .ck-toolbar-right{flex-direction:column;} #ck-search-input{width:100%;} .ck-method-grid{grid-template-columns:1fr;} }

::-webkit-scrollbar{height:6px;width:6px}
::-webkit-scrollbar-track{background:var(--ck-bg)}
::-webkit-scrollbar-thumb{background:var(--ck-border);border-radius:3px}
