/*
Theme Name: Kreiva License Console
Theme URI: https://kreiva.h501lab.com/
Author: H501LAB / Grafica e Stampa Ciampino
Description: Tema frontend dedicato alla console licenze Kreiva. Richiede il plugin Kreiva License Server.
Version: 0.2.5
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
Text Domain: kreiva-license-console
*/
:root{
  --klc-bg:#f4f4f4;
  --klc-surface:#ffffff;
  --klc-surface-soft:#fafafa;
  --klc-text:#222222;
  --klc-text-soft:#4a4a4a;
  --klc-muted:#6a6a6a;
  --klc-line:#e5e5e5;
  --klc-brand:#c0fe6b;
  --klc-brand-strong:#b2f15d;
  --klc-brand-ink:#303030;
  --klc-dark:#656565;
  --klc-dark-2:#575757;
  --klc-sidebar-text:#f7f7f7;
  --klc-sidebar-muted:#d9d9d9;
  --klc-ok-bg:#e8fbd0;
  --klc-ok-text:#406110;
  --klc-warn-bg:#fff2c7;
  --klc-warn-text:#7a5a00;
  --klc-danger-bg:#fee5e3;
  --klc-danger-text:#a02e2e;
  --klc-shadow:0 14px 34px rgba(34,34,34,.08);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--klc-bg);color:var(--klc-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45}
a{color:inherit}
img{max-width:100%;height:auto;display:block}

