:root{--primary:#082033;--accent:#2f7d32;--blue:#0f62fe;--bg:#f5f7fb;--text:#101828;--muted:#667085;--panel:#fff;--border:#d9e2ec;--danger:#b42318;--success:#027a48;--warning:#b76e00}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}h1,h2,h3{margin-top:0}.login-body{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top left,#2f7d32,transparent 34%),linear-gradient(135deg,#051827,#082033 55%,#0e3551)}.login-card{width:min(440px,92vw);background:#fff;border-radius:22px;padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.30)}.login-logo{width:260px;max-width:100%;display:block;margin:0 auto 10px}.login-card h1{text-align:center;margin:0 0 24px}.login-footer{border-top:1px solid var(--border);margin-top:24px;padding-top:16px;color:var(--muted);font-size:13px;display:flex;gap:10px;align-items:center;justify-content:center}.login-footer img{height:26px}.stack-form{display:grid;gap:16px}.stack-form label{font-weight:800;font-size:13px}.stack-form input,.stack-form select,.stack-form textarea{width:100%;margin-top:7px;padding:12px;border:1px solid var(--border);border-radius:12px;font-size:15px;background:#fff}.stack-form textarea{resize:vertical}.primary-btn,button{background:var(--blue);color:#fff;border:0;border-radius:10px;padding:11px 16px;font-weight:800;cursor:pointer;display:inline-block}.primary-btn:hover,button:hover{filter:brightness(1.06)}.outline-btn{border:1px solid rgba(255,255,255,.28);border-radius:10px;padding:10px 14px;font-weight:800;display:inline-block;text-align:center}.outline-btn.blue{border-color:var(--blue);color:var(--blue);background:#fff}.small,small{font-size:12px}.muted{color:var(--muted)}.alert{padding:12px 14px;border-radius:12px;margin-bottom:16px;font-weight:800}.alert.danger{background:#fef3f2;color:var(--danger)}.alert.success{background:#ecfdf3;color:var(--success)}.app-shell{display:flex;min-height:100vh}.sidebar{width:285px;background:linear-gradient(180deg,#061927,#0a2235);color:#fff;padding:18px;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.06)}.sidebar-brand{padding:4px 4px 20px;text-align:center}.sidebar-brand img{width:205px;max-width:100%;display:block;margin:0 auto 8px}.sidebar-brand span{display:block;font-weight:900;font-size:20px;letter-spacing:.01em}.side-nav{display:grid;gap:8px}.side-nav a{padding:12px 13px;border-radius:10px;color:#d7e4ec;display:flex;gap:12px;align-items:center}.side-nav a i{width:22px;text-align:center;font-style:normal}.side-nav a.active,.side-nav a:hover{background:linear-gradient(90deg,var(--accent),#236328);color:#fff}.branding-card{margin-top:auto;border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:16px;background:rgba(255,255,255,.04)}.branding-card p{color:#c7d3dc;line-height:1.45;font-size:13px}.mini-brand{height:88px;background:#fff;border-radius:8px;margin:14px 0;padding:10px;display:flex;align-items:flex-start;gap:8px}.mini-brand img{width:72px}.mini-brand span{display:block;width:16px;height:16px;border-radius:50%;background:var(--accent)}.mini-brand span:nth-of-type(2){background:#276fbb}.mini-brand span:nth-of-type(3){background:#667085}.collapse-note{color:#b8c7d3;margin-top:16px;font-size:13px}.main-area{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:22px;padding:0 26px}.hamburger{font-size:22px}.searchbar{height:46px;border:1px solid var(--border);border-radius:999px;display:flex;align-items:center;gap:10px;color:#667085;padding:0 16px;flex:1;max-width:720px}.searchbar kbd{margin-left:auto;background:transparent;color:#667085;font-size:13px}.user-pill{margin-left:auto;display:flex;gap:12px;align-items:center;color:#101828;font-size:14px}.avatar{width:36px;height:36px;border-radius:50%;background:#e7f1fb;color:#082033;display:grid;place-items:center;font-weight:900}.bell{position:relative}.bell b{position:absolute;top:-11px;right:-10px;background:#ef4444;color:#fff;border-radius:99px;font-size:11px;padding:2px 6px}.inline-form{display:inline}.inline-form button{padding:8px 11px;background:#eef4ff;color:#1d4ed8}.content{padding:26px;flex:1}.app-footer{border-top:1px solid rgba(255,255,255,.05);padding:12px 26px;color:#cbd5e1;font-size:13px;background:#061927;display:flex;justify-content:space-between;align-items:center;gap:18px}.powered-link{display:flex;align-items:center;gap:8px;font-weight:800;color:#e6eef7}.powered-link img{height:34px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:18px;margin-bottom:18px;box-shadow:0 4px 16px rgba(16,24,40,.04)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.panel-head h2{font-size:16px;margin:0}.panel-head a,.link{color:var(--blue);font-weight:800}.welcome-row,.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}.welcome-row h1,.page-title h1{margin-bottom:4px}.welcome-row p,.page-title p{margin:0;color:var(--muted)}.action-row{display:flex;gap:12px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px;display:grid;grid-template-columns:56px 1fr;column-gap:14px;align-items:center}.stat i{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:25px;font-weight:900}.stat label{font-weight:800}.stat span{font-size:30px;font-weight:950;color:var(--blue);display:block}.stat small{color:var(--muted)}.icon-blue i{background:#e9f1ff;color:#0f62fe}.icon-red i{background:#ffe8e8;color:#d92d20}.icon-amber i{background:#fff3dd;color:#e38a00}.icon-green i{background:#e7f8ec;color:#13813c}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 375px;gap:18px}.lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{text-align:left;padding:12px;border-bottom:1px solid var(--border);vertical-align:top}.data-table th{font-size:12px;color:var(--muted);text-transform:uppercase}.data-table td small{display:block;color:var(--muted);margin-top:4px}.badge{display:inline-block;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:900;background:#eef4ff;color:#1d4ed8}.pri-low{background:#ecfdf3;color:#027a48}.pri-normal{background:#eef4ff;color:#1d4ed8}.pri-high{background:#fff4e5;color:#b76e00}.pri-urgent,.pri-critical{background:#fef3f2;color:#b42318}.status{background:#eef4ff;color:#1d4ed8}.activity-list,.doc-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}.activity-list li,.doc-list li{display:flex;gap:10px;align-items:flex-start}.activity-list i,.doc-list i{width:28px;height:28px;border-radius:8px;background:#e9f1ff;color:#0f62fe;display:grid;place-items:center;font-style:normal}.activity-list small,.doc-list small{display:block;color:var(--muted);margin-top:2px}.doc-list li span{margin-left:auto;color:#667085}.status-list p{display:flex;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:10px}.status-list span{color:#027a48;font-weight:800}.quick-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quick-links a{border:1px solid var(--border);border-radius:12px;padding:12px;font-weight:900;color:#0f62fe}.quick-links small{display:block;color:#667085;margin-top:5px;font-weight:500}.narrow{max-width:760px}.ticket-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px}.ticket-meta{display:flex;flex-wrap:wrap;gap:10px 16px;margin-bottom:16px;color:#667085}.thread{display:grid;gap:14px;margin:20px 0}.message{border:1px solid var(--border);border-radius:14px;padding:14px;background:#fff}.message.internal{background:#fff7ed;border-color:#fed7aa}.message.staff{background:#eef4ff}.message header{display:flex;justify-content:space-between;gap:12px;color:#667085}.message header strong{color:#101828}.message p{line-height:1.55}.check{display:flex!important;gap:10px;align-items:center}.check input{width:auto!important;margin:0!important}.kb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.kb-card h2{font-size:18px;margin:12px 0 8px}@media(max-width:1100px){.dashboard-grid,.ticket-layout{grid-template-columns:1fr}.stats-grid,.lower-grid{grid-template-columns:1fr 1fr}.side-widgets{display:grid;grid-template-columns:1fr 1fr;gap:18px}.kb-grid{grid-template-columns:1fr 1fr}}@media(max-width:850px){.app-shell{display:block}.sidebar{width:auto}.stats-grid,.lower-grid,.side-widgets,.kb-grid{grid-template-columns:1fr}.topbar{height:auto;padding:16px;align-items:flex-start;gap:10px;flex-direction:column}.user-pill{margin-left:0;flex-wrap:wrap}.content{padding:16px}.app-footer{display:block;text-align:center}.powered-link{justify-content:center;margin-top:8px}}@media(max-width:520px){.stat{grid-template-columns:1fr}.action-row,.welcome-row,.page-title{display:block}.action-row a{margin-top:10px}.data-table{font-size:13px}}

/* Phase 3 Knowledgebase management */
.filter-form{display:grid;grid-template-columns:minmax(220px,1fr) 240px auto auto;gap:12px;align-items:end}.filter-form label{font-weight:800;font-size:13px}.filter-form input,.filter-form select{width:100%;margin-top:7px;padding:12px;border:1px solid var(--border);border-radius:12px;font-size:15px;background:#fff}.kb-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.kb-card h2 a:hover{color:var(--blue)}.kb-article{max-width:980px}.kb-article .lead{font-size:18px;color:#475467;border-left:4px solid var(--accent);padding-left:14px}.article-body{font-size:16px;line-height:1.75;white-space:normal}.status-draft{background:#fff7ed;color:#b76e00}.status-published{background:#ecfdf3;color:#027a48}.status-archived{background:#f2f4f7;color:#475467}.table-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.table-actions form{margin:0}.danger-btn{background:#fef3f2;color:#b42318;border:1px solid #fecdca;padding:7px 10px;border-radius:8px}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:850px){.filter-form,.form-grid-2{grid-template-columns:1fr}}
