/* Jelppa production design system */
/* ======================================================================
   Jelppa production UI — compact SaaS layer
   A calmer, flatter SaaS UI layered over the existing production logic.
   ====================================================================== */
body.jelppa-modern{
  --un-bg:var(--jelppa-bg);--un-surface:var(--jelppa-surface);--un-surface-2:var(--jelppa-surface-muted);--un-text:var(--jelppa-text);--un-muted:var(--jelppa-muted);
  --un-line:var(--jelppa-border);--un-brand:var(--jelppa-primary);--un-brand-dark:var(--jelppa-primary-hover);--un-nav:var(--jelppa-text-strong);--un-nav-muted:var(--jelppa-text-subtle);
  --un-radius:var(--jelppa-radius-md);--un-shadow:var(--jelppa-shadow-sm);
  background:var(--un-bg);color:var(--un-text);font-size:14px;line-height:1.5;
}
.jelppa-modern .top{height:60px;background:rgba(255,255,255,.96);color:var(--un-text);border-bottom:1px solid var(--un-line);padding:0 22px;gap:14px;box-shadow:none;backdrop-filter:blur(12px)}
.jelppa-modern .top.systemadmin-top{padding-left:18px}
.jelppa-modern .jelppa-top-brand img{height:48px;width:auto;display:block}
.jelppa-modern .brand{color:var(--un-text)}
.jelppa-modern .top nav a,.jelppa-modern .user a,.jelppa-modern .logout-link{color:var(--jelppa-text-tertiary)}
.jelppa-modern .user{gap:12px;color:var(--jelppa-text-tertiary)}
.jelppa-modern .user-identifier{font-weight:650;color:var(--jelppa-text-secondary)}
.jelppa-modern .org-pill{background:transparent;border:0;color:var(--jelppa-text-tertiary);padding:0;border-radius:0;font-size:12px;box-shadow:none}
.jelppa-modern .system-menu-toggle{color:var(--jelppa-text-secondary);background:#fff;border:1px solid var(--un-line);border-radius:var(--jelppa-radius-sm)}

.jelppa-modern .system-shell{grid-template-columns:var(--jelppa-sidebar-width) minmax(0,1fr);min-height:calc(100vh - 60px)}
.jelppa-modern .system-sidebar{top:60px;height:calc(100vh - 60px);background:#fff;border-right:1px solid var(--un-line);box-shadow:none;padding:0;display:flex;flex-direction:column}
.jelppa-modern .system-sidebar-org{min-height:76px;padding:15px 18px;border-bottom:1px solid var(--un-line);gap:11px;background:#fff}
.jelppa-modern .system-sidebar-org strong{font-size:14px;color:var(--jelppa-text-strong);letter-spacing:-.01em}
.jelppa-modern .system-sidebar-org small{color:var(--jelppa-text-subtle);font-size:11px;margin-top:1px}
.jelppa-modern .system-sidebar-favicon{width:34px;height:34px;border-radius:9px}
.jelppa-modern .system-sidebar-tenant-logo{width:34px;height:34px;border-radius:9px;background:#f7f8fa;border:1px solid #eaecf0}
.jelppa-modern .system-side-nav{padding:12px 10px 18px;gap:2px}
.jelppa-modern .system-nav-section{padding:17px 10px 6px;border:0;color:var(--jelppa-text-subtle);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.jelppa-modern .system-nav-item{min-height:39px;border:0!important;border-radius:var(--jelppa-radius-sm);padding:8px 10px;color:var(--jelppa-text-tertiary);font-size:13px;font-weight:620;gap:10px}
.jelppa-modern .system-nav-item:hover{background:var(--jelppa-surface-muted);color:#182230;text-decoration:none}
.jelppa-modern .system-nav-item.active{background:color-mix(in srgb,var(--un-brand) 10%,#fff);color:var(--jelppa-text-secondary);font-weight:750;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--un-brand) 30%,#fff)}
.jelppa-modern .system-nav-icon{width:20px;color:var(--jelppa-text-subtle);font-size:14px;text-align:center}
.jelppa-modern .system-nav-item.active .system-nav-icon{color:var(--un-brand)}
.jelppa-modern .system-nav-group{border:0}
.jelppa-modern .system-nav-submenu{background:transparent;padding:3px 6px 6px 38px}
.jelppa-modern .system-nav-subitem{min-height:33px;padding:6px 9px;font-size:12px;border-radius:7px;color:var(--jelppa-muted)}
.jelppa-modern .system-nav-subitem:hover{background:var(--jelppa-surface-muted);color:var(--jelppa-text-secondary)}
.jelppa-modern .system-nav-subitem.active{background:color-mix(in srgb,var(--un-brand) 8%,#fff);color:var(--jelppa-text-secondary)}
.jelppa-modern .system-sidebar-footer{margin-top:auto;padding:10px;border-top:1px solid var(--un-line);background:#fff}

.jelppa-modern .system-main{background:var(--un-bg)}
.jelppa-modern .system-content,.jelppa-modern .container{max-width:var(--jelppa-content-max);padding:30px 34px 64px}
.jelppa-modern .system-content{margin:0 auto;width:100%}
.jelppa-modern .page-head{margin-bottom:20px;align-items:center}
.jelppa-modern .page-head h1{font-size:27px;line-height:1.2;letter-spacing:-.025em;margin:2px 0;color:var(--jelppa-text-strong);font-weight:720}
.jelppa-modern .page-head p{font-size:13px;color:var(--jelppa-muted)}
.jelppa-modern .eyebrow{font-size:10px;letter-spacing:.09em;color:var(--jelppa-text-subtle);font-weight:800}

.jelppa-modern .card{border:1px solid var(--un-line);border-radius:var(--un-radius);padding:18px;background:#fff;box-shadow:var(--un-shadow)}
.jelppa-modern .card h2,.jelppa-modern .card h3{letter-spacing:-.015em;color:var(--jelppa-text-strong)}
.jelppa-modern .action{box-shadow:none;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}
.jelppa-modern .action:hover{transform:translateY(-1px);border-color:#c7d7fe;box-shadow:0 8px 24px rgba(16,24,40,.06)}
.jelppa-modern .grid{gap:14px}
.jelppa-modern .grid.four .metric{min-height:108px;justify-content:center}
.jelppa-modern .metric strong{font-size:30px;letter-spacing:-.035em;color:var(--jelppa-text-strong);font-weight:720}
.jelppa-modern .metric span{font-size:12px;color:var(--jelppa-muted)}
.jelppa-modern .dashboard-actions{margin-top:18px}
.jelppa-modern .dashboard-actions .card{min-height:128px;padding:20px}
.jelppa-modern .dashboard-actions h3{margin:0 0 8px;font-size:15px}
.jelppa-modern .dashboard-actions p{margin:0;color:var(--jelppa-muted);font-size:13px;line-height:1.55}

.jelppa-modern .btn{min-height:38px;border-radius:var(--jelppa-radius-sm);border-color:var(--jelppa-border-strong);background:#fff;color:var(--jelppa-text-secondary);padding:8px 13px;font-size:13px;font-weight:650;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.jelppa-modern .btn:hover{filter:none;background:var(--jelppa-surface-subtle);border-color:#b9c0ca}
.jelppa-modern .btn.primary{background:var(--un-brand);border-color:var(--un-brand);color:var(--primary-contrast,#fff)}
.jelppa-modern .btn.primary:hover{background:var(--un-brand-dark);border-color:var(--un-brand-dark)}
.jelppa-modern .btn.big{min-height:42px;padding:9px 15px;font-size:14px}
.jelppa-modern .btn.danger{background:#fff;color:#b42318;border-color:#fecdca}
.jelppa-modern .btn.danger:hover{background:#fef3f2}

.jelppa-modern .field{gap:6px}
.jelppa-modern .field>span{font-size:12px;color:var(--jelppa-text-secondary);font-weight:650}
.jelppa-modern .field input,.jelppa-modern .field textarea,.jelppa-modern .field select,.jelppa-modern .chat-input textarea{border:1px solid var(--jelppa-border-strong);border-radius:var(--jelppa-radius-sm);padding:9px 11px;min-height:40px;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.jelppa-modern .field input:focus,.jelppa-modern .field textarea:focus,.jelppa-modern .field select:focus,.jelppa-modern .chat-input textarea:focus{border-color:var(--un-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--un-brand) 18%,transparent)}
.jelppa-modern .form-card{max-width:980px}
.jelppa-modern .form-actions{padding-top:16px;margin-top:6px;border-top:1px solid var(--un-line)}

.jelppa-modern .table-wrap{border:1px solid var(--un-line);border-radius:var(--jelppa-radius-md);box-shadow:none;background:#fff}
.jelppa-modern table{font-size:13px}
.jelppa-modern th{padding:10px 12px;background:var(--jelppa-surface-subtle);border-bottom:1px solid var(--un-line);color:var(--jelppa-muted);font-size:10px;letter-spacing:.055em}
.jelppa-modern td{padding:11px 12px;border-bottom:1px solid #f0f1f3;color:var(--jelppa-text-secondary)}
.jelppa-modern tr:last-child td{border-bottom:0}
.jelppa-modern tbody tr:hover{background:#fcfcfd}
.jelppa-modern .badge{border-radius:var(--jelppa-radius-pill);padding:3px 7px;margin-left:3px;font-size:10px;font-weight:750;background:var(--jelppa-surface-muted);color:var(--jelppa-text-tertiary)}
.jelppa-modern .badge.ai,.jelppa-modern .status-in_progress{background:#eff4ff;color:#175cd3}
.jelppa-modern .status-resolved,.jelppa-modern .status-closed{background:#ecfdf3;color:#027a48}
.jelppa-modern .badge.warn,.jelppa-modern .status-waiting{background:#fffaeb;color:#b54708}

.jelppa-modern .alert{border-radius:9px;padding:11px 13px;font-size:13px;border-width:1px}
.jelppa-modern .alert.success{background:#ecfdf3;border-color:#abefc6;color:#067647}
.jelppa-modern .alert.error{background:#fef3f2;border-color:#fecdca;color:#b42318}
.jelppa-modern .hint{background:#f8f9fc;border-color:var(--jelppa-border);color:var(--jelppa-text-tertiary);border-radius:var(--jelppa-radius-sm);font-size:13px}

.jelppa-modern .ticket-grid{grid-template-columns:minmax(0,1fr) 300px;gap:18px}
.jelppa-modern .ticket-message{border-radius:var(--jelppa-radius-md);padding:14px 16px;box-shadow:none}
.jelppa-modern .ticket-message.agent{border-left:3px solid var(--un-brand)}
.jelppa-modern .ticket-message.internal{background:#fffaeb;border-color:#fedf89}
.jelppa-modern .message-head{font-size:11px}
.jelppa-modern .ticket-handler-card{border-radius:var(--jelppa-radius-md);box-shadow:none}
.jelppa-modern .bubble{border-radius:12px;padding:13px 15px;background:#f8f9fc}
.jelppa-modern .bubble.user{background:#eff4ff;border-color:#d1e0ff}
.jelppa-modern .bubble.assistant{background:#ecfdf3;border-color:#abefc6}

.jelppa-modern .login-card{border-radius:16px;padding:30px;border:1px solid var(--un-line);box-shadow:0 16px 48px rgba(16,24,40,.08);margin-top:72px}
.jelppa-modern .login-brand-logo{width:min(100%,260px)}
.jelppa-modern .logo-dot{border-radius:var(--jelppa-radius-md);background:var(--un-brand);color:var(--primary-contrast,#fff)}
.jelppa-modern.platform-auth-mode{background:#f7f8fa}

.jelppa-modern .queue-tabs{border-bottom:1px solid var(--un-line);gap:20px}
.jelppa-modern .queue-tabs a{padding:9px 1px;color:var(--jelppa-muted);border-bottom:2px solid transparent;border-radius:0;font-size:13px;font-weight:650}
.jelppa-modern .queue-tabs a.active{color:var(--jelppa-text-secondary);border-bottom-color:var(--un-brand);background:transparent}

@media(max-width:1000px){
  .jelppa-modern .system-shell{grid-template-columns:220px minmax(0,1fr)}
  .jelppa-modern .system-content,.jelppa-modern .container{padding:26px 24px 54px}
  .jelppa-modern .grid.four{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .jelppa-modern .top{height:56px;padding:0 12px}.jelppa-modern .system-sidebar{top:56px;height:calc(100vh - 56px)}
  .jelppa-modern .system-content,.jelppa-modern .container{padding:20px 14px 46px}
  .jelppa-modern .page-head h1{font-size:24px}.jelppa-modern .grid.four{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){.jelppa-modern .grid.four{grid-template-columns:1fr}}
.jelppa-modern .login-card{position:relative}

/* Jelppa UN 0.37-un2: clearer counters and operational status colours */
.jelppa-modern .queue-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;border-bottom:0}
.jelppa-modern .queue-tabs a.btn{min-height:38px;padding:8px 12px;border:1px solid var(--jelppa-border-strong);border-radius:var(--jelppa-radius-sm);background:#fff;color:var(--jelppa-text-secondary);font-size:13px;font-weight:650;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.jelppa-modern .queue-tabs a.btn:hover{background:var(--jelppa-surface-subtle);border-color:#b9c0ca;text-decoration:none}
.jelppa-modern .queue-tabs a.btn.primary{background:var(--un-brand);border-color:var(--un-brand);color:var(--primary-contrast,#fff)}
.jelppa-modern .queue-tabs a.btn.primary:hover{background:var(--un-brand-dark);border-color:var(--un-brand-dark)}
.jelppa-modern .queue-count{min-width:24px;height:22px;padding:0 6px;border-radius:var(--jelppa-radius-pill);background:var(--jelppa-neutral-bg);color:var(--jelppa-text-secondary);font-size:11px;font-weight:900}
.jelppa-modern .queue-tabs .btn.primary .queue-count{background:color-mix(in srgb,var(--primary-contrast,#fff) 18%,transparent);color:var(--primary-contrast,#fff)}

/* Strong semantic state colours: text is always kept in addition to colour. */
.jelppa-modern .badge.ok,.jelppa-modern .status-positive{background:var(--jelppa-success)!important;color:#fff!important;border:1px solid var(--jelppa-success)!important}
.jelppa-modern .badge.bad,.jelppa-modern .status-negative{background:var(--jelppa-danger)!important;color:#fff!important;border:1px solid var(--jelppa-danger)!important}
.jelppa-modern .badge.warn{background:var(--jelppa-warning)!important;color:var(--jelppa-warning-text)!important;border:1px solid #e4a82e!important}
.jelppa-modern .platform-status.active{background:var(--jelppa-success);color:#fff;border:1px solid var(--jelppa-success)}
.jelppa-modern .platform-status.inactive{background:var(--jelppa-danger);color:#fff;border:1px solid var(--jelppa-danger)}
.jelppa-modern .status-resolved,.jelppa-modern .status-closed{background:var(--jelppa-success)!important;color:#fff!important}
.jelppa-modern .status-waiting{background:var(--jelppa-warning)!important;color:var(--jelppa-warning-text)!important}

@media(max-width:760px){.jelppa-modern .queue-tabs a.btn{flex:1 1 calc(50% - 8px)}}

/* Jelppa UN 0.38-un3 — production-candidate design tokens */
.jelppa-modern{
  --un-bg:var(--jelppa-bg);--un-surface:var(--jelppa-surface);--un-surface-subtle:var(--jelppa-surface-subtle);--un-line:var(--jelppa-border);
  --un-text:var(--jelppa-text-strong);--un-muted:var(--jelppa-muted);--un-brand:var(--jelppa-primary);--un-brand-dark:var(--jelppa-primary-hover);
  --un-success:var(--jelppa-success);--un-danger:var(--jelppa-danger);--un-warning:var(--jelppa-warning);
  --un-radius-sm:var(--jelppa-radius-sm);--un-radius:var(--jelppa-radius-md);--un-radius-lg:var(--jelppa-radius-lg);
  --un-space-1:var(--jelppa-space-1);--un-space-2:var(--jelppa-space-2);--un-space-3:var(--jelppa-space-3);--un-space-4:var(--jelppa-space-4);--un-space-5:var(--jelppa-space-5);--un-space-6:var(--jelppa-space-6);
}
.jelppa-modern .state-badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:var(--jelppa-radius-pill);font-size:10px;font-weight:850;letter-spacing:.02em;border:1px solid transparent;white-space:nowrap}
.jelppa-modern .state-positive{background:var(--un-success)!important;color:#fff!important;border-color:var(--un-success)!important}
.jelppa-modern .state-negative{background:var(--un-danger)!important;color:#fff!important;border-color:var(--un-danger)!important}
.jelppa-modern .state-warning{background:var(--un-warning)!important;color:var(--jelppa-warning-text)!important;border-color:#e4a82e!important}
.jelppa-modern .state-neutral{background:var(--jelppa-neutral-bg)!important;color:var(--jelppa-text-secondary)!important;border-color:var(--jelppa-border-strong)!important}
.jelppa-modern .empty-state{padding:38px 24px;text-align:center;color:var(--un-muted)}
.jelppa-modern .empty-state strong{display:block;color:var(--un-text);font-size:14px;margin-bottom:5px}
.jelppa-modern .empty-state p{margin:0;font-size:12px}
.jelppa-modern .ticket-grid>.card{box-shadow:none}
.jelppa-modern .meta.card{position:sticky;top:78px;align-self:start}
.jelppa-modern .page-head{border-bottom:1px solid #eef0f3;padding-bottom:14px}
.jelppa-modern .dashboard-actions .action{border-left:3px solid transparent}
.jelppa-modern .dashboard-actions .action:hover{border-left-color:var(--un-brand)}
.jelppa-modern .system-side-nav a.active{box-shadow:inset 3px 0 0 var(--un-brand)}
.jelppa-modern .platform-shell .system-sidebar{background:#f8fafc}
.jelppa-modern .platform-shell .system-side-nav a{color:var(--jelppa-text-secondary)}
.jelppa-modern .platform-shell .system-sidebar-org{background:#f8fafc}

/* New ticket: keep the workflow simple and visually prioritise the user's problem. */
.jelppa-modern .new-ticket-form{max-width:none;width:100%;padding:22px}
.jelppa-modern .new-ticket-form .preference-set{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:0;padding:0;margin:0 0 6px}
.jelppa-modern .new-ticket-form .preference-set legend{grid-column:1/-1;padding:0;margin:0 0 4px;font-size:12px;font-weight:750;color:var(--jelppa-text-secondary)}
.jelppa-modern .new-ticket-form .preference-option{border:1px solid var(--jelppa-border-strong);border-radius:var(--jelppa-radius-md);padding:12px;background:#fff;min-height:72px;cursor:pointer;transition:var(--jelppa-transition-fast)}
.jelppa-modern .new-ticket-form .preference-option:hover{border-color:var(--un-brand);background:color-mix(in srgb,var(--un-brand) 5%,#fff)}
.jelppa-modern .new-ticket-form .preference-option:has(input:checked){border-color:var(--un-brand);background:color-mix(in srgb,var(--un-brand) 9%,#fff);box-shadow:0 0 0 2px color-mix(in srgb,var(--un-brand) 20%,transparent)}
.jelppa-modern .new-ticket-form .voice-field{margin-top:8px}
.jelppa-modern .new-ticket-form .voice-field>span{font-size:14px;color:var(--jelppa-text-strong)}
.jelppa-modern .new-ticket-form textarea{min-height:180px;font-size:14px;line-height:1.55}
.jelppa-modern .new-ticket-form .hint{margin-top:2px;background:var(--jelppa-surface-subtle)}
.jelppa-modern .request-actions{display:flex;gap:10px;justify-content:flex-start}

/* Ticket detail: conversation first, metadata second. */
.jelppa-modern .ticket-grid{align-items:start}
.jelppa-modern .messages{gap:9px}
.jelppa-modern .ticket-message{background:#fcfcfd;border:1px solid var(--jelppa-border)}
.jelppa-modern .ticket-message.agent{margin-left:24px;background-color:#eaf4ff;border-color:#bfd8ff;border-left:4px solid #2f80ed}
.jelppa-modern .ticket-message.requester{margin-right:24px;background-color:#fff1e6;border-color:#ffc78f;border-left:4px solid #f97316}
.jelppa-modern .ticket-message.internal{background:#fffaeb;border-color:#fedf89;border-left:4px solid #f0b34a}
.jelppa-modern .ticket-message .message-head{padding-bottom:7px;border-bottom:1px solid var(--jelppa-surface-muted);margin-bottom:10px}
.jelppa-modern .ticket-customer-response,.jelppa-modern .ticket-requester-response{margin-top:16px}
.jelppa-modern .ticket-customer-response{background-color:#eaf4ff;border-color:#bfd8ff}
.jelppa-modern .ticket-requester-response{background-color:#fff1e6;border-color:#ffc78f}
.jelppa-modern .ticket-customer-info-request{background:#fffdf7;border-color:#fde68a}
.jelppa-modern .ticket-customer-response .message-head,.jelppa-modern .ticket-requester-response .message-head{margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(16,24,40,.08)}
.jelppa-modern .ticket-handler-card,.jelppa-modern .ticket-grid .meta{background:#fbfcfd;border:1px solid var(--jelppa-border)}

/* Audit tools */
.jelppa-modern .audit-toolbar .audit-export{margin-left:auto}

@media(max-width:760px){
  .jelppa-modern .new-ticket-form .preference-set{grid-template-columns:1fr}
  .jelppa-modern .request-actions{flex-direction:column}
  .jelppa-modern .request-actions .btn{width:100%}
  .jelppa-modern .ticket-message.agent,.jelppa-modern .ticket-message.requester{margin-left:0;margin-right:0}
}

/* Jelppa UN 0.38-un4: WCAG AA contrast corrections */
.jelppa-modern{
  --un-nav-muted:var(--jelppa-muted);
}
/* Small helper/navigation text must not use var(--jelppa-text-subtle) on white (contrast ~2.6:1). */
.jelppa-modern .system-sidebar-org small,
.jelppa-modern .system-nav-section,
.jelppa-modern .system-nav-icon,
.jelppa-modern .eyebrow{
  color:var(--jelppa-muted);
}
/* Hero uses a dark blue gradient: keep all small/metric text high-contrast. */
.jelppa-modern .hero .eyebrow,
.jelppa-modern .hero .metric strong,
.jelppa-modern .hero .metric span{
  color:#fff!important;
}
.jelppa-modern .hero p{
  color:#eef2ff;
}
/* The metric cards sit on top of the blue gradient; this keeps white text AA-compliant. */
.jelppa-modern .hero .metric{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
}

@media(max-width:760px){.jelppa-modern .jelppa-top-brand img{height:42px}}
/* Production check: keep Status and Details columns aligned across every section. */
.jelppa-modern .production-check-table{width:100%;table-layout:fixed}
.jelppa-modern .production-check-table .production-check-col-check{width:46%}
.jelppa-modern .production-check-table .production-check-col-status{width:18%}
.jelppa-modern .production-check-table .production-check-col-details{width:36%}
.jelppa-modern .production-check-table th,
.jelppa-modern .production-check-table td{vertical-align:middle}
.jelppa-modern .production-check-table td:nth-child(3){overflow-wrap:anywhere}
@media(max-width:760px){
  .jelppa-modern .production-check-table .production-check-col-check{width:42%}
  .jelppa-modern .production-check-table .production-check-col-status{width:24%}
  .jelppa-modern .production-check-table .production-check-col-details{width:34%}
}



/* GSM-1: compact phone layout for the organization UI. */
@media(max-width:600px){
  /* Keep the role selector inside the top bar instead of letting it form an overlay row. */
  .jelppa-modern .systemadmin-top{
    flex-wrap:nowrap;
    gap:10px;
    padding:0 12px;
  }
  .jelppa-modern .systemadmin-top .system-top-spacer{
    display:none;
  }
  .jelppa-modern .systemadmin-top .user{
    width:auto!important;
    max-width:none!important;
    margin-left:auto;
    flex:0 0 auto;
    flex-wrap:nowrap!important;
    justify-content:flex-end;
    gap:0;
  }
  .jelppa-modern .systemadmin-top .role-switch{
    order:0;
    margin:0;
  }
  .jelppa-modern .systemadmin-top .role-switch select{
    min-width:112px;
    max-width:128px;
    height:38px;
    padding:6px 28px 6px 10px;
    font-size:13px;
  }

  /* Requester dashboard hero: less vertical space and smaller typography. */
  .jelppa-modern .hero{
    grid-template-columns:1fr;
    gap:18px;
    padding:28px 24px;
    border-radius:20px;
    margin-bottom:18px;
  }
  .jelppa-modern .hero h1{
    font-size:31px;
    line-height:1.03;
    margin:.18em 0 .4em;
  }
  .jelppa-modern .hero p{
    font-size:15px;
    line-height:1.5;
    margin:0 0 16px;
  }
  .jelppa-modern .hero .btn.big{
    min-height:40px;
    padding:8px 13px;
    font-size:13px;
  }
  .jelppa-modern .hero-panel{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .jelppa-modern .hero .metric{
    min-width:0;
    padding:13px 14px;
    border-radius:12px;
  }
  .jelppa-modern .hero .metric strong{
    font-size:27px;
  }
  .jelppa-modern .hero .metric span{
    font-size:11px;
    line-height:1.3;
  }

  /* Home shortcuts: title only on phones. */
  .jelppa-modern .dashboard-actions{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    margin-top:0;
  }
  .jelppa-modern .dashboard-actions .card{
    min-height:0;
    padding:12px 8px;
    border-radius:var(--jelppa-radius-md);
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
  }
  .jelppa-modern .dashboard-actions h3{
    margin:0;
    font-size:12px;
    line-height:1.25;
  }
  .jelppa-modern .dashboard-actions p{
    display:none;
  }
}

/* GSM-2: compact new-ticket service choices and on-demand progression help. */
.jelppa-modern .request-progress-help{display:none}
.jelppa-modern .request-progress-modal .jelppa-modal-body>p+p{margin-top:12px}
@media(max-width:600px){
  .jelppa-modern .new-ticket-form .ai-service-selection{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .jelppa-modern .new-ticket-form .ai-service-selection legend{
    margin-bottom:5px;
  }
  .jelppa-modern .new-ticket-form .ai-service-selection .preference-option{
    min-height:48px;
    padding:9px 10px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
  }
  .jelppa-modern .new-ticket-form .ai-service-selection .preference-option>span{
    width:100%;
    min-height:44px;
    padding:7px 30px;
    align-items:center;
    justify-content:center;
    text-align:center;
  }
  .jelppa-modern .new-ticket-form .ai-service-selection .preference-option strong{
    display:block;
    width:100%;
    font-size:13px;
    line-height:1.2;
    text-align:center;
  }
  .jelppa-modern .new-ticket-form .ai-service-selection .preference-option small{
    display:none!important;
  }
  .jelppa-modern .new-ticket-form .ai-service-selection + .muted{
    display:none;
  }
  .jelppa-modern .request-progress-hint{
    display:none;
  }
  .jelppa-modern .request-progress-help{
    display:flex;
    width:100%;
    justify-content:center;
    margin-top:2px;
  }
  .jelppa-modern .request-progress-modal .jelppa-modal{
    width:min(100%,420px);
  }
}

/* GSM-CC mobile ticket detail: stack conversation and metadata instead of keeping the desktop 300px side column. */
@media(max-width:850px){
  .jelppa-modern .ticket-grid{
    grid-template-columns:minmax(0,1fr);
    width:100%;
    min-width:0;
  }
  .jelppa-modern .ticket-grid>section,
  .jelppa-modern .ticket-grid>aside,
  .jelppa-modern .ticket-grid>.card,
  .jelppa-modern .ticket-original-message,
  .jelppa-modern .ticket-grid form.card{
    width:100%;
    min-width:0;
    max-width:100%;
  }
  .jelppa-modern .ticket-grid .meta.card{
    position:static;
    top:auto;
  }
}

/* AI-ratkaisun vapaaehtoinen tarkennus: sama kenttätyyli kuin muissa Jelpan lomakkeissa. */
.jelppa-modern .ai-outcome-form .ai-clarification .chat-input-editor{width:100%;max-width:none}
.jelppa-modern .ai-outcome-form .ai-clarification textarea{
  display:block;
  width:100%;
  min-width:100%;
  max-width:100%;
  min-height:120px;
  resize:vertical;
  border:1px solid var(--jelppa-border-strong);
  border-radius:12px;
  background:#fff;
  padding:14px 16px;
  font:inherit;
  font-size:15px;
  line-height:1.55;
  color:var(--ink);
  box-shadow:0 1px 2px rgba(16,24,40,.03);
  outline:none;
}
.jelppa-modern .ai-outcome-form .ai-clarification textarea:focus{
  border-color:var(--un-brand);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--un-brand) 18%,transparent);
}
@media(max-width:700px){
  .jelppa-modern .ai-outcome-form .ai-clarification textarea{min-height:120px}
}


/* GSM-EE: tarkennuskentän oma moderni viimeistely. */
.jelppa-modern .ai-outcome-form .ai-clarification textarea.ai-clarification-textarea{
  min-height:150px!important;
  border-radius:var(--jelppa-radius-md);
  padding:12px 13px;
}
@media(max-width:700px){
  .jelppa-modern .ai-outcome-form .ai-clarification textarea.ai-clarification-textarea{min-height:140px!important}
}


/* Pending service request notice: make the CTA stand out until the user continues the request. */
.jelppa-modern .pending-service-request-notice .form-actions{margin-top:14px}
.jelppa-modern .pending-service-request-cta{animation:jelppaPendingRequestPulse 1.25s ease-in-out infinite;box-shadow:0 0 0 0 color-mix(in srgb,var(--un-brand) 38%,transparent)}
.jelppa-modern .pending-service-request-cta:hover,
.jelppa-modern .pending-service-request-cta:focus-visible{animation-play-state:paused}
@keyframes jelppaPendingRequestPulse{
  0%{transform:scale(1);box-shadow:0 0 0 0 color-mix(in srgb,var(--un-brand) 38%,transparent)}
  50%{transform:scale(1.035);box-shadow:0 0 0 10px color-mix(in srgb,var(--un-brand) 0%,transparent)}
  100%{transform:scale(1);box-shadow:0 0 0 0 color-mix(in srgb,var(--un-brand) 0%,transparent)}
}
@media (prefers-reduced-motion: reduce){
  .jelppa-modern .pending-service-request-cta{animation:none}
}

/* 1.0-FU: Uusi palvelupyyntö – viimeistelty, vaiheistettu tuotantonäkymä. */
.jelppa-modern .new-ticket-page{
  width:min(100%,1120px);
  margin:0 auto;
}
.jelppa-modern .new-ticket-page-head{
  border-bottom:0;
  padding-bottom:0;
  margin-bottom:18px;
}
.jelppa-modern .new-ticket-page-head h1{
  margin:4px 0 4px;
  font-size:32px;
  line-height:1.16;
  letter-spacing:-.025em;
}
.jelppa-modern .new-ticket-page-head p{
  max-width:760px;
  font-size:14px;
  color:var(--jelppa-muted);
}
.jelppa-modern .new-ticket-form{
  width:100%;
  max-width:none;
  gap:24px;
  padding:26px 28px 24px;
  border:1px solid var(--jelppa-border);
  border-radius:16px;
  box-shadow:0 12px 30px rgba(16,24,40,.055);
}
.jelppa-modern .new-ticket-step{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--jelppa-radius-pill);
  background:color-mix(in srgb,var(--un-brand) 11%,#fff);
  color:var(--un-brand);
  font-size:13px;
  font-weight:900;
}
.jelppa-modern .new-ticket-section-title{
  display:flex;
  align-items:center;
  gap:14px;
  color:var(--jelppa-text-strong);
  font-size:15px;
  font-weight:800;
  line-height:1.3;
}
.jelppa-modern .new-ticket-form .ai-service-selection{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  padding:0;
  margin:0;
  border:0;
}
.jelppa-modern .new-ticket-form .ai-service-selection legend{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  gap:14px;
  width:100%;
  padding:0;
  margin:0 0 2px;
  color:var(--jelppa-text-strong);
  font-size:15px;
  font-weight:800;
  line-height:1.3;
}
.jelppa-modern .new-ticket-form .ai-service-selection .preference-option{
  position:relative;
  display:block;
  min-width:0;
  min-height:0;
  padding:0;
  border:0;
  border-radius:13px;
  background:transparent;
}
.jelppa-modern .new-ticket-form .ai-service-selection .preference-option:hover{
  background:transparent;
  border-color:transparent;
  transform:none;
}
.jelppa-modern .new-ticket-form .ai-service-selection .preference-option>input{
  position:absolute;
  width:1px;
  height:1px;
  margin:0;
  opacity:0;
  pointer-events:none;
}
.jelppa-modern .new-ticket-form .ai-service-selection .service-choice-card{
  position:relative;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:14px;
  min-height:112px;
  height:100%;
  padding:16px 48px 16px 16px;
  border:1px solid #d8dee8;
  border-radius:13px;
  background:#fff;
  color:var(--jelppa-text-strong);
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.jelppa-modern .new-ticket-form .ai-service-selection .service-choice-card::after{
  content:"";
  position:absolute;
  top:16px;
  right:16px;
  width:15px;
  height:15px;
  border:1.5px solid var(--jelppa-text-subtle);
  border-radius:var(--jelppa-radius-pill);
  background:#fff;
}
.jelppa-modern .new-ticket-form .ai-service-selection .preference-option:hover .service-choice-card{
  border-color:color-mix(in srgb,var(--un-brand) 48%,#d8dee8);
  background:color-mix(in srgb,var(--un-brand) 2.5%,#fff);
  transform:translateY(-1px);
}
.jelppa-modern .new-ticket-form .ai-service-selection input:checked+.service-choice-card{
  border-color:var(--un-brand);
  background:color-mix(in srgb,var(--un-brand) 4%,#fff);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--un-brand) 12%,transparent),0 8px 18px rgba(16,24,40,.04);
}
.jelppa-modern .new-ticket-form .ai-service-selection input:checked+.service-choice-card::after{
  background:var(--un-brand);
  border:4px solid #fff;
  box-shadow:0 0 0 1.5px var(--un-brand);
}
.jelppa-modern .new-ticket-form .ai-service-selection input:focus-visible+.service-choice-card{
  outline:3px solid color-mix(in srgb,var(--un-brand) 25%,transparent);
  outline-offset:2px;
}
.jelppa-modern .service-choice-icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#eef4ff;
  color:#2672dd;
}
.jelppa-modern .service-choice-icon svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.jelppa-modern .service-choice-property .service-choice-icon{background:#eaf8f0;color:#28a36a}
.jelppa-modern .service-choice-hr .service-choice-icon{background:#f2edff;color:#7259d8}
.jelppa-modern .service-choice-facility .service-choice-icon{background:#fff0f4;color:#d64670}
.jelppa-modern .service-choice-generic .service-choice-icon{background:var(--jelppa-neutral-bg);color:var(--jelppa-muted)}
.jelppa-modern .service-choice-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.jelppa-modern .new-ticket-form .service-choice-copy strong{
  font-size:14px;
  line-height:1.3;
  color:var(--jelppa-text-strong);
}
.jelppa-modern .new-ticket-form .service-choice-copy small{
  color:var(--jelppa-muted);
  font-size:12px;
  line-height:1.45;
}
.jelppa-modern .new-ticket-form .service-choice-copy .service-privacy-note{
  margin-top:2px;
  color:#8a4b12;
  font-weight:750;
}
.jelppa-modern .new-ticket-service-note{
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  gap:12px;
  align-items:start;
  margin-top:-4px;
  padding:14px 16px;
  border:1px solid #cfe0f5;
  border-radius:11px;
  background:#f3f8ff;
  color:var(--jelppa-text-secondary);
}
.jelppa-modern .new-ticket-info-icon{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border-radius:var(--jelppa-radius-pill);
  background:#4285d4;
  color:#fff;
  font-weight:900;
  font-size:14px;
}
.jelppa-modern .new-ticket-service-note strong{
  display:block;
  font-size:12.5px;
  line-height:1.45;
}
.jelppa-modern .new-ticket-service-note small{
  display:block;
  margin-top:2px;
  color:var(--jelppa-muted);
  font-size:12px;
  line-height:1.45;
}
.jelppa-modern .new-ticket-problem-field{
  gap:10px;
  margin-top:2px;
}
.jelppa-modern .new-ticket-form .new-ticket-problem-field textarea{
  min-height:170px;
  padding:15px 16px;
  border-color:#cfd6e2;
  border-radius:11px;
  background:#fff;
  font-size:14px;
  line-height:1.55;
  resize:vertical;
}
.jelppa-modern .new-ticket-form .new-ticket-problem-field textarea::placeholder{color:var(--jelppa-text-subtle)}
.jelppa-modern .new-ticket-form .new-ticket-problem-field>small{
  padding-left:0;
  font-size:12px;
}
.jelppa-modern .voice-input-controls{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:-12px;
}
.jelppa-modern .voice-record-button{
  min-width:154px;
  min-height:40px;
  border-color:var(--jelppa-border-strong);
  background:#fff;
}
.jelppa-modern .new-ticket-inline-icon,
.jelppa-modern .new-ticket-button-icon{
  width:18px;
  height:18px;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.jelppa-modern .voice-status{
  padding-left:18px;
  border-left:1px solid var(--jelppa-border);
  font-size:12px;
}
.jelppa-modern .ticket-image-field{
  gap:12px;
  margin-top:0;
}
.jelppa-modern .ticket-image-field-head{
  align-items:flex-start;
}
.jelppa-modern .ticket-image-field-head>div{
  gap:7px;
}
.jelppa-modern .ticket-image-field-head>div>small{
  padding-left:48px;
  max-width:850px;
  color:var(--jelppa-muted);
  font-size:12px;
  line-height:1.45;
}
.jelppa-modern .ticket-image-field-head .badge{
  margin-top:3px;
  padding:5px 9px;
  background:var(--jelppa-neutral-bg);
  color:var(--jelppa-text-secondary);
}
.jelppa-modern .ticket-image-dropzone{
  min-height:190px;
  gap:7px;
  padding:24px;
  border:1.5px dashed #b9cbe1;
  border-radius:13px;
  background:#fbfdff;
  color:var(--jelppa-text-secondary);
}
.jelppa-modern .ticket-image-dropzone:hover,
.jelppa-modern .ticket-image-dropzone.is-dragover{
  border-color:var(--un-brand);
  background:color-mix(in srgb,var(--un-brand) 3%,#fff);
}
.jelppa-modern .ticket-image-upload-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  margin-bottom:2px;
  color:#8297b3;
}
.jelppa-modern .ticket-image-upload-icon svg{
  width:38px;
  height:38px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.jelppa-modern .ticket-image-dropzone>strong{
  font-size:13px;
  color:var(--jelppa-text-secondary);
}
.jelppa-modern .ticket-image-dropzone>small{
  max-width:680px;
  color:#7a8798;
  font-size:12px;
  line-height:1.45;
}
.jelppa-modern .ticket-image-select-faux{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:7px;
  padding:8px 13px;
  border:1px solid var(--jelppa-border-strong);
  border-radius:9px;
  background:#fff;
  color:var(--jelppa-text-secondary);
  font-size:12px!important;
  font-weight:800!important;
  box-shadow:0 1px 2px rgba(16,24,40,.04);
}
.jelppa-modern .ticket-image-select-faux svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.jelppa-modern .new-ticket-form .request-progress-hint{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:12px;
  align-items:start;
  margin-top:-2px;
  padding:14px 16px;
  border:1px solid color-mix(in srgb,var(--un-brand) 24%,#ecdcc7);
  border-radius:11px;
  background:color-mix(in srgb,var(--un-brand) 5%,#fffaf2);
  color:var(--jelppa-text-tertiary);
  font-size:12px;
  line-height:1.55;
}
.jelppa-modern .request-progress-icon{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  color:var(--un-brand);
}
.jelppa-modern .request-progress-icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.jelppa-modern .request-actions{
  display:flex;
  gap:12px;
  justify-content:flex-start;
  margin-top:-2px;
  padding-top:20px;
  border-top:1px solid #eaecf0;
}
.jelppa-modern .request-actions .btn{
  min-height:46px;
  padding:11px 18px;
  border-radius:9px;
}
.jelppa-modern .request-actions .btn.primary{
  min-width:190px;
  box-shadow:0 5px 14px color-mix(in srgb,var(--un-brand) 22%,transparent);
}
.jelppa-modern .request-actions .request-direct-button{
  min-width:250px;
  background:var(--jelppa-surface-muted);
  border-color:#eaecf0;
  color:var(--jelppa-text-secondary);
}
.jelppa-modern .request-actions .request-direct-button:hover{
  background:#e9edf2;
}

@media(max-width:820px){
  .jelppa-modern .new-ticket-page{width:100%}
  .jelppa-modern .new-ticket-form{padding:22px}
  .jelppa-modern .new-ticket-form .ai-service-selection{grid-template-columns:1fr}
}
@media(max-width:600px){
  .jelppa-modern .new-ticket-page-head h1{font-size:27px}
  .jelppa-modern .new-ticket-page-head p{font-size:13px}
  .jelppa-modern .new-ticket-form{gap:20px;padding:18px;border-radius:13px}
  .jelppa-modern .new-ticket-step{width:30px;height:30px;flex-basis:30px}
  .jelppa-modern .new-ticket-form .ai-service-selection{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .jelppa-modern .new-ticket-form .ai-service-selection legend{gap:10px;margin-bottom:3px}
  .jelppa-modern .new-ticket-form .ai-service-selection .preference-option{
    min-height:0;
    padding:0;
    display:block;
    text-align:left;
  }
  .jelppa-modern .new-ticket-form .ai-service-selection .service-choice-card{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:56px;
    padding:9px 34px 9px 10px;
    text-align:center;
  }
  .jelppa-modern .new-ticket-form .ai-service-selection .service-choice-card::after{top:50%;right:10px;transform:translateY(-50%)}
  .jelppa-modern .service-choice-icon{display:none}
  .jelppa-modern .new-ticket-form .service-choice-copy{align-items:center;width:100%}
  .jelppa-modern .new-ticket-form .service-choice-copy strong{font-size:12.5px;text-align:center}
  .jelppa-modern .new-ticket-form .service-choice-copy small{display:none!important}
  .jelppa-modern .new-ticket-service-note{grid-template-columns:28px minmax(0,1fr);padding:12px 13px}
  .jelppa-modern .new-ticket-info-icon{width:24px;height:24px}
  .jelppa-modern .new-ticket-section-title{gap:10px}
  .jelppa-modern .new-ticket-form .new-ticket-problem-field textarea{min-height:150px}
  .jelppa-modern .voice-input-controls{align-items:stretch;gap:9px;margin-top:-10px}
  .jelppa-modern .voice-status{padding:0;border-left:0}
  .jelppa-modern .ticket-image-field-head>div>small{padding-left:0}
  .jelppa-modern .ticket-image-dropzone{min-height:160px;padding:18px 14px}
  .jelppa-modern .request-progress-hint{display:none}
  .jelppa-modern .request-progress-help{display:flex;width:100%;justify-content:center}
  .jelppa-modern .request-actions{flex-direction:column}
  .jelppa-modern .request-actions .btn,.jelppa-modern .request-actions .btn.primary,.jelppa-modern .request-actions .request-direct-button{width:100%;min-width:0}
}

.jelppa-modern .ticket-original-message{background-color:#fff1e6;border-color:#ffc78f}

/* 1.0-GV: asiakkaan palvelupyyntöjen välilehdet ja yhden vuoden valinta. */
.jelppa-modern .requester-ticket-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}
.jelppa-modern .requester-ticket-toolbar .queue-tabs{margin-bottom:0;flex:1 1 auto}
.jelppa-modern .requester-year-filter{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.jelppa-modern .requester-year-filter label{font-size:12px;font-weight:750;color:var(--jelppa-text-tertiary)}
.jelppa-modern .requester-year-filter select{min-width:96px;height:38px;border:1px solid var(--jelppa-border-strong);border-radius:var(--jelppa-radius-sm);background:#fff;color:var(--jelppa-text-secondary);padding:0 30px 0 10px;font:inherit;font-weight:650}
.jelppa-modern .requester-open-year-note{margin:0 0 14px;font-size:12px}
@media(max-width:820px){.jelppa-modern .requester-ticket-toolbar{flex-direction:column;align-items:stretch}.jelppa-modern .requester-year-filter{justify-content:flex-end}.jelppa-modern .requester-year-filter select{min-width:110px}}

/* SystemAdmin dashboard: visually distinct high-privilege workspace. */
.jelppa-modern .systemadmin-hero{
  background:linear-gradient(135deg,#7f1d1d 0%,#dc2626 46%,#ff2d2d 100%);
  box-shadow:0 18px 46px rgba(220,38,38,.24);
}
.jelppa-modern .systemadmin-hero .metric{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.28);
}
.jelppa-modern .systemadmin-hero-action{
  background:#fff;
  border-color:#fff;
  color:#991b1b;
  box-shadow:0 8px 22px rgba(69,10,10,.20);
}
.jelppa-modern .systemadmin-hero-action:hover{
  background:#fff7f7;
  border-color:#fff7f7;
  color:#7f1d1d;
}

/* 1.0-BJ: SystemAdmin/Admin-etusivun pikalinkit mahtuvat siististi puhelimen 3-palstaiseen näkymään.
   1.0-UIE: Ei automaattista tavutusta kesken sanan; rivinvaihto tehdään välilyönnistä tai valmiista yhdysmerkistä. */
@media(max-width:600px){
  .jelppa-modern .dashboard-actions .card{
    min-width:0;
    min-height:88px;
    padding:10px 6px;
    overflow:hidden;
  }
  .jelppa-modern .dashboard-actions .dashboard-card-title{
    width:100%;
    min-width:0;
    flex-direction:column;
    justify-content:center;
    gap:6px;
    text-align:center;
  }
  .jelppa-modern .dashboard-actions .dashboard-card-icon{
    width:24px;
    height:24px;
    flex:0 0 24px;
  }
  .jelppa-modern .dashboard-actions .dashboard-card-icon svg{
    width:23px;
    height:23px;
  }
  .jelppa-modern .dashboard-actions .dashboard-card-title>span:last-child{
    display:block;
    width:100%;
    min-width:0;
    font-size:clamp(10px,2.8vw,12px);
    line-height:1.16;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:manual;
    text-wrap:balance;
    letter-spacing:-.01em;
  }
}

/* Jelppa sidebar rail: desktop sidebar can collapse to a ChatGPT-style icon bar. */
.system-sidebar-expand{display:flex;align-items:center;justify-content:center;flex:0 0 auto;margin:0;padding:0;border:0;background:transparent;border-radius:9px;color:inherit}
.system-sidebar-expand{cursor:pointer}
.system-sidebar-expand:hover{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,var(--jelppa-primary)) 12%,transparent)}
.system-sidebar-expand:focus-visible{outline:3px solid color-mix(in srgb,var(--primary,var(--jelppa-primary)) 35%,transparent);outline-offset:2px}

@media(min-width:761px){
  .jelppa-modern .system-shell{transition:grid-template-columns .2s ease}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-shell{grid-template-columns:var(--jelppa-sidebar-collapsed-width) minmax(0,1fr)}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-sidebar{width:var(--jelppa-sidebar-collapsed-width);overflow-x:hidden}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-sidebar-org{padding:12px 18px;justify-content:center;gap:0;position:relative}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-sidebar-org-text,
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-nav-label,
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-nav-section,
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-nav-caret,
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-nav-submenu{display:none!important}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-sidebar-expand{width:34px;height:34px}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-sidebar-favicon,
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-sidebar-tenant-logo,
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-sidebar-mark{width:34px;height:34px;flex-basis:34px;margin:0}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-side-nav{padding:10px 8px 16px;gap:4px}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-nav-item{
    width:50px;min-height:44px;height:44px;padding:0!important;margin:0 auto;justify-content:center;gap:0;border-radius:9px
  }
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-nav-icon{width:24px;display:grid;place-items:center;margin:0;font-size:16px}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-nav-icon svg{width:19px;height:19px}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-nav-group{width:100%}
  html[data-sidebar-collapsed="true"] .jelppa-modern .system-sidebar-footer{padding:8px;margin-top:auto}
  html[data-sidebar-collapsed="true"] .jelppa-modern .sidebar-theme-control{display:block!important;padding:0;border:0}
  html[data-sidebar-collapsed="true"] .jelppa-modern .sidebar-theme-label{display:none!important}
  html[data-sidebar-collapsed="true"] .jelppa-modern .theme-choice{width:50px;height:32px;grid-template-columns:1fr 1fr;gap:2px;padding:2px;margin:0 auto;border-radius:9px}
  html[data-sidebar-collapsed="true"] .jelppa-modern .theme-choice label{min-height:26px;height:26px;padding:0;gap:0;border-radius:6px;font-size:12px}
  html[data-sidebar-collapsed="true"] .jelppa-modern .theme-choice label span:last-child{display:none}
}

@media(max-width:760px){.system-sidebar-expand{pointer-events:none}}

/* 1.0-UIH: Yhtenäinen sivupohja ja otsikointi – kokeiluversio.
   Rajattu vain normaaliin .page-head-rakenteeseen, jotta hero-/lomakenäkymien oma ilme säilyy. */
.jelppa-modern .page-head{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  min-height:92px;
  margin:0 0 20px;
  padding:17px 19px 18px 21px;
  background:color-mix(in srgb,var(--card,#fff) 96%,var(--primary,var(--jelppa-primary)) 4%);
  border:1px solid var(--line,#e4e8f0);
  border-radius:var(--jelppa-radius-lg);
  box-shadow:0 2px 10px rgba(23,32,51,.035);
}
.jelppa-modern .page-head::before{
  content:"";
  position:absolute;
  top:17px;
  bottom:17px;
  left:0;
  width:3px;
  border-radius:0 3px 3px 0;
  background:var(--primary,var(--jelppa-primary));
}
.jelppa-modern .page-head>div:first-child{
  min-width:0;
  flex:1 1 auto;
}
.jelppa-modern .page-head .eyebrow{
  display:block;
  margin:0 0 4px;
  color:var(--muted,var(--jelppa-muted));
  font-size:10px;
  line-height:1.25;
  font-weight:800;
  letter-spacing:.105em;
  text-transform:uppercase;
}
.jelppa-modern .page-head h1{
  margin:0;
  color:var(--ink,#172033);
  font-size:clamp(24px,2.05vw,30px);
  line-height:1.16;
  font-weight:760;
  letter-spacing:-.025em;
  overflow-wrap:anywhere;
}
.jelppa-modern .page-head p{
  max-width:880px;
  margin:6px 0 0;
  color:var(--muted,var(--jelppa-muted));
  font-size:13px;
  line-height:1.48;
}
.jelppa-modern .page-head>.row-actions,
.jelppa-modern .page-head>a.btn,
.jelppa-modern .page-head>form{
  flex:0 0 auto;
}
.jelppa-modern .page-head>.row-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin:0;
}
.jelppa-modern .page-head .btn{
  min-height:38px;
}
@media(max-width:760px){
  .jelppa-modern .page-head{
    min-height:0;
    padding:14px 14px 15px 17px;
    gap:13px;
    align-items:stretch;
    flex-direction:column;
    border-radius:12px;
  }
  .jelppa-modern .page-head::before{top:14px;bottom:14px}
  .jelppa-modern .page-head h1{font-size:23px}
  .jelppa-modern .page-head p{font-size:12.5px}
  .jelppa-modern .page-head>.row-actions{justify-content:flex-start;flex-wrap:wrap}
}

/* 1.0-UIC: Kevyempi kortti-ilme – kokeiluversio.
   Rakenteita ei muuteta; vain pinta, reunus, varjo ja hover rauhoitetaan. */
.jelppa-modern .card{
  border-color:color-mix(in srgb,var(--line,var(--jelppa-border)) 88%,#fff 12%);
  border-radius:var(--jelppa-radius-md);
  padding:16px;
  background:var(--card,#fff);
  box-shadow:0 1px 2px rgba(16,24,40,.025);
}
.jelppa-modern .card h2,
.jelppa-modern .card h3{
  margin-top:0;
}
.jelppa-modern .action{
  box-shadow:none;
  transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease;
}
.jelppa-modern .action:hover{
  transform:none;
  background:color-mix(in srgb,var(--card,#fff) 96%,var(--primary,var(--jelppa-primary)) 4%);
  border-color:color-mix(in srgb,var(--line,var(--jelppa-border)) 74%,var(--primary,var(--jelppa-primary)) 26%);
  box-shadow:0 2px 8px rgba(16,24,40,.035);
}
.jelppa-modern .grid{gap:12px}
.jelppa-modern .grid.four .metric{min-height:100px}
.jelppa-modern .metric strong{font-size:28px}
.jelppa-modern .dashboard-actions{margin-top:16px}
.jelppa-modern .dashboard-actions .card{
  min-height:116px;
  padding:16px 17px;
}
.jelppa-modern .dashboard-actions h3{margin:0 0 6px}
.jelppa-modern .dashboard-actions .action{border-left-width:1px}
.jelppa-modern .dashboard-actions .action:hover{border-left-color:color-mix(in srgb,var(--primary,var(--jelppa-primary)) 40%,var(--line,var(--jelppa-border)) 60%)}

/* Tilasto- ja erikoiskortit samaan rauhalliseen pintaan. */
.jelppa-modern .service-donut-card{
  border-radius:var(--jelppa-radius-md);
  padding:16px;
  background:var(--card,#fff);
  box-shadow:none;
}
.jelppa-modern .stats-donut{
  box-shadow:inset 0 0 0 1px rgba(23,32,51,.05),0 2px 8px rgba(23,32,51,.035);
}
.jelppa-modern .stats-list-card,
.jelppa-modern .stats-overview-card,
.jelppa-modern .stats-detail-card{
  box-shadow:none;
}
.jelppa-modern .ticket-handler-card,
.jelppa-modern .ticket-grid .meta{
  border-radius:var(--jelppa-radius-md);
  box-shadow:none;
}

@media(max-width:760px){
  .jelppa-modern .card{padding:14px}
  .jelppa-modern .dashboard-actions .card{min-height:0;padding:14px}
  .jelppa-modern .service-donut-card{padding:14px}
}

/* 1.0-UID: Tiiviimpi sisältörytmi – kokeiluversio.
   Ei muuta näkymien rakennetta tai toiminnallisuutta; vain välejä, kenttäkorkeuksia ja rivitiheyttä. */
.jelppa-modern .container,
.jelppa-modern .system-content{
  padding-top:24px;
  padding-bottom:52px;
}
.jelppa-modern .page-head{margin-bottom:14px}
.jelppa-modern .stack{gap:12px}
.jelppa-modern .grid{gap:10px}
.jelppa-modern .row-actions{gap:7px}
.jelppa-modern .form-actions{margin-top:12px;gap:8px}
.jelppa-modern .field{gap:5px}
.jelppa-modern .field>span{font-size:13px}
.jelppa-modern .field input,
.jelppa-modern .field textarea,
.jelppa-modern .field select,
.jelppa-modern .chat-input textarea{
  padding:9px 11px;
  border-radius:var(--jelppa-radius-sm);
}
.jelppa-modern .btn{
  min-height:var(--jelppa-control-height);
  padding:8px 12px;
  border-radius:var(--jelppa-radius-sm);
}
.jelppa-modern .btn.big{
  min-height:var(--jelppa-control-height-lg);
  padding:9px 15px;
  font-size:15px;
}
.jelppa-modern .hint,
.jelppa-modern .alert{
  padding:10px 12px;
  border-radius:var(--jelppa-radius-sm);
}
.jelppa-modern .alert{margin-bottom:12px}
.jelppa-modern .table-wrap{border-radius:var(--jelppa-radius-md)}
.jelppa-modern th,
.jelppa-modern td{
  padding:10px 12px;
}
.jelppa-modern th{font-size:11px}
.jelppa-modern .ticket-sort-link{min-height:var(--jelppa-control-height)}
.jelppa-modern .queue-tabs{gap:6px;margin-bottom:10px}
.jelppa-modern .queue-tabs a,
.jelppa-modern .queue-tabs button{min-height:var(--jelppa-control-height)}
.jelppa-modern .requester-ticket-toolbar{gap:10px;margin-bottom:6px}
.jelppa-modern .requester-open-year-note{margin-bottom:10px}
.jelppa-modern .ticket-pagination{margin-top:10px;gap:10px}
.jelppa-modern .messages{gap:9px;margin:12px 0}
.jelppa-modern .bubble{padding:12px 14px;border-radius:12px}
.jelppa-modern .chat{gap:10px}
.jelppa-modern .chat-input{margin:10px 0;gap:8px}
.jelppa-modern .decision{margin-top:12px}
.jelppa-modern .decision-actions{gap:8px}
.jelppa-modern .meta{gap:8px}
.jelppa-modern .meta dt{font-size:11px}
.jelppa-modern .meta dd{margin-bottom:8px}
.jelppa-modern .dashboard-actions{margin-top:12px}
.jelppa-modern .dashboard-actions .card{min-height:104px;padding:14px 15px}
.jelppa-modern .dashboard-actions h3{margin-bottom:4px}
.jelppa-modern .metric{gap:2px}
.jelppa-modern .metric strong{font-size:26px}
.jelppa-modern .grid.four .metric{min-height:88px}
.jelppa-modern .service-donut-card{padding:14px;gap:10px}
.jelppa-modern .stats-handler-toolbar{padding-top:10px}
.jelppa-modern .stats-list-grid--summary .bar-row{gap:12px}

/* Hallinta- ja Platform-näkymät noudattavat samaa rytmiä. */
.jelppa-modern .platform-dashboard{gap:18px}
.jelppa-modern .platform-metrics{gap:10px}
.jelppa-modern .platform-metric{padding:15px 16px;min-height:108px}
.jelppa-modern .platform-metric strong{font-size:30px;margin-bottom:7px}
.jelppa-modern .platform-section-head{gap:12px}
.jelppa-modern .platform-org-card{padding:16px;min-height:180px}
.jelppa-modern .platform-org-main{gap:12px}
.jelppa-modern .platform-org-actions{margin-top:11px}
.jelppa-modern .platform-form-section{padding:17px}
.jelppa-modern .section-title{margin-bottom:14px}
.jelppa-modern .platform-toggle-grid{gap:8px}
.jelppa-modern .platform-toggle{padding:10px 12px}

@media(max-width:760px){
  .jelppa-modern .container,
  .jelppa-modern .system-content{padding-top:16px;padding-bottom:36px}
  .jelppa-modern .page-head{margin-bottom:12px}
  .jelppa-modern .stack{gap:10px}
  .jelppa-modern .field input,
  .jelppa-modern .field textarea,
  .jelppa-modern .field select,
  .jelppa-modern .chat-input textarea{padding:10px 11px}
  .jelppa-modern th,.jelppa-modern td{padding:10px 10px}
  .jelppa-modern .btn{min-height:var(--jelppa-control-height-touch)}
  .jelppa-modern .dashboard-actions .card{min-height:0}
}

/* 1.0-UIT: Taulukoiden yhtenäinen, selkeämpi esitystapa.
   Ei muuta dataa, hakua, suodatusta tai lajittelulogiikkaa. */
.jelppa-modern .table-wrap{
  position:relative;
  overflow:auto;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  border-color:var(--jelppa-border);
}
.jelppa-modern .table-wrap>table{
  border-spacing:0;
}
.jelppa-modern .table-wrap>table>thead>tr>th{
  height:39px;
  padding-top:8px;
  padding-bottom:8px;
  background:var(--jelppa-surface-subtle);
  border-bottom:1px solid var(--jelppa-border);
  color:var(--jelppa-muted);
  font-size:10.5px;
  font-weight:780;
  letter-spacing:.052em;
  line-height:1.2;
  vertical-align:middle;
}
.jelppa-modern .table-wrap>table>tbody>tr{
  background:transparent;
  transition:background-color .12s ease,box-shadow .12s ease;
}
.jelppa-modern .table-wrap>table>tbody>tr:hover,
.jelppa-modern .table-wrap>table>tbody>tr:focus-within{
  background:var(--jelppa-surface-hover);
}
.jelppa-modern .table-wrap>table>tbody>tr:focus-within{
  box-shadow:inset 3px 0 0 color-mix(in srgb,var(--primary,var(--jelppa-primary)) 72%,transparent);
}
.jelppa-modern .table-wrap>table>tbody>tr:last-child>td{
  border-bottom:0;
}
.jelppa-modern .table-wrap>table>tbody>tr>td{
  height:43px;
  border-bottom-color:var(--jelppa-border-soft);
  vertical-align:middle;
}
.jelppa-modern .table-wrap>table>thead>tr>th:first-child,
.jelppa-modern .table-wrap>table>tbody>tr>td:first-child{
  padding-left:14px;
}
.jelppa-modern .table-wrap>table>thead>tr>th:last-child,
.jelppa-modern .table-wrap>table>tbody>tr>td:last-child{
  padding-right:14px;
}
.jelppa-modern .table-wrap td>a:not(.btn){
  color:var(--jelppa-text-secondary);
  font-weight:620;
  text-decoration:none;
}
.jelppa-modern .table-wrap td>a:not(.btn):hover,
.jelppa-modern .table-wrap td>a:not(.btn):focus-visible{
  color:var(--primary,var(--jelppa-primary));
  text-decoration:none;
}
.jelppa-modern .table-wrap td code{
  font-size:11.5px;
  line-height:1.35;
}
.jelppa-modern .table-wrap .row-actions{
  justify-content:flex-end;
  flex-wrap:nowrap;
}
.jelppa-modern .table-wrap .btn.small{
  min-height:32px;
  padding:6px 9px;
}
.jelppa-modern .table-wrap .empty{
  height:auto;
  padding:32px 18px;
  background:transparent;
  color:var(--jelppa-muted);
  font-size:12.5px;
}

/* Palvelupyynnöt: tärkeimmät sarakkeet erottuvat ja numerot/päivämäärät pysyvät vakaina. */
.jelppa-modern .tickets-table td:first-child,
.jelppa-modern .tickets-table th:first-child,
.jelppa-modern .pending-ai-table td:nth-child(4),
.jelppa-modern .pending-ai-table td:nth-child(5){
  font-variant-numeric:tabular-nums;
}
.jelppa-modern .tickets-table td:first-child>a{
  font-weight:760;
  color:var(--primary,var(--jelppa-primary));
}
.jelppa-modern .tickets-table td:nth-child(2)>a{
  font-weight:660;
  color:#27364a;
}
.jelppa-modern .tickets-table.staff td:nth-child(6),
.jelppa-modern .tickets-table.requester td:nth-child(4){
  text-align:left;
}
.jelppa-modern .tickets-table.staff td:nth-child(7),
.jelppa-modern .tickets-table.requester td:nth-child(5){
  color:var(--jelppa-muted);
  font-size:12.5px;
  font-variant-numeric:tabular-nums;
}
.jelppa-modern .tickets-table th[aria-sort="ascending"],
.jelppa-modern .tickets-table th[aria-sort="descending"]{
  background:color-mix(in srgb,var(--primary,var(--jelppa-primary)) 6%,#f8fafc 94%);
}
.jelppa-modern .ticket-sort-link{
  width:100%;
  min-height:38px;
}
.jelppa-modern .ticket-sort-indicator{
  margin-left:auto;
}

/* Pitkissä ylläpitotaulukoissa toimintopainikkeet pysyvät siististi oikeassa reunassa. */
.jelppa-modern .tenant-table td:last-child,
.jelppa-modern .tenant-table th:last-child{
  text-align:right;
}

@media(max-width:760px){
  .jelppa-modern .table-wrap{
    margin-left:-2px;
    margin-right:-2px;
    border-radius:9px;
  }
  .jelppa-modern .table-wrap>table>thead>tr>th{
    height:38px;
    font-size:10px;
  }
  .jelppa-modern .table-wrap>table>tbody>tr>td{
    height:42px;
  }
  .jelppa-modern .table-wrap>table>thead>tr>th:first-child,
  .jelppa-modern .table-wrap>table>tbody>tr>td:first-child{padding-left:11px}
  .jelppa-modern .table-wrap>table>thead>tr>th:last-child,
  .jelppa-modern .table-wrap>table>tbody>tr>td:last-child{padding-right:11px}
}

/* 1.0-UIW: Tikettinäkymä työtilaksi – varovainen layout-versio.
   Ei muuta tiketin toimintoja tai oikeuksia, vain asettelua ja metatietojen esitystä. */
.jelppa-modern .ticket-workspace-heading{
  margin-bottom:10px;
}
.jelppa-modern .ticket-workspace-bar{
  display:grid;
  grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);
  align-items:center;
  gap:12px;
  padding:10px 12px;
  margin-bottom:12px;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--jelppa-radius-md);
}
.jelppa-modern .ticket-workspace-nav{
  display:flex;
  align-items:center;
  min-width:0;
}
.jelppa-modern .ticket-workspace-nav-next{
  justify-content:flex-end;
}
.jelppa-modern .ticket-workspace-nav .btn{
  min-width:104px;
}
.jelppa-modern .ticket-workspace-nav .btn.disabled{
  opacity:.42;
  cursor:not-allowed;
  pointer-events:none;
}
.jelppa-modern .ticket-workspace-identity{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-width:0;
  flex-wrap:wrap;
}
.jelppa-modern .ticket-workspace-identity>strong{
  font-size:14px;
  font-variant-numeric:tabular-nums;
}
.jelppa-modern .ticket-workspace-identity .badge{
  margin-left:0;
}
.jelppa-modern .ticket-workspace-grid{
  grid-template-columns:minmax(0,1fr) 310px;
  gap:14px;
  align-items:start;
}
.jelppa-modern .ticket-workspace-side{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:0;
}
.jelppa-modern .ticket-workspace-meta{
  padding:14px;
  box-shadow:none;
}
.jelppa-modern .ticket-workspace-meta-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding-bottom:10px;
  margin-bottom:2px;
  border-bottom:1px solid var(--line);
}
.jelppa-modern .ticket-workspace-meta-head h3{
  margin:0;
  font-size:15px;
}
.jelppa-modern .ticket-workspace-meta-head .badge{
  margin-left:0;
  flex:0 0 auto;
}
.jelppa-modern .ticket-workspace-meta dl{
  margin:0;
}
.jelppa-modern .ticket-workspace-meta dl>div{
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  gap:10px;
  padding:9px 0;
  border-bottom:1px solid var(--line);
}
.jelppa-modern .ticket-workspace-meta dl>div:last-child{
  border-bottom:0;
  padding-bottom:0;
}
.jelppa-modern .ticket-workspace-meta dt{
  color:var(--muted);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.jelppa-modern .ticket-workspace-meta dd{
  min-width:0;
  margin:0;
  font-size:13px;
  font-weight:650;
  overflow-wrap:anywhere;
}
.jelppa-modern .ticket-workspace-side .ticket-handler-card{
  position:sticky;
  top:84px;
}

@media(max-width:980px){
  .jelppa-modern .ticket-workspace-grid{
    grid-template-columns:minmax(0,1fr) 280px;
  }
}
@media(max-width:850px){
  .jelppa-modern .ticket-workspace-bar{
    grid-template-columns:1fr 1fr;
  }
  .jelppa-modern .ticket-workspace-identity{
    grid-column:1 / -1;
    grid-row:1;
  }
  .jelppa-modern .ticket-workspace-nav{
    grid-row:2;
  }
  .jelppa-modern .ticket-workspace-grid{
    grid-template-columns:1fr;
  }
  .jelppa-modern .ticket-workspace-side{
    order:2;
  }
  .jelppa-modern .ticket-workspace-side .ticket-handler-card{
    position:static;
  }
}
@media(max-width:560px){
  .jelppa-modern .ticket-workspace-bar{
    gap:8px;
    padding:9px;
  }
  .jelppa-modern .ticket-workspace-nav .btn{
    min-width:0;
    width:100%;
  }
  .jelppa-modern .ticket-workspace-meta dl>div{
    grid-template-columns:76px minmax(0,1fr);
  }
}

/* 1.0-UIW2: Työtilan kevyt versio – poistetaan toistuva metatietokortti. */
.jelppa-modern .ticket-workspace-heading{
  align-items:center;
}
.jelppa-modern .ticket-workspace-heading>.badge{
  flex:0 0 auto;
  margin-left:auto;
}
.jelppa-modern .ticket-workspace-bar{
  grid-template-columns:1fr 1fr;
  padding:8px 10px;
}
.jelppa-modern .ticket-workspace-side{
  gap:10px;
}
.jelppa-modern .ticket-workspace-side .ticket-handler-card{
  position:sticky;
  top:84px;
}
@media(max-width:760px){
  .jelppa-modern .ticket-workspace-heading>.badge{
    margin-left:0;
  }
}


/* Design-system 2.0 contract:
   New production UI rules should use --jelppa-* semantic tokens from design-system.css.
   --un-* remains only as a compatibility bridge for older selectors. */