.klc-app,.klc-shell{min-height:100vh;display:grid;grid-template-columns:290px 1fr}
.klc-sidebar{background:var(--klc-dark);color:var(--klc-sidebar-text);padding:28px 22px;position:sticky;top:0;height:100vh}
.klc-brand{display:flex;align-items:center;gap:14px;margin-bottom:30px}
.klc-logo{width:48px;height:48px;flex:0 0 48px;border-radius:14px;overflow:hidden;background:#7a7a7a;box-shadow:0 8px 18px rgba(0,0,0,.18)}
.klc-logo img{width:100%;height:100%;object-fit:cover}
.klc-brand-text strong,.klc-brand strong{display:block;font-size:18px;line-height:1.05;color:#fff;font-weight:800;letter-spacing:-.02em}
.klc-brand-text span,.klc-brand span{display:block;font-size:12px;color:var(--klc-sidebar-muted);margin-top:4px}
.klc-sidebar nav,.klc-nav{display:grid;gap:8px}
.klc-sidebar nav a,.klc-nav a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:14px;text-decoration:none;color:#f0f0f0;font-size:14px;font-weight:600;transition:.18s ease}
.klc-sidebar nav a.active,.klc-sidebar nav a:hover,.klc-nav a.is-active,.klc-nav a:hover{background:rgba(192,254,107,.16);color:#fff;box-shadow:inset 0 0 0 1px rgba(192,254,107,.18)}
.klc-sidebar-foot{position:absolute;left:22px;right:22px;bottom:22px;display:grid;gap:8px;font-size:12px;color:var(--klc-sidebar-muted)}
.klc-sidebar-foot a{text-decoration:none;color:inherit}
.klc-sidebar-foot a:hover{color:#fff}

.klc-main{padding:30px;max-width:1520px;width:100%;margin:0 auto}
.klc-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}
.klc-topbar h1,.klc-title h2{margin:0;font-size:29px;line-height:1.05;letter-spacing:-.03em;color:var(--klc-brand-ink)}
.klc-topbar p,.klc-title p{margin:7px 0 0;color:var(--klc-muted)}
.klc-user{font-size:13px;color:var(--klc-muted)}
.klc-user a,.klc-link{color:var(--klc-dark);text-decoration:none;font-weight:800}
.klc-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

.klc-btn,.button.klc-btn,.klc-login-card .button-primary{
  appearance:none;border:0;border-radius:12px;padding:11px 15px;font-size:13px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:8px;text-decoration:none;transition:.18s ease;
  background:var(--klc-brand);color:var(--klc-brand-ink);box-shadow:0 8px 18px rgba(192,254,107,.24)
}
.klc-btn:hover,.button.klc-btn:hover,.klc-login-card .button-primary:hover{filter:brightness(.98);transform:translateY(-1px)}
.klc-btn.secondary{background:#ececec;color:var(--klc-text);box-shadow:none}
.klc-btn.danger{background:var(--klc-danger-bg);color:var(--klc-danger-text);box-shadow:none}
.klc-btn.ghost{background:transparent;color:var(--klc-dark);box-shadow:none}

.klc-stats,.klc-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}
.klc-stat,.klc-card,.klc-panel,.klc-login-card,.klc-mini-card{
  background:var(--klc-surface);border:1px solid var(--klc-line);border-radius:22px;box-shadow:var(--klc-shadow)
}
.klc-stat,.klc-card{padding:20px}
.klc-stat strong,.klc-card strong{display:block;font-size:32px;letter-spacing:-.03em;color:var(--klc-brand-ink)}
.klc-stat span,.klc-card span{display:block;margin-top:6px;color:var(--klc-muted);font-size:13px}

.klc-panel{padding:20px;margin-bottom:18px}
.klc-panel h3{font-size:18px;line-height:1.15;margin:0 0 14px;color:var(--klc-brand-ink)}
.klc-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.klc-bundle-list{display:grid;gap:12px}
.klc-mini-card{padding:15px;border-radius:18px;background:var(--klc-surface-soft)}
.klc-mini-card strong{font-size:16px;color:var(--klc-brand-ink)}
.klc-mini-card span{color:var(--klc-text-soft);margin-top:3px}
.klc-mini-card small{color:var(--klc-muted);line-height:1.45}

.klc-table-wrap{overflow:auto}
.klc-table{width:100%;border-collapse:separate;border-spacing:0}
.klc-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--klc-muted);background:#f6f6f6;padding:12px;border-bottom:1px solid var(--klc-line)}
.klc-table td{padding:13px 12px;border-bottom:1px solid #ededed;vertical-align:middle;font-size:14px;color:var(--klc-text)}
.klc-table code{background:#f1f1f1;border:1px solid #e5e5e5;border-radius:8px;padding:4px 7px;color:#2f2f2f}

.klc-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;background:#ececec;color:var(--klc-text-soft)}
.status-active,.status-trial{background:var(--klc-ok-bg);color:var(--klc-ok-text)}
.status-pending{background:var(--klc-warn-bg);color:var(--klc-warn-text)}
.status-expired{background:#efefef;color:#585858}
.status-suspended{background:#fff0d9;color:#7d5600}
.status-revoked,.status-disabled{background:var(--klc-danger-bg);color:var(--klc-danger-text)}

.klc-field{margin-bottom:14px}
.klc-field label{display:block;font-size:13px;font-weight:800;margin-bottom:6px;color:var(--klc-brand-ink)}
.klc-field input,.klc-field select,.klc-field textarea{width:100%;border:1px solid var(--klc-line);border-radius:12px;padding:11px 12px;font:inherit;background:#fff;color:var(--klc-text)}
.klc-field input:focus,.klc-field select:focus,.klc-field textarea:focus{outline:none;border-color:#b7b7b7;box-shadow:0 0 0 3px rgba(192,254,107,.35)}
.klc-field textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}
.klc-help{color:var(--klc-muted);font-size:12px;margin-top:5px}

.klc-alert,.klc-notice{border-radius:14px;padding:12px 14px;margin-bottom:16px;font-weight:700}
.klc-alert.ok,.klc-notice.ok{background:var(--klc-ok-bg);color:var(--klc-ok-text)}
.klc-alert.bad,.klc-notice.err{background:var(--klc-danger-bg);color:var(--klc-danger-text)}
.klc-empty{padding:35px;text-align:center;color:var(--klc-muted);background:#f8f8f8;border-radius:16px}

.klc-login{min-height:100vh;display:grid;place-items:center;padding:30px;background:linear-gradient(180deg,#ededed 0%,#f6f6f6 100%)}
.klc-login-card{width:100%;max-width:440px;padding:28px}
.klc-login-card .klc-brand{margin-bottom:18px}
.klc-login-card h1{margin:0 0 8px;color:var(--klc-brand-ink)}
.klc-login-card p{color:var(--klc-muted)}
.klc-login-card input{width:100%;border:1px solid var(--klc-line);border-radius:12px;padding:11px 12px;background:#fff}
.klc-inline-form{display:inline-flex;margin:0 3px}
.klc-danger-link{color:var(--klc-danger-text)}

@media (max-width:980px){
  .klc-app,.klc-shell{grid-template-columns:1fr}
  .klc-sidebar{position:relative;height:auto}
  .klc-sidebar-foot{position:static;margin-top:24px}
  .klc-stats,.klc-cards,.klc-grid{grid-template-columns:1fr}
  .klc-main{padding:18px}
  .klc-topbar{flex-direction:column}
}


.klc-row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.klc-row-actions form{margin:0}
.klc-link-btn{appearance:none;border:0;background:transparent;padding:0;color:var(--klc-danger-text);font:inherit;font-weight:800;cursor:pointer;text-decoration:none}
.klc-link-btn:hover{text-decoration:underline}
.klc-client-card{background:var(--klc-surface);border:1px solid var(--klc-line);border-radius:22px;box-shadow:var(--klc-shadow);padding:18px;margin-bottom:16px}
.klc-client-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.klc-client-head h3{margin:0;font-size:18px;color:var(--klc-brand-ink)}
.klc-client-head p{margin:4px 0 0;color:var(--klc-muted);font-size:13px}
.klc-client-meta{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.klc-sidebar-copy{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14);line-height:1.45}


/* License type conditional fields */
.klc-conditional-field{display:none}
.klc-form-type-bundle .klc-field-bundle{display:block}
.klc-form-type-module .klc-field-module{display:block}
.klc-type-note{margin-top:6px;color:var(--klc-muted);font-size:12px}


/* AI console integration */
.klc-nav-separator{margin:18px 12px 8px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.42)}
.klc-embedded-module{margin-top:18px}.klc-embedded-module .kaam-wrap,.klc-embedded-module .kag-wrap{padding:0;background:transparent;color:inherit}.klc-embedded-module .kaam-head,.klc-embedded-module .kag-head{display:none}.klc-embedded-module .kaam-card,.klc-embedded-module .kag-card,.klc-embedded-module .kaam-section,.klc-embedded-module .kag-section{border-radius:18px}.klc-embedded-module code{white-space:normal;word-break:break-all}.klc-embedded-module table{font-size:13px}
