:root{color:#111;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button{align-items:center;border:1px solid #111;background:#fff;color:#111;cursor:pointer;display:inline-flex;gap:8px;justify-content:center;min-height:40px;padding:0 14px}button:hover{background:#f3f3f3}button:disabled{cursor:wait;opacity:.55}input,textarea,fieldset{border:1px solid #c9c9c9;min-height:42px;padding:0 12px;width:100%}textarea{padding:12px;resize:vertical}label{color:#333;display:grid;gap:7px;font-size:13px;font-weight:700}.login-shell{align-items:center;display:grid;min-height:100vh;padding:24px}.login-panel{border:1px solid #111;display:grid;gap:28px;margin:0 auto;max-width:420px;padding:36px;width:100%}.app-shell{display:grid;grid-template-columns:244px 1fr;min-height:100vh}aside{border-right:1px solid #111;display:flex;flex-direction:column;padding:18px}.brand{align-items:center;display:flex;gap:10px;min-height:44px}.brand span{align-items:center;background:#111;color:#fff;display:inline-flex;font-size:13px;font-weight:800;height:34px;justify-content:center;width:34px}nav{display:grid;gap:6px;margin-top:28px}nav button{align-items:center;border-color:transparent;color:#111;display:flex;gap:10px;justify-content:flex-start;min-height:40px;padding:0 10px;text-decoration:none;width:100%}nav button.active{background:#111;color:#fff}.advanced-nav{border:1px solid #111;display:grid;gap:6px;margin-top:12px;padding:10px}.advanced-nav p{color:#666;font-size:11px;font-weight:800;text-transform:uppercase}.bottom{margin-top:auto}main{min-width:0;padding:28px}header{align-items:center;display:flex;gap:20px;justify-content:space-between;margin-bottom:22px}h1,h2,p{margin:0}h1{font-size:32px;letter-spacing:0}h2{font-size:22px}h3{font-size:15px;margin:0}.eyebrow{color:#666;font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.header-actions,.actions,.modal-actions{display:flex;gap:8px}.primary{background:#111;color:#fff}.primary:hover{background:#333}.danger{background:#111;border-color:#111;color:#fff}.danger:hover{background:#3a000a;border-color:#3a000a}.ghost{border-color:#c9c9c9}.stack{display:grid;gap:16px}.table-wrap{border:1px solid #111;overflow-x:auto}.panel-grid{display:grid;gap:18px}.plain-panel{border:1px solid #111;display:grid;gap:18px;padding:18px}.panel-heading{align-items:center;display:flex;gap:14px;justify-content:space-between}.form-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.inline-toggle{align-items:center;display:inline-flex;gap:8px}.inline-toggle input{height:18px;min-height:18px;width:18px}.protocol-toggle{display:flex;gap:8px;margin:0;min-height:0;padding:8px}.protocol-toggle legend{color:#333;font-size:13px;font-weight:700;padding:0 4px}.protocol-toggle label{align-items:center;border:1px solid #d8d8d8;cursor:pointer;display:inline-flex;flex:1;gap:8px;justify-content:center;min-height:36px}.protocol-toggle input{height:16px;min-height:16px;width:16px}.form-actions{display:flex;justify-content:flex-end}.toggle-grid{display:flex;flex-wrap:wrap;gap:12px}.hard-delete-box{align-items:flex-start;border:1px solid #111;display:flex;gap:12px;padding:14px}.hard-delete-box input{height:18px;margin-top:2px;min-height:18px;width:18px}.hard-delete-box span{display:grid;gap:5px}.hard-delete-box small{color:#666;font-size:12px;font-weight:600;line-height:1.45}.metric-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.metric{border:1px solid #d8d8d8;display:grid;gap:6px;min-height:78px;padding:12px}.metric span,.detail-list dt,.instrument-group h3 span,.event-row span{color:#666;font-size:12px;font-weight:700;text-transform:uppercase}.metric strong{font-size:22px}.detail-list{border-top:1px solid #e1e1e1;display:grid;gap:0;margin:0}.detail-list div{border-bottom:1px solid #e1e1e1;display:grid;gap:10px;grid-template-columns:minmax(120px,190px) 1fr;padding:10px 0}.detail-list dd{margin:0}.group-grid{display:grid;gap:16px}.instrument-group{display:grid;gap:10px}.instrument-group h3,.events h3{font-size:15px;margin:0}.chip-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.chip{border:1px solid #d8d8d8;display:grid;gap:3px;padding:10px}.chip span{color:#666;font-size:12px}.events{border-top:1px solid #e1e1e1;display:grid;gap:10px;padding-top:14px}.event-row{border:1px solid #d8d8d8;display:grid;gap:6px;padding:10px}.event-row code{overflow-wrap:anywhere;white-space:normal}.cache-table input{max-width:160px}table{border-collapse:collapse;min-width:980px;width:100%}th,td{border-bottom:1px solid #e1e1e1;padding:14px;text-align:left;vertical-align:top}th{background:#f7f7f7;color:#555;font-size:12px;text-transform:uppercase}td{font-size:14px}td span,td code{color:#666;display:block;margin-top:4px}td code{color:#111;font-size:12px}.actions{justify-content:flex-end}.actions button{height:34px;min-height:34px;padding:0;width:34px}.status{border:1px solid #111;color:#111;display:inline-flex;font-size:12px;font-weight:800;margin:0;padding:4px 8px;text-transform:uppercase}.status.suspended{background:#eee}.status.deleted{background:#111;color:#fff}.error{color:#b00020;font-size:13px;font-weight:700}.notice{color:#0a6b2b;font-size:13px;font-weight:700}.banner{margin-bottom:14px}.modal-backdrop{align-items:center;background:#ffffffd1;display:grid;top:0;right:0;bottom:0;left:0;padding:18px;position:fixed}.modal{background:#fff;border:1px solid #111;margin:0 auto;max-width:520px;padding:24px;width:100%}.wide-modal{max-width:860px}.feature-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.compact-panel{gap:12px;padding:14px}.muted{color:#666}.password-box{border:1px solid #111;display:block;font-size:18px;padding:14px;text-align:center}@media(max-width:760px){.app-shell{grid-template-columns:1fr}aside{border-bottom:1px solid #111;border-right:0}header{align-items:stretch;flex-direction:column}.header-actions{flex-wrap:wrap}}
