.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;border:1px solid transparent;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.button:focus-visible,.input:focus-visible,.select:focus-visible,.textarea:focus-visible,.toast button:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:2px}.button:disabled{cursor:not-allowed;opacity:.65}.button-primary{background:var(--primary);color:#fff}.button-primary:hover{background:var(--primary-hover)}.button-secondary{border-color:var(--border);background:var(--surface);color:var(--text-primary)}.button-secondary:hover{border-color:#cbd5e1;background:#f8fafc}.button-success{background:var(--support);color:#fff}.button-success:hover{background:var(--support-hover)}.button-warning{background:var(--warning);color:#fff}.button-warning:hover{background:var(--warning-hover)}.button-danger{background:var(--error);color:#fff}.button-danger:hover{background:var(--error-hover)}.button-ghost{background:transparent;color:var(--text-secondary)}.button-ghost:hover{background:#f1f5f9;color:var(--text-primary)}.button-spinner{width:16px;height:16px;border:2px solid;border-right:2px solid transparent;border-radius:999px;animation:spin .7s linear infinite}.badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:13px;font-weight:600}.badge-primary{background:var(--primary-light);color:var(--primary)}.badge-success{background:var(--support-light);color:var(--support)}.badge-warning{background:var(--warning-light);color:var(--warning)}.badge-error{background:var(--error-light);color:var(--error)}.badge-process{background:var(--process-light);color:var(--process)}.badge-neutral{background:#f1f5f9;color:var(--text-secondary)}.badge-sky{background:#e0f2fe;color:#0284c7}.badge-orange{background:#ffedd5;color:#ea580c}.card{padding:22px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.card-header{display:grid;grid-gap:6px;gap:6px;margin-bottom:18px}.card-title{margin:0;font-size:18px;font-weight:600}.card-description{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.card-content{display:grid;grid-gap:16px;gap:16px}.form-field{display:grid;grid-gap:7px;gap:7px}.form-label{font-weight:600}.form-label,.input,.select,.textarea{color:var(--text-primary);font-size:14px}.input,.select,.textarea{width:100%;border:1px solid var(--border);border-radius:8px;background:var(--surface);transition:border-color .16s ease,box-shadow .16s ease}.input,.select{min-height:42px;padding:0 12px}.textarea{min-height:112px;resize:vertical;padding:11px 12px;line-height:1.6}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.input:hover,.select:hover,.textarea:hover{border-color:#cbd5e1}.input-error{border-color:var(--error)}.form-message{color:var(--text-secondary);font-size:12px;line-height:1.5}.form-message-error{color:var(--error)}.table-container{width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.table{width:100%;min-width:640px;border-collapse:collapse;font-size:14px}.table-header{background:#f8fafc}.table-head{padding:13px 16px;color:var(--text-secondary);font-size:13px;font-weight:700;text-align:left}.table-cell,.table-head{border-bottom:1px solid var(--border)}.table-cell{padding:14px 16px;color:var(--text-primary);vertical-align:middle}.table-body .table-row:last-child .table-cell{border-bottom:0}.skeleton-group{display:grid;grid-gap:10px;gap:10px}.skeleton-line{display:block;width:100%;height:14px;border-radius:999px;background:linear-gradient(90deg,#e2e8f0,#f8fafc,#e2e8f0);background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite}.skeleton-line:nth-child(2n){width:86%}.skeleton-line:nth-child(3n){width:68%}.state-panel{display:grid;justify-items:center;grid-gap:10px;gap:10px;padding:32px 20px;border:1px solid var(--border);border-radius:14px;background:var(--surface);text-align:center}.state-panel h2{margin:4px 0 0;font-size:18px;font-weight:600}.state-panel p{max-width:440px;margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.state-panel-error{border-color:#fecaca}.state-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px}.state-icon-neutral{background:#f1f5f9;color:var(--text-secondary)}.state-icon-error{background:var(--error-light);color:var(--error)}.state-action{margin-top:8px}.pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.pagination-current,.pagination-summary{color:var(--text-secondary);font-size:14px}.pagination-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toast-viewport{position:fixed;right:18px;bottom:18px;z-index:50;display:grid;width:min(380px,calc(100vw - 36px));grid-gap:10px;gap:10px}.toast{display:grid;grid-template-columns:auto 1fr auto;grid-gap:10px;gap:10px;align-items:flex-start;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}.toast strong{display:block;margin-bottom:2px;font-size:14px}.toast p{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.5}.toast button{border:0;background:transparent;color:var(--text-muted);cursor:pointer}.toast-success{border-color:#bbf7d0;color:var(--support)}.toast-error{border-color:#fecaca;color:var(--error)}.toast-warning{border-color:#fde68a;color:var(--warning)}.toast-info{border-color:#bfdbfe;color:var(--primary)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(1turn)}}:root{--background:#f8fafc;--surface:#fff;--border:#e2e8f0;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-light:#dbeafe;--support:#16a34a;--support-hover:#15803d;--support-light:#dcfce7;--warning:#f59e0b;--warning-hover:#d97706;--warning-light:#fef3c7;--error:#dc2626;--error-hover:#b91c1c;--error-light:#fee2e2;--process:#4f46e5;--process-light:#e0e7ff;--shadow:0 10px 30px rgba(15,23,42,.07)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--background);color:var(--text-primary);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}a{color:var(--primary)}.app-shell{min-height:100vh;padding:24px}.intro-section{display:flex;align-items:flex-end;justify-content:space-between;max-width:1120px;margin:0 auto 24px;padding:32px 0 8px}.intro-section h1{margin:14px 0 10px;font-size:30px;font-weight:700;line-height:1.15}.intro-section p{max-width:680px;margin:0;color:var(--text-secondary);font-size:16px;line-height:1.7}.foundation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px;max-width:1120px;margin:0 auto}.foundation-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:18px;border-radius:12px;background:var(--primary-light);color:var(--primary)}.card h2{margin:0 0 8px;font-size:17px;font-weight:600}.card p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}@media (max-width:920px){.foundation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.app-shell{padding:18px}.intro-section{padding-top:18px}.intro-section h1{font-size:26px}.foundation-grid{grid-template-columns:1fr}}.login-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,440px);grid-gap:48px;gap:48px;align-items:center;min-height:100vh;padding:48px;background:linear-gradient(135deg,rgba(219,234,254,.72),hsla(0,0%,100%,0) 44%),var(--background)}.login-hero{display:grid;grid-gap:24px;gap:24px;max-width:620px}.login-brand{display:flex;align-items:center;gap:12px}.login-mark{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:14px;background:var(--primary);color:#fff;box-shadow:0 16px 34px rgba(37,99,235,.2)}.login-hero h1{max-width:560px;margin:0 0 12px;font-size:42px;font-weight:700;line-height:1.08}.login-hero p{max-width:520px;margin:0;color:var(--text-secondary);font-size:18px;line-height:1.7}.login-assurance{display:inline-flex;align-items:center;gap:10px;max-width:520px;color:var(--support);font-size:14px;font-weight:600}.login-panel{display:grid;grid-gap:24px;gap:24px;padding:26px;border:1px solid var(--border);border-radius:16px;background:hsla(0,0%,100%,.92);box-shadow:var(--shadow)}.login-panel-header{display:grid;grid-gap:6px;gap:6px}.login-panel-header h2{margin:0;font-size:24px;font-weight:700}.login-panel-header p{margin:0;color:var(--text-secondary);font-size:14px}.login-form{display:grid;grid-gap:16px;gap:16px}.login-submit{width:100%;min-height:44px}.dashboard-shell{display:grid;grid-gap:24px;gap:24px;max-width:1120px;margin:0 auto}.dashboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-top:24px}.dashboard-header h1{margin:12px 0 8px;font-size:30px;line-height:1.15}.dashboard-header p{max-width:680px;margin:0;color:var(--text-secondary);font-size:15px;line-height:1.7}.session-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.session-summary div{display:grid;grid-gap:6px;gap:6px;padding:16px;border:1px solid var(--border);border-radius:12px;background:#f8fafc}.session-summary span{color:var(--text-secondary);font-size:12px;font-weight:600}.session-summary strong{color:var(--text-primary);font-size:14px;font-weight:600;overflow-wrap:anywhere}.dashboard-placeholder{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #bfdbfe;border-radius:12px;background:var(--primary-light);color:var(--primary)}.dashboard-placeholder p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.dashboard-overview{display:grid;grid-gap:24px;gap:24px}.dashboard-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.dashboard-stat-card{min-height:132px}.dashboard-stat-card-content{display:flex;align-items:center;gap:14px;min-height:100%}.dashboard-stat-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:14px;flex:0 0 auto}.dashboard-breakdown-bar-open,.dashboard-stat-icon-open{background:var(--primary-light);color:var(--primary)}.dashboard-breakdown-bar-assigned,.dashboard-stat-icon-assigned{background:var(--process-light);color:var(--process)}.dashboard-stat-icon-progress{background:#e0f2fe;color:#0284c7}.dashboard-breakdown-bar-progress{background:#172554}.dashboard-breakdown-bar-pending,.dashboard-stat-icon-pending{background:var(--warning-light);color:var(--warning)}.dashboard-breakdown-bar-resolved,.dashboard-stat-icon-resolved{background:var(--support-light);color:var(--support)}.dashboard-stat-icon-critical{background:var(--error-light);color:var(--error)}.dashboard-breakdown-bar-category,.dashboard-breakdown-bar-neutral,.dashboard-stat-icon-neutral{background:#e2e8f0;color:#475569}.dashboard-stat-label{display:block;color:var(--text-secondary);font-size:13px;font-weight:600}.dashboard-stat-value{display:block;margin-top:8px;font-size:30px;font-weight:700;line-height:1}.dashboard-stat-skeleton{width:100%}.dashboard-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.dashboard-breakdown-list{display:grid;grid-gap:14px;gap:14px}.dashboard-breakdown-item{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center}.dashboard-breakdown-label{display:block;margin-bottom:8px;color:var(--text-primary);font-size:14px;font-weight:600}.dashboard-breakdown-bar{height:8px;border-radius:999px}.dashboard-scrollable-container{max-height:320px;overflow-y:auto;padding-right:8px}.dashboard-dept-item{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);margin-bottom:12px;display:flex;flex-direction:column;gap:12px;transition:background-color .2s ease,border-color .2s ease}.dashboard-dept-item:hover{background:#fbfdff;border-color:#cbd5e1}.dashboard-dept-header{display:flex;justify-content:space-between;align-items:center}.dashboard-dept-name{font-weight:600;font-size:15px;color:var(--text-primary)}.dashboard-dept-total{font-size:12px;font-weight:600;padding:4px 10px;background:var(--background);border-radius:999px;color:var(--text-secondary);border:1px solid var(--border)}.dashboard-dept-status-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;text-align:center}.dashboard-dept-status-col{display:flex;flex-direction:column;padding:8px 4px;border-radius:8px;font-size:11px;font-weight:500}.dashboard-dept-status-col .status-label{color:var(--text-secondary);margin-bottom:2px}.dashboard-dept-status-col.status-new{background:transparent;color:var(--text-primary);border:1px solid var(--text-primary)}.dashboard-dept-status-col.status-new .status-label{color:var(--text-primary);opacity:.8}.dashboard-dept-status-col.status-progress{background:var(--warning-light);color:var(--warning-hover)}.dashboard-dept-status-col.status-progress .status-label{color:var(--warning-hover);opacity:.8}.dashboard-dept-status-col.status-done{background:var(--support-light);color:var(--support)}.dashboard-dept-status-col.status-done .status-label{color:var(--support);opacity:.8}.dashboard-dept-status-num{font-size:14px;font-weight:700}.dashboard-activity-list{display:grid;grid-gap:14px;gap:14px}.dashboard-activity-item{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:12px;gap:12px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.dashboard-activity-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:var(--primary-light);color:var(--primary)}.dashboard-activity-copy{display:grid;grid-gap:6px;gap:6px}.dashboard-activity-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dashboard-activity-copy p,.dashboard-activity-copy span{margin:0}.dashboard-activity-copy p{color:var(--text-primary);font-size:14px;font-weight:600}.dashboard-activity-copy span{color:var(--text-secondary);font-size:13px;line-height:1.5}.dashboard-full-width{grid-column:1/-1}.service-category-page{display:grid;grid-gap:24px;gap:24px}.service-category-hero{display:grid;grid-gap:14px;gap:14px}.service-category-hero h2{margin:0 0 8px;font-size:28px;line-height:1.15}.service-category-hero p{max-width:760px;margin:0;color:var(--text-secondary);font-size:15px;line-height:1.7}.service-category-callout{display:inline-flex;align-items:center;gap:10px;max-width:720px;padding:14px 16px;border:1px solid #fde68a;border-radius:12px;background:#fffbeb;color:#b45309;font-size:14px;font-weight:600}.service-category-grid{grid-template-columns:minmax(0,1.6fr) minmax(340px,.9fr);align-items:start}.service-category-grid,.service-category-main,.service-category-side{display:grid;grid-gap:18px;gap:18px}.service-category-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.service-category-search{position:relative;flex:1 1 auto}.service-category-search svg{position:absolute;top:13px;left:12px;color:var(--text-muted)}.service-category-search-input{padding-left:38px}.service-category-status-filter{width:180px}.service-category-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.service-category-form{display:grid;grid-gap:16px;gap:16px}.service-category-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.service-category-form-actions{display:flex;justify-content:flex-end;gap:10px}.service-category-notes{display:grid;grid-gap:14px;gap:14px}.service-category-note{display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.service-category-note p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.user-management-page{display:grid;grid-gap:24px;gap:24px}.user-management-hero{display:grid;grid-gap:14px;gap:14px}.user-management-hero h2{margin:0 0 8px;font-size:28px;line-height:1.15}.user-management-hero p{max-width:760px;margin:0;color:var(--text-secondary);font-size:15px;line-height:1.7}.user-management-callout{display:inline-flex;align-items:center;gap:10px;max-width:760px;padding:14px 16px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:var(--primary);font-size:14px;font-weight:600}.user-management-grid{grid-template-columns:minmax(0,1.6fr) minmax(340px,.9fr);align-items:start}.user-management-grid,.user-management-main,.user-management-side{display:grid;grid-gap:18px;gap:18px}.user-management-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.user-management-search{position:relative;flex:1 1 auto}.user-management-search svg{position:absolute;top:13px;left:12px;color:var(--text-muted)}.user-management-search-input{padding-left:38px}.user-management-filters{display:flex;align-items:center;gap:10px}.user-management-filters>*{width:180px}.user-management-narrow{max-width:920px}.user-list-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.user-management-form{display:grid;grid-gap:16px;gap:16px}.user-management-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.user-management-form-actions{display:flex;justify-content:flex-end;gap:10px}.user-department-select{min-height:120px}.user-password-toggle{display:inline-flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:14px}.user-password-toggle input{width:16px;height:16px;accent-color:var(--primary)}.user-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.user-delete-action{color:var(--error);background:transparent}.user-delete-action:hover{color:var(--error-hover);background:transparent;text-decoration:underline}.user-role-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.user-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;margin:0}.user-detail-grid div{display:grid;grid-gap:6px;gap:6px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.user-detail-grid dt{color:var(--text-secondary);font-size:13px;font-weight:600}.user-detail-grid dd{margin:0;color:var(--text-primary);font-size:14px}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:rgba(15,23,42,.42)}.modal-card{width:min(100%,460px);display:grid;grid-gap:14px;gap:14px;padding:22px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-lg)}.modal-card h3{margin:0;font-size:18px}.modal-card p{margin:0;color:var(--text-secondary);line-height:1.6}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.user-assignment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.user-management-notes{display:grid;grid-gap:14px;gap:14px}.user-management-note{display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.user-management-note p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.user-category-checkboxes{display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.user-category-option{display:flex;align-items:center;gap:10px;color:var(--text-primary);font-size:14px}.user-category-option input{width:16px;height:16px;accent-color:var(--primary)}.ticket-list-page{display:grid;grid-gap:24px;gap:24px}.ticket-list-header-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px;align-items:stretch}.ticket-list-hero{display:grid;grid-gap:14px;gap:14px}.ticket-list-hero h2{margin:0 0 8px;font-size:28px;line-height:1.15}.ticket-list-hero p{max-width:760px;margin:0;color:var(--text-secondary);font-size:15px;line-height:1.7}.ticket-list-callout{max-width:780px;padding:14px 16px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:var(--primary)}.ticket-list-alert,.ticket-list-callout{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600}.ticket-list-alert{grid-column:span 3;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-secondary);line-height:1.5}.ticket-list-create-action{display:flex;align-items:center;justify-content:flex-end;min-width:0}.ticket-list-create-button{width:auto;white-space:nowrap}.ticket-list-alert-info{border-color:#bfdbfe;background:#eff6ff;color:var(--primary)}.ticket-list-alert-success{border-color:#bbf7d0;background:var(--support-light);color:var(--support)}.ticket-list-alert-warning{border-color:#fde68a;background:#fffbeb;color:#b45309}.ticket-list-alert-error{border-color:#fecaca;background:var(--error-light);color:var(--error)}.ticket-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px}.ticket-list-search{position:relative;flex:1 1 auto}.ticket-list-search svg{position:absolute;top:13px;left:12px;color:var(--text-muted)}.ticket-list-search-input{padding-left:38px}.ticket-list-toolbar-actions{display:flex;align-items:center;gap:10px}.ticket-list-filter-panel{display:grid;grid-gap:14px;gap:14px;margin-top:-2px}.ticket-list-filter-panel summary{display:inline-flex;align-items:center;gap:8px;width:-moz-fit-content;width:fit-content;min-height:38px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:#f8fafc;color:var(--text-secondary);font-size:14px;font-weight:700;cursor:pointer;list-style:none}.ticket-list-filter-panel summary::-webkit-details-marker{display:none}.ticket-list-filter-panel[open] summary{color:var(--primary);border-color:#bfdbfe;background:var(--primary-light)}.ticket-list-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.ticket-list-filter-grid .form-label{display:inline-flex;align-items:center;gap:6px}.ticket-list-ticket-number strong,.ticket-list-title-cell strong{display:block;font-size:14px;font-weight:600}.ticket-list-category-list{color:var(--text-secondary);font-size:14px;line-height:1.5}.ticket-list-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ticket-delete-text-button,.ticket-delete-text-button:hover{border-color:transparent;background:transparent;box-shadow:none}.ticket-delete-text-button{color:var(--error)}.ticket-delete-text-button:hover{color:var(--error-hover);text-decoration:underline}.ticket-delete-dialog-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px}.ticket-delete-dialog-backdrop{position:fixed;inset:0;border:0;background:rgba(15,23,42,.38);cursor:pointer}.ticket-delete-dialog-backdrop:disabled{cursor:not-allowed}.ticket-delete-dialog{position:relative;z-index:1;display:grid;grid-gap:18px;gap:18px;width:min(100%,440px);padding:22px;border:1px solid #fecaca;border-radius:14px;background:var(--surface);box-shadow:0 24px 70px rgba(15,23,42,.22)}.ticket-delete-dialog:focus{outline:none}.ticket-delete-dialog:focus-visible{outline:3px solid rgba(220,38,38,.22);outline-offset:3px}.ticket-delete-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ticket-delete-dialog-icon{width:44px;height:44px;border-radius:12px;background:var(--error-light);color:var(--error)}.ticket-delete-dialog-close,.ticket-delete-dialog-icon{display:inline-flex;align-items:center;justify-content:center}.ticket-delete-dialog-close{width:38px;height:38px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-secondary);cursor:pointer}.ticket-delete-dialog-close:hover{background:#f8fafc;color:var(--text-primary)}.ticket-delete-dialog-close:disabled{cursor:not-allowed;opacity:.65}.ticket-delete-dialog-copy{display:grid;grid-gap:8px;gap:8px}.ticket-delete-dialog-copy h3{margin:0;font-size:22px;line-height:1.2}.ticket-delete-dialog-copy strong{color:var(--text-primary);font-size:14px;overflow-wrap:anywhere}.ticket-delete-dialog-copy p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.ticket-delete-dialog-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.ticket-list-action-placeholder{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:13px;font-weight:600}.ticket-list-notes{color:var(--text-secondary);font-size:14px;line-height:1.7}.ticket-list-notes p{margin:0}.ticket-editor-page{display:grid;grid-gap:24px;gap:24px}.ticket-editor-hero{display:grid;grid-gap:14px;gap:14px}.ticket-editor-hero h2{margin:0 0 8px;font-size:28px;line-height:1.15}.ticket-editor-hero p{max-width:760px;margin:0;color:var(--text-secondary);font-size:15px;line-height:1.7}.ticket-editor-callout{display:inline-flex;align-items:center;gap:10px;max-width:780px;padding:14px 16px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:var(--primary);font-size:14px;font-weight:600}.ticket-editor-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);align-items:start}.ticket-editor-grid,.ticket-editor-main,.ticket-editor-side{display:grid;grid-gap:18px;gap:18px}.ticket-form{display:grid;grid-gap:16px;gap:16px}.ticket-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.ticket-form-actions{display:flex;justify-content:flex-end;gap:10px}.ticket-file-input{padding-top:9px;padding-bottom:9px}.ticket-category-checkboxes{display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.ticket-category-option{display:flex;align-items:center;gap:10px;color:var(--text-primary);font-size:14px}.ticket-category-option input{width:16px;height:16px;accent-color:var(--primary)}.ticket-editor-notes{display:grid;grid-gap:14px;gap:14px}.ticket-editor-note{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.ticket-editor-note p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.ticket-detail-callout{display:inline-flex;align-items:center;gap:10px;max-width:780px;padding:14px 16px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:var(--primary);font-size:14px;font-weight:600}.ticket-detail-toolbar{display:flex;justify-content:flex-end}.ticket-detail-inline-action{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid transparent;border-radius:8px;background:var(--primary);color:#fff;font-size:14px;font-weight:600;cursor:pointer}.ticket-detail-inline-action:hover{background:var(--primary-hover)}.ticket-detail-page{display:grid;grid-gap:24px;gap:24px}.ticket-detail-info-card{display:grid;grid-gap:22px;gap:22px}.ticket-detail-info-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.ticket-detail-heading{display:grid;grid-gap:6px;gap:6px;min-width:0}.ticket-detail-heading span{color:var(--text-secondary);font-size:12px;font-weight:700;text-transform:uppercase}.ticket-detail-heading h2{margin:0;font-size:26px;line-height:1.2;overflow-wrap:anywhere}.ticket-detail-heading strong{color:var(--text-secondary);font-size:14px}.ticket-detail-status-panel{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.ticket-detail-info-section{display:grid;grid-gap:12px;gap:12px}.ticket-detail-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.ticket-detail-section-header h3{margin:0;font-size:17px;line-height:1.3}.ticket-detail-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding-top:4px}.ticket-detail-department-list{display:grid;grid-gap:12px;gap:12px}.ticket-detail-department-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.ticket-detail-department-copy{display:grid;grid-gap:5px;gap:5px;min-width:0}.ticket-detail-department-actions,.ticket-detail-department-copy div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ticket-detail-department-copy strong{overflow-wrap:anywhere}.ticket-detail-department-copy span{color:var(--text-secondary);font-size:12px;line-height:1.5}.ticket-detail-done-note{width:220px;min-width:180px}.ticket-detail-log-list{display:grid;grid-gap:12px;gap:12px}.ticket-detail-log-row{display:grid;grid-template-columns:minmax(160px,.9fr) minmax(180px,.8fr) minmax(0,1.2fr);grid-gap:12px;gap:12px;align-items:start;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.ticket-detail-log-main,.ticket-detail-log-meta{display:grid;grid-gap:5px;gap:5px}.ticket-detail-log-main strong{overflow-wrap:anywhere}.ticket-detail-log-main span,.ticket-detail-log-meta span{color:var(--text-secondary);font-size:12px}.ticket-detail-log-statuses{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ticket-detail-log-meta p{margin:0;color:var(--text-primary);font-size:13px;line-height:1.6;white-space:pre-wrap}.ticket-detail-modal-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px}.ticket-detail-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(15,23,42,.38)}.ticket-detail-modal{position:relative;z-index:1;display:grid;grid-gap:16px;gap:16px;width:min(720px,100%);max-height:min(760px,calc(100vh - 40px));overflow-y:auto;padding:22px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 24px 70px rgba(15,23,42,.22)}.ticket-detail-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.ticket-detail-modal-header h3{margin:0;font-size:22px}.ticket-detail-modal-content,.ticket-detail-modal-copy{display:grid;grid-gap:16px;gap:16px}.ticket-detail-modal-copy div{display:grid;grid-gap:10px;gap:10px}.ticket-detail-modal-copy p{margin:0;color:var(--text-primary);font-size:14px;line-height:1.75;white-space:pre-wrap}.ticket-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ticket-detail-hero h2{margin:0 0 8px;font-size:28px;line-height:1.15}.ticket-detail-hero p{max-width:760px;margin:0;color:var(--text-secondary);font-size:15px;line-height:1.7}.ticket-detail-badges,.ticket-detail-pill-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ticket-detail-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);align-items:start}.ticket-detail-grid,.ticket-detail-main,.ticket-detail-side{display:grid;grid-gap:18px;gap:18px}.ticket-detail-summary{display:grid;grid-gap:16px;gap:16px}.ticket-detail-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.ticket-detail-summary-item{display:grid;grid-gap:6px;gap:6px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.ticket-detail-summary-item span{color:var(--text-secondary);font-size:12px;font-weight:600}.ticket-detail-summary-item strong{color:var(--text-primary);font-size:14px;font-weight:600;overflow-wrap:anywhere}.ticket-detail-copy-block{color:var(--text-primary);font-size:14px;line-height:1.75;white-space:pre-wrap}.ticket-detail-action-list,.ticket-detail-attachment-list,.ticket-detail-guide{display:grid;grid-gap:12px;gap:12px}.ticket-detail-attachment-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.ticket-detail-attachment-item{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.ticket-detail-attachment-item .button{grid-column:1/-1;width:100%}.ticket-detail-attachment-thumb{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-secondary)}.ticket-detail-attachment-thumb img{width:100%;height:100%;object-fit:cover}.ticket-detail-attachment-copy{display:grid;grid-gap:6px;gap:6px;min-width:0}.ticket-detail-attachment-title-row{display:flex;align-items:flex-start;gap:8px;justify-content:space-between}.ticket-detail-attachment-copy strong{font-size:14px;overflow-wrap:anywhere}.ticket-detail-attachment-copy span{color:var(--text-secondary);font-size:13px;line-height:1.5}.ticket-detail-action-link,.ticket-detail-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;border-radius:8px;background:var(--primary-light);color:var(--primary);font-size:14px;font-weight:600;text-decoration:none}.ticket-detail-link-muted{color:var(--text-muted);font-size:13px;font-weight:600}.ticket-attachment-preview-modal{width:min(920px,100%)}.ticket-attachment-preview-meta{display:block;margin-top:6px;color:var(--text-secondary);font-size:13px}.ticket-attachment-preview-frame{display:grid;place-items:center;min-height:220px;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:#0f172a}.ticket-attachment-preview-loading{color:#fff;font-size:14px;font-weight:600}.ticket-attachment-preview-image{display:block;max-width:100%;max-height:70vh;object-fit:contain}.ticket-attachment-preview-image-hidden{display:none}.ticket-attachment-preview-pdf{width:min(100%,860px);height:min(70vh,720px);border:0;background:#fff}.ticket-attachment-preview-file{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:center;padding:16px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.ticket-attachment-preview-file span,.ticket-attachment-preview-file strong{display:block}.ticket-attachment-preview-file span{margin-top:4px;color:var(--text-secondary);font-size:13px}.ticket-detail-timeline{display:grid;grid-gap:12px;gap:12px}.ticket-detail-timeline-item{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start}.ticket-detail-timeline-marker{width:12px;height:12px;margin-top:14px;border-radius:999px;background:var(--primary);box-shadow:0 0 0 6px rgba(37,99,235,.12)}.ticket-detail-timeline-marker-process{background:var(--process);box-shadow:0 0 0 6px rgba(79,70,229,.12)}.ticket-detail-timeline-card{display:grid;grid-gap:8px;gap:8px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.ticket-detail-timeline-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ticket-detail-timeline-header strong{display:block;font-size:14px}.ticket-detail-timeline-header span{display:block;margin-top:4px;color:var(--text-secondary);font-size:12px}.ticket-detail-timeline-card p{margin:0;color:var(--text-primary);font-size:14px;line-height:1.65;white-space:pre-wrap}.ticket-detail-timeline-note{color:var(--text-secondary);font-size:13px;line-height:1.6}.ticket-detail-guide-item{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.ticket-detail-guide-item p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.ticket-assign-overlay{position:fixed;inset:0;z-index:60;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,460px)}.ticket-assign-backdrop{background:rgba(15,23,42,.32)}.ticket-assign-drawer{display:grid;align-content:start;grid-gap:18px;gap:18px;padding:24px;background:var(--surface);box-shadow:-16px 0 40px rgba(15,23,42,.14);overflow-y:auto}.ticket-assign-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ticket-assign-header h3{margin:0 0 8px;font-size:22px}.ticket-assign-header p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.ticket-assign-close{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-secondary);cursor:pointer}.ticket-assign-form{display:grid;grid-gap:16px;gap:16px}.ticket-assign-actions{display:flex;justify-content:flex-end;gap:10px}.ticket-attachment-panel,.ticket-comment-panel{display:grid;grid-gap:16px;gap:16px}.ticket-note-attachments{display:grid;grid-gap:8px;gap:8px}.ticket-note-attachments .ticket-detail-attachment-list{grid-template-columns:minmax(0,1fr)}.ticket-note-attachments .ticket-detail-attachment-item{background:hsla(0,0%,100%,.72)}.ticket-attachment-upload,.ticket-comment-form{display:grid;grid-gap:16px;gap:16px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-muted)}.ticket-attachment-selected-list{display:grid;grid-gap:10px;gap:10px}.ticket-attachment-selected-item{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#fbfdff}.ticket-attachment-selected-item span,.ticket-attachment-selected-item strong{display:block;overflow-wrap:anywhere}.ticket-attachment-selected-item span{margin-top:4px;color:var(--text-secondary);font-size:12px}.ticket-attachment-selected-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.ticket-comment-form-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);grid-gap:14px;gap:14px}.ticket-attachment-actions,.ticket-comment-actions{display:flex;justify-content:flex-end;gap:10px}.ticket-status-current{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfdff}.audit-log-page{display:grid;grid-gap:24px;gap:24px}.audit-log-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.audit-log-hero h2{margin:0 0 8px;font-size:28px;line-height:1.15}.audit-log-hero p{max-width:760px;margin:0;color:var(--text-secondary);line-height:1.7}.audit-log-callout{display:inline-flex;align-items:center;gap:10px;max-width:360px;padding:12px 14px;border:1px solid var(--primary-light);border-radius:12px;background:var(--primary-light);color:var(--primary);font-size:13px;font-weight:600;line-height:1.5}.audit-log-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.audit-log-search{position:relative;flex:1 1;min-width:240px}.audit-log-search svg{position:absolute;top:50%;left:12px;color:var(--text-muted);transform:translateY(-50%)}.audit-log-search-input{padding-left:38px}.audit-log-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:18px}.audit-log-actor-cell{display:grid;grid-gap:4px;gap:4px}.audit-log-actor-cell strong{color:var(--text-primary);font-size:14px}.audit-log-actor-cell span{color:var(--text-secondary);font-size:12px}.audit-log-drawer-overlay{position:fixed;inset:0;z-index:70;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,560px)}.audit-log-drawer-backdrop{border:0;background:rgba(15,23,42,.32)}.audit-log-drawer{display:grid;align-content:start;grid-gap:18px;gap:18px;min-height:100vh;max-height:100vh;overflow-y:auto;padding:24px;border-left:1px solid var(--border);background:var(--surface);box-shadow:-18px 0 40px rgba(15,23,42,.12)}.audit-log-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.audit-log-drawer-header h3{margin:0 0 8px;font-size:22px}.audit-log-drawer-header p{margin:0;color:var(--text-secondary);font-size:14px}.audit-log-detail{display:grid;grid-gap:18px;gap:18px}.audit-log-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.audit-log-detail-grid div,.audit-log-detail-section,.audit-log-json-block{display:grid;grid-gap:8px;gap:8px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-muted)}.audit-log-detail-grid span{color:var(--text-secondary);font-size:12px;font-weight:600}.audit-log-detail-grid strong{color:var(--text-primary);font-size:14px;overflow-wrap:anywhere}.audit-log-detail-section p{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.6;overflow-wrap:anywhere}.audit-log-json-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.audit-log-json-block pre{max-height:280px;margin:0;overflow:auto;color:var(--text-primary);font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.audit-log-drawer-actions{display:flex;justify-content:flex-end}.ticket-status-current-label{color:var(--text-secondary);font-size:13px;font-weight:600}.workspace-layout{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh;background:radial-gradient(circle at top left,rgba(219,234,254,.8),rgba(248,250,252,0) 30%),var(--background);transition:grid-template-columns .18s ease}.workspace-layout-collapsed{grid-template-columns:72px minmax(0,1fr)}.workspace-sidebar{display:grid;grid-template-rows:auto 1fr;grid-gap:20px;gap:20px;padding:22px 18px;border-right:1px solid var(--border);background:hsla(0,0%,100%,.88);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:padding .18s ease,transform .18s ease}.workspace-sidebar-brand{display:flex;align-items:center;gap:12px;padding:6px 6px 12px}.workspace-sidebar-brand-copy{min-width:0}.workspace-sidebar-brand-copy strong{display:block;font-size:15px}.workspace-sidebar-brand-copy span{display:block;color:var(--text-secondary);font-size:12px}.workspace-sidebar-mark{width:40px;height:40px;border-radius:12px;background:var(--primary);color:#fff;box-shadow:0 12px 24px rgba(37,99,235,.22)}.workspace-sidebar-collapse-button,.workspace-sidebar-mark{display:inline-flex;align-items:center;justify-content:center}.workspace-sidebar-collapse-button{width:36px;height:36px;margin-left:auto;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-secondary);cursor:pointer}.workspace-sidebar-collapse-button:hover{background:#eff6ff;color:var(--primary)}.workspace-sidebar-backdrop{display:none}.workspace-sidebar-content{min-height:0;overflow-y:auto}.workspace-nav,.workspace-nav-group{display:grid;grid-gap:6px;gap:6px}.workspace-nav-item-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:6px;gap:6px;align-items:center}.workspace-nav-button,.workspace-nav-link{display:inline-flex;align-items:center;gap:10px;min-height:42px;width:100%;padding:0 14px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:600;text-decoration:none}.workspace-nav-button{cursor:pointer}.workspace-nav-button:hover,.workspace-nav-link:hover{background:#eff6ff;color:var(--text-primary)}.workspace-nav-link-active{border-color:#bfdbfe;background:var(--primary-light);color:var(--primary)}.workspace-nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-nav-active-badge{margin-left:auto}.workspace-nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text-muted);cursor:pointer}.workspace-nav-toggle:hover{background:#f1f5f9;color:var(--text-primary)}.workspace-nav-chevron{transition:transform .16s ease}.workspace-nav-chevron-open{transform:rotate(90deg)}.workspace-nav-children{display:grid;grid-gap:6px;gap:6px}.workspace-sidebar-collapsed{padding:22px 10px}.workspace-sidebar-collapsed .workspace-sidebar-brand{flex-direction:column;gap:8px;padding:6px 0 12px}.workspace-sidebar-collapsed .workspace-nav-active-badge,.workspace-sidebar-collapsed .workspace-nav-chevron,.workspace-sidebar-collapsed .workspace-nav-children,.workspace-sidebar-collapsed .workspace-nav-label,.workspace-sidebar-collapsed .workspace-nav-toggle,.workspace-sidebar-collapsed .workspace-sidebar-brand-copy{display:none}.workspace-sidebar-collapsed .workspace-sidebar-collapse-button{margin-left:0}.workspace-sidebar-collapsed .workspace-nav-item-row{grid-template-columns:1fr}.workspace-sidebar-collapsed .workspace-nav-button,.workspace-sidebar-collapsed .workspace-nav-link{justify-content:center;min-height:44px;padding:0!important}.workspace-main{display:grid;grid-template-rows:auto 1fr;min-width:0}.workspace-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 0}.workspace-topbar-heading{display:flex;align-items:flex-start;gap:12px;min-width:0}.workspace-topbar h1{margin:6px 0 0;font-size:30px;line-height:1.15}.workspace-eyebrow{color:var(--text-secondary);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.workspace-topbar-actions{display:flex;align-items:center;gap:12px}.workspace-mobile-menu-button{display:none;width:42px;min-width:42px;padding:0}.workspace-user-chip{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.workspace-user-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--primary-light);color:var(--primary)}.workspace-user-chip span,.workspace-user-chip strong{display:block}.workspace-user-chip span{color:var(--text-secondary);font-size:12px}.workspace-content{display:grid;align-content:start;grid-gap:18px;gap:18px;padding:24px}.forbidden-page,.workspace-loading-shell{min-height:100vh;padding:24px;display:grid;place-items:center}.forbidden-card,.workspace-loading-shell .card{width:min(100%,960px)}.forbidden-actions{margin-top:14px}.forbidden-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border-radius:8px;background:var(--primary);color:#fff;font-size:14px;font-weight:600;text-decoration:none}.forbidden-link:hover{background:var(--primary-hover)}@media (max-width:880px){.login-page{grid-template-columns:1fr;gap:28px;padding:28px}.login-hero h1{font-size:34px}.session-summary,.workspace-layout{grid-template-columns:1fr}.workspace-sidebar{position:fixed;inset:0 auto 0 0;z-index:50;width:min(320px,calc(100vw - 48px));border-right:1px solid var(--border);border-bottom:0;box-shadow:24px 0 60px rgba(15,23,42,.18);transform:translateX(-105%)}.workspace-sidebar-mobile-open{transform:translateX(0)}.workspace-sidebar-backdrop{position:fixed;inset:0;z-index:45;display:block;border:0;background:rgba(15,23,42,.38);cursor:pointer}.workspace-sidebar-collapse-button{display:none}.workspace-sidebar-collapsed{padding:22px 18px}.workspace-sidebar-collapsed .workspace-sidebar-brand{flex-direction:row;gap:12px;padding:6px 6px 12px}.workspace-sidebar-collapsed .workspace-nav-active-badge,.workspace-sidebar-collapsed .workspace-nav-chevron,.workspace-sidebar-collapsed .workspace-nav-label,.workspace-sidebar-collapsed .workspace-sidebar-brand-copy{display:block}.workspace-sidebar-collapsed .workspace-nav-toggle{display:inline-flex}.workspace-sidebar-collapsed .workspace-nav-children{display:grid}.workspace-sidebar-collapsed .workspace-nav-item-row{grid-template-columns:minmax(0,1fr) auto}.workspace-sidebar-collapsed .workspace-nav-button,.workspace-sidebar-collapsed .workspace-nav-link{justify-content:flex-start;padding:0 14px!important}.workspace-main{min-height:100vh}.workspace-topbar{display:grid;padding:18px 18px 0}.workspace-topbar-heading{align-items:flex-start}.workspace-mobile-menu-button{display:inline-flex}.workspace-topbar-actions{flex-wrap:wrap}.dashboard-panel-grid,.dashboard-stat-grid,.service-category-form-grid,.service-category-grid,.ticket-comment-form-grid,.ticket-detail-grid,.ticket-detail-summary-grid,.ticket-editor-grid,.ticket-form-grid,.ticket-list-filter-grid,.ticket-list-grid,.ticket-list-header-grid,.user-assignment-grid,.user-detail-grid,.user-management-form-grid,.user-management-grid{grid-template-columns:1fr}.audit-log-hero,.audit-log-toolbar,.service-category-toolbar,.ticket-detail-hero,.ticket-list-toolbar,.user-list-header,.user-management-filters,.user-management-toolbar{align-items:stretch;flex-direction:column}.audit-log-detail-grid,.audit-log-drawer-overlay,.audit-log-filter-grid,.audit-log-json-grid{grid-template-columns:1fr}.audit-log-drawer-backdrop{display:none}.ticket-assign-overlay{grid-template-columns:1fr}.ticket-assign-backdrop{display:none}.service-category-status-filter,.ticket-list-create-button,.ticket-list-toolbar-actions>*,.user-management-filters>*{width:100%}.ticket-list-alert{grid-column:auto}.ticket-list-create-action{justify-content:stretch}.modal-actions{flex-direction:column-reverse}.modal-actions .button{width:100%}}@media (max-width:640px){.login-page{padding:18px}.login-panel{padding:20px}.dashboard-header{display:grid}}.notification-center-container{position:relative;display:inline-block}.notification-trigger-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text-primary);cursor:pointer;transition:all .2s ease}.notification-trigger-btn:hover{background:#f8fafc;border-color:var(--primary);color:var(--primary)}.notification-badge-count{position:absolute;top:-4px;right:-4px;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:9999px;background:var(--error);color:#fff;font-size:11px;font-weight:700;line-height:1}.notification-dropdown{position:absolute;right:0;top:48px;z-index:100;width:360px;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);overflow:hidden;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.notification-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border);background:#f8fafc}.notification-dropdown-header h3{margin:0;font-size:15px;font-weight:700;color:var(--text-primary)}.notification-dropdown-body{max-height:380px;overflow-y:auto}.notification-empty,.notification-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;color:var(--text-secondary);font-size:14px;gap:8px}.notification-item,.notification-list{display:flex;flex-direction:column}.notification-item{padding:14px 16px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .2s ease}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:#f8fafc}.notification-item.unread{background:#f0f9ff}.notification-item.unread:hover{background:#e0f2fe}.notification-item-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:4px}.notification-item-title{font-size:14px;font-weight:600;color:var(--text-primary)}.notification-item-message{margin:0 0 6px;font-size:13px;line-height:1.4;color:var(--text-secondary)}.notification-item-time{font-size:11px;color:var(--text-muted)}