
:root{
  --bg:#050607; --bg2:#07090c; --panel:#0a0d11; --panel2:#0d1117; --panel3:#11161d;
  --line:#1b222b; --line2:#27313d; --text:#edf2f7; --muted:#7f8a99; --dim:#56606d;
  --accent:#6d4aff; --accent2:#8b6dff; --blue:#3f8cff; --green:#24d18a; --yellow:#f0b54a;
  --red:#ff5575; --orange:#ff8b4a; --cyan:#45d4e8;
  --sidebar:270px; --topbar:64px; --radius:16px; --radius-sm:11px;
  --shadow:0 14px 50px rgba(0,0,0,.35);
  --font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px}
body{overflow:hidden}
button,input,select,textarea{font:inherit}
button{color:inherit}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}
button:disabled{cursor:not-allowed;opacity:.48}
.icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.app-root{min-height:100svh}
.app-shell{height:100svh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);grid-template-rows:minmax(0,1fr);background:radial-gradient(circle at 75% -10%,rgba(109,74,255,.10),transparent 35%),var(--bg)}
.brand-inline,.brand-block{display:flex;align-items:center;gap:9px;background:none;border:0;padding:0;cursor:pointer;color:var(--text)}
.brand-inline{display:none}
.brand-block-mark{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,#151029,#21184e);border:1px solid #40307d;color:#a995ff}
.brand-block b,.brand-inline b{font-size:15px;letter-spacing:.04em}.brand-block small,.brand-inline small{display:block;color:var(--muted);font-size:10px;margin-top:1px}
.brand-inline-mark{width:30px;height:30px;border-radius:9px;background:#140e26;display:grid;place-items:center;color:#a995ff;border:1px solid #352666}
.mobile-menu-trigger{display:none}
.sidebar{grid-column:1;grid-row:1;min-width:0;display:flex;flex-direction:column;background:#07090c;border-right:1px solid var(--line);z-index:40}
.sidebar-head{height:var(--topbar);display:flex;align-items:center;padding:0 16px;border-bottom:1px solid var(--line)}
.sidebar-scroll{min-height:0;overflow:auto;padding:14px 10px 10px;scrollbar-width:thin;scrollbar-color:#4e5762 transparent}
.sidebar-scroll::-webkit-scrollbar,.main-scroll::-webkit-scrollbar{width:8px}.sidebar-scroll::-webkit-scrollbar-thumb,.main-scroll::-webkit-scrollbar-thumb{background:#434c56;border-radius:20px}.sidebar-scroll::-webkit-scrollbar-track,.main-scroll::-webkit-scrollbar-track{background:transparent}
.sidebar-section{margin-bottom:17px}.sidebar-plugin-section{padding-bottom:2px}.sidebar-label{padding:5px 10px 8px;color:#535d69;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}
.sidebar-item,.sidebar-plugin{width:100%;min-height:40px;padding:9px 10px;border:0;background:transparent;display:flex;align-items:center;gap:10px;border-radius:11px;cursor:pointer;text-align:left;color:#929ca8}
.sidebar-item:hover,.sidebar-plugin:hover{background:#0d1117;color:var(--text)}
.sidebar-item.active{background:linear-gradient(90deg,rgba(109,74,255,.20),rgba(109,74,255,.05));color:#fff;border:1px solid rgba(109,74,255,.23)}
.sidebar-item .icon{width:17px}.sidebar-plugin{padding:8px 9px}
.sidebar-plugin.active{background:#11101b;border:1px solid #2a2350;color:#fff}
.plugin-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#10151b;border:1px solid var(--line2);color:#9eabc0}
.plugin-icon.large{width:38px;height:38px;border-radius:12px}.plugin-icon.xlarge{width:54px;height:54px;border-radius:14px}.plugin-icon .icon{width:17px;height:17px}.plugin-icon.xlarge .icon{width:26px;height:26px}
.tone-violet{color:#a995ff;background:#151126;border-color:#332a62}.tone-purple{color:#c07cff;background:#170e24;border-color:#452568}.tone-green{color:#34df98;background:#081b14;border-color:#18523e}.tone-blue{color:#62a5ff;background:#0a1727;border-color:#204a7b}.tone-cyan{color:#51d9e8;background:#071a1d;border-color:#1e5a62}.tone-orange{color:#ff9a58;background:#20130b;border-color:#6c351a}.tone-red{color:#ff617a;background:#210e14;border-color:#6b2433}.tone-gold{color:#f0c36a;background:#211908;border-color:#6d5523}.tone-slate{color:#a4afbc;background:#101419;border-color:#28303a}
.sidebar-plugin-main{flex:1;min-width:0}.sidebar-plugin-main b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-plugin-main small{display:block;font-size:10px;color:#596471;margin-top:2px}
.status-dot{width:7px;height:7px;border-radius:50%;background:#38424d;flex:none}.status-dot.online{background:var(--green);box-shadow:0 0 10px rgba(36,209,138,.55)}
.sidebar-footer{padding:10px;border-top:1px solid var(--line)}.bridge-card{padding:13px;background:#0a0e13;border:1px solid var(--line2);border-radius:12px}.bridge-head{display:flex;align-items:center;gap:7px;font-size:11px}.bridge-card small{display:block;color:#65707d;margin:6px 0 9px;line-height:1.45}
.main-scroll{grid-column:2;grid-row:1;min-width:0;min-height:0;overflow:auto;scrollbar-gutter:stable;background:linear-gradient(180deg,rgba(7,9,12,.2),rgba(5,6,8,.8))}
.main-content{width:min(1500px,100%);margin:0 auto;padding:24px}
.page-head{display:flex;gap:18px;align-items:flex-end;justify-content:space-between;margin-bottom:18px}.page-head h1{margin:3px 0 0;font-size:28px;line-height:1.15;letter-spacing:-.02em}.page-head p{margin:6px 0 0;color:var(--muted);font-size:13px}.eyebrow{font-size:10px;color:#6a7481;letter-spacing:.13em;font-weight:800}.page-head-actions,.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.btn{min-height:38px;padding:9px 13px;border-radius:10px;border:1px solid var(--line2);background:#0e141b;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;transition:.16s ease;color:#dce3ea}.btn:hover{transform:translateY(-1px);border-color:#3a4552;background:#121922}.btn-primary{border-color:#664ae4;background:linear-gradient(135deg,#5c3ef0,#714fff);box-shadow:0 8px 24px rgba(92,62,240,.22);color:#fff}.btn-danger{border-color:#69283b;background:#260e15;color:#ff8295}.btn-ghost{background:#0b1016}.btn-small{min-height:31px;padding:6px 9px;font-size:12px}.btn-full{width:100%}
.text-btn{border:0;background:transparent;color:#a58eff;cursor:pointer;padding:0;font-size:12px}.text-btn:hover{color:#c7bcff}
.icon-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--line2);background:#0b1016;color:#9da8b5;display:grid;place-items:center;cursor:pointer}.icon-btn:hover{background:#111822;color:#fff;border-color:#3a4450}.icon-btn.small{width:30px;height:30px}
.server-switcher{position:relative}.server-switcher-btn{min-height:38px;min-width:165px;padding:6px 11px;border:1px solid var(--line2);background:#0b1016;border-radius:11px;display:flex;align-items:center;gap:8px;cursor:pointer;text-align:left}.server-switcher-btn span:nth-child(2){display:flex;flex-direction:column;min-width:0}.server-switcher-btn b{font-size:12px}.server-switcher-btn small{font-size:10px;color:#64707c;margin-top:1px}.server-status{width:7px;height:7px;border-radius:50%;background:#47515d;margin-left:auto}.server-status.online{background:var(--green);box-shadow:0 0 10px rgba(36,209,138,.5)}
.user-chip{min-width:145px;border:1px solid var(--line2);background:#0b1016;border-radius:11px;padding:5px 8px;display:flex;gap:8px;align-items:center;cursor:pointer;text-align:left}.user-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#141a23;border:1px solid #2a3540;color:#dce3ea;font-size:12px;font-weight:800}.user-avatar.large{width:40px;height:40px}.user-avatar.xlarge{width:56px;height:56px;font-size:18px}.user-chip-text{display:flex;flex-direction:column;min-width:0}.user-chip-text b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-chip-text small{font-size:10px;color:#687380}.user-chevron{width:14px;margin-left:auto;color:#596571}
.popover{position:absolute;top:calc(100% + 8px);right:0;width:290px;background:#0a0e13;border:1px solid var(--line2);border-radius:14px;box-shadow:var(--shadow);z-index:100;padding:8px}.server-option,.popover-item{width:100%;display:flex;align-items:center;gap:9px;padding:10px;border:0;background:transparent;border-radius:10px;cursor:pointer;text-align:left}.server-option:hover,.popover-item:hover{background:#11171f}.server-option.active{background:#121123}.server-option span:nth-child(2){display:flex;flex-direction:column}.server-option small{color:#687582;margin-top:2px}.popover-user{display:flex;gap:9px;padding:9px;border-bottom:1px solid var(--line);margin-bottom:5px}.popover-user div:last-child{display:flex;flex-direction:column;justify-content:center}.popover-user small{color:#687582;margin-top:2px}.popover-item.danger{color:#ff758b}.user-popover{top:52px}
.metric-grid{display:grid;gap:12px;margin-bottom:14px}.metric-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.metric-card{padding:15px;border:1px solid var(--line);background:linear-gradient(180deg,#0b0f14,#080b0e);border-radius:var(--radius);min-width:0;box-shadow:0 8px 24px rgba(0,0,0,.15)}.metric-top{display:flex;align-items:center;gap:8px;color:#7f8b99;font-size:11px}.metric-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;border:1px solid var(--line2)}.metric-value{margin-top:11px;font-size:25px;font-weight:800;letter-spacing:-.03em}.metric-sub{margin-top:4px;color:#596572;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.9fr);gap:14px}.dashboard-grid .span-2{grid-column:span 1}
.panel{min-width:0;padding:16px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(11,15,20,.98),rgba(8,11,15,.98));border-radius:var(--radius);box-shadow:0 8px 30px rgba(0,0,0,.14);margin-bottom:14px}.panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:13px}.panel-head h2{margin:0;font-size:15px}.panel-head p{margin:4px 0 0;color:#697481;font-size:11px}
.server-list{display:grid;gap:9px}.server-card,.plugin-card,.directory-card{width:100%;border:1px solid var(--line);background:#0b1016;color:inherit;border-radius:13px;padding:12px;text-align:left;cursor:pointer;display:flex;align-items:center;gap:11px}.server-card:hover,.plugin-card:hover,.directory-card:hover{border-color:#3a4552;background:#0d131b}.server-card-head{display:flex;gap:10px;align-items:center;min-width:0;flex:1}.server-logo{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#121923;color:#94a0ad;border:1px solid var(--line2)}.server-card-title{display:flex;flex-direction:column;min-width:0}.server-card-title b{font-size:13px}.server-card-title small{color:#63707d;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-card-stats{display:flex;gap:10px;color:#66727f;font-size:10px;flex-wrap:wrap;justify-content:flex-end}.server-card-stats span{white-space:nowrap}
.health-list{display:grid}.health-row{display:flex;align-items:center;gap:9px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.035)}.health-row:last-child{border-bottom:0}.health-mark{width:25px;height:25px;border-radius:8px;display:grid;place-items:center}.health-mark.ok{background:#0a2117;color:var(--green)}.health-mark.warn{background:#211708;color:var(--yellow)}.health-row>span:nth-child(2),.health-row>div{min-width:0;flex:1}.health-value{color:#7d8996;font-size:11px}
.timeline{display:grid}.timeline-row,.compact-row,.module-row,.connection-card{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.04)}.timeline-row:last-child,.compact-row:last-child,.module-row:last-child{border-bottom:0}.timeline-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#121520}.timeline-row div:nth-child(2),.compact-row div,.module-row div:nth-child(2){min-width:0;flex:1}.timeline-row b,.compact-row b,.module-row b{display:block;font-size:11px}.timeline-row small,.compact-row small,.module-row small{display:block;color:#5f6b77;font-size:10px;margin-top:3px}.timeline-tail{color:#4b5661}
.plugin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.plugin-card-main,.directory-main{min-width:0;flex:1}.plugin-card-main b,.directory-main b{display:block;font-size:12px}.plugin-card-main small,.directory-main p{display:block;color:#616d79;font-size:10px;line-height:1.4;margin:3px 0 0;white-space:normal}.plugin-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.version-badge,.chip{border:1px solid var(--line2);background:#10161d;color:#929eab;padding:4px 7px;border-radius:7px;font-size:10px;white-space:nowrap}
.status-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:999px;font-size:10px;white-space:nowrap;border:1px solid var(--line2);background:#10151b;color:#87929e}.status-pill i{width:6px;height:6px;border-radius:50%;background:#58636f}.status-pill.green{border-color:#1e5943;background:#0a1d15;color:#41dda0}.status-pill.green i{background:var(--green);box-shadow:0 0 8px rgba(36,209,138,.5)}.status-pill.orange{border-color:#68451e;background:#21170a;color:#ffbd5b}.status-pill.orange i{background:var(--yellow)}.status-pill.red{border-color:#6a2435;background:#240f15;color:#ff7890}.status-pill.red i{background:var(--red)}.status-pill.slate{background:#11161c;color:#7c8794}
.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.search-box{display:flex;align-items:center;gap:8px;min-width:260px;flex:1;max-width:520px;border:1px solid var(--line2);background:#0a0f15;border-radius:10px;padding:0 11px;color:#5d6a77}.search-box.compact{min-width:0;max-width:none;height:36px}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--text);height:36px}.search-box input::placeholder{color:#55616e}
.table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:12px}.data-table{border-collapse:collapse;width:100%;min-width:760px}.data-table th,.data-table td{padding:11px 12px;border-bottom:1px solid rgba(255,255,255,.045);text-align:left;vertical-align:middle}.data-table th{font-size:10px;color:#67727f;text-transform:uppercase;letter-spacing:.08em;background:#0b1016}.data-table td{font-size:11px;color:#a9b2bc}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover td{background:#0b1117}.player-cell{display:flex;align-items:center;gap:8px}.player-cell div{min-width:0}.player-cell b{display:block}.player-cell small{display:block;color:#60707d;margin-top:2px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}
.content-grid{display:grid;gap:14px}.content-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.bar-chart{display:grid;gap:14px}.bar-row{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:14px}.bar-row>div:first-child{display:flex;justify-content:space-between;gap:10px}.bar-row b{font-size:11px}.bar-row small{color:#65717e;font-size:10px}.bar{height:8px;background:#131920;border-radius:999px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#46a4ff);border-radius:999px}
.steps{margin:0;padding-left:20px;color:#bdc5cc}.steps li{padding:8px 0}.steps span{display:block;color:#64717e;font-size:11px;margin-top:3px}.security-note{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid #1d2b35;background:#0b1115;border-radius:12px}.security-symbol{width:36px;height:36px;border-radius:10px;background:#0b2118;color:var(--green);display:grid;place-items:center}.security-note b{font-size:12px}.security-note p{margin:4px 0 0;color:#67727e;font-size:11px;line-height:1.5}
.permissions-layout{display:grid;grid-template-columns:260px minmax(0,1fr) 300px;gap:12px;align-items:start}.role-panel,.perm-panel,.permissions-side .panel{margin-bottom:0}.role-list{display:grid;gap:6px;margin-top:10px;max-height:620px;overflow:auto;padding-right:2px}.role-item{border:1px solid transparent;background:transparent;color:#a1aab5;border-radius:11px;display:flex;align-items:center;gap:8px;padding:8px;text-align:left;cursor:pointer}.role-item:hover{background:#0f151c}.role-item.active{background:linear-gradient(90deg,#151126,#0d1218);border-color:#392d69;color:#fff}.role-item>span:nth-child(2){min-width:0;flex:1}.role-item b{display:block;font-size:11px}.role-item small{display:block;color:#606c79;font-size:10px;margin-top:2px}.role-avatar{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;border:1px solid var(--line2)}.role-avatar.xlarge{width:46px;height:46px}.role-title-row,.profile-head{display:flex;align-items:center;gap:10px}.role-title-row h2,.profile-head h2{margin:0;font-size:17px}.role-title-row p{margin:4px 0 0;color:#67727e;font-size:11px}.perm-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.perm-toolbar{display:flex;gap:8px;margin:12px 0}.permission-catalog{display:grid;gap:9px;max-height:650px;overflow:auto;padding-right:2px}.permission-category{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#090d12}.permission-category-head{display:flex;align-items:center;gap:9px;padding:10px 11px;background:#0d1218;border-bottom:1px solid var(--line)}.category-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center}.permission-category-head>div{min-width:0;flex:1}.permission-category-head b{font-size:11px}.permission-category-head small{display:block;color:#5d6976;font-size:9px;margin-top:2px}.category-count{color:#818c98;font-size:10px}.permission-list{padding:4px 8px}.permission-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;border-radius:9px}.permission-row:hover{background:#0d1319}.permission-name{min-width:0}.permission-name b{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permission-name small{display:block;color:#596572;font-size:9px;margin-top:2px}.permission-check{position:relative;display:grid;place-items:center}.permission-check input{position:absolute;opacity:0;pointer-events:none}.permission-check i{width:18px;height:18px;border-radius:5px;border:1px solid #34404d;background:#0b1016;display:grid;place-items:center}.permission-check input:checked+i{background:var(--accent);border-color:#8069ff;box-shadow:0 0 12px rgba(109,74,255,.25)}.permission-check input:checked+i:after{content:"";width:6px;height:10px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg) translate(-1px,-1px)}.permission-state{font-size:9px;color:#65707c}.permission-check input:checked~*+.permission-state{color:#67e4ae}
.info-stack{display:grid;gap:12px}.info-hero{display:flex;gap:10px;align-items:center}.info-hero h3{margin:0;font-size:16px}.chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}.profile-head{padding:4px 0 8px}.profile-head h2{font-size:19px}.detail-list{margin:0}.detail-list>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.04)}.detail-list>div:last-child{border-bottom:0}.detail-list dt{color:#626f7c;font-size:10px}.detail-list dd{margin:0;color:#d7dee5;font-size:10px;text-align:right}
.console-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px}.console-panel{min-height:600px}.console-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:4px}.console-toolbar b{display:block;font-size:13px}.console-toolbar small{display:block;color:#63707c;font-size:10px;margin-top:3px}.command-history{display:grid}.command-row{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.04)}.cmd-status{width:7px;height:7px;border-radius:50%;background:#7c8793;flex:none}.cmd-status.done,.cmd-status.ack,.cmd-status.success{background:var(--green)}.cmd-status.error,.cmd-status.failed{background:var(--red)}.cmd-main{min-width:0;flex:1}.cmd-main b{display:block;font-size:11px}.cmd-main code{display:block;color:#b4bdf0;background:#0a0d14;border:1px solid #171d28;border-radius:7px;padding:5px 7px;margin:4px 0;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmd-main small{color:#5f6b77;font-size:9px}.cmd-state{font-size:10px;color:#697582}
.command-chips{display:flex;gap:6px;flex-wrap:wrap}.code-chip{cursor:pointer}.form-stack{display:grid;gap:11px}.field-label{display:grid;gap:6px;color:#76818d;font-size:10px}.input,.field-label select{width:100%;min-height:40px;background:#090e14;border:1px solid var(--line2);color:var(--text);border-radius:10px;padding:9px 11px;outline:0}.input:focus,.field-label select:focus{border-color:#5e4bc3;box-shadow:0 0 0 3px rgba(109,74,255,.12)}.form-grid{display:grid;gap:10px}.form-grid.two,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.alert{display:flex;align-items:flex-start;gap:9px;padding:11px 13px;border-radius:11px;border:1px solid #44303a;background:#171015;color:#c4ccd5}.alert-error{color:#ff9bad}.page-alert{margin-bottom:14px}.form-error{display:flex;gap:7px;align-items:flex-start;color:#ff8b9d;font-size:11px;padding:9px;border-radius:9px;border:1px solid #5b2330;background:#1e0e13}
.settings-grid{display:grid;gap:10px}.setting-card,.security-card,.connection-card,.diagnostic-card,.kv-card,.npc-card{padding:12px;border:1px solid var(--line);border-radius:12px;background:#0b1016}.setting-card{display:flex;align-items:center;gap:9px}.setting-card>div{min-width:0;flex:1}.setting-card b{display:block;font-size:11px}.setting-card small{display:block;color:#606c78;font-size:10px;margin-top:3px;line-height:1.45}.api-contract-card{padding:13px;border:1px solid #292c49;background:#0c0d14;border-radius:12px}.api-contract-card code{display:block;color:#9b8cff;font-size:11px;word-break:break-all}.api-contract-card span{display:block;color:#5f6a77;font-size:10px;margin-top:6px}.security-card{display:flex;align-items:center;gap:10px;justify-content:space-between}.security-card>div{min-width:0}.security-card b{display:block;font-size:11px}.security-card p{margin:4px 0 0;color:#626e7a;font-size:10px}
.audit-list{display:grid}.audit-row{display:grid;grid-template-columns:8px minmax(0,1fr) minmax(180px,.5fr);gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.04)}.audit-row>div{min-width:0}.audit-dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.audit-row b{display:block;font-size:11px}.audit-row span{display:block;color:#7b8793;font-size:10px;margin-top:2px}.audit-row small{display:block;color:#57626e;font-size:9px;margin-top:2px}.audit-row code{font-size:9px;color:#5f6c79;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.plugin-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:18px;background:radial-gradient(circle at 80% 0%,rgba(109,74,255,.12),transparent 35%),linear-gradient(180deg,#0b0f14,#080b0f);margin-bottom:10px}.plugin-header-main{display:flex;align-items:center;gap:14px;min-width:0}.plugin-header-main h1{margin:2px 0 0;font-size:26px}.plugin-header-main p{margin:5px 0 0;color:#697582;font-size:12px}.plugin-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px}.plugin-meta>span{font-size:10px;color:#626e7b}.workspace-tabs{display:flex;gap:4px;overflow-x:auto;padding-bottom:8px;margin-bottom:6px;scrollbar-width:none}.workspace-tabs::-webkit-scrollbar{display:none}.workspace-tab{flex:none;border:1px solid transparent;background:#0b1016;border-radius:10px;padding:9px 11px;color:#788492;display:flex;align-items:center;gap:7px;cursor:pointer}.workspace-tab:hover{color:#e7ecf1;border-color:#27313d}.workspace-tab.active{color:#fff;border-color:#4c3aa0;background:#151025;box-shadow:inset 0 -2px 0 var(--accent)}.workspace-tab .icon{width:15px;height:15px}
.plugin-work-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:14px}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quick-action{border:1px solid var(--line2);background:#0b1016;border-radius:11px;padding:12px;display:flex;gap:8px;align-items:center;cursor:pointer;color:#a1acb8}.quick-action:hover{color:#fff;border-color:#44368e}.module-list,.check-list,.npc-grid,.diagnostic-grid,.kv-grid{display:grid;gap:8px}.module-row,.check-row,.npc-card,.diagnostic-card{border:1px solid var(--line);padding:10px 11px;border-radius:10px;background:#0a0f15}.check-row{display:flex;align-items:center;gap:9px}.check-row>div{flex:1;min-width:0}.check-row b{display:block;font-size:11px}.check-row small{display:block;color:#62707d;font-size:9px;margin-top:2px}.npc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.npc-card{display:flex;gap:9px;align-items:center}.npc-avatar{width:34px;height:34px;border-radius:10px;background:#161c25;color:#94a1af;display:grid;place-items:center;border:1px solid var(--line2)}.npc-card>div{min-width:0;flex:1}.npc-card b{display:block;font-size:11px}.npc-card small{display:block;color:#63707c;font-size:9px;margin-top:2px}.diagnostic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.diagnostic-card{display:flex;gap:9px;align-items:center}.diagnostic-card>div{min-width:0}.diagnostic-card b{display:block;font-size:10px}.diagnostic-card small{display:block;color:#5f6c78;font-size:9px;word-break:break-word;margin-top:3px}.kv-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.kv-card{min-width:0}.kv-card span{display:block;color:#5e6a76;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kv-card b{display:block;font-size:11px;margin-top:5px;word-break:break-word}
.log-list{display:grid}.log-row{display:grid;grid-template-columns:70px 55px minmax(0,1fr);gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.04);font-size:10px}.log-time{color:#596673;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.log-level{font-size:9px;font-weight:800}.level-info{color:#4ddda2}.level-warn{color:#f2bd59}.level-error{color:#ff738a}
.empty-state{min-height:180px;border:1px dashed #27313c;border-radius:12px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:22px;color:#677381}.empty-state .icon{width:26px;height:26px;margin-bottom:9px}.empty-state b{font-size:12px;color:#bdc6cf}.empty-state span{font-size:10px;max-width:420px;line-height:1.5;margin-top:4px}.empty-state.slim{min-height:120px;border:0}.empty-mini{padding:15px;text-align:center;color:#687582;font-size:10px;border:1px dashed #242c35;border-radius:10px}
.loading-page{min-height:65vh;display:grid;place-items:center;align-content:center;gap:12px;color:#66737f}.loader-ring{width:36px;height:36px;border-radius:50%;border:2px solid #26303a;border-top-color:var(--accent);animation:spin .7s linear infinite}.loader-ring.small{width:26px;height:26px}@keyframes spin{to{transform:rotate(360deg)}}
.profile-head.compact{padding-bottom:12px}.account-actions{display:flex;gap:8px}
.auth-page{min-height:100svh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,rgba(109,74,255,.14),transparent 30%),radial-gradient(circle at 80% 90%,rgba(63,140,255,.08),transparent 28%),#050607;padding:24px}.auth-card{width:min(430px,100%);padding:30px;background:#080b0f;border:1px solid var(--line2);border-radius:18px;box-shadow:0 25px 90px rgba(0,0,0,.55);display:flex;flex-direction:column;justify-content:center}.auth-card-head{margin-bottom:22px}.auth-card h2{margin:0;font-size:24px;letter-spacing:-.02em}.input-large{min-height:46px}.code-input{text-align:center;letter-spacing:.35em;font-size:18px}.auth-card .alert{margin-bottom:16px}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px;z-index:200}.modal{width:min(560px,100%);max-height:min(86svh,760px);overflow:auto;position:relative;background:#0a0e13;border:1px solid var(--line2);border-radius:18px;box-shadow:0 30px 100px rgba(0,0,0,.6);padding:20px}.modal-close{position:absolute;right:11px;top:11px;width:34px;height:34px;border:1px solid var(--line2);background:#0d1218;border-radius:9px;color:#788390;display:grid;place-items:center;cursor:pointer}.modal-head{display:flex;gap:11px;padding-right:35px;margin-bottom:16px}.modal-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;border:1px solid var(--line2);flex:none}.modal-head h2{margin:0;font-size:17px}.modal-head p{margin:4px 0 0;color:#64707d;font-size:10px;line-height:1.5}.modal-actions{display:flex;gap:8px;margin-top:14px}.totp-secret{padding:12px;border:1px solid #302958;background:#0e0d18;border-radius:11px;margin-bottom:12px}.totp-secret code{display:block;color:#b3a5ff;font-size:13px;word-break:break-all}.totp-secret small{display:block;color:#626e7b;font-size:9px;margin-top:6px}
.toast-root{position:fixed;right:18px;bottom:18px;z-index:300;display:grid;gap:8px;max-width:min(390px,calc(100vw - 36px))}.toast{display:flex;align-items:center;gap:8px;background:#0d1319;border:1px solid var(--line2);border-radius:11px;padding:10px 11px;box-shadow:var(--shadow);font-size:11px}.toast .icon{width:16px}.toast-success .icon{color:var(--green)}.toast-error .icon{color:var(--red)}.toast-info .icon{color:var(--blue)}.toast-close{margin-left:auto;width:26px;height:26px}
@media (max-width:1200px){
    .metric-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .permissions-layout{grid-template-columns:230px minmax(0,1fr)}
  .permissions-side{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.permissions-side .panel{margin:0}
}
@media (max-width:980px){
  :root{--sidebar:0px}
  .app-shell{grid-template-columns:1fr}
  .sidebar{position:fixed;left:0;top:0;bottom:0;width:min(300px,88vw);transform:translateX(-102%);transition:transform .2s ease;box-shadow:20px 0 80px rgba(0,0,0,.5)}
  .mobile-open .sidebar{transform:translateX(0)}
  .mobile-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.6);opacity:0;pointer-events:none;z-index:35;transition:.2s}.mobile-open .mobile-overlay{opacity:1;pointer-events:auto}
  .dashboard-grid,.plugin-work-grid,.console-layout{grid-template-columns:1fr}.content-grid.two{grid-template-columns:1fr}.npc-grid,.diagnostic-grid{grid-template-columns:1fr}.kv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  body{overflow:hidden}
  .main-content{padding:14px 12px 88px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:23px}.page-head-actions{width:100%}.page-head-actions .btn{flex:1}.metric-grid.four,.metric-grid.three{grid-template-columns:1fr}.plugin-grid{grid-template-columns:1fr}.bar-row{grid-template-columns:1fr;gap:6px}.bar-row>div:first-child{justify-content:space-between}
  .permissions-layout{grid-template-columns:1fr}.permissions-side{grid-template-columns:1fr}.perm-head{flex-direction:column}.perm-toolbar{align-items:stretch;flex-direction:column}.role-list{max-height:280px}.permission-catalog{max-height:none}.permission-row{grid-template-columns:28px minmax(0,1fr);}.permission-state{grid-column:2}.server-grid{display:grid;gap:9px}.server-card-stats{justify-content:flex-start}
  .workspace-tabs{margin-right:-12px;padding-right:12px}.workspace-tab{padding:8px 9px;font-size:10px}.workspace-tab .icon{width:14px}
  .plugin-header{padding:13px;flex-direction:column}.plugin-header-main{align-items:flex-start}.plugin-header-main h1{font-size:22px}.plugin-header-actions,.plugin-header-actions .btn{width:100%}.plugin-header-actions .btn{justify-content:center}
  .search-box{min-width:0}.filter-bar{flex-direction:column;align-items:stretch}.audit-row{grid-template-columns:8px minmax(0,1fr)}.audit-row code{display:none}.form-grid.two,.settings-grid{grid-template-columns:1fr}.auth-page{padding:12px}.auth-card{padding:24px 18px}.modal-backdrop{padding:8px}.modal{max-height:92svh;border-radius:15px;padding:16px}.toast-root{right:10px;bottom:78px}
}

.server-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}
.server-card{padding:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;overflow:hidden}
.server-card-open{min-width:0;border:0;background:transparent;color:inherit;padding:12px;text-align:left;cursor:pointer;display:block}.server-card-open:hover{background:#0d131a}
.server-card-actions{display:flex;align-items:center;gap:5px;padding:0 9px;border-left:1px solid var(--line);background:#090d12}.danger-icon{color:#ff6e86}.danger-icon:hover{color:#fff;background:#210f15;border-color:#6b2737}
.segmented-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:12px;overflow-x:auto;scrollbar-width:none}.segmented-tabs::-webkit-scrollbar{display:none}.segmented-tabs button{flex:none;border:1px solid transparent;background:#0b1016;color:#747f8b;padding:8px 12px;border-radius:9px 9px 0 0;cursor:pointer}.segmented-tabs button:hover{color:#eaf0f4;background:#0f151d}.segmented-tabs button.active{color:#fff;background:#151126;border-color:#3b2e71;box-shadow:inset 0 -2px 0 var(--accent)}
.directory-meta{display:flex;gap:6px;margin-top:8px}.directory-meta span{border:1px solid var(--line);border-radius:7px;padding:3px 6px;color:#6a7682;font-size:9px}
.web-user-list{display:grid;gap:6px;max-height:360px;overflow:auto;margin-bottom:14px}.web-user-row{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:10px;background:#0b1016}.web-user-row>div{flex:1;min-width:0}.web-user-row b{display:block;font-size:11px}.web-user-row small{display:block;color:#616e7a;font-size:9px;margin-top:2px}.web-user-form{border-top:1px solid var(--line);padding-top:14px}
.connection-card{justify-content:space-between}.connection-dot{width:9px;height:9px;border-radius:50%;background:#4b5560}.connection-dot.online{background:var(--green);box-shadow:0 0 12px rgba(36,209,138,.55)}.connection-card>div{flex:1;min-width:0}.connection-card b{display:block;font-size:11px}.connection-card small{display:block;color:#62707b;font-size:9px;margin-top:3px}
@media(max-width:980px){.server-grid{grid-template-columns:1fr}}

/* 4.0.4 layout hardening */
.page-head-actions{min-width:0}
.page-head-actions .btn{max-width:100%}
.content-grid,.dashboard-grid,.plugin-work-grid,.console-layout,.diagnostic-grid,.npc-grid,.kv-grid,.settings-grid,.permissions-layout,.permission-layout{min-width:0}
.panel,.metric-card,.directory-card,.plugin-card,.server-card,.table-wrap,.filter-bar,.page-head{max-width:100%;min-width:0}
.table-wrap{overflow-x:auto}
.data-table{min-width:720px}
.form-stack,.form-grid,.field-label{min-width:0}
.input,.field-label input,.field-label select,.field-label textarea{max-width:100%}
.modal-backdrop{cursor:default}
.modal{overflow-x:hidden}
.modal .btn{min-width:0;max-width:100%}
.bridge-download-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px;border:1px solid #2a3440;background:#0c1218;border-radius:12px}
.bridge-download-card>div{min-width:0;flex:1}
.bridge-download-card b{display:block;font-size:12px}
.bridge-download-card small{display:block;color:#65717d;font-size:9px;line-height:1.5;margin-top:4px}
.form-hint{padding:10px 11px;border:1px solid var(--line);background:#090d12;border-radius:10px;color:#65717d;font-size:10px;line-height:1.5}
.server-card-actions{flex-wrap:wrap}
.connection-card{display:flex;align-items:center;gap:10px;min-width:0}
.connection-card .row-actions{margin-left:auto;flex-shrink:0}


/* 4.0.5 navigation + server card cleanup */
.sidebar-tools{display:grid;gap:9px}.sidebar-control-block{position:relative}.sidebar-control-block .server-switcher{width:100%}.sidebar-control-block .server-switcher-btn{width:100%;min-width:0}.sidebar-control-block .server-popover{left:0;right:0;top:auto;bottom:calc(100% + 8px);width:auto;max-width:100%}.sidebar-account-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}.sidebar-account-row .user-chip{width:100%;min-width:0}.sidebar-account-row .user-popover{left:0;right:0;top:auto;bottom:calc(100% + 8px);width:auto;max-width:100%}.sidebar-user-chip .user-chip-text{min-width:0}.sidebar-refresh{flex:none}.sidebar-footer{flex:none}
.server-grid{align-items:start;gap:16px}.server-list{gap:12px}.server-card{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:0;overflow:hidden;align-items:stretch}.server-card-open{display:grid;gap:14px;width:100%;min-width:0;padding:16px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.server-card-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;min-width:0}.server-card-title{min-width:0;display:grid;gap:4px}.server-card-title b{font-size:13px;line-height:1.25;overflow-wrap:anywhere}.server-card-title small{font-size:10px;line-height:1.45;white-space:normal;overflow-wrap:anywhere;color:#63707d}.server-card-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;justify-content:stretch;font-size:10px}.server-card-stats span{display:block;min-width:0;white-space:normal;line-height:1.4;padding:8px 9px;border:1px solid var(--line);border-radius:9px;background:#090e14;color:#74808d;overflow-wrap:anywhere}.server-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:9px 12px;border-left:0;border-top:1px solid var(--line);background:#090d12;flex-wrap:nowrap}.server-card-actions .icon-btn{flex:none}.server-card:hover{border-color:#34404c;background:#0c1118}.server-card-open:hover{background:#0d131b}
.panel + .panel{margin-top:0}
.modal-head-clean{padding-right:35px}
.auth-card-clean .auth-card-head{margin-bottom:20px}.auth-card-clean .auth-card-head h2{margin:0}.auth-card-clean{width:min(430px,100%)}

/* 4.0.5 final responsive rules */
@media(max-width:980px){
  :root{--sidebar:0px}
  .app-shell{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr)}
  .main-scroll{grid-column:1;grid-row:1}
  .sidebar{position:fixed;left:0;top:0;bottom:0;width:min(310px,88vw);transform:translateX(-102%);transition:transform .2s ease;box-shadow:20px 0 80px rgba(0,0,0,.5);z-index:60}
  .mobile-open .sidebar{transform:translateX(0)}
  .mobile-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.6);opacity:0;pointer-events:none;z-index:55;transition:.2s}.mobile-open .mobile-overlay{opacity:1;pointer-events:auto}
  .mobile-menu-trigger{display:grid;position:fixed;left:12px;top:12px;width:40px;height:40px;border:1px solid var(--line2);background:#0b1016;color:#c4ced8;border-radius:11px;place-items:center;z-index:50;box-shadow:0 12px 30px rgba(0,0,0,.3);cursor:pointer}
  .main-content{padding-top:66px}
  .server-card-stats{grid-template-columns:1fr}
}
@media(max-width:700px){
  .main-content{padding:66px 12px 24px}
  .server-grid{grid-template-columns:1fr;gap:12px}
  .server-card-open{padding:14px}
  .server-card-head{grid-template-columns:auto minmax(0,1fr)}
  .server-card-head>.status-pill{grid-column:2;justify-self:start}
  .server-card-actions{justify-content:stretch}.server-card-actions .icon-btn{flex:1;width:auto}
  .sidebar-footer{padding-bottom:calc(10px + env(safe-area-inset-bottom))}
}

/* 4.0.7 interaction hardening */
.sidebar-scroll{overscroll-behavior:contain;scroll-behavior:auto;}
.sidebar-item,.sidebar-plugin,.server-option,.popover-item,.server-switcher-btn,.sidebar-user-chip{scroll-margin-block:12px;}
.sidebar-item,.sidebar-plugin{touch-action:manipulation;}
.popover{pointer-events:auto;}
.modal-backdrop{touch-action:auto;}
.modal{touch-action:pan-y;}
@media(max-width:980px){.mobile-open .sidebar{z-index:80}.mobile-open .mobile-overlay{z-index:70}.mobile-open .sidebar .popover{z-index:120}}


/* 4.0.8 permissions + console */
.perm-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.perm-switch-bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,360px);gap:10px;align-items:stretch;margin-bottom:12px}.perm-branch-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.perm-branch-tab{display:flex;align-items:center;gap:10px;min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#090e14;color:#aeb8c4;text-align:left;cursor:pointer}.perm-branch-tab:hover{background:#0d131a;border-color:#364252}.perm-branch-tab.active{border-color:#5a49a8;background:linear-gradient(145deg,#17122a,#0b1118);color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.14)}.perm-branch-tab>.icon{width:20px;height:20px;flex:none}.perm-branch-tab>span{display:grid;gap:2px;min-width:0}.perm-branch-tab b{font-size:11px}.perm-branch-tab small{font-size:9px;color:#687381}.perm-note{display:flex;align-items:center;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:#080c11;color:#687381;font-size:10px;line-height:1.55}.permissions-layout-v2{grid-template-columns:250px minmax(0,1fr) 270px;gap:12px}.role-panel,.permission-main-panel,.permissions-side-v2 .panel{min-width:0}.role-panel{position:sticky;top:12px}.role-list-v2{max-height:calc(100vh - 300px);padding-right:4px}.role-item{min-width:0}.role-item .role-chevron{display:grid;place-items:center;color:#566270;transition:transform .18s ease}.role-item.active .role-chevron{color:#a494ff}.permission-main-panel{overflow:hidden}.perm-head-v2{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--line);min-width:0}.perm-head-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.perm-head-badges .chip{white-space:nowrap}.perm-toolbar-v2{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:12px 0}.perm-toolbar-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.permission-catalog-v2{display:grid;gap:8px;max-height:calc(100vh - 390px);overflow:auto;padding:1px 2px 2px 1px}.permission-category-v2{border:1px solid #202a35;border-radius:13px;background:#080c11;overflow:hidden;box-shadow:0 5px 16px rgba(0,0,0,.08)}.permission-category-head-v2{display:grid;grid-template-columns:22px 34px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;padding:10px 12px;border:0;background:#0c1218;color:#d5dce5;text-align:left;cursor:pointer}.permission-category-head-v2:hover{background:#0f161e}.permission-category-head-v2 .category-arrow{display:grid;place-items:center;width:22px;height:22px;color:#687585;transform:rotate(0);transition:transform .18s ease}.permission-category-head-v2 .category-arrow .icon{width:14px;height:14px}.permission-category-head-v2.collapsed .category-arrow{transform:rotate(-90deg)}.permission-plugin-meta{min-width:0;display:grid;gap:3px}.permission-plugin-meta b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permission-plugin-meta small{font-size:9px;line-height:1.35;color:#65717f;white-space:normal;overflow-wrap:anywhere}.category-summary{display:grid;justify-items:end;gap:2px;white-space:nowrap}.category-summary b{font-size:11px;color:#dde5ee}.category-summary small{font-size:8px;color:#63707e}.permission-list-v2{display:grid;gap:3px;padding:6px 8px 8px}.permission-list-v2.is-collapsed{display:none}.permission-row-v2{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 10px;border:1px solid transparent;border-radius:10px;background:transparent}.permission-row-v2:hover{background:#0d131a;border-color:#18222d}.permission-main-copy{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:4px 12px;min-width:0}.permission-main-copy code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dce5ee;font:600 10px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace}.permission-main-copy span{min-width:0;color:#7b8795;font-size:9px;line-height:1.4;overflow-wrap:anywhere}.permission-main-copy small{grid-column:1/-1;color:#4f5b68;font-size:8px;line-height:1.3}.permission-switch{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:#677483;padding:3px 0;cursor:pointer;flex:none}.permission-switch-track{width:34px;height:20px;border-radius:999px;background:#1a222d;border:1px solid #323e4b;display:flex;align-items:center;padding:2px;transition:.16s ease}.permission-switch-thumb{width:14px;height:14px;border-radius:50%;background:#7b8794;transition:.16s ease;box-shadow:0 2px 5px rgba(0,0,0,.25)}.permission-switch.on .permission-switch-track{background:#3a8f6b;border-color:#57c595}.permission-switch.on .permission-switch-thumb{transform:translateX(14px);background:#effff8}.permission-switch-label{min-width:62px;text-align:left;font-size:9px}.permission-switch.on .permission-switch-label{color:#6ce1ad}.permission-switch.disabled{opacity:.55;cursor:not-allowed}; .permission-switch.is-pending{opacity:.72;cursor:wait}.permission-switch.is-pending .permission-switch-track{animation:permission-pulse 1s ease-in-out infinite}@keyframes permission-pulse{0%,100%{opacity:.6}50%{opacity:1}}.permission-empty{padding:13px;color:#5e6a78;font-size:9px}.add-permission-form-v2{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px) auto;gap:8px;align-items:end;margin-top:10px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#090e14}.add-permission-form-v2>div{min-width:0}.add-permission-form-v2 b{display:block;font-size:10px}.add-permission-form-v2 small{display:block;margin-top:3px;color:#65717f;font-size:8px;line-height:1.4}.permissions-side-v2{display:grid;gap:10px}.side-panel{min-width:0}.permission-help{display:grid;gap:10px}.permission-help>div{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:start}.permission-help>div>span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:#151128;border:1px solid #342b5e;color:#ab9cff;font-size:9px}.permission-help p{margin:0;color:#768291;font-size:9px;line-height:1.55}.permission-help b{color:#dce3eb}.recent-perm-actions{display:grid;gap:6px}.permission-search-empty{padding:16px;text-align:center;color:#5f6b79;font-size:9px}
.real-console-shell{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:12px;min-width:0}.real-console-panel{min-width:0;overflow:hidden}.real-console-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border-bottom:1px solid var(--line);background:#090d12}.real-console-title{display:flex;align-items:center;gap:10px;min-width:0}.real-console-title>div{min-width:0}.real-console-title b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.real-console-title small{display:block;color:#687482;font-size:8px;margin-top:3px;white-space:normal}.console-live-dot{width:8px;height:8px;border-radius:50%;background:#596575;box-shadow:0 0 0 4px rgba(89,101,117,.08);flex:none}.console-live-dot.live{background:#54d39d;box-shadow:0 0 0 4px rgba(84,211,157,.09),0 0 13px rgba(84,211,157,.35)}.real-console-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.console-toggle{display:flex;align-items:center;gap:6px;color:#74808e;font-size:9px;cursor:pointer}.console-toggle input{accent-color:#6a58d7}.server-console{height:min(680px,calc(100vh - 250px));min-height:360px;overflow:auto;padding:8px 0;background:#05070a;font:500 10px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:#d8e0ea}.server-console-line{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;padding:2px 12px;min-width:0}.server-console-line:hover{background:#0a0e14}.console-gutter{text-align:right;color:#3c4653;user-select:none}.console-line-text{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}.console-empty{min-height:280px;display:grid;place-items:center;align-content:center;gap:7px;color:#566372;text-align:center;padding:20px}.console-empty .icon{width:26px;height:26px}.console-empty b{font-size:11px;color:#8b97a6}.console-empty small{font-size:9px;max-width:300px;line-height:1.5}.console-side{min-width:0;display:grid;align-content:start;gap:10px}.console-input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.console-status-card{display:grid;gap:10px}.console-status-card>div:first-child{display:flex;align-items:center;gap:7px}.status-dot{width:7px;height:7px;border-radius:50%;background:#5e6977}.status-dot.online{background:#53d39d;box-shadow:0 0 10px rgba(83,211,157,.35)}
@media(max-width:1100px){.permissions-layout-v2{grid-template-columns:220px minmax(0,1fr)}.permissions-side-v2{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.real-console-shell{grid-template-columns:1fr}.console-side{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.perm-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.perm-switch-bar{grid-template-columns:1fr}.permissions-layout-v2{grid-template-columns:1fr}.role-panel{position:static}.role-list-v2{max-height:260px}.permission-catalog-v2{max-height:none}.permission-main-copy{grid-template-columns:1fr}.add-permission-form-v2{grid-template-columns:1fr}.permissions-side-v2{grid-template-columns:1fr}.real-console-toolbar{align-items:flex-start;flex-direction:column}.real-console-actions{width:100%;justify-content:space-between}.server-console{height:55vh;min-height:300px}.console-side{grid-template-columns:1fr}}
@media(max-width:520px){.perm-overview-grid{grid-template-columns:1fr}.perm-branch-tabs{grid-template-columns:1fr}.permission-category-head-v2{grid-template-columns:20px 30px minmax(0,1fr) auto;padding:9px}.permission-row-v2{grid-template-columns:1fr;gap:8px}.permission-switch{justify-self:end}.permission-main-copy code{white-space:normal;overflow-wrap:anywhere}.category-summary{justify-items:end}.real-console-shell{gap:8px}.server-console-line{grid-template-columns:36px minmax(0,1fr);padding:2px 7px}.console-gutter{font-size:8px}}

.perm-server-context{display:flex;align-items:center;gap:9px;min-width:0;padding:10px 12px;margin:-3px 0 10px;border:1px solid var(--line);border-radius:12px;background:#090e14;color:#707c8a}.perm-server-context>.icon{width:17px;height:17px;flex:none}.perm-server-context>span:nth-child(2){display:grid;gap:2px;min-width:0;flex:1}.perm-server-context small{font-size:8px;color:#556170}.perm-server-context b{font-size:10px;color:#dfe6ee;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.perm-server-context .chip{flex:none}

/* 4.0.10 — permissions workspace + terminal console */
.tone-teal{color:#52e4d5;background:#071a19;border-color:#1d5e59}
.permissions-workspace-v3{display:grid;grid-template-columns:270px minmax(0,1fr);gap:14px;align-items:start;min-width:0}
.permission-header-v3{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:12px;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#0d1016,#080b0f);box-shadow:0 10px 30px rgba(0,0,0,.18);min-width:0}
.permission-header-copy{min-width:0}.permission-header-copy h2{margin:4px 0 7px;font-size:24px;letter-spacing:-.02em}.permission-header-copy p{margin:0;color:var(--muted);font-size:11px;line-height:1.55;overflow-wrap:anywhere}.permission-header-stats{display:grid;grid-template-columns:repeat(3,minmax(72px,1fr));gap:7px;min-width:260px}.permission-header-stats>div{display:grid;gap:3px;min-width:0;padding:10px 12px;background:#090d13;border:1px solid var(--line);border-radius:12px;text-align:center}.permission-header-stats b{font-size:17px}.permission-header-stats span{font-size:8px;color:#64707d;text-transform:uppercase;letter-spacing:.06em}
.permission-branch-bar-v3{display:flex;gap:10px;align-items:stretch;margin-bottom:12px;min-width:0}.permission-branch-bar-v3 .perm-branch-tabs{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:8px;flex:1;min-width:0}.permission-branch-bar-v3 .permission-toolbar-note{display:flex;align-items:center;justify-content:center;max-width:360px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:#090d13;color:#687482;font-size:9px;line-height:1.45;text-align:center}
.permission-role-rail,.permission-catalog-panel-v3{min-width:0;overflow:hidden}.permission-role-rail{position:sticky;top:14px}.permission-role-rail>.panel-head,.permission-catalog-panel-v3>.permission-catalog-toolbar-v3{min-width:0}.role-list-v3{display:grid;gap:6px;max-height:calc(100vh - 340px);overflow:auto;padding:2px 1px 4px}.role-item-v3{display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:9px;width:100%;min-width:0;padding:9px;border:1px solid transparent;border-radius:11px;background:#090d13;color:#929da9;text-align:left;cursor:pointer}.role-item-v3:hover{background:#0e141b;color:#dfe6ee;border-color:#1d2732}.role-item-v3.active{background:linear-gradient(135deg,#17142a,#0c1016);border-color:#493b86;color:#fff}.role-item-v3>span:nth-child(2){min-width:0;display:grid;gap:3px}.role-item-v3 b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-item-v3 small{font-size:8px;color:#65717d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-item-v3.active small{color:#817e9b}.role-avatar{width:34px;height:34px;border:1px solid var(--line2);border-radius:10px;display:grid;place-items:center;background:#10151b;color:#9ba7b4}.role-avatar .icon{width:16px;height:16px}.role-avatar.tone-red{color:#ff7088;background:#200e15;border-color:#642738}.role-avatar.tone-blue{color:#63a5ff;background:#091526;border-color:#244a77}.role-avatar.tone-gold{color:#efc66e;background:#211907;border-color:#655020}.role-avatar.tone-green{color:#49dda0;background:#081a13;border-color:#18533f}.role-chevron{display:grid;place-items:center;color:#515d69}.role-item-v3.active .role-chevron{color:#a893ff}
.permission-catalog-panel-v3{padding-bottom:12px}.permission-catalog-toolbar-v3{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;padding:2px 0 12px}.permission-catalog-toolbar-v3>div:first-child{min-width:0}.permission-catalog-toolbar-v3 h2{margin:0 0 4px;font-size:16px}.permission-catalog-toolbar-v3 p{margin:0;color:#697582;font-size:9px;line-height:1.45;overflow-wrap:anywhere}.permission-toolbar-buttons{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.permission-toolbar-buttons .search-box{min-width:220px}.permission-catalog-v3{display:grid;gap:8px;min-width:0;max-height:calc(100vh - 365px);overflow:auto;padding:1px 2px 2px 1px}
.permission-category-v2{min-width:0;border:1px solid #202a35;border-radius:14px;background:#080c11;overflow:hidden;box-shadow:0 7px 20px rgba(0,0,0,.10)}.permission-category-head-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center;background:#0c1218;border-bottom:1px solid #1a222c;min-width:0}.permission-category-head-v2{min-width:0;border-radius:0;background:transparent}.permission-category-head-v2:hover{background:#101720}.permission-category-head-v2 .category-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;border:1px solid var(--line2);flex:none}.permission-category-head-v2 .category-icon .icon{width:15px;height:15px}.permission-category-head-v2 .category-arrow{transition:transform .18s ease}.permission-category-head-v2.collapsed .category-arrow{transform:rotate(-90deg)}.permission-category-head-wrap>.category-state{margin-right:10px;min-width:42px;padding:5px 7px;border-radius:999px;text-align:center;border:1px solid #27313d;font-size:8px;line-height:1;color:#64717e;white-space:nowrap}.category-state.all-on{color:#6be0ae;border-color:#245843;background:#0b1e16}.category-state.partial{color:#f2bf68;border-color:#62481f;background:#211806}.category-state.all-off{color:#677482;background:#0b1015}.permission-plugin-meta b{font-size:11px}.permission-plugin-meta small{font-size:8px}.category-summary b{font-size:10px}.category-summary small{font-size:7px}.permission-list-v2{gap:3px;padding:7px}.permission-row-v2{grid-template-columns:minmax(0,1fr) auto;padding:8px 9px;background:#090e14;border:1px solid #111820}.permission-row-v2:hover{background:#0d141c;border-color:#202b37}.permission-main-copy{grid-template-columns:minmax(145px,.9fr) minmax(0,1.4fr);gap:4px 12px}.permission-main-copy code{font-size:9px}.permission-main-copy span{font-size:9px;color:#84909d}.permission-main-copy small{font-size:7px}.permission-switch{min-width:116px;justify-content:flex-end;gap:5px}.permission-switch-arrow{width:12px;text-align:center;font-size:12px;font-weight:800;opacity:.30;line-height:1}.permission-switch-arrow.off{color:#ff7088}.permission-switch-arrow.on{color:#69e2ae}.permission-switch:not(.on) .permission-switch-arrow.off,.permission-switch.on .permission-switch-arrow.on{opacity:1}.permission-switch-track{width:38px;height:21px}.permission-switch-thumb{width:15px;height:15px}.permission-switch.on .permission-switch-thumb{transform:translateX(15px)}.permission-switch-label{min-width:48px;font-weight:700;font-size:8px}.permission-switch:not(.on) .permission-switch-label{color:#7e8996}.add-permission-form-v3{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:13px;background:#090d13}.add-permission-form-v3>div{min-width:0}.add-permission-form-v3 b{display:block;font-size:10px}.add-permission-form-v3 small{display:block;margin-top:3px;color:#626e7a;font-size:8px;line-height:1.4}.add-permission-form-v3>input{min-width:180px}
.search-box.compact{min-width:0}.permission-role-rail .search-box{margin:0 0 8px}.permission-role-rail .search-box input{min-width:0}
/* The old three-column permission shell is intentionally disabled: role + catalog is the single working surface. */
.permissions-layout-v2,.permissions-side-v2{display:none !important}

.real-console-panel-v2{padding:0;overflow:hidden}.real-console-toolbar-v2{padding:12px 14px;background:#090d12}.server-console-v2{height:min(680px,calc(100vh - 315px));min-height:390px;padding:10px 0;border-top:1px solid #10161d;border-bottom:1px solid #161e27;box-shadow:inset 0 18px 35px rgba(0,0,0,.15)}.server-console-line{grid-template-columns:46px minmax(0,1fr);font-size:10px;line-height:1.55}.console-command-bar{padding:10px 12px;background:#080b10}.console-form-v2{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:8px;align-items:center}.console-prompt{font:700 14px/1 ui-monospace,SFMono-Regular,Consolas,monospace;color:#67dca8}.console-input-v2{height:40px;border-color:#2a3540;background:#05070a;font:500 11px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace}.console-readonly-bar{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 10px;color:#717d8b;font-size:9px;border:1px solid var(--line);border-radius:10px;background:#090d12}.console-examples{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.console-example{padding:5px 8px;border:1px solid #202a35;border-radius:8px;background:#0b1016;color:#768291;font:500 8px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;cursor:pointer}.console-example:hover{color:#d9e0e7;border-color:#364252;background:#101720}.console-meta-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:12px;margin-top:12px;min-width:0}.console-help-text{margin:0;color:#747f8c;font-size:10px;line-height:1.65;overflow-wrap:anywhere}.console-help-text code{font:600 9px ui-monospace,SFMono-Regular,Consolas,monospace;color:#c9d3df}.console-status-card{display:grid;gap:10px}.command-history-v2{max-height:420px;overflow:auto}
@media(max-width:1100px){.permissions-workspace-v3{grid-template-columns:220px minmax(0,1fr)}.permission-header-v3{grid-template-columns:1fr}.permission-header-stats{min-width:0;max-width:420px}.permission-branch-bar-v3{flex-direction:column}.permission-branch-bar-v3 .permission-toolbar-note{max-width:none;min-height:42px}.permission-catalog-toolbar-v3{grid-template-columns:1fr}.permission-toolbar-buttons{justify-content:flex-start}.permission-toolbar-buttons .search-box{flex:1;min-width:180px}.permission-catalog-v3{max-height:none}.console-meta-grid{grid-template-columns:1fr}}
@media(max-width:760px){.permissions-workspace-v3{grid-template-columns:1fr}.permission-role-rail{position:static}.role-list-v3{max-height:220px;grid-template-columns:repeat(2,minmax(0,1fr))}.permission-header-v3{padding:15px}.permission-header-stats{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}.permission-row-v2{grid-template-columns:1fr;gap:7px}.permission-main-copy{grid-template-columns:1fr}.permission-switch{justify-self:end}.permission-toolbar-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px}.permission-toolbar-buttons .search-box{grid-column:1/-1;min-width:0}.add-permission-form-v3{grid-template-columns:1fr}.add-permission-form-v3>input{min-width:0}.server-console-v2{height:55vh;min-height:300px}}
@media(max-width:520px){.role-list-v3{grid-template-columns:1fr}.permission-header-stats{grid-template-columns:1fr 1fr 1fr;gap:5px}.permission-header-stats>div{padding:8px 5px}.permission-header-stats b{font-size:15px}.permission-header-stats span{font-size:7px}.permission-branch-bar-v3 .perm-branch-tabs{grid-template-columns:1fr}.permission-category-head-wrap{grid-template-columns:minmax(0,1fr) auto}.permission-category-head-v2{grid-template-columns:18px 30px minmax(0,1fr) auto;padding:9px}.permission-category-head-wrap>.category-state{margin-right:6px}.permission-switch{width:100%;justify-content:flex-end}.console-form-v2{grid-template-columns:15px minmax(0,1fr)}.console-form-v2 .btn{grid-column:1/-1;width:100%}.server-console-v2{font-size:9px}.server-console-line{grid-template-columns:34px minmax(0,1fr);padding:2px 7px}.console-gutter{font-size:8px}}

.command-result{margin-top:5px;padding:6px 8px;border-left:2px solid #3d4b5b;background:#080c11;color:#aeb8c4;font:500 9px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:0 7px 7px 0}

/* Eclipse Web 5.0 redesign */
.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;min-width:0}.filter-bar>.muted{white-space:nowrap}
.muted{color:var(--muted);font-size:11px}.mono,code,.code-block{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}
.plugin-table-wrap,.user-admin-table,.dependency-table{overflow:auto;border:1px solid var(--line);border-radius:12px}.plugin-table-wrap .data-table,.user-admin-table .data-table,.dependency-table .data-table{min-width:860px}.player-cell{display:flex;align-items:center;gap:9px;min-width:190px}.player-cell>div{min-width:0}.player-cell b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-cell small{display:block;color:#626e7a;font-size:9px;margin-top:2px;max-width:340px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.version-badge{display:inline-flex;align-items:center;padding:4px 7px;border-radius:7px;background:#12162a;border:1px solid #2d3256;color:#b7bfff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.role-badge{display:inline-flex;align-items:center;padding:4px 7px;border-radius:7px;font-size:9px;font-weight:800;border:1px solid var(--line2)}.role-owner{color:#ffcb69;background:#251b08;border-color:#634814}.role-admin{color:#b69bff;background:#17112c;border-color:#45358a}.role-viewer{color:#73c8ff;background:#0c1b2a;border-color:#214b70}
.api-tabs{display:flex;gap:5px;overflow-x:auto;padding-bottom:8px;margin-bottom:8px;scrollbar-width:none}.api-tabs::-webkit-scrollbar{display:none}.api-tab{flex:none;display:flex;align-items:center;gap:7px;border:1px solid transparent;background:#0b1016;color:#788492;border-radius:10px;padding:9px 11px;cursor:pointer}.api-tab:hover{color:#edf2f7;border-color:#2a3340;background:#0f151d}.api-tab.active{color:#fff;background:#151025;border-color:#47398d;box-shadow:inset 0 -2px 0 var(--accent)}.api-tab .icon{width:15px;height:15px}
.api-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.api-card{min-width:0;border:1px solid var(--line);background:#0a1016;border-radius:13px;padding:12px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;cursor:pointer;color:inherit}.api-card:hover{border-color:#3a4552;background:#0d141d}.api-card.active{border-color:#4b3a9a;background:linear-gradient(180deg,#111127,#0c1018);box-shadow:inset 0 0 0 1px rgba(109,74,255,.12)}.api-card>span:nth-child(2){min-width:0}.api-card b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.api-card small{display:block;color:#63707d;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.api-card .chip{justify-self:end;white-space:nowrap}
.api-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.api-detail-grid>div{padding:11px;border:1px solid var(--line);border-radius:11px;background:#0b1016;min-width:0}.api-detail-grid b{display:block;font-size:12px;margin-top:4px}.api-detail-grid small{display:block;color:#65717d;font-size:9px;margin-top:3px}.big-code{display:block;margin-top:5px;color:#b4a6ff;word-break:break-all;font-size:11px}.feature-list{display:grid;gap:8px}.feature-row{display:flex;gap:9px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:10px;background:#0b1016}.feature-row>.icon{color:var(--green);margin-top:2px}.feature-row b{display:block;font-size:11px}.feature-row small{display:block;color:#626f7b;font-size:9px;line-height:1.45;margin-top:2px}.detail-list{display:grid;gap:0}.detail-list>div{display:grid;grid-template-columns:minmax(110px,.6fr) minmax(0,1.4fr);gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.04)}.detail-list>div:last-child{border-bottom:0}.detail-list dt{color:#65717e;font-size:9px}.detail-list dd{margin:0;color:#cbd3dc;font-size:10px;min-width:0;word-break:break-word}.code-block{margin:0;min-height:220px;max-height:470px;overflow:auto;padding:14px;border-radius:11px;border:1px solid #20283a;background:#070b12;color:#b8c6e8;font-size:10px;line-height:1.65;white-space:pre-wrap;word-break:break-word}.integration-grid{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.35fr);gap:12px}.integration-grid>.panel:nth-child(3){grid-column:1 / -1}.integration-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.repo-row{display:flex;gap:8px;align-items:flex-start;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.04)}.repo-row:last-child{border-bottom:0}.repo-row .icon{width:14px;color:#7387a7}.repo-row code{font-size:9px;color:#9ba7b5;word-break:break-all}.doc-list{display:grid;gap:7px}.doc-row{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#0b1016}.doc-row>div{min-width:0}.doc-row b{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-row small{display:block;color:#5f6c78;font-size:9px;margin-top:2px}.upload-zone-form{display:grid;gap:13px}.upload-drop{border:1px dashed #3d4e68;background:radial-gradient(circle at 50% 0,rgba(109,74,255,.10),transparent 45%),#090f17;border-radius:15px;min-height:220px;padding:28px 18px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:5px;cursor:pointer}.upload-drop:hover{border-color:#6250be;background-color:#0b1220}.upload-drop input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.upload-cloud{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:#14132a;border:1px solid #39306b;color:#ac9cff;margin-bottom:6px}.upload-drop b{font-size:13px}.upload-drop span{color:#7b8793;font-size:10px}.upload-drop small{color:#555f6c;font-size:9px;margin-top:4px}.upload-preview:empty{display:none}.upload-file-preview{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#0b1016}.upload-file-preview .icon{color:#8f7fff}.upload-file-preview b{font-size:10px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-file-preview span{color:#626e7a;font-size:9px}
.compact-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.compact-steps>div{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#0b1016}.compact-steps b{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#17132b;color:#ad9fff;border:1px solid #3b2f70;font-size:10px}.compact-steps span{color:#737f8b;font-size:9px;line-height:1.4}.security-card.modern{padding:14px}.security-card.modern p{max-width:560px}
.profile-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;margin-bottom:14px;background:radial-gradient(circle at 85% 0,rgba(109,74,255,.13),transparent 35%),linear-gradient(180deg,#0b0f15,#080c11)}.profile-identity{display:flex;align-items:center;gap:14px;min-width:0}.profile-avatar{background:linear-gradient(135deg,#18142d,#10151c);border-color:#44368b;color:#b9acff}.profile-identity h2{margin:3px 0 0;font-size:24px}.profile-quick{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));gap:9px;min-width:300px}.profile-quick>div{padding:11px;border:1px solid var(--line);border-radius:11px;background:#0b1016}.profile-quick b{display:block;font-size:11px}.profile-quick small{display:block;color:#626f7b;font-size:9px;margin-top:3px}.profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.profile-fields>div{padding:11px;border:1px solid var(--line);border-radius:10px;background:#0b1016}.profile-fields span{display:block;color:#616d7a;font-size:9px}.profile-fields b{display:block;font-size:11px;margin-top:4px;word-break:break-word}
.console-v5{padding:0;overflow:hidden;background:#080c11}.console-v5-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#0c1118,#090d13)}.console-server-title{display:flex;align-items:center;gap:9px;min-width:0}.console-server-title h2{margin:0;font-size:15px}.console-server-title small{display:block;color:#65717d;font-size:9px;margin-top:3px}.console-live-dot{width:9px;height:9px;border-radius:50%;background:#525c67;flex:none}.console-live-dot.live{background:var(--green);box-shadow:0 0 14px rgba(36,209,138,.65)}.console-head-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.console-toggle{display:flex;align-items:center;gap:6px;color:#6e7a87;font-size:9px;cursor:pointer}.console-toggle input{accent-color:var(--accent)}.console-v5-tools{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);background:#090e14;min-width:0}.console-search{min-width:260px;flex:1}.console-level{width:190px;min-height:36px}.console-result-count{color:#5e6a77;font-size:9px;white-space:nowrap}.console-v5-body{display:grid;grid-template-columns:minmax(0,1fr) 250px;min-height:560px}.v5-stream{min-height:560px;max-height:68vh;overflow:auto;padding:11px 0;background:#05080c}.server-console-line{display:grid;grid-template-columns:48px minmax(0,1fr);gap:9px;padding:3px 13px;font:10px/1.55 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}.server-console-line:hover{background:#0b1017}.console-gutter{color:#36404b;text-align:right;user-select:none}.console-line-text{min-width:0;overflow-wrap:anywhere}.console-v5-side{padding:10px;border-left:1px solid var(--line);background:#090d13;display:grid;align-content:start;gap:10px}.console-filter-stat{display:flex;gap:5px;flex-wrap:wrap}.quick-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.console-command-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.console-command-input{min-height:42px}.command-history-v2 .command-row{padding:11px 0}.command-history-v2 .cmd-main code{max-width:660px}.cmd-state{white-space:nowrap}.console-empty{min-height:440px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:#5f6b77;text-align:center;padding:24px}.console-empty .icon{color:#485565}.console-empty b{font-size:11px;color:#8e9aa7}.console-empty small{font-size:9px;max-width:360px;line-height:1.5}.console-v5 + .panel{margin-top:12px}
.plugin-table-wrap .data-table td,.user-admin-table .data-table td,.dependency-table .data-table td{vertical-align:middle}.api-catalog-grid + .content-grid{margin-top:12px}

@media(max-width:1200px){.api-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.integration-grid{grid-template-columns:1fr 1fr}.console-v5-body{grid-template-columns:minmax(0,1fr) 220px}}
@media(max-width:980px){.api-catalog-grid{grid-template-columns:1fr}.integration-grid{grid-template-columns:1fr}.integration-grid>.panel:nth-child(3){grid-column:auto}.profile-hero{align-items:flex-start;flex-direction:column}.profile-quick{width:100%;min-width:0}.console-v5-head{align-items:flex-start;flex-direction:column}.console-head-actions{width:100%;justify-content:flex-start}.console-v5-tools{flex-wrap:wrap}.console-search{width:100%;min-width:0;flex-basis:100%}.console-level{flex:1;width:auto}.console-v5-body{grid-template-columns:1fr}.console-v5-side{border-left:0;border-top:1px solid var(--line)}.v5-stream{max-height:52vh}.compact-steps{grid-template-columns:1fr}}
@media(max-width:700px){.main-content{padding:14px 12px 88px}.page-head h1{font-size:22px}.page-head-actions{width:100%}.page-head-actions .btn{flex:1;min-width:0}.filter-bar{align-items:stretch;flex-direction:column}.filter-bar>.muted{align-self:flex-start}.api-card{grid-template-columns:auto minmax(0,1fr)}.api-card .chip{grid-column:2;justify-self:start}.api-detail-grid,.profile-fields,.profile-quick{grid-template-columns:1fr}.profile-identity h2{font-size:21px}.console-command-form{grid-template-columns:1fr}.console-v5{border-radius:13px}.console-v5-tools{padding:9px}.console-level{width:100%;flex-basis:100%}.console-result-count{width:100%}.console-v5-side{padding:9px}.v5-stream{min-height:420px}.server-console-line{grid-template-columns:32px minmax(0,1fr);padding-left:8px;padding-right:8px}.plugin-table-wrap .data-table,.user-admin-table .data-table,.dependency-table .data-table{min-width:760px}.detail-list>div{grid-template-columns:1fr}.upload-drop{min-height:190px;padding:22px 12px}.compact-steps{gap:7px}.repo-row{align-items:flex-start}.code-block{font-size:9px;min-height:180px}.modal .form-grid.two{grid-template-columns:1fr}}
.upload-drop{position:relative}.upload-drop.dragover{border-color:#7d68ef;box-shadow:0 0 0 3px rgba(109,74,255,.12),inset 0 0 36px rgba(109,74,255,.07)}.upload-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;pointer-events:auto}.api-package-actions{margin-top:12px}.api-source-line{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:10px;color:#64717e;font-size:9px}.api-source-line code{word-break:break-all;color:#566273}

/* 5.1.0 — Maven Repository + Repository Tokens */
.repo-access-hero{display:flex;align-items:flex-start;gap:11px;padding:12px;border:1px solid #2a3047;background:linear-gradient(145deg,#0f1220,#090e15);border-radius:12px}.repo-access-hero>div{display:grid;gap:3px;min-width:0}.repo-access-hero b{font-size:12px}.repo-access-hero small{color:#697586;font-size:9px;line-height:1.5}.repo-url-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.repo-url-grid .input{font-size:9px}.scope-checks{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#0a1016}.scope-checks label{display:flex;gap:8px;align-items:center;color:#9aa5b0;font-size:10px}.scope-checks input{accent-color:var(--accent)}.secret-token-card{display:grid;gap:8px;padding:13px;border:1px solid #483b89;background:linear-gradient(145deg,#17132d,#0b1018);border-radius:12px}.secret-token-card>span{color:#8277a7;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.secret-token-card code{display:block;padding:10px;border-radius:9px;background:#06090e;border:1px solid #252d3a;color:#d7dfff;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.env-list{display:grid;grid-template-columns:auto 1fr;gap:7px 10px;align-items:center}.env-list code{padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:#080d13;color:#b6adf5;font-size:9px}.env-list span{font-size:9px;color:#687482}.api-tabs .api-tab{white-space:nowrap}
@media(max-width:700px){.repo-url-grid{grid-template-columns:1fr}.env-list{grid-template-columns:1fr}.env-list span{margin-bottom:3px}.secret-token-card code{font-size:10px}}

/* 5.3.0 — Eclipse Build Service */
.build-project-head{display:flex;align-items:center;gap:12px;margin-bottom:13px}.build-project-head h2{margin:0;font-size:16px}.build-project-head p{margin:4px 0 0;color:#667381;font-size:10px}.repo-large-url{display:block;padding:12px;border:1px solid var(--line2);border-radius:10px;background:#080c11;color:#a697ff;word-break:break-all;font-size:10px}.code-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.code-card-head>div{display:flex;gap:8px;align-items:center}.code-card-head small{font-size:9px}.build-code{max-height:360px;overflow:auto}.dependency-list-mini{display:grid;gap:7px}.dependency-list-mini>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.04)}.dependency-list-mini code{color:#9ca8b4;font-size:9px;word-break:break-all}.api-tab{white-space:nowrap}.repo-row>div{min-width:0;flex:1}.repo-row b{display:block;font-size:10px}.repo-row small{display:block;font-size:8px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:720px){.build-project-head{align-items:flex-start}.build-code{max-height:280px}.code-card-head{align-items:flex-start}.code-card-head .btn{flex:none}.repo-large-url{font-size:9px}}

/* 5.4.0 — mobile navigation hardening */
.mobile-sidebar-close{display:none}
.mobile-bottom-nav{display:none}
@media (max-width:980px){
  .sidebar{width:min(94vw,380px);max-width:380px;height:100dvh;max-height:100dvh;overflow:hidden}
  .sidebar-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px}
  .mobile-sidebar-close{display:grid;width:38px;height:38px;flex:none}
  .sidebar-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow-y:auto;overflow-x:hidden;padding-bottom:calc(14px + env(safe-area-inset-bottom))}
  .mobile-bottom-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:55;padding:5px;border:1px solid rgba(39,49,61,.92);border-radius:15px;background:rgba(7,10,14,.96);backdrop-filter:blur(18px);box-shadow:0 14px 48px rgba(0,0,0,.46),0 0 0 1px rgba(109,74,255,.04);gap:3px}
  .mobile-bottom-item{min-width:0;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:0;border-radius:11px;background:transparent;color:#7d8997;cursor:pointer;padding:5px 3px;touch-action:manipulation}
  .mobile-bottom-item .icon{width:18px;height:18px}
  .mobile-bottom-item span{font-size:8px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .mobile-bottom-item.active{color:#fff;background:linear-gradient(180deg,rgba(109,74,255,.22),rgba(109,74,255,.09));box-shadow:inset 0 0 0 1px rgba(109,74,255,.25)}
  .main-content{padding-bottom:92px}
  .mobile-open .mobile-bottom-nav{display:none}
  .mobile-open .mobile-menu-trigger{display:none}
  .mobile-open .sidebar{box-shadow:30px 0 90px rgba(0,0,0,.62)}
}
@media (max-width:700px){
  .sidebar{width:min(96vw,390px)}
  .sidebar-main-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 5px;align-content:start}
  .sidebar-main-nav .sidebar-label{grid-column:1/-1}
  .sidebar-main-nav .sidebar-item{min-height:42px;padding:8px 9px}
  .sidebar-main-nav .sidebar-item .icon{width:16px;height:16px}
  .sidebar-main-nav .sidebar-item span{font-size:10px}
  .sidebar-section:nth-of-type(2){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 5px}
  .sidebar-section:nth-of-type(2) .sidebar-label{grid-column:1/-1}
  .sidebar-footer{padding-bottom:0}
  .bridge-card{display:none}
  .sidebar-tools{gap:7px}
  .sidebar-control-block,.sidebar-account-row{width:100%}
  .sidebar-account-row{grid-template-columns:minmax(0,1fr) auto}
  .page-head-actions{display:grid;grid-template-columns:1fr;gap:7px}
  .page-head-actions .btn{width:100%}
  .api-tabs{margin-right:-4px;padding-right:4px;scroll-snap-type:x proximity}
  .api-tab{min-height:40px;padding:9px 10px;scroll-snap-align:start}
  .api-card{grid-template-columns:auto minmax(0,1fr);align-items:start}
  .api-card .chip{grid-column:2}
  .integration-grid,.api-detail-grid,.profile-fields,.profile-quick{grid-template-columns:1fr}
  .console-v5-head{padding:12px}
  .console-head-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:6px}
  .console-head-actions .btn,.console-head-actions .console-toggle{width:100%}
  .console-head-actions .console-toggle{justify-content:center;padding:9px 8px;border:1px solid var(--line);border-radius:10px;background:#0b1016}
  .console-v5-tools{display:grid;grid-template-columns:1fr;gap:7px}
  .console-search,.console-level{width:100%;min-width:0;flex-basis:auto}
  .console-command-form{grid-template-columns:1fr}
  .quick-command-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .console-v5-body{min-height:0}
  .v5-stream{min-height:360px;max-height:54vh}
  .server-console-line{font-size:9px;grid-template-columns:30px minmax(0,1fr)}
  .user-admin-table,.plugin-table-wrap,.dependency-table{overflow-x:auto}
  .modal-backdrop{padding:6px}
  .modal{width:100%;max-height:94svh;padding:14px}
}
@media (max-width:420px){
  .mobile-bottom-nav{left:5px;right:5px;bottom:calc(5px + env(safe-area-inset-bottom))}
  .mobile-bottom-item{min-height:50px}
  .mobile-bottom-item span{font-size:7.5px}
  .sidebar-main-nav .sidebar-item{padding:8px 7px}
  .sidebar-main-nav .sidebar-item span{font-size:9px}
}


/* 5.5.0 — account header, auto-refresh UX, profile avatar */
.app-topbar{position:sticky;top:-24px;z-index:35;display:flex;justify-content:flex-end;align-items:center;min-height:58px;margin:-24px -24px 18px;padding:10px 24px;background:linear-gradient(180deg,rgba(5,7,10,.98),rgba(5,7,10,.86),rgba(5,7,10,.15));backdrop-filter:blur(14px);pointer-events:none}
.topbar-user{pointer-events:auto;display:flex;align-items:center;gap:9px;border:1px solid var(--line2);background:rgba(11,16,22,.92);border-radius:12px;padding:5px 10px 5px 6px;cursor:pointer;text-align:left;min-width:150px;box-shadow:0 8px 28px rgba(0,0,0,.24)}
.topbar-user:hover{border-color:#3b4654;background:#111822}.topbar-user-copy{display:flex;flex-direction:column;min-width:0}.topbar-user-copy b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-user-copy small{font-size:10px;color:#6b7785;margin-top:2px}
.user-avatar.has-image{overflow:hidden;padding:0}.user-avatar img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}
.avatar-settings{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid var(--line);background:#090e14;border-radius:12px;margin-bottom:10px}.avatar-preview{flex:none}.avatar-settings b{font-size:12px}.avatar-settings p{margin:4px 0 0;font-size:10px}
@media(max-width:700px){.app-topbar{top:-14px;margin:-14px -12px 14px;padding:8px 12px;min-height:54px}.topbar-user{min-width:0;padding-right:8px}.topbar-user-copy b{font-size:11px}.topbar-user-copy small{font-size:9px}.avatar-settings{align-items:flex-start}}

.sidebar-footer{display:none!important}

/* 5.6.0 — server-side Build Runner */
.build-runner-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.build-runner-actions .btn{min-width:0}.build-capabilities{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.build-job-table{display:grid;min-width:0;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#080c11}.build-job-row{display:grid;grid-template-columns:minmax(180px,1.3fr) 90px 130px 160px;align-items:center;gap:10px;width:100%;padding:11px 12px;border:0;border-bottom:1px solid rgba(255,255,255,.045);background:transparent;color:var(--text);text-align:left;cursor:pointer}.build-job-row:last-child{border-bottom:0}.build-job-row:hover{background:#0d131a}.build-job-row small{display:block;color:#5e6a77;font-size:8px;margin-top:2px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.build-job-head-row{cursor:default;background:#0b1016;color:#66727f;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.build-job-head-row:hover{background:#0b1016}.build-job-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.build-job-head h3{margin:7px 0 3px;font-size:17px}.build-job-head p{margin:0;color:#65727f;font-size:9px;text-transform:uppercase;letter-spacing:.05em}.build-artifact-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:11px 12px;border:1px solid #234d3d;border-radius:12px;background:#091610}.build-artifact-card>div{min-width:0;display:grid;gap:4px}.build-artifact-card b{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.build-artifact-card small{font:8px ui-monospace,SFMono-Regular,Consolas,monospace;color:#67b992;overflow-wrap:anywhere}.build-log-stream{min-height:300px;max-height:62vh;overflow:auto;white-space:pre-wrap;word-break:break-word;background:#05080c;color:#c7d0da;border-color:#151d27;font:10px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}.build-runner-actions .btn[disabled]{opacity:.45;cursor:not-allowed}
@media(max-width:720px){.build-runner-actions{grid-template-columns:1fr}.build-job-row{grid-template-columns:minmax(150px,1fr) 78px 110px 145px;min-width:560px}.build-job-head{display:grid}.build-artifact-card{align-items:flex-start;flex-direction:column}.build-artifact-card .btn{width:100%}.build-log-stream{min-height:240px;max-height:52vh}}

/* 5.7.0 — mobile/navigation hard reset */
.mobile-bottom-nav{display:none!important}
.avatar-actions{display:flex;gap:8px;flex-wrap:wrap}
.avatar-actions .btn{flex:1 1 180px}
@media(max-width:980px){.app-shell{min-height:100dvh}.mobile-menu-trigger{display:grid!important;position:fixed;left:max(10px,env(safe-area-inset-left));top:max(10px,env(safe-area-inset-top));z-index:70;width:42px;height:42px;border:1px solid var(--line2);border-radius:12px;background:rgba(7,10,14,.96);backdrop-filter:blur(14px);box-shadow:0 12px 34px rgba(0,0,0,.4)}.app-topbar{padding-left:64px!important}.main-content{padding-bottom:24px!important}.mobile-open .mobile-menu-trigger{display:none!important}}
@media(max-width:560px){.topbar-user{min-width:0!important}.topbar-user-copy small{display:none}.console-v5-tools{grid-template-columns:1fr!important}.console-head-actions{grid-template-columns:1fr!important}.console-head-actions .console-toggle,.console-head-actions .btn{min-height:40px}.v5-stream{font-size:10px;max-height:58vh;min-height:300px}.server-console-line{grid-template-columns:30px minmax(0,1fr)!important}.avatar-actions{display:grid;grid-template-columns:1fr}.avatar-actions .btn{width:100%}}

/* 5.8.0 — account notifications, stable console side panel, profile avatar controls */
.topbar-actions{display:flex;align-items:center;gap:8px;pointer-events:auto;position:relative}
.notification-wrap{position:relative}
.topbar-notifications{min-height:44px;display:flex;align-items:center;gap:7px;border:1px solid var(--line2);background:rgba(11,16,22,.92);border-radius:12px;padding:0 11px;color:#aeb9c6;cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.2)}
.topbar-notifications:hover,.topbar-notifications.has-unread{border-color:#463a82;color:#fff;background:rgba(16,18,30,.96)}
.topbar-notifications .icon{width:17px;height:17px}.topbar-notifications em{font-style:normal;min-width:18px;height:18px;display:grid;place-items:center;padding:0 5px;border-radius:99px;background:var(--accent);color:#fff;font-size:9px;font-weight:800}
.notifications-popover{position:absolute;top:calc(100% + 8px);right:0;width:min(440px,calc(100vw - 30px));max-height:min(72vh,640px);overflow:hidden;display:flex;flex-direction:column;background:#090e14;border:1px solid var(--line2);border-radius:15px;box-shadow:0 24px 80px rgba(0,0,0,.55);z-index:140}
.notifications-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid var(--line)}
.notifications-head b{display:block;font-size:12px}.notifications-head small{display:block;color:#65727e;font-size:9px;margin-top:3px}
.text-btn{border:0;background:transparent;color:#9888ff;font-size:9px;cursor:pointer}.text-btn:disabled{opacity:.35;cursor:default}
.notifications-list{overflow:auto;padding:6px}.notification-item{width:100%;display:grid;grid-template-columns:28px minmax(0,1fr) 7px;gap:9px;align-items:start;padding:10px;border:1px solid transparent;border-radius:11px;background:transparent;color:inherit;text-align:left;cursor:pointer}.notification-item:hover{background:#0d131a;border-color:var(--line)}.notification-item.unread{background:rgba(109,74,255,.06);border-color:rgba(109,74,255,.14)}
.notification-item-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#101720;border:1px solid var(--line)}.notification-item-icon .icon{width:14px;height:14px}.tone-info{color:#78a9ff}.tone-success{color:#67e4ae}.tone-error{color:#ff7f8d}.tone-warning{color:#f1bd67}
.notification-item-body{min-width:0}.notification-item-body>b{display:block;font-size:10px;color:#e9edf2;line-height:1.35}.notification-item-body>span{display:block;margin-top:3px;color:#919eac;font-size:9px;line-height:1.45;overflow-wrap:anywhere}.notification-item-body>small{display:block;margin-top:5px;color:#566372;font-size:8px}.notification-details{display:grid;gap:4px;margin-top:7px;padding-top:7px;border-top:1px solid rgba(255,255,255,.045)}.notification-details>div{display:grid;grid-template-columns:minmax(80px,.7fr) minmax(0,1.3fr);gap:8px;font-size:8px}.notification-details span{color:#596673;text-transform:capitalize}.notification-details b{color:#9eabb7;font-weight:600;overflow-wrap:anywhere}.notification-unread-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px rgba(109,74,255,.45);margin-top:6px}.notification-empty{display:grid;place-items:center;text-align:center;gap:7px;padding:34px 18px;color:#65717e}.notification-empty .icon{width:24px;height:24px;color:#7f70ff}.notification-empty b{font-size:11px;color:#9aa6b3}.notification-empty span{font-size:9px;line-height:1.5;max-width:260px}
.profile-avatar-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.profile-avatar-actions .btn{min-width:0}.avatar-modal-preview{display:flex;justify-content:center;padding:8px 0 16px}.avatar-modal-preview .user-avatar{box-shadow:0 12px 34px rgba(0,0,0,.28)}
.console-v5-body{grid-template-columns:minmax(0,1fr) minmax(280px,310px)!important;min-width:0;align-items:stretch}.console-v5-side{min-width:280px;max-width:310px;min-height:0;display:grid;gap:10px;align-content:start;overflow:auto}.console-side-card{min-width:0;border:1px solid var(--line);border-radius:13px;background:#090e14;padding:12px}.console-side-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:10px}.console-side-card-head>b,.console-side-card-head>div>b{display:block;font-size:11px}.console-side-card-head small,.console-side-card-head>div>small{display:block;color:#5f6b78;font-size:8px;margin-top:3px}.console-filter-stat{display:flex;flex-wrap:wrap;gap:5px}.console-side-note{margin-top:9px;color:#66737f;font-size:9px;line-height:1.5}.console-side-dl{display:grid;gap:7px;margin:0}.console-side-dl>div{display:grid;grid-template-columns:1fr minmax(0,1.2fr);gap:7px;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.04)}.console-side-dl>div:last-child{padding-bottom:0;border-bottom:0}.console-side-dl dt{color:#586572;font-size:8px}.console-side-dl dd{margin:0;color:#a6b1bd;font-size:9px;word-break:break-word;text-align:right}.console-side-card .empty-state.slim{margin:0}
@media(max-width:1100px){.console-v5-body{grid-template-columns:minmax(0,1fr) 280px!important}.console-v5-side{min-width:280px;max-width:280px}}
@media(max-width:820px){.console-v5-body{grid-template-columns:1fr!important}.console-v5-side{min-width:0;max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.console-side-card:last-child{grid-column:1/-1}}
@media(max-width:560px){.topbar-actions{width:100%;justify-content:flex-end}.topbar-notifications span{display:none}.topbar-notifications{padding:0 10px;min-width:42px;justify-content:center}.notifications-popover{right:-6px;width:calc(100vw - 20px)}.profile-avatar-actions{display:grid;grid-template-columns:1fr}.profile-avatar-actions .btn{width:100%}.console-v5-side{grid-template-columns:1fr}.console-side-card:last-child{grid-column:auto}}


/* Eclipse Web 6.0.0 — complete interface rewrite */
.app-topbar{pointer-events:auto!important;position:sticky;top:-24px;z-index:120;display:flex;justify-content:flex-end;align-items:center;min-height:64px;padding:10px 0 12px;margin:-24px 0 14px;background:linear-gradient(180deg,rgba(5,7,10,.99) 0%,rgba(5,7,10,.94) 65%,rgba(5,7,10,.68) 100%);backdrop-filter:blur(16px);border-bottom:1px solid rgba(39,49,61,.55)}
.topbar-actions{display:flex;align-items:center;gap:9px;position:relative;z-index:2}
.topbar-user{display:flex;align-items:center;gap:9px;border:1px solid var(--line2);background:rgba(11,16,22,.96);border-radius:12px;padding:5px 12px 5px 6px;cursor:pointer;text-align:left;min-width:150px;box-shadow:0 8px 28px rgba(0,0,0,.28)}
.topbar-user:hover{border-color:#3b4654;background:#111822}
.notification-wrap{position:relative;z-index:4}
.notifications-popover{pointer-events:auto}
.notifications-footer{border-top:1px solid var(--line);padding:10px 12px;text-align:right;background:#080d13}
.notifications-open-all{font-size:11px}
.profile-avatar-actions,.profile-avatar-management{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.profile-avatar-management{justify-content:flex-start;padding:15px;border:1px solid var(--line);border-radius:13px;background:#090e14}
.profile-avatar-management-preview{flex:none}.profile-avatar-management-copy{min-width:0;display:grid;gap:5px}.profile-avatar-management-copy b{font-size:12px}.profile-avatar-management-copy p{margin:0;color:#66737f;font-size:10px;line-height:1.45;max-width:680px}
.notification-full-list{display:grid;gap:8px}.notification-full-item{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#090e14}.notification-full-item.unread{border-color:rgba(109,74,255,.35);box-shadow:0 0 0 1px rgba(109,74,255,.06) inset}.notification-full-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--line2);background:#0d131a}.notification-full-body{min-width:0}.notification-full-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.notification-full-head b{font-size:12px}.notification-full-head small{color:#596674;font-size:9px;white-space:nowrap}.notification-full-body p{margin:6px 0;color:#a5b0bc;font-size:10px;line-height:1.5}.notification-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:#606d7a;font-size:9px}.notification-meta span{display:inline-flex;align-items:center;gap:5px}.notification-meta .icon{width:12px;height:12px}.notification-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.notification-details>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:6px;padding:7px;border:1px solid rgba(255,255,255,.045);border-radius:8px;background:#080c11}.notification-details span{color:#586572;font-size:8px}.notification-details b{color:#a8b3bf;font-size:8px;overflow-wrap:anywhere;text-align:right}
.console-v5-body{grid-template-columns:minmax(0,1fr) minmax(320px,360px)!important;min-width:0;align-items:stretch;overflow:hidden}
.console-v5-side{width:auto!important;min-width:0!important;max-width:none!important;min-height:560px;overflow:auto;contain:layout paint}
.console-v5,.v5-stream{min-width:0}.v5-stream{overscroll-behavior:contain}.server-console-line{min-width:0}.console-line-text{min-width:0;word-break:break-word;overflow-wrap:anywhere}
@media(max-width:1200px) and (min-width:981px){.console-v5-body{grid-template-columns:minmax(0,1fr) 300px!important}.console-v5-side{min-height:560px}}
@media(max-width:820px){.console-v5-body{grid-template-columns:1fr!important}.console-v5-side{min-height:0!important}}
@media(max-width:980px){.app-topbar{top:-14px;margin:-14px -12px 14px;padding:8px 12px;min-height:56px}.profile-avatar-management{align-items:flex-start}.notification-details{grid-template-columns:1fr}}


/* 7.11.0 shell contract: topbar is persistent and content is replaceable independently. */
.app-shell{grid-template-columns:270px minmax(0,1fr);}
.main-scroll{min-width:0;min-height:0;overflow:auto;}
.main-content{width:min(1540px,100%);min-height:100%;margin:0 auto;padding:0 28px 36px;}
.content-view{min-width:0;display:grid;gap:0;}
.app-topbar{position:sticky!important;top:0!important;margin:0 -28px 22px!important;padding:12px 28px!important;min-height:72px!important;background:rgba(5,7,10,.94)!important;backdrop-filter:blur(18px);border-bottom:1px solid rgba(39,49,61,.72);}
.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:10px;position:relative;}
.topbar-user-wrap,.notification-wrap{position:relative;z-index:140;}
.topbar-user{min-width:180px;min-height:44px;padding:5px 9px 5px 6px!important;}
.topbar-user-copy{display:flex;flex-direction:column;min-width:0;flex:1;}
.topbar-user-copy b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.topbar-user-copy small{font-size:9px;color:#687582;margin-top:2px;}
.topbar-user>.icon{width:14px;height:14px;color:#66717d;}
.topbar-user.open{border-color:#4b3e91;background:#111022;}
.user-popover{top:calc(100% + 8px)!important;right:0!important;width:270px!important;z-index:200!important;}
.notifications-popover{top:calc(100% + 8px)!important;right:0!important;z-index:200!important;}
.sidebar{height:100svh;overflow:hidden;}
.sidebar-scroll{min-height:0;overflow-y:auto;overflow-x:hidden;}
.sidebar-footer{position:relative;flex:none;background:#07090c;padding:12px;border-top:1px solid var(--line);z-index:120;}
.sidebar-footer .sidebar-label{padding-left:2px;}
.sidebar-footer .server-switcher{width:100%;}
.sidebar-footer .server-switcher-btn{width:100%;min-width:0;}
.sidebar-footer .server-popover{left:0!important;right:0!important;top:auto!important;bottom:calc(100% + 8px)!important;width:auto!important;max-height:min(60vh,420px);overflow:auto;z-index:220!important;}
.sidebar-footer .server-option{min-width:0;}
.page-head{padding-top:2px;margin-bottom:22px;}
.page-head h1{font-size:30px;}
.panel,.metric-card,.server-card,.plugin-card,.api-card,.user-admin-card,.notification-full-item{box-shadow:0 10px 30px rgba(0,0,0,.16);}
.panel{overflow:clip;}
/* Every data table/list must stay inside its section rather than expanding the page. */
.table-wrap,.plugin-table-wrap,.user-admin-table,.dependency-table{max-width:100%;overflow:auto;}
/* Console is a fixed two-column workspace on desktop and a single stack on small screens. */
.console-v5-body{display:grid!important;grid-template-columns:minmax(0,1fr) 340px!important;gap:12px!important;min-width:0!important;overflow:hidden!important;}
.console-v5-side{display:grid!important;grid-template-columns:1fr!important;align-content:start!important;min-width:0!important;width:auto!important;max-width:none!important;overflow:auto!important;}
.v5-stream{min-width:0!important;overflow:auto!important;}
.console-side-card{min-width:0;overflow:hidden;}
.server-console-line{min-width:0;}
.console-line-text{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;}
@media(max-width:1200px) and (min-width:981px){.console-v5-body{grid-template-columns:minmax(0,1fr) 300px!important;}}
@media(max-width:980px){
  .main-content{padding:0 14px 90px;}
  .app-topbar{margin:0 -14px 16px!important;padding:9px 14px!important;min-height:60px!important;}
  .topbar-user{min-width:0!important;max-width:190px;}
  .console-v5-body{grid-template-columns:1fr!important;overflow:visible!important;}
  .console-v5-side{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;}
  .console-side-card:last-child{grid-column:1/-1;}
}
@media(max-width:560px){
  .main-content{padding:0 10px 82px;}
  .app-topbar{margin:0 -10px 14px!important;padding:8px 10px!important;}
  .topbar-user-copy small{display:none;}
  .topbar-user{padding-right:7px!important;}
  .console-v5-side{grid-template-columns:1fr!important;}
  .console-side-card:last-child{grid-column:auto;}
}

.code-editor-meta{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 12px}.code-editor-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:520px;border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#070b10}.code-editor-files{display:grid;align-content:start;gap:4px;padding:8px;background:#090e14;border-right:1px solid var(--line);overflow:auto}.code-editor-file{display:flex;align-items:center;gap:8px;min-width:0;padding:9px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#82909f;text-align:left;cursor:pointer}.code-editor-file:hover{background:#101720;color:#eaf0f6}.code-editor-file.active{background:#17122b;border-color:#44358c;color:#fff}.code-editor-file .icon{width:14px;flex:none}.code-editor-file span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.code-editor-main{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0}.code-editor-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);background:#0b1016}.code-editor-head b{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.code-editor-head small{display:block;color:#626f7d;font-size:9px;margin-top:2px}.code-editor-text{width:100%;height:100%;min-height:470px;resize:none;border:0;outline:0;padding:15px;background:#06090e;color:#c5d0e3;font:11px/1.65 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;tab-size:4}.code-result-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid #40327f;background:linear-gradient(145deg,#15122a,#090e15);border-radius:12px}.code-result-card b{display:block;font-size:12px}.code-result-card p{margin:4px 0 0;color:#727e8c;font-size:9px;line-height:1.5}.check-card{display:flex;gap:9px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:10px;background:#0b1016}.check-card input{margin-top:3px;accent-color:var(--accent)}.check-card b{display:block;font-size:10px}.check-card small{display:block;color:#64707c;font-size:9px;margin-top:2px}
@media(max-width:980px){.code-editor-shell{grid-template-columns:1fr}.code-editor-files{grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);grid-template-rows:auto;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line)}.code-editor-text{min-height:420px}.code-result-card{align-items:stretch;flex-direction:column}}

/* Eclipse Web 7.11.0 — final layout contract */
html,body{min-width:0!important}
.app-shell,.app-content,.app-main,.content-view,.workspace,.main-content{min-width:0!important}
.console-v5{min-width:0!important;overflow:visible!important}
.console-v5-body{display:grid!important;grid-template-columns:minmax(0,1fr) 340px!important;gap:12px!important;min-width:0!important;width:100%!important;overflow:visible!important;align-items:stretch!important}
.console-v5-main,.console-v5-side{min-width:0!important;max-width:none!important;opacity:1!important;visibility:visible!important}
.console-v5-main{overflow:hidden!important}
.console-v5-side{display:grid!important;grid-template-columns:1fr!important;width:auto!important;border-left:1px solid var(--line)!important;overflow:auto!important;min-height:560px!important}
.permission-category-head-v2{cursor:pointer!important}
.permission-category.is-collapsed .permission-list-v2{display:none!important}
.permission-category:not(.is-collapsed) .permission-list-v2{display:grid!important}
.notification-center-panel{overflow:hidden!important}
.notification-center-panel.is-collapsed .notification-full-list{display:none!important}
.icon{vector-effect:non-scaling-stroke}
@media(max-width:1200px) and (min-width:981px){.console-v5-body{grid-template-columns:minmax(0,1fr) 300px!important}.console-v5-side{min-height:520px!important}}
@media(max-width:980px){
  .app-shell{display:block!important;height:auto!important;min-height:100svh!important}
  .console-v5-body{grid-template-columns:1fr!important;overflow:visible!important}
  .console-v5-side{border-left:0!important;border-top:1px solid var(--line)!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;min-height:0!important}
}
@media(max-width:560px){.console-v5-side{grid-template-columns:1fr!important}.notification-details{grid-template-columns:1fr!important}}

/* Eclipse Web 7.11.0 — final UI contract */
.icon{width:18px;height:18px;display:inline-block;flex:none;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.18em}
.sidebar .icon,.app-topbar .icon,.btn .icon,.icon-btn .icon,.feature-row .icon,.nav-item .icon{width:18px;height:18px}
.console-v5-body{display:grid!important;grid-template-columns:minmax(0,1fr) 360px!important;align-items:stretch!important;min-width:0!important}
.console-v5-main,.console-v5-side{min-width:0!important;max-width:none!important}
.console-v5-side{display:grid!important;grid-template-rows:repeat(3,minmax(0,1fr));gap:12px!important;align-content:start!important}
.notifications-popover{z-index:1100!important}
.topbar-user-wrap,.notification-wrap,.server-switcher{position:relative}
@media (max-width:980px){.console-v5-body{grid-template-columns:minmax(0,1fr)!important}.console-v5-side{grid-template-columns:1fr!important}.console-v5-side>*{min-height:0}.app-shell{grid-template-columns:1fr!important}.sidebar{position:fixed!important;inset:0 auto 0 0!important;width:min(88vw,320px)!important;z-index:900!important;transform:translateX(-105%);transition:transform .2s ease}.app-shell.mobile-open .sidebar{transform:translateX(0)}.workspace,.main-scroll{min-width:0!important;width:100%!important}}
@media (min-width:981px){.app-shell{grid-template-columns:270px minmax(0,1fr)!important}.sidebar{position:sticky!important;inset:auto!important;transform:none!important;width:auto!important}.mobile-nav-toggle{display:none!important}}

/* Eclipse Web 7.11.0 — deterministic desktop/mobile and icon contract */
:root{--icon-size:18px}
.icon{display:inline-block!important;width:18px!important;height:18px!important;flex:0 0 18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sidebar .icon,.app-topbar .icon,.btn .icon,.icon-btn .icon,.feature-row .icon,.nav-item .icon,.plugin-icon .icon,.modal-icon .icon,.notification-full-icon .icon{width:18px!important;height:18px!important}
.permission-toolbar-buttons{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
.permission-toolbar-buttons .btn{white-space:nowrap!important}
.permission-category-head-v2{display:flex!important;align-items:center!important;width:100%!important}
.permission-category-head-v2 .category-arrow{transition:transform .16s ease}
.permission-category-head-v2.collapsed .category-arrow{transform:rotate(-90deg)}
.permission-category.is-collapsed .permission-list-v2{display:none!important}
.permission-category:not(.is-collapsed) .permission-list-v2{display:grid!important}
.notifications-popover,.user-popover{max-width:min(420px,calc(100vw - 24px))!important}
.notification-center-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
.notification-center-panel.is-collapsed .notification-center-head{border-bottom:0!important}
.console-v5-body{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(320px,360px)!important;grid-auto-flow:column!important;gap:12px!important;align-items:stretch!important;min-height:560px!important}
.console-v5-main{min-width:0!important;min-height:560px!important;overflow:hidden!important}
.console-v5-side{min-width:0!important;width:auto!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:repeat(3,minmax(0,auto))!important;overflow:auto!important;visibility:visible!important;opacity:1!important}
@media(max-width:1200px) and (min-width:981px){.console-v5-body{grid-template-columns:minmax(0,1fr) 300px!important}}
@media(max-width:980px){.app-shell{display:block!important;grid-template-columns:1fr!important;min-height:100svh!important}.workspace,.main-scroll,.app-content,.content-view{width:100%!important;min-width:0!important}.console-v5-body{display:grid!important;grid-template-columns:1fr!important;grid-auto-flow:row!important;min-height:0!important}.console-v5-main{min-height:420px!important}.console-v5-side{grid-template-columns:1fr 1fr!important;grid-template-rows:none!important;min-height:0!important;border-left:0!important}.sidebar{position:fixed!important}.sidebar-footer{position:relative!important}}
@media(max-width:560px){.console-v5-side{grid-template-columns:1fr!important}.app-topbar .topbar-actions{width:100%!important}.notification-full-head{flex-direction:column!important;align-items:flex-start!important}}


/* Eclipse Web 7.11.0 deterministic UI contract */
.app-topbar{position:sticky;top:0;z-index:90;min-height:64px;background:rgba(5,7,10,.96);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;padding:10px 18px}
.topbar-actions{display:flex;align-items:center;gap:10px;position:relative}.notification-wrap,.topbar-user-wrap{position:relative}.notifications-popover,.user-popover{position:absolute;right:0;top:calc(100% + 8px);z-index:120}.notification-center-panel.is-collapsed .notification-full-list{display:none}.notification-center-panel{overflow:hidden}.notification-center-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.permissions-layout{align-items:start}.permission-catalog-toolbar-v3{position:sticky;top:0;z-index:15}.permission-toolbar-buttons{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.permission-toolbar-buttons .btn{white-space:nowrap}.permission-list-v2.is-collapsed{display:none}.permission-category-v3.is-collapsed .permission-category-head .category-arrow{transform:rotate(-90deg)}
.console-v5-body{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;align-items:stretch;min-width:0}.console-v5-side{min-width:0;display:grid;gap:12px;align-content:start;position:sticky;top:78px}.console-v5-body>.console-v5-side{width:auto;min-width:0}.console-v5-body .server-console{min-width:0;max-width:none}.console-v5{min-width:0;overflow:hidden}.icon{width:18px;height:18px;display:inline-block;vertical-align:-4px;flex:none}.btn .icon,.workspace-tab .icon,.nav-item .icon,.topbar-user .icon,.topbar-notifications .icon{width:17px;height:17px}.metric-icon .icon,.plugin-icon .icon{width:22px;height:22px}
@media (max-width:980px){.console-v5-body{grid-template-columns:1fr}.console-v5-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.app-topbar{padding:9px 12px}.topbar-actions{width:100%;justify-content:flex-end}.notifications-popover,.user-popover{position:fixed;right:10px;top:72px;left:10px;max-width:none}.permission-toolbar-buttons{width:100%}}
@media (max-width:640px){.console-v5-side{grid-template-columns:1fr}.topbar-notifications span{display:none}.topbar-user-copy small{display:none}.topbar-user{padding:7px 9px}.topbar-notifications{padding:9px}.permission-toolbar-buttons .btn{flex:1;min-width:130px}.form-grid.two{grid-template-columns:1fr}.code-editor-shell{grid-template-columns:1fr}.code-editor-files{max-height:180px}}

/* Eclipse Web 7.11.0 — code migration folder picker and permission disclosure contract */
.code-upload-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%}
.upload-file-picker{min-width:0}
.upload-file-picker input[type=file]{display:block;width:100%;font:inherit}
.permission-category.is-collapsed .permission-list-v2{display:none!important}
.permission-category-head[aria-expanded="false"] .category-arrow{transform:rotate(-90deg)}
.permission-category-head[aria-expanded="true"] .category-arrow{transform:rotate(0deg)}
.permission-switch.is-pending{opacity:.7;pointer-events:none}
@media(max-width:980px){.code-upload-inputs{grid-template-columns:1fr}.app-topbar{position:sticky;top:0;z-index:40}.notifications-popover,.user-popover{max-width:calc(100vw - 24px)}}
/* Eclipse Web 7.11.0 — migration folder picker / stable permission disclosure */
.code-upload-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%}
.upload-file-picker{min-width:0}
.upload-file-picker input[type=file]{display:block;width:100%;font:inherit}
.permission-category.is-collapsed .permission-list-v2{display:none!important}
.permission-category-head[aria-expanded="false"] .category-arrow{transform:rotate(-90deg)}
.permission-category-head[aria-expanded="true"] .category-arrow{transform:rotate(0deg)}
.permission-switch.is-pending{opacity:.7;pointer-events:none}
@media(max-width:980px){.code-upload-inputs{grid-template-columns:1fr}.app-topbar{position:sticky;top:0;z-index:40}.notifications-popover,.user-popover{max-width:calc(100vw - 24px)}}


/* Eclipse Web 7.13.0 — permissions / console / notifications stability */
.notifications-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.danger-text{color:var(--danger,#ff6b81)!important}
.permission-toolbar-buttons [data-permission-global-toggle]{pointer-events:auto!important;position:relative!important;z-index:20!important}
.console-v5-body{min-height:560px!important}
.console-v5-main{min-height:560px!important;min-width:0!important}
.console-v5-side{position:sticky!important;top:78px!important;align-self:start!important;min-height:560px!important;visibility:visible!important;opacity:1!important}
@media(max-width:980px){.console-v5-side{position:static!important;min-height:0!important}.console-v5-main{min-height:420px!important}}

/* 7.13.0 — role section access control */
.section-access-intro{display:flex;align-items:flex-start;gap:11px;padding:12px;border:1px solid #2b2349;border-radius:12px;background:linear-gradient(145deg,#111022,#090e15);margin-bottom:12px}.section-access-intro>div{display:grid;gap:3px;min-width:0}.section-access-intro b{font-size:12px;color:#e9edf4}.section-access-intro small{font-size:9px;color:#687585;line-height:1.5}.section-access-role-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.section-access-table{display:grid;gap:6px}.section-access-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 110px;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:#090e14}.section-access-row.locked{opacity:.62}.section-access-copy{display:flex;align-items:center;gap:9px;min-width:0}.section-access-copy>div{min-width:0}.section-access-copy b{display:block;font-size:11px}.section-access-copy small{display:block;color:#65717f;font-size:9px;line-height:1.35;margin-top:2px}.access-switch{display:grid;grid-template-columns:32px auto;align-items:center;gap:6px;cursor:pointer;color:#7d8997;font-size:9px}.access-switch input{position:absolute;opacity:0;pointer-events:none}.access-switch span{width:32px;height:19px;border-radius:999px;background:#18212b;border:1px solid #303c48;padding:2px;position:relative;transition:.16s}.access-switch span:after{content:"";position:absolute;width:13px;height:13px;left:2px;top:2px;border-radius:50%;background:#697583;transition:.16s}.access-switch input:checked+span{background:#3a8f6b;border-color:#57c595}.access-switch input:checked+span:after{transform:translateX(13px);background:#effff8}.access-switch input:disabled+span{opacity:.55}.access-switch em{font-style:normal}.section-access-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);color:#64717e;font-size:9px}.section-access-footer .btn{flex:none}
@media(max-width:760px){.section-access-row{grid-template-columns:1fr 1fr}.section-access-copy{grid-column:1/-1}.section-access-footer{align-items:stretch;flex-direction:column}.section-access-footer .btn{width:100%}.section-access-role-tabs{grid-template-columns:1fr}.access-switch{min-height:38px}}


/* Eclipse Web 7.16.0 — historical console compatibility styles */
.console-v6-root{min-width:0;display:grid;gap:12px}
.console-v6-shell{min-width:0;border:1px solid var(--line);border-radius:16px;background:#070a0f;overflow:hidden}
.console-v6-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:#090d13;min-width:0}
.console-v6-server{display:flex;align-items:center;gap:10px;min-width:0}.console-v6-server>div{min-width:0}.console-v6-server h2{margin:0;font-size:15px;line-height:1.2}.console-v6-server small{display:block;color:#64707d;font-size:9px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.console-v6-led{width:9px;height:9px;border-radius:50%;background:#4b5660;flex:none}.console-v6-led.is-online{background:var(--green);box-shadow:0 0 12px rgba(36,209,138,.42)}
.console-v6-header-actions{display:flex;align-items:center;gap:7px;justify-content:flex-end;flex-wrap:wrap}.console-v6-status{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border:1px solid #27313b;border-radius:999px;color:#7b8793;font-size:9px}.console-v6-status.is-live{border-color:rgba(36,209,138,.32);color:#72e2b3;background:rgba(36,209,138,.07)}.console-v6-status.is-online{border-color:rgba(86,159,239,.32);color:#86bdf2;background:rgba(86,159,239,.07)}.console-v6-status.is-error{border-color:rgba(255,99,124,.34);color:#ff8ba0;background:rgba(255,99,124,.07)}
.console-v6-check{display:inline-flex;align-items:center;gap:6px;color:#7b8793;font-size:9px;white-space:nowrap}.console-v6-check input{accent-color:var(--accent)}
.console-v6-error{margin:10px 12px 0;padding:10px 11px;border:1px solid rgba(255,99,124,.28);border-radius:10px;background:rgba(255,99,124,.06);color:#ff9aac;font-size:9px;line-height:1.5}.console-v6-error[hidden]{display:none}
.console-v6-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line);background:#080c12;min-width:0}.console-v6-search{display:flex;align-items:center;gap:8px;min-width:0;height:38px;padding:0 11px;border:1px solid #202a35;border-radius:10px;background:#070b10;color:#64717f}.console-v6-search .icon{width:15px;height:15px}.console-v6-search input{border:0;outline:0;background:transparent;color:#e7ecf2;font:inherit;font-size:10px;min-width:0;width:100%}.console-v6-levels{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.console-v6-level-btn{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 9px;border:1px solid #222c36;border-radius:9px;background:#0a0f15;color:#75818e;font-size:9px;cursor:pointer}.console-v6-level-btn span{color:#4e5a67}.console-v6-level-btn.is-active{border-color:#6e56d9;background:#171329;color:#edeaff}.console-v6-level-btn.is-active span{color:#c9bdff}
.console-v6-main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,340px);gap:0;min-width:0;align-items:stretch}.console-v6-terminal-wrap{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);border-right:1px solid var(--line)}.console-v6-terminal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border-bottom:1px solid #111821;color:#586575;font:8px/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.08em}.console-v6-terminal-head b{color:#aab5c1}.console-v6-stream{height:clamp(420px,62vh,720px);min-height:420px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:8px 0;background:#05080c;font:10px/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}.console-v6-line{display:grid;grid-template-columns:42px 54px 66px minmax(0,1fr);gap:7px;align-items:start;padding:3px 10px;min-width:0;border-left:2px solid transparent}.console-v6-line:hover{background:#090f16}.console-v6-gutter,.console-v6-time{color:#3e4955;user-select:none;text-align:right}.console-v6-level{font-size:8px;font-weight:700;letter-spacing:.04em;color:#677482;padding-top:1px}.console-v6-line.level-warn{border-left-color:#c49a46;background:rgba(196,154,70,.025)}.console-v6-line.level-warn .console-v6-level{color:#d7ad58}.console-v6-line.level-error,.console-v6-line.level-fatal{border-left-color:#c94d67;background:rgba(201,77,103,.028)}.console-v6-line.level-error .console-v6-level,.console-v6-line.level-fatal .console-v6-level{color:#ed7189}.console-v6-line.level-info .console-v6-level{color:#77aee2}.console-v6-line.level-debug .console-v6-level{color:#a887dd}.console-v6-line.level-trace .console-v6-level{color:#7d8a98}.console-v6-line-text{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;color:#d7dee8}.console-v6-empty{height:100%;min-height:400px;display:grid;place-items:center;align-content:center;gap:6px;padding:30px;text-align:center;color:#586575}.console-v6-empty-icon .icon{width:25px;height:25px;color:#3d4a58}.console-v6-empty b{font-size:11px;color:#8e9aa7}.console-v6-empty small{font-size:9px;line-height:1.5;max-width:380px}
.console-v6-side{min-width:0;display:grid;gap:10px;align-content:start;padding:10px;background:#080c12}.console-v6-card{min-width:0;border:1px solid #1c2630;border-radius:12px;background:#090e14;padding:11px}.console-v6-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:10px}.console-v6-card-head b{display:block;font-size:11px}.console-v6-card-head small{display:block;margin-top:3px;color:#5e6a77;font-size:8px}.console-v6-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.console-v6-metrics button{min-width:0;display:grid;gap:3px;padding:8px;border:1px solid #1a242f;border-radius:9px;background:#070b10;color:#6c7885;text-align:left;cursor:pointer}.console-v6-metrics button:hover{background:#0b1016}.console-v6-metrics button.is-active{border-color:#6e56d9;background:#171329}.console-v6-metrics button.is-active span{color:#c9bdff}.console-v6-metrics button.is-active b{color:#edeaff}.console-v6-metrics button span{font-size:8px}.console-v6-metrics button b{font-size:12px;color:#d8dfe7}.console-v6-quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.console-v6-readonly{display:flex;align-items:flex-start;gap:8px;padding:9px;border:1px dashed #26313c;border-radius:9px;color:#66737f}.console-v6-readonly .icon{width:17px;height:17px}.console-v6-readonly b{display:block;color:#c0c8d0;font-size:10px}.console-v6-readonly span{display:block;margin-top:3px;color:#626f7c;font-size:8px;line-height:1.45}.console-v6-dl{display:grid;gap:7px;margin:0}.console-v6-dl>div{display:grid;grid-template-columns:1fr minmax(0,1.3fr);gap:8px;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.045)}.console-v6-dl>div:last-child{padding-bottom:0;border-bottom:0}.console-v6-dl dt{color:#596675;font-size:8px}.console-v6-dl dd{margin:0;color:#adb7c1;text-align:right;font-size:8px;word-break:break-word}
.console-v6-command-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end}.console-v6-command-form label{display:block;color:#73808d;font-size:9px;margin-bottom:5px}.console-v6-command-form small{display:block;color:#5e6a77;font-size:8px;line-height:1.45;margin-top:5px}.console-v6-command-input{min-height:42px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}.console-v6-history{display:grid}.console-v6-history-row{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.045);min-width:0}.console-v6-history-row:last-child{border-bottom:0}.console-v6-command-dot{width:7px;height:7px;border-radius:50%;flex:none;background:#6b7580}.console-v6-command-dot.ok{background:var(--green)}.console-v6-command-dot.bad{background:var(--red)}.console-v6-command-dot.wait{background:#b28a47}.console-v6-history-main{min-width:0;flex:1}.console-v6-history-main b{display:block;font-size:10px}.console-v6-history-main code{display:block;max-width:100%;margin-top:3px;padding:4px 6px;border:1px solid #19222d;border-radius:7px;background:#070b10;color:#b6c0ce;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-v6-history-main small{display:block;margin-top:4px;color:#5e6a77;font-size:8px}.console-v6-history-row>strong{font-size:8px;color:#6f7b88;white-space:nowrap}
@media(max-width:1180px){.console-v6-main-grid{grid-template-columns:minmax(0,1fr) 300px}}
@media(max-width:980px){.console-v6-header{align-items:flex-start;flex-direction:column}.console-v6-header-actions{width:100%;justify-content:flex-start}.console-v6-toolbar{grid-template-columns:1fr}.console-v6-levels{justify-content:flex-start}.console-v6-main-grid{grid-template-columns:1fr}.console-v6-terminal-wrap{border-right:0;border-bottom:1px solid var(--line)}.console-v6-side{grid-template-columns:repeat(2,minmax(0,1fr))}.console-v6-card:last-child{grid-column:1/-1}.console-v6-stream{height:58vh;min-height:380px}}
@media(max-width:640px){.console-v6-side{grid-template-columns:1fr}.console-v6-card:last-child{grid-column:auto}.console-v6-line{grid-template-columns:34px 48px minmax(0,1fr)}.console-v6-time{display:none}.console-v6-command-form{grid-template-columns:1fr}.console-v6-command-form .btn{width:100%;min-height:42px}.console-v6-header-actions .btn{min-height:40px}.console-v6-level-btn{min-height:36px}.console-v6-search{height:42px}}


/* Eclipse Web 7.17.0 — stable console workspace */
.console-v7-root{min-width:0;display:grid;gap:14px}
.console-v7-workspace{min-width:0;border:1px solid var(--line);border-radius:16px;background:#070a0f;overflow:hidden}
.console-v7-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:#090d13;min-width:0}
.console-v7-server{display:flex;align-items:center;gap:11px;min-width:0}.console-v7-server>div{min-width:0}.console-v7-server h2{margin:0;font-size:15px;line-height:1.2}.console-v7-server small{display:block;margin-top:4px;color:#687584;font-size:9px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-v7-led{width:10px;height:10px;border-radius:50%;background:#46515c;flex:none}.console-v7-led.is-online{background:var(--green);box-shadow:0 0 0 4px rgba(36,209,138,.08)}
.console-v7-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;min-width:0}.console-v7-status{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;border:1px solid #26313b;border-radius:999px;color:#7b8793;font-size:9px;white-space:nowrap}.console-v7-status.is-live{border-color:rgba(36,209,138,.30);background:rgba(36,209,138,.07);color:#73e3b2}.console-v7-status.is-online{border-color:rgba(86,159,239,.30);background:rgba(86,159,239,.07);color:#86bdf2}.console-v7-status.is-error{border-color:rgba(255,99,124,.32);background:rgba(255,99,124,.07);color:#ff91a3}.console-v7-toggle{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 4px;color:#7b8793;font-size:9px;white-space:nowrap}.console-v7-toggle input{accent-color:var(--accent)}
.console-v7-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line);background:#080c12;min-width:0}.console-v7-search{display:flex;align-items:center;gap:8px;min-width:0;height:40px;padding:0 11px;border:1px solid #202a35;border-radius:10px;background:#060a0f;color:#657383}.console-v7-search .icon{width:15px;height:15px;flex:none}.console-v7-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#e7ecf2;font:inherit;font-size:10px}.console-v7-levels{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.console-v7-level-btn{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 10px;border:1px solid #222c36;border-radius:9px;background:#090e14;color:#74808d;font-size:9px;cursor:pointer}.console-v7-level-btn b{font-weight:700;color:#53606c}.console-v7-level-btn:hover{background:#0c1218;color:#aab4bf}.console-v7-level-btn.is-active{border-color:#6f57df;background:#17132a;color:#f0edff}.console-v7-level-btn.is-active b{color:#c9c0ff}
.console-v7-error{margin:10px 12px 0;padding:10px 11px;border:1px solid rgba(255,99,124,.28);border-radius:10px;background:rgba(255,99,124,.06);color:#ff9cad;font-size:9px;line-height:1.5}.console-v7-error[hidden]{display:none}
.console-v7-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:0;min-width:0;align-items:start}.console-v7-main-column{min-width:0;padding:12px;display:grid;gap:12px}.console-v7-sidebar{min-width:0;padding:12px;background:#080c12;border-left:1px solid var(--line);display:grid;gap:12px;align-content:start}.console-v7-terminal-card,.console-v7-command-card,.console-v7-history-card,.console-v7-side-card{min-width:0;border:1px solid #1c2630;border-radius:13px;background:#090e14;overflow:hidden}.console-v7-terminal-card{display:grid;grid-template-rows:auto minmax(0,540px) auto}.console-v7-terminal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid #151e27;background:#0a0f15;color:#65717e;font-size:8px}.console-v7-terminal-head>div{display:flex;align-items:center;gap:9px;min-width:0}.console-v7-terminal-head b{font:700 8px/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.10em;color:#9eaab5}.console-v7-terminal-head span{white-space:nowrap}.console-v7-terminal-head>span:last-child{font-variant-numeric:tabular-nums}
.console-v7-stream{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:8px 0;background:#05080c;font:10px/1.48 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}.console-v7-stream:focus{outline:0;box-shadow:inset 0 0 0 1px rgba(111,87,223,.35)}.console-v7-line{display:grid;grid-template-columns:44px 58px 82px 150px minmax(0,1fr);gap:7px;align-items:start;min-width:0;padding:3px 10px;border-left:2px solid transparent}.console-v7-line:hover{background:#090f16}.console-v7-index{color:#394550;text-align:right;user-select:none;font-variant-numeric:tabular-nums}.console-v7-level{font-weight:700;font-size:8px;letter-spacing:.04em;padding-top:1px;color:#697682}.console-v7-time{color:#465360;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;user-select:none}.console-v7-thread{min-width:0;color:#52606d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-v7-message{min-width:0;color:#d8dfe7;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.console-v7-line.level-info{border-left-color:#477db3}.console-v7-line.level-info .console-v7-level{color:#72a8dc}.console-v7-line.level-warn{border-left-color:#b48a3c;background:rgba(180,138,60,.025)}.console-v7-line.level-warn .console-v7-level{color:#d5aa57}.console-v7-line.level-error,.console-v7-line.level-fatal{border-left-color:#bd4b64;background:rgba(189,75,100,.025)}.console-v7-line.level-error .console-v7-level,.console-v7-line.level-fatal .console-v7-level{color:#eb718a}.console-v7-line.level-debug{border-left-color:#8260b1}.console-v7-line.level-debug .console-v7-level{color:#a887de}.console-v7-line.level-trace{border-left-color:#596573}.console-v7-line.level-trace .console-v7-level{color:#8a96a2}.console-v7-empty{min-height:100%;display:grid;place-items:center;align-content:center;gap:6px;padding:40px;text-align:center;color:#5d6b79}.console-v7-empty-icon .icon{width:28px;height:28px;color:#42505e}.console-v7-empty b{font-size:11px;color:#9aa6b2}.console-v7-empty small{max-width:390px;font-size:9px;line-height:1.55}
.console-v7-terminal-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:9px 12px;border-top:1px solid #151e27;background:#080c12;color:#5d6a77;font-size:8px}.console-v7-terminal-foot b{color:#9aa6b2;font-weight:600}
.console-v7-command-card,.console-v7-history-card,.console-v7-side-card{padding:14px}.console-v7-section-head,.console-v7-side-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.console-v7-section-head{margin-bottom:12px}.console-v7-section-head h3,.console-v7-side-head h3{margin:0;font-size:12px;color:#e2e8ef}.console-v7-section-head p,.console-v7-side-head span{margin:4px 0 0;color:#65727f;font-size:8px;line-height:1.5}.console-v7-command-form{display:block}.console-v7-command-input-wrap label{display:block;margin-bottom:6px;color:#72808d;font-size:9px}.console-v7-command-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:8px;align-items:center}.console-v7-command-prefix{height:42px;display:grid;place-items:center;border:1px solid #202a35;border-radius:9px;background:#070b10;color:#6f7b87;font:12px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.console-v7-command-input{min-height:42px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}.console-v7-command-input-wrap small{display:block;margin-top:6px;color:#596775;font-size:8px;line-height:1.45}.console-v7-readonly{display:flex;align-items:flex-start;gap:9px;padding:11px;border:1px dashed #27333f;border-radius:10px;color:#697684}.console-v7-readonly .icon{width:17px;height:17px;flex:none}.console-v7-readonly b{display:block;color:#c0c8d1;font-size:10px}.console-v7-readonly span{display:block;margin-top:3px;color:#626f7d;font-size:8px;line-height:1.5}
.console-v7-history{display:grid;gap:0}.console-v7-history-note{font-size:8px;color:#5d6a77;white-space:nowrap}.console-v7-history-row{display:flex;align-items:center;gap:10px;min-width:0;padding:10px 0;border-top:1px solid rgba(255,255,255,.05)}.console-v7-history-row:first-child{border-top:0}.console-v7-command-dot{width:7px;height:7px;border-radius:50%;flex:none;background:#737e89}.console-v7-command-dot.ok{background:var(--green)}.console-v7-command-dot.bad{background:var(--red)}.console-v7-command-dot.wait{background:#bc9046}.console-v7-history-main{flex:1;min-width:0}.console-v7-history-title{display:flex;align-items:center;justify-content:space-between;gap:9px}.console-v7-history-title b{font-size:9px}.console-v7-history-title span{font-size:8px;color:#6b7784}.console-v7-history-main code{display:block;max-width:100%;margin-top:4px;padding:6px 7px;border:1px solid #18222d;border-radius:7px;background:#070b10;color:#b6c0cc;font:9px/1.35 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;white-space:pre-wrap;overflow-wrap:anywhere}.console-v7-history-main small{display:block;margin-top:4px;color:#596675;font-size:8px}.console-v7-history-empty{display:grid;place-items:center;gap:6px;padding:32px 15px;text-align:center;color:#5c6976}.console-v7-history-empty .icon{width:22px;height:22px}.console-v7-history-empty b{font-size:10px;color:#929ea9}.console-v7-history-empty span{font-size:8px}
.console-v7-side-card{padding:13px}.console-v7-side-head{margin-bottom:11px}.console-v7-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.console-v7-summary-grid button,.console-v7-all-filter{min-width:0;border:1px solid #1a242f;border-radius:9px;background:#070b10;color:#687582;cursor:pointer}.console-v7-summary-grid button{display:grid;gap:3px;padding:9px 8px;text-align:left}.console-v7-summary-grid button span{font-size:8px}.console-v7-summary-grid button b{font-size:13px;color:#d8dee6}.console-v7-summary-grid button:hover,.console-v7-all-filter:hover{background:#0b1016}.console-v7-summary-grid button.is-active,.console-v7-all-filter.is-active{border-color:#6f57df;background:#17132a;color:#eeeaff}.console-v7-summary-grid button.is-active b,.console-v7-all-filter.is-active b{color:#c9c0ff}.console-v7-all-filter{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:7px;padding:9px 10px;font-size:8px}.console-v7-all-filter b{font-size:11px;color:#aab4bf}.console-v7-quick{display:grid;grid-template-columns:1fr 1fr;gap:6px}.console-v7-quick button{min-width:0;min-height:38px;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid #1e2933;border-radius:9px;background:#070b10;color:#9aa5b0;font-size:8px;cursor:pointer}.console-v7-quick button:hover{background:#0b1016;color:#e1e7ee;border-color:#35414d}.console-v7-quick .icon{width:13px;height:13px;flex:none}.console-v7-quick span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-v7-details{display:grid;gap:7px;margin:0}.console-v7-details>div{display:grid;grid-template-columns:1fr minmax(0,1.4fr);gap:8px;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.045)}.console-v7-details>div:last-child{padding-bottom:0;border-bottom:0}.console-v7-details dt{color:#596675;font-size:8px}.console-v7-details dd{margin:0;color:#adb7c1;text-align:right;font-size:8px;overflow-wrap:anywhere}.console-v7-info-list{display:grid;gap:9px}.console-v7-info-list>div{display:flex;align-items:flex-start;gap:8px}.console-v7-info-list .dot{width:7px;height:7px;margin-top:4px;border-radius:50%;flex:none;background:#68737e}.console-v7-info-list .dot.green{background:#42d59a}.console-v7-info-list .dot.blue{background:#63a7ed}.console-v7-info-list .dot.purple{background:#a987e6}.console-v7-info-list b{display:block;font-size:9px;color:#bbc3cc}.console-v7-info-list small{display:block;margin-top:2px;color:#606d79;font-size:8px;line-height:1.45}
@media(max-width:1180px){.console-v7-layout{grid-template-columns:minmax(0,1fr) 290px}}
@media(max-width:980px){.console-v7-topbar{align-items:flex-start;flex-direction:column}.console-v7-top-actions{width:100%;justify-content:flex-start}.console-v7-toolbar{grid-template-columns:1fr}.console-v7-levels{justify-content:flex-start}.console-v7-layout{grid-template-columns:1fr}.console-v7-sidebar{border-left:0;border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr))}.console-v7-sidebar .console-v7-side-card:last-child{grid-column:1/-1}}
@media(max-width:700px){.console-v7-sidebar{grid-template-columns:1fr}.console-v7-sidebar .console-v7-side-card:last-child{grid-column:auto}.console-v7-terminal-card{grid-template-rows:auto minmax(0,460px) auto}.console-v7-line{grid-template-columns:38px 52px minmax(0,1fr)}.console-v7-time{display:none}.console-v7-command-row{grid-template-columns:28px minmax(0,1fr)}.console-v7-command-row .btn{grid-column:1/-1;width:100%;min-height:42px}.console-v7-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.console-v7-main-column,.console-v7-sidebar{padding:9px}.console-v7-topbar{padding:12px}.console-v7-top-actions{gap:6px}.console-v7-top-actions .btn{min-height:39px}.console-v7-level-btn{min-height:38px;padding:0 9px}.console-v7-terminal-card{grid-template-rows:auto minmax(0,400px) auto}.console-v7-terminal-foot{gap:8px}.console-v7-command-card,.console-v7-history-card,.console-v7-side-card{padding:11px}.console-v7-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Eclipse Web 7.21.0 — permissions + mobile stability */
.permissions-v4-shell{display:grid;gap:12px;min-width:0}.permissions-v4-dbbar,.permissions-v4-actions,.permissions-v4-context{border:1px solid var(--line);background:linear-gradient(180deg,#0b0f14,#080c10);border-radius:14px;padding:12px 14px;min-width:0}.permissions-v4-dbbar,.permissions-v4-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.permissions-v4-dbstatus{display:flex;align-items:center;gap:10px;min-width:0}.permissions-v4-dbstatus>div{min-width:0}.permissions-v4-dbstatus b{display:block;font-size:11px}.permissions-v4-dbstatus small{display:block;color:var(--muted);font-size:9px;margin-top:3px;white-space:normal;overflow-wrap:anywhere}.permissions-v4-dot{width:9px;height:9px;border-radius:50%;flex:none;background:#47515d}.permissions-v4-dot.online{background:var(--green);box-shadow:0 0 11px rgba(36,209,138,.45)}.permissions-v4-dot.offline{background:var(--red);box-shadow:0 0 10px rgba(255,85,117,.22)}
.permissions-v4-context{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.6fr);align-items:end;gap:14px}.permissions-v4-context .field-label{margin:0}.permissions-v4-branch-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.permissions-v4-branch-tabs .perm-branch-tab{min-width:0;min-height:52px}.permissions-v4-actions>div:first-child{min-width:0}.permissions-v4-actions>div:first-child b,.permissions-v4-actions>div:first-child small{display:block}.permissions-v4-actions>div:first-child b{margin-top:2px;font-size:14px}.permissions-v4-actions>div:first-child small{margin-top:3px;color:var(--muted);font-size:9px}.permissions-v4-layout{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:12px;align-items:start;min-width:0}.permissions-v4-ranks,.permissions-v4-editor{min-width:0;padding:14px}.permissions-v4-ranklist{display:grid;gap:6px;margin-top:9px;max-height:none;overflow:visible}.permissions-v4-rankrow{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:6px;align-items:center;min-width:0;padding:5px;border:1px solid transparent;border-radius:11px}.permissions-v4-rankrow.active{background:#111023;border-color:#352b63}.permissions-v4-rankselect{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:center;min-width:0;padding:7px;border:0;background:transparent;border-radius:8px;text-align:left;cursor:pointer}.permissions-v4-rankselect:hover{background:#0d131b}.permissions-v4-rankselect>span:last-child{min-width:0}.permissions-v4-rankselect b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permissions-v4-rankselect small{display:block;margin-top:2px;color:#65717e;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permissions-v4-lock{display:grid;place-items:center;width:30px;height:30px;color:#495560}.permissions-v4-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.permissions-v4-editor-head h2{margin:0;font-size:15px}.permissions-v4-editor-head p{margin:4px 0 0;color:var(--muted);font-size:9px}.permissions-v4-editor-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.permissions-v4-note{display:flex;gap:9px;align-items:flex-start;padding:10px 11px;border:1px solid #222d38;border-radius:10px;background:#080d13;color:#687684;font-size:9px;line-height:1.5;margin-bottom:10px}.permissions-v4-note b{color:#a99aff}.permissions-v4-note-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#111021;color:#a28dff;flex:none}.permissions-v4-note-icon .icon{width:14px;height:14px}.permissions-v4-catalog{min-width:0}.permissions-v4-add{margin-top:11px}.permissions-v4-add input{min-width:0}.permissions-v4-add .btn{white-space:nowrap}.permissions-v4-actions .btn{flex:none}
@media(max-width:980px){.permissions-v4-context{grid-template-columns:1fr}.permissions-v4-layout{grid-template-columns:1fr}.permissions-v4-ranklist{max-height:none}.permissions-v4-editor-head{display:block}.permissions-v4-editor-actions{justify-content:flex-start;margin-top:10px}.permissions-v4-editor-actions .btn{flex:1;min-width:125px}}
@media(max-width:640px){.permissions-v4-dbbar,.permissions-v4-actions,.permissions-v4-context,.permissions-v4-ranks,.permissions-v4-editor{padding:11px}.permissions-v4-branch-tabs{grid-template-columns:1fr}.permissions-v4-actions>div.row-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.permissions-v4-actions>div.row-actions .btn{width:100%}.permissions-v4-editor-actions{display:grid;grid-template-columns:1fr 1fr}.permissions-v4-editor-actions .btn{min-width:0}.permissions-v4-editor-actions [data-action="perm-save"]{grid-column:1/-1}.permissions-v4-add{display:grid;gap:8px}.permissions-v4-add .btn{width:100%}}

/* Mobile scrolling: the page itself becomes the scroll container. Desktop keeps the dedicated main-scroll container. */
@media(max-width:980px){html,body{height:auto!important;min-height:100%!important;overflow:auto!important}body{-webkit-overflow-scrolling:touch}.app-root{min-height:100svh!important}.app-shell{height:auto!important;min-height:100svh!important;display:block!important;overflow:visible!important}.workspace,.app-content,.app-main,.main-scroll{height:auto!important;min-height:100svh!important;max-height:none!important;overflow:visible!important;overflow-y:visible!important}.main-scroll{scrollbar-gutter:auto!important}.main-content{padding-bottom:34px}.sidebar-scroll{max-height:calc(100svh - var(--topbar) - 100px)!important;overflow:auto!important}.modal-backdrop{overflow:auto!important;align-items:flex-start!important;padding:12px!important}.modal{max-height:none!important;margin:0 auto 24px!important}}


/* Eclipse Web 7.21.0 — permissions + mobile scroll hardening */
.permissions-v4-savebar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;padding:12px 14px;border:1px solid #30285c;border-radius:14px;background:linear-gradient(180deg,#100f1d,#0a0c12);position:static;backdrop-filter:blur(12px)}
.permissions-v4-savebar>div:first-child{min-width:0}.permissions-v4-savebar b{display:block;font-size:11px;color:#e8e4ff}.permissions-v4-savebar small{display:block;margin-top:3px;color:#6d7885;font-size:9px;line-height:1.45}.permissions-v4-savebar .row-actions{margin-left:auto}.permissions-v4-savebar .btn{min-width:128px}
.permissions-v4-layout{grid-template-columns:minmax(230px,280px) minmax(0,1fr)!important}.permissions-v4-editor{overflow:visible!important}.permissions-v4-catalog{max-height:none!important;overflow:visible!important}.permissions-v4-ranks{position:sticky;top:12px}.permissions-v4-ranklist{overflow:visible!important}.permissions-v4-editor-actions .btn:disabled,.permissions-v4-savebar .btn:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:980px){
  html,body,#app,.app-root{height:auto!important;min-height:100%!important;overflow:visible!important}
  body{overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}
  .app-root{min-height:100dvh!important}
  .app-shell{height:auto!important;min-height:100dvh!important;display:block!important;overflow:visible!important}
  .workspace,.app-content,.app-main,.content-view,.main-scroll{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
  .main-scroll{scrollbar-gutter:auto!important}
  .main-content{height:auto!important;min-height:calc(100dvh - 64px)!important;padding-bottom:40px!important}
  .permissions-v4-ranks{position:static!important}
  .permissions-v4-savebar{position:static!important}
}
@media(max-width:640px){
  .permissions-v4-layout{grid-template-columns:1fr!important}
  .permissions-v4-editor-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%}
  .permissions-v4-editor-actions .btn{width:100%!important;min-width:0!important}
  .permissions-v4-editor-actions [data-action="perm-save"]{grid-column:1/-1}
  .permissions-v4-savebar{display:grid!important;gap:10px}.permissions-v4-savebar .row-actions{margin:0;display:grid;grid-template-columns:1fr 1.3fr}.permissions-v4-savebar .btn{min-width:0;width:100%}
  .permissions-v4-actions>div.row-actions{grid-template-columns:1fr 1fr!important}
}

/* Eclipse Web 7.21.0 — final mobile scroll and permissions interaction hardening */
@media (max-width:980px){
  html,body{width:100%;height:auto!important;min-height:100%;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:auto!important;}
  body{position:relative!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-y!important;}
  .app-root{width:100%;height:auto!important;min-height:0!important;overflow:visible!important;}
  .app-shell{display:block!important;width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important;}
  .main-scroll{display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;overflow-y:visible!important;}
  .main-content{width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important;padding-bottom:110px!important;}
  .content-view{width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important;}
  .sidebar{position:fixed!important;top:0!important;bottom:0!important;height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;}
  .sidebar-scroll{min-height:0!important;height:auto!important;max-height:calc(100dvh - var(--topbar) - 88px)!important;overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;}
  .permissions-v4-shell,.permissions-v4-layout,.permissions-v4-editor,.permissions-v4-ranks,.permissions-v4-catalog{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;}
  .permissions-v4-savebar{position:static!important;bottom:auto!important;}
}
@media (max-width:640px){
  .main-content{padding-left:10px!important;padding-right:10px!important;padding-bottom:118px!important;}
  .permissions-v4-dbbar,.permissions-v4-context,.permissions-v4-actions,.permissions-v4-ranks,.permissions-v4-editor,.permissions-v4-savebar{border-radius:12px!important;}
  .permissions-v4-editor-actions{grid-template-columns:1fr 1fr!important;}
  .permissions-v4-editor-actions [data-action="perm-save"]{grid-column:1/-1!important;min-height:44px!important;}
  .permissions-v4-savebar .row-actions{grid-template-columns:1fr 1.3fr!important;}
  .permissions-v4-savebar .btn{min-height:44px!important;}
}

/* 7.22.0 permissions: single static save toolbar. */
.permissions-v5-save-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 12px;padding:13px 14px;border:1px solid #30285c;border-radius:14px;background:linear-gradient(180deg,#100f1d,#0a0c12);min-width:0;}
.permissions-v5-save-status{display:flex;align-items:center;gap:10px;min-width:0;}
.permissions-v5-save-status>div{min-width:0;}
.permissions-v5-save-status b{display:block;font-size:12px;color:#ece9ff;}
.permissions-v5-save-status small{display:block;margin-top:3px;color:#6e7885;font-size:9px;line-height:1.45;overflow-wrap:anywhere;}
.permissions-v5-status-dot{width:9px;height:9px;border-radius:50%;background:#4e5966;flex:none;}
.permissions-v5-status-dot.dirty{background:var(--accent);box-shadow:0 0 10px rgba(140,106,255,.35);}
.permissions-v5-status-dot.clean{background:var(--green);}
.permissions-v5-save-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto;}
.permissions-v5-save-button{min-width:190px;}
@media(max-width:640px){.permissions-v5-save-toolbar{align-items:stretch;}.permissions-v5-save-actions{width:100%;margin-left:0;display:grid;grid-template-columns:1fr;}.permissions-v5-save-actions .btn{width:100%;min-width:0;min-height:44px;}.permissions-v5-save-button{min-width:0;}}


/* Eclipse Web 7.26.0 — permissions workspace stabilization */
.permissions-header-save{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.permissions-header-dirty{font-size:10px;padding:7px 10px;border:1px solid #2b3340;border-radius:999px;background:#0b1017;color:#7a8794;white-space:nowrap}
.permissions-header-dirty.dirty{border-color:#4b3a82;color:#c8baff;background:#120f20}
.permissions-header-dirty.clean{border-color:#24422f;color:#82c89e;background:#0a130e}
.permissions-v6-shell{display:block;min-width:0}
.permissions-v6-dbbar,.permissions-v6-scope,.permissions-v6-serverbar,.permissions-v6-global-note,.permissions-v6-change-strip{min-width:0}
.permissions-v6-dbbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin-bottom:10px;border:1px solid #202833;border-radius:14px;background:#090e14}
.permissions-v6-db-actions{flex:0 0 auto}
.permissions-v6-scope{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,1.1fr);gap:12px;align-items:stretch;padding:12px 14px;margin-bottom:10px;border:1px solid #202833;border-radius:14px;background:#090d13}
.permissions-v6-scope>div:first-child{min-width:0;display:flex;flex-direction:column;justify-content:center}
.permissions-v6-scope>div:first-child>b{font-size:12px;color:#e5e9ee;margin-top:3px}
.permissions-v6-scope>div:first-child small{font-size:9px;color:#687482;margin-top:4px;line-height:1.45}
.permissions-v6-scope-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.permissions-scope-tab{min-width:0;min-height:58px;border:1px solid #202934;border-radius:12px;background:#0b1016;color:#8995a1;display:flex;align-items:center;gap:9px;padding:10px;text-align:left;cursor:pointer}
.permissions-scope-tab svg{width:17px;height:17px;flex:none}
.permissions-scope-tab b{display:block;font-size:10px;color:#dce2e7}
.permissions-scope-tab small{display:block;margin-top:2px;font-size:8px;color:#63707d}
.permissions-scope-tab.active{border-color:#4a3f77;background:#121022;box-shadow:inset 0 0 0 1px #342b58}
.permissions-scope-tab.active svg{color:#a895ff}
.permissions-v6-serverbar{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:12px;align-items:center;padding:12px 14px;margin-bottom:10px;border:1px solid #202833;border-radius:14px;background:#080d13}
.permissions-v6-serverbar .field-label{margin:0}
.permissions-v6-scope-note{font-size:9px;line-height:1.5;color:#687583;padding:10px 11px;border-radius:10px;border:1px dashed #26323e;background:#070b10}
.permissions-v6-global-note{display:flex;gap:9px;align-items:flex-start;margin-bottom:10px;padding:10px 11px;border-radius:12px;border:1px solid #2b2750;background:#0d0d18;color:#74708d;font-size:9px;line-height:1.5}
.permissions-v6-global-note svg{width:15px;height:15px;color:#aa99ff;flex:none;margin-top:1px}
.permissions-v6-global-note b{color:#cfc7ff}
.permissions-v6-change-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:10px 12px;border:1px solid #222b36;border-radius:12px;background:#080c12}
.permissions-v6-change-strip b{display:block;color:#e6e9ee;font-size:10px}
.permissions-v6-change-strip small{display:block;color:#687583;font-size:8px;margin-top:3px;line-height:1.45}
.permissions-v6-change-meta{color:#5f6d7a;font-size:8px;text-align:right}
.permissions-v6-layout{align-items:start!important}
.permissions-v6-ranks,.permissions-v6-editor{min-width:0}
.permissions-v6-editor{contain:layout paint;overflow:visible!important}
.permissions-v6-ranks{position:static!important}
.permissions-v6-editor .permissions-v4-catalog{overflow:visible!important;max-height:none!important}
.permissions-v5-save-toolbar,.permissions-v4-savebar{position:static!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important}
@media(max-width:980px){
  .permissions-header-save{width:100%;justify-content:flex-start;margin-top:8px}
  .permissions-v6-dbbar{display:block}
  .permissions-v6-db-actions{margin-top:9px;display:grid;grid-template-columns:1fr 1fr}
  .permissions-v6-db-actions .btn{width:100%;min-height:44px}
  .permissions-v6-scope{grid-template-columns:1fr}
  .permissions-v6-scope-tabs{grid-template-columns:1fr 1fr}
  .permissions-v6-serverbar{grid-template-columns:1fr}
  .permissions-v6-change-strip{display:block}
  .permissions-v6-change-meta{text-align:left;margin-top:4px}
}
@media(max-width:640px){
  .permissions-header-save{display:grid;grid-template-columns:1fr 1fr}
  .permissions-header-dirty{grid-column:1/-1;justify-self:start}
  .permissions-header-save .btn{width:100%;min-height:44px}
  .permissions-v6-scope-tabs{grid-template-columns:1fr}
}

/* Eclipse Web 7.26.0 permissions stability */
.permissions-header-save{display:none!important}
.permissions-v6-change-strip{position:static!important;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:12px;padding:12px 14px;border:1px solid #252e38;border-radius:14px;background:#080c12}
.permissions-v6-change-copy{min-width:0}.permissions-v6-change-copy>b{display:block;color:#eef2f7;font-size:11px}.permissions-v6-change-copy>small{display:block;color:#697582;font-size:9px;margin-top:4px;line-height:1.45}.permissions-v6-dirty-help{display:block;color:#53616f;font-size:8px;margin-top:4px;line-height:1.45}.permissions-v6-change-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.permissions-v6-change-actions .btn{white-space:nowrap}.permissions-v6-scope,.permissions-v6-dbbar,.permissions-v6-serverbar,.permissions-v6-change-strip{contain:layout paint}
.permissions-v6-editor{overflow:visible!important;min-height:0}.permissions-v6-editor .permission-catalog{overflow:visible!important;max-height:none!important}.permissions-v4-catalog{overflow:visible!important;max-height:none!important}.permissions-v4-ranks{position:static!important}.permissions-v4-editor-head{position:static!important}
@media(max-width:700px){.permissions-v6-change-strip{grid-template-columns:1fr;gap:10px}.permissions-v6-change-actions{display:grid;grid-template-columns:1fr 1fr;justify-content:stretch}.permissions-v6-change-actions .btn{width:100%;min-height:44px}.permissions-v6-change-actions .btn:last-child{grid-column:1/-1}.main-content{overflow-x:hidden!important;overflow-y:visible!important;touch-action:pan-y!important}.content-view{overflow:visible!important;max-height:none!important}.permissions-v6-shell{overflow:visible!important}.permissions-v6-serverbar,.permissions-v6-scope,.permissions-v6-dbbar{overflow:visible!important}}

/* 7.26.0 mobile scroll contract: one document scroll, no nested scroll trap in the main workspace. */
@media(max-width:980px){html,body{overflow:auto!important;height:auto!important;min-height:100%!important}body{overflow-x:hidden!important;overflow-y:auto!important}.app-root{min-height:100svh;height:auto!important}.app-shell{height:auto!important;min-height:100svh!important;display:block!important;overflow:visible!important}.main-scroll{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important}.main-content{min-height:0!important;height:auto!important;overflow:visible!important}.content-view{overflow:visible!important;max-height:none!important}.page-head,.permissions-v6-shell{overflow:visible!important}.permissions-v6-change-strip{position:static!important;top:auto!important;bottom:auto!important}.permissions-v6-ranks,.permissions-v6-editor{position:static!important;max-height:none!important}.permissions-v4-ranklist,.permissions-v4-catalog,.permission-catalog{max-height:none!important;overflow:visible!important}.workspace{height:auto!important;min-height:0!important;overflow:visible!important}}


/* Eclipse Web 7.26.0 — clean permissions workspace */
.permissions-v8-shell{display:grid;gap:12px;min-width:0}
.permissions-v8-db,.permissions-v8-scope,.permissions-v8-server,.permissions-v8-note,.permissions-v8-toolbar,.permissions-v8-rank-tools,.permissions-v8-ranks,.permissions-v8-editor{min-width:0;box-sizing:border-box}
.permissions-v8-db{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid #202a34;border-radius:14px;background:#080d13}.permissions-v8-db-info{display:flex;align-items:center;gap:11px;min-width:0}.permissions-v8-db-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#111a2a;color:#9a86ff;flex:none}.permissions-v8-db-info>div{min-width:0}.permissions-v8-db-info h2{margin:2px 0 0;font-size:14px}.permissions-v8-db-info p{margin:4px 0 0;font-size:9px;color:#71808c;overflow-wrap:anywhere}.permissions-v8-db-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.permissions-v8-scope{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,480px);gap:14px;align-items:center;padding:14px;border:1px solid #202a34;border-radius:14px;background:#090e14}.permissions-v8-scope h3{margin:2px 0 0;font-size:14px}.permissions-v8-scope p{margin:4px 0 0;font-size:9px;color:#71808c;line-height:1.45}.permissions-v8-scope-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.permissions-v8-scope-button{min-width:0;min-height:64px;padding:10px;border:1px solid #202a34;border-radius:11px;background:#070b10;color:#8b98a3;display:flex;align-items:center;gap:9px;text-align:left;cursor:pointer}.permissions-v8-scope-button .icon{width:17px;height:17px;flex:none}.permissions-v8-scope-button b{display:block;color:#e2e7eb;font-size:10px}.permissions-v8-scope-button small{display:block;margin-top:3px;color:#687581;font-size:8px}.permissions-v8-scope-button.active{border-color:#5b49a6;background:#141129;box-shadow:inset 0 0 0 1px #34295f}.permissions-v8-scope-button.active .icon{color:#aa98ff}.permissions-v8-server{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:12px;align-items:end;padding:13px 14px;border:1px solid #202a34;border-radius:12px;background:#080d13}.permissions-v8-server .field-label{margin:0}.permissions-v8-note{display:flex;align-items:flex-start;gap:8px;padding:12px 14px;border:1px dashed #283441;border-radius:12px;background:#070b10;color:#707e8a;font-size:9px;line-height:1.5}.permissions-v8-note .icon{width:15px;height:15px;flex:none;color:#8d7cf3}.permissions-v8-global-note{border-style:solid}.permissions-v8-toolbar{display:grid;grid-template-columns:minmax(230px,320px) minmax(0,1fr);gap:12px;align-items:stretch}.permissions-v8-mode-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.permissions-v8-mode{min-width:0;padding:10px;border:1px solid #202a34;border-radius:11px;background:#080d13;color:#82909c;display:flex;align-items:center;gap:8px;text-align:left;cursor:pointer}.permissions-v8-mode .icon{width:16px;height:16px;flex:none}.permissions-v8-mode b{display:block;color:#dfe6eb;font-size:10px}.permissions-v8-mode small{display:block;margin-top:2px;color:#667481;font-size:8px}.permissions-v8-mode.active{border-color:#5361ab;background:#101629}.permissions-v8-mode.active .icon{color:#9ba7ff}.permissions-v8-save-area{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #202a34;border-radius:12px;background:#090e14}.permissions-v8-save-area.dirty{border-color:#58479b;background:#100d20}.permissions-v8-save-area>div:first-child{min-width:0}.permissions-v8-save-area b{display:block;font-size:10px;color:#dfe5ea}.permissions-v8-save-area small{display:block;margin-top:3px;font-size:8px;color:#6d7a86}.permissions-v8-save-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;flex:none}.permissions-v8-rank-tools{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid #202a34;border-radius:12px;background:#080d13}.permissions-v8-rank-title{min-width:0}.permissions-v8-rank-title h2{margin:2px 0 0;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permissions-v8-rank-title p{margin:4px 0 0;color:#6b7884;font-size:8px}.permissions-v8-rank-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;max-width:55%}.permissions-v8-workspace{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:12px;min-width:0}.permissions-v8-ranks{padding:11px;border:1px solid #202a34;border-radius:12px;background:#080d13;align-self:start}.permissions-v8-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.permissions-v8-panel-head b{font-size:11px}.permissions-v8-panel-head small{display:block;margin-top:2px;color:#677481;font-size:8px}.permissions-v8-panel-head>span{font-size:9px;color:#8d98a2}.permissions-v8-rank-list{display:grid;gap:5px;margin-top:8px;max-height:none;overflow:visible}.permissions-v8-rank{display:grid;grid-template-columns:28px minmax(0,1fr) 14px;align-items:center;gap:8px;min-width:0;padding:8px;border:1px solid transparent;border-radius:9px;background:transparent;color:#7e8a95;text-align:left;cursor:pointer}.permissions-v8-rank:hover{background:#0c1219}.permissions-v8-rank.active{background:#141129;border-color:#4f4090}.permissions-v8-rank b{display:block;font-size:9px;color:#dce3e9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.permissions-v8-rank small{display:block;margin-top:2px;font-size:7px;color:#66737f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.permissions-v8-rank>.icon{width:12px;height:12px;color:#687582}.permissions-v8-editor{border:1px solid #202a34;border-radius:12px;background:#090e14;overflow:hidden;min-width:0}.permissions-v8-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px;border-bottom:1px solid #202a34}.permissions-v8-editor-head h2{margin:2px 0 0;font-size:14px}.permissions-v8-editor-head p{margin:4px 0 0;font-size:8px;color:#697682}.permissions-v8-editor-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.permissions-v8-catalog{padding:11px;display:grid;gap:8px}.permissions-v8-add{margin:0 11px 11px;padding:11px;border:1px dashed #2a3642;border-radius:10px;background:#070b10}.permissions-v8-add>b,.permissions-v8-add>div:first-child b{display:block;font-size:9px}.permissions-v8-add small{display:block;margin-top:3px;color:#677581;font-size:7px}.permissions-v8-add-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:8px}.permissions-v8-add-row .input{min-width:0}
/* Console clean workspace */
@media(max-width:980px){
  html,body,#app,.app-root,.app-shell,.app-content,.app-main,#main-scroll,.main-scroll{height:auto!important;min-height:100%!important;max-height:none!important;overflow:visible!important}
  body{overflow-y:auto!important;overflow-x:hidden!important}
  .permissions-v8-scope,.permissions-v8-toolbar,.permissions-v8-workspace{grid-template-columns:1fr}.permissions-v8-server{grid-template-columns:1fr}.permissions-v8-rank-actions{max-width:none}.permissions-v8-rank-list{overflow:visible;max-height:none}
  }
@media(max-width:700px){
  .permissions-v8-db,.permissions-v8-scope,.permissions-v8-server,.permissions-v8-note,.permissions-v8-toolbar,.permissions-v8-rank-tools{padding:10px}.permissions-v8-db,.permissions-v8-rank-tools{flex-direction:column;align-items:stretch}.permissions-v8-db-actions,.permissions-v8-rank-actions,.permissions-v8-save-buttons{display:grid;grid-template-columns:1fr 1fr;width:100%}.permissions-v8-db-actions .btn,.permissions-v8-rank-actions .btn,.permissions-v8-save-buttons .btn{width:100%;min-width:0}.permissions-v8-scope-buttons,.permissions-v8-mode-buttons{grid-template-columns:1fr}.permissions-v8-save-area{align-items:stretch;flex-direction:column}.permissions-v8-add-row{grid-template-columns:1fr}.permissions-v8-editor-head{flex-direction:column}.permissions-v8-editor-actions{justify-content:stretch;width:100%}.permissions-v8-editor-actions .btn{flex:1;min-width:0}.permissions-v8-line{grid-template-columns:1fr}
  }


/* 7.27.0 reliability / analytics */
.inline-render-error{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;padding:10px 12px;border:1px solid rgba(255,99,124,.26);border-radius:12px;background:rgba(255,99,124,.06);color:#ff9cad;font-size:9px}.inline-render-error>.icon{width:16px;height:16px;flex:none}.inline-render-error>div{display:grid;gap:4px;min-width:0}.inline-render-error b{font-size:10px;color:#ffd3da}.inline-render-error span{overflow-wrap:anywhere;color:#c9959e}.inline-render-error .btn{margin-top:4px;justify-self:start}
.analytics-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.analytics-server-list{display:grid;gap:14px}.analytics-server-card{border:1px solid var(--line);border-radius:16px;background:#080d13;overflow:hidden}.analytics-server-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);background:linear-gradient(145deg,#0c1119,#080c12)}.analytics-server-head>div{min-width:0}.analytics-server-head h2{margin:2px 0 0;font-size:15px}.analytics-server-head p{margin:4px 0 0;color:#687582;font-size:9px}.analytics-sections{padding:12px;display:grid;gap:12px}.analytics-section-card{border:1px solid #1e2833;border-radius:13px;background:#090e14;overflow:hidden}.analytics-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid #18212b}.analytics-section-head h3{margin:1px 0 0;font-size:12px}.analytics-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px}.analytics-metric-card{min-width:0;border:1px solid #1b2630;border-radius:11px;background:#070b10;padding:9px;display:grid;gap:5px}.analytics-metric-head{display:flex;justify-content:space-between;gap:8px;color:#72808c;font-size:8px}.analytics-metric-head span{font-weight:700;color:#8896a2}.analytics-metric-head small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-metric-value{display:flex;align-items:center;justify-content:space-between;gap:7px}.analytics-metric-value>b{font-size:17px;color:#e7edf2;line-height:1.1;font-variant-numeric:tabular-nums}.analytics-metric-label{min-height:22px;color:#86929d;font-size:8px;line-height:1.35}.analytics-trend{display:inline-flex;align-items:center;gap:3px;padding:3px 5px;border-radius:999px;font-size:8px;white-space:nowrap;font-variant-numeric:tabular-nums}.analytics-trend>b{font-size:11px}.analytics-trend em{font-style:normal}.analytics-trend-up{color:#73e3b2;background:rgba(36,209,138,.08)}.analytics-trend-down{color:#ff97a6;background:rgba(255,99,124,.08)}.analytics-trend-flat{color:#8e99a4;background:rgba(142,153,164,.08)}.analytics-sparkline{width:100%;height:42px;color:#7f70e6;display:block}.analytics-sparkline.empty{display:flex;align-items:center;justify-content:center;color:#4b5864;font-size:8px;border-top:1px dashed #17212a}.analytics-sparkline polyline{stroke-linecap:round;stroke-linejoin:round}.analytics-sparkline circle{filter:drop-shadow(0 0 4px rgba(127,112,230,.25))}
.checkbox-row{display:flex;align-items:center;gap:8px;color:#7d8997;font-size:9px;cursor:pointer}.checkbox-row input{width:15px;height:15px;margin:0;accent-color:var(--accent)}.checkbox-row span{line-height:1.4}
.section-access-footer{min-height:46px}.section-access-footer>span{min-width:0;overflow-wrap:anywhere}.access-switch{user-select:none}.access-switch input:focus-visible+span{box-shadow:0 0 0 2px rgba(111,87,223,.4)}
@media(max-width:1100px){.analytics-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-overview-grid{grid-template-columns:1fr}.console-v7-line{grid-template-columns:42px 56px 78px 120px minmax(0,1fr)}}
@media(max-width:700px){.analytics-metric-grid{grid-template-columns:1fr}.analytics-server-head{flex-direction:column}.analytics-server-head .status-pill{align-self:flex-start}.console-v7-line{grid-template-columns:36px 50px minmax(0,1fr)}.console-v7-time,.console-v7-thread{display:none}}

/* 7.29.0 stability polish */
[data-action][aria-busy="true"]{pointer-events:none;opacity:.65}
.totp-qr-wrap{position:relative;display:grid;place-items:center;min-height:240px;padding:10px;border:1px solid #27323d;border-radius:12px;background:#fff}
.totp-qr-wrap .qr-failed-text{display:none;color:#49545e;background:#fff;text-align:center;font-size:11px;padding:12px;border-radius:8px}
.totp-qr-wrap.qr-failed img{display:none}
.totp-qr-wrap.qr-failed .qr-failed-text{display:block}
.totp-secret .row-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}
.permissions-v8-save-buttons .btn[disabled]{opacity:.45;cursor:not-allowed}
.permissions-v8-rank-actions .btn[aria-busy="true"]{cursor:wait}

/* 7.30.0 — full chat workspace */
.ai-app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);height:calc(100vh - 104px);min-height:0;border:1px solid #202a35;border-radius:18px;overflow:hidden;background:#06090d;box-shadow:0 20px 70px rgba(0,0,0,.28)}
.ai-sidebar{display:flex;flex-direction:column;min-width:0;border-right:1px solid #1c2630;background:#080c11}
.ai-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 14px 10px}.ai-sidebar-head h2{margin:2px 0 0;font-size:17px}.ai-new-chat{width:34px;height:34px;border-radius:10px}.ai-new-chat-wide{display:flex;align-items:center;justify-content:center;gap:7px;margin:0 12px 10px;padding:10px 12px;border:1px solid #3b2d84;border-radius:10px;background:#171126;color:#e8e4ff;font-weight:700;cursor:pointer}.ai-new-chat-wide:hover{background:#20183c}.ai-search{display:flex;align-items:center;gap:8px;margin:0 12px 10px;padding:9px 10px;border:1px solid #212c37;border-radius:10px;background:#070a0f;color:#667481}.ai-search .icon{width:14px;height:14px;flex:none}.ai-search input{width:100%;border:0;outline:0;background:transparent;color:#e8edf1;font-size:11px}.ai-search input::placeholder{color:#5d6a75}.ai-thread-list{display:grid;gap:3px;padding:0 8px;overflow:auto;min-height:0}.ai-thread-item{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:9px 8px;border:1px solid transparent;border-radius:11px;background:transparent;color:#8c98a3;text-align:left;cursor:pointer}.ai-thread-item:hover{background:#0c1218}.ai-thread-item.active{border-color:#43368b;background:#151027;color:#edf0f3}.ai-thread-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid #26323d;border-radius:9px;background:#0a1118;color:#8d7af3}.ai-thread-copy{min-width:0}.ai-thread-copy b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dce3e9;font-size:10px}.ai-thread-copy small{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5f6d78;font-size:8px}.ai-thread-time{font-size:8px;color:#58656f;align-self:start;margin-top:2px}.ai-thread-empty{padding:18px 12px;color:#596671;text-align:center;font-size:9px}.ai-sidebar-footer{display:flex;align-items:center;gap:8px;margin-top:auto;padding:12px;border-top:1px solid #1a232c}.ai-account-mini{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.ai-account-mini>div:last-child{min-width:0}.ai-account-mini b,.ai-account-mini small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-account-mini b{font-size:9px;color:#dbe1e6}.ai-account-mini small{margin-top:2px;color:#65727d;font-size:8px}
.ai-main-chat{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;background:#070b10}.ai-chat-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;border-bottom:1px solid #1a232c;background:rgba(8,12,17,.92)}.ai-chat-title{display:flex;align-items:center;gap:10px;min-width:0}.ai-chat-title h2{margin:0;font-size:14px;color:#eaf0f4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-chat-title span{display:block;margin-top:3px;font-size:8px;color:#687783}.ai-chat-head-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ai-chat-messages{padding:24px clamp(18px,4vw,58px) 28px;overflow:auto;min-height:0;scroll-behavior:smooth}.ai-date-divider{display:flex;justify-content:center;margin:8px 0 18px}.ai-date-divider span{padding:4px 9px;border:1px solid #202a33;border-radius:999px;background:#0b1016;color:#687581;font-size:8px}.ai-message-row{display:grid;grid-template-columns:34px minmax(0,820px);gap:10px;margin:0 auto 18px;max-width:900px}.ai-message-row.ai-user{grid-template-columns:34px minmax(0,820px)}.ai-message-avatar{padding-top:1px}.ai-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;border:1px solid #28343f;background:#0c131a;overflow:hidden}.ai-avatar .icon{width:17px;height:17px}.ai-avatar-bot{color:#a38dfc;border-color:#3a2f79;background:#171126}.ai-message-column{min-width:0}.ai-message-meta{display:flex;align-items:center;gap:8px;min-height:16px;margin:0 2px 5px}.ai-message-meta b{font-size:10px;color:#dfe6ec}.ai-message-meta span{font-size:8px;color:#5d6a75}.ai-edited{padding:1px 5px;border-radius:999px;background:#0c1319;color:#6f7e8a}.ai-message-bubble{position:relative;display:inline-block;max-width:100%;padding:11px 13px;border:1px solid #222d37;border-radius:13px 13px 13px 4px;background:#0a1016;color:#dce3e8;font-size:10px;line-height:1.65;word-break:break-word}.ai-user .ai-message-bubble{background:#151028;border-color:#3e327e;border-radius:13px 13px 4px 13px}.ai-message-bubble strong{color:#fff}.ai-message-bubble em{color:#cbd4db}.ai-message-bubble h3{margin:0 0 7px;font-size:12px;color:#f1f4f6}.ai-message-bubble a{color:#9f92ff;text-decoration:none}.ai-message-bubble a:hover{text-decoration:underline}.ai-inline-code{padding:1px 4px;border:1px solid #283541;border-radius:5px;background:#070b10;color:#b7c1c9;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.92em}.ai-code-block{margin:9px 0 0;padding:11px;border:1px solid #222d37;border-radius:9px;background:#05080c;overflow:auto}.ai-code-block code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px;line-height:1.55;color:#cbd6dd;white-space:pre}.ai-message-attachments{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:7px;margin-top:9px}.ai-attachment-chip,.ai-pending-file{display:flex;align-items:center;gap:8px;padding:8px 9px;border:1px solid #26323c;border-radius:9px;background:#080d13;min-width:0}.ai-attachment-chip .icon,.ai-pending-file>.icon,.ai-pending-file>span .icon{width:14px;height:14px;color:#7e8d99;flex:none}.ai-attachment-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b8c1c8;font-size:8px}.ai-attachment-chip small{color:#596772;font-size:7px;white-space:nowrap}.ai-message-toolbar{display:flex;align-items:center;gap:10px;margin:6px 3px 0;opacity:.65}.ai-message-toolbar button{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:#66747f;font-size:8px;cursor:pointer;padding:2px 0}.ai-message-toolbar button:hover{color:#b4c0c9}.ai-message-toolbar .icon{width:11px;height:11px}.ai-message-more{margin-left:auto}.ai-message-menu{display:none;position:absolute;z-index:20;right:0;top:24px;min-width:180px;padding:5px;border:1px solid #293541;border-radius:10px;background:#0b1117;box-shadow:0 18px 40px rgba(0,0,0,.34)}.ai-message-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:0;border-radius:7px;background:transparent;color:#c8d0d6;font-size:9px;text-align:left;cursor:pointer}.ai-message-menu button:hover{background:#121b24}.ai-message-menu .icon{width:13px;height:13px}.ai-message-row .ai-message-toolbar{position:relative}.ai-message-row.menu-open .ai-message-menu{display:block}.ai-action-list{display:grid;gap:6px;margin-top:10px;padding-top:9px;border-top:1px solid #202a33}.ai-action-btn{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:7px 9px;border:1px solid #34432f;border-radius:8px;background:#0d1813;color:#a9dfc0;font-size:8px;cursor:pointer}.ai-action-btn:hover{background:#11231a}.ai-action-btn:disabled{opacity:.5;cursor:wait}.ai-action-btn .icon{width:12px;height:12px;flex:none}.ai-chat-bottom{border-top:1px solid #1a232c;background:#070b10;padding:7px 12px 9px}.ai-composer{max-width:900px;margin:0 auto;border:1px solid #28333e;border-radius:14px;background:#090e14;box-shadow:0 12px 40px rgba(0,0,0,.22)}.ai-compose-toolbar{display:flex;align-items:center;justify-content:space-between;padding:5px 8px;border-bottom:1px solid #1d2730}.ai-format-tools,.ai-compose-tools{display:flex;gap:4px}.ai-format-tools button,.ai-tool-btn{display:grid;place-items:center;width:28px;height:26px;border:1px solid transparent;border-radius:7px;background:transparent;color:#75838e;cursor:pointer}.ai-format-tools button:hover,.ai-tool-btn:hover{border-color:#303c47;background:#10161d;color:#dfe5e9}.ai-tool-btn{position:relative}.ai-tool-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.ai-compose-tools{margin-left:auto}.ai-chat-editor{display:block;width:100%;min-height:62px;max-height:180px;resize:none;padding:8px 12px;border:0;outline:0;background:transparent;color:#edf1f3;font:400 11px/1.6 Inter,ui-sans-serif,system-ui,sans-serif}.ai-chat-editor::placeholder{color:#61707c}.ai-compose-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 8px;border-top:1px solid #18212a}.ai-compose-hint{font-size:8px;color:#55636e}.ai-compose-actions{display:flex;align-items:center;gap:6px}.ai-send-btn{min-width:100px}.ai-attachment-preview{display:flex;gap:6px;padding:6px 9px;flex-wrap:wrap}.ai-pending-file{padding:6px 7px}.ai-pending-file>div{min-width:0}.ai-pending-file b,.ai-pending-file small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-pending-file b{max-width:190px;font-size:8px;color:#c8d1d7}.ai-pending-file small{margin-top:1px;font-size:7px;color:#5c6974}.ai-security-note{display:flex;align-items:center;justify-content:center;gap:6px;margin:7px auto 0;max-width:900px;color:#52616c;font-size:7px}.ai-security-note .icon{width:12px;height:12px;flex:none}.ai-empty-state{min-height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:40px 20px}.ai-empty-logo{display:grid;place-items:center;width:56px;height:56px;border:1px solid #45358f;border-radius:16px;background:#171126;color:#a08dfb;box-shadow:0 12px 35px rgba(91,65,210,.12)}.ai-empty-logo .icon{width:25px;height:25px}.ai-empty-state h2{margin:14px 0 6px;font-size:18px;color:#edf1f4}.ai-empty-state p{max-width:470px;margin:0;color:#687681;font-size:10px;line-height:1.6}.ai-quick-prompts{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:16px}.ai-quick-prompts button{padding:8px 10px;border:1px solid #26323d;border-radius:9px;background:#0a1016;color:#9ba7b0;font-size:8px;cursor:pointer}.ai-quick-prompts button:hover{border-color:#453a8f;background:#101026;color:#ddd8ff}.ai-typing-row{display:flex;align-items:center;gap:9px;max-width:900px;margin:0 auto 12px}.ai-typing{display:flex;align-items:center;gap:4px;padding:9px 11px;border:1px solid #202b35;border-radius:12px;background:#0a1016}.ai-typing span{width:5px;height:5px;border-radius:50%;background:#687783;animation:ai-dot 1.1s infinite ease-in-out}.ai-typing span:nth-child(2){animation-delay:.15s}.ai-typing span:nth-child(3){animation-delay:.3s}.ai-typing em{font-style:normal;margin-left:5px;color:#61707c;font-size:8px}@keyframes ai-dot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-3px);opacity:1}}
@media(max-width:980px){.ai-app-shell{grid-template-columns:1fr;height:calc(100vh - 96px);min-height:0}.ai-sidebar{display:none}.ai-chat-head{padding:11px 12px}.ai-chat-head-actions .btn{padding:7px}.ai-chat-messages{padding:16px 12px 20px}.ai-message-row{grid-template-columns:30px minmax(0,1fr);gap:7px}.ai-avatar{width:27px;height:27px}.ai-message-toolbar{opacity:1}.ai-chat-bottom{padding:6px 8px 8px}.ai-compose-hint{display:none}.ai-compose-bottom{justify-content:flex-end}.ai-security-note{display:none}}
@media(max-width:600px){.ai-chat-head-actions .btn:first-child{display:none}.ai-message-bubble{font-size:10px}.ai-message-meta{gap:6px}.ai-message-meta span{font-size:7px}.ai-attachment-chip{grid-template-columns:1fr}.ai-compose-toolbar{padding:4px}.ai-chat-editor{min-height:70px}.ai-format-tools button,.ai-tool-btn{width:30px;height:28px}.ai-sidebar-footer{display:none}}
.ai-composer.dragover{border-color:#6c58e5;box-shadow:0 0 0 2px rgba(108,88,229,.15),0 18px 50px rgba(0,0,0,.3)}
.ai-edit-banner{display:none;align-items:center;gap:7px;padding:6px 9px;border-bottom:1px solid #2e2855;background:#110e20;color:#a99df0;font-size:8px}.ai-edit-banner.show{display:flex}.ai-edit-banner span{flex:1}.ai-edit-banner .icon{width:12px;height:12px}.ai-reactions{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.ai-reaction{padding:3px 6px;border:1px solid #293640;border-radius:999px;background:#080d13;color:#8c99a4;font-size:8px;cursor:pointer}.ai-reaction:hover,.ai-reaction.active{border-color:#4a3d91;background:#120f22;color:#d3c9ff}


/* 7.31.0 AI settings redesign + overflow hardening */
.ai-settings-wrap{overflow:hidden}
.ai-settings-panel{display:grid;gap:14px;min-width:0}
.ai-settings-titlebar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;min-width:0;padding:14px 15px;border:1px solid #252e39;border-radius:14px;background:#090e14}
.ai-settings-title{display:flex;align-items:flex-start;gap:11px;min-width:0}
.ai-settings-title>.icon{width:20px;height:20px;flex:none;color:#a18cff;margin-top:2px}
.ai-settings-title h2{margin:0;font-size:15px;line-height:1.3}
.ai-settings-title p{margin:4px 0 0;color:#687783;font-size:9px;line-height:1.5;overflow-wrap:anywhere}
.ai-settings-status{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end;min-width:0}
.ai-source-chip{display:inline-flex;align-items:center;max-width:220px;padding:5px 8px;border:1px solid #26333e;border-radius:999px;background:#0a1016;color:#7b8893;font-size:8px;white-space:normal;overflow-wrap:anywhere}
.ai-active-summary{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:10px;min-width:0}
.ai-active-summary>div{min-width:0;padding:12px 13px;border:1px solid #202a35;border-radius:12px;background:#080d13}
.ai-summary-label{display:block;color:#687783;font-size:8px;margin-bottom:5px;text-transform:uppercase;letter-spacing:.04em}
.ai-active-summary strong{display:block;min-width:0;color:#e8edf1;font-size:11px;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}
.ai-active-summary small{display:block;margin-top:5px;color:#5f6d79;font-size:8px;line-height:1.5;overflow-wrap:anywhere}
.ai-model-current{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.ai-settings-form{display:grid;gap:12px;min-width:0}
.ai-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;min-width:0}
.ai-field{display:grid;gap:6px;min-width:0;color:#7b8792;font-size:9px}
.ai-field>span{color:#8b97a1;font-size:9px}
.ai-field small{color:#5f6d79;font-size:8px;line-height:1.5;overflow-wrap:anywhere}
.ai-field .input{min-width:0}
.ai-model-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;min-width:0}
.ai-model-row .btn{white-space:nowrap}
.ai-model-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0}
.ai-model-card{min-width:0;min-height:92px;padding:10px;border:1px solid #222d37;border-radius:11px;background:#080d13;color:#dce3e8;text-align:left;cursor:pointer}
.ai-model-card:hover{border-color:#3d3276;background:#0d101b}
.ai-model-card.active{border-color:#5b49a6;background:#141129;box-shadow:inset 0 0 0 1px #34295f}
.ai-model-card b,.ai-model-card span,.ai-model-card small{display:block;overflow-wrap:anywhere;word-break:break-word}
.ai-model-card b{font-size:9px;line-height:1.35}
.ai-model-card span{margin-top:4px;color:#9888ef;font:7px ui-monospace,SFMono-Regular,Consolas,monospace}
.ai-model-card small{margin-top:6px;color:#65727e;font-size:7px;line-height:1.45}
.ai-key-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;min-width:0;padding-top:2px}
.ai-key-actions .check-line{min-width:0;flex:1}
.ai-config-note{display:flex;align-items:flex-start;gap:8px;min-width:0;padding:10px 11px;border:1px solid #202a33;border-radius:10px;background:#070b10;color:#667581;font-size:8px;line-height:1.55}
.ai-config-note .icon{width:14px;height:14px;flex:none;color:#8e7cf2;margin-top:1px}
.ai-config-note span{min-width:0;overflow-wrap:anywhere}
@media(max-width:980px){.ai-active-summary{grid-template-columns:1fr}.ai-settings-grid{grid-template-columns:1fr}.ai-model-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-settings-titlebar{flex-direction:column}.ai-settings-status{justify-content:flex-start}}
@media(max-width:600px){.ai-model-catalog{grid-template-columns:1fr}.ai-model-row{grid-template-columns:1fr}.ai-model-row .btn{width:100%}.ai-key-actions{align-items:stretch}.ai-key-actions .btn{width:100%}.ai-source-chip{max-width:100%}}


/* Eclipse Web 7.33.0 — mobile parity contract */
@media (max-width:980px){
  html,body{width:100%;min-width:0!important;max-width:100%;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:auto!important;-webkit-text-size-adjust:100%;}
  .app-root,.app-shell,.main-scroll,.main-content,.content-view{width:100%!important;min-width:0!important;max-width:100%!important;}
  .app-shell{display:block!important;height:auto!important;min-height:100dvh!important;overflow:visible!important;}
  .main-scroll{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important;}
  .main-content{height:auto!important;min-height:0!important;overflow:visible!important;padding-left:12px!important;padding-right:12px!important;padding-bottom:34px!important;}
  .app-topbar{position:sticky!important;top:0!important;z-index:940!important;width:calc(100% + 24px)!important;margin-left:-12px!important;margin-right:-12px!important;padding-left:58px!important;padding-right:max(10px,env(safe-area-inset-right))!important;min-height:58px!important;}
  .mobile-menu-trigger{display:grid!important;position:fixed!important;left:max(10px,env(safe-area-inset-left))!important;top:max(10px,env(safe-area-inset-top))!important;z-index:1000!important;width:42px!important;height:42px!important;}
  .mobile-overlay{z-index:980!important;}
  .sidebar{z-index:990!important;width:min(88vw,340px)!important;max-width:340px!important;height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;padding-bottom:env(safe-area-inset-bottom)!important;}
  .sidebar-scroll{max-height:calc(100dvh - var(--topbar) - 88px)!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;}
  .sidebar-footer{padding-bottom:max(10px,env(safe-area-inset-bottom))!important;}
  .page-head{gap:10px!important;min-width:0!important;}
  .page-head>div,.page-head-actions{min-width:0!important;width:100%!important;}
  .page-head-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px!important;}
  .page-head-actions .btn,.row-actions .btn,.panel .btn{min-width:0!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;}
  .panel,.metric-card,.server-card,.plugin-card,.directory-card,.content-grid,.dashboard-grid,.api-catalog-grid,.integration-grid,.npc-grid,.diagnostic-grid,.kv-grid,.profile-fields,.settings-grid,.form-grid,.health-list,.audit-list{min-width:0!important;max-width:100%!important;}
  .content-grid.two,.dashboard-grid,.integration-grid,.plugin-work-grid,.console-layout{grid-template-columns:1fr!important;}
  .metric-grid.four,.metric-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .search-box{min-width:0!important;max-width:none!important;width:100%!important;}
  .filter-bar{min-width:0!important;width:100%!important;}
  .table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;}
  .data-table{min-width:760px!important;}
  .workspace-tabs{max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;display:flex!important;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-x!important;}
  .workspace-tab{flex:0 0 auto!important;white-space:nowrap!important;}
  .modal-backdrop{z-index:1200!important;padding:calc(8px + env(safe-area-inset-top)) 8px calc(8px + env(safe-area-inset-bottom))!important;align-items:flex-start!important;overflow:auto!important;}
  .modal{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 16px)!important;margin:0 auto 8px!important;overflow:auto!important;}
  .modal-head{min-width:0!important;}
  .form-stack,.form-grid,.form-hint,.form-error,.field-label{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;}
  .field-label .input,.field-label input,.field-label select,.field-label textarea{width:100%!important;min-width:0!important;max-width:100%!important;}
  input[type=file]{max-width:100%!important;overflow:hidden!important;}
  .toast-root{right:10px!important;left:10px!important;max-width:none!important;bottom:max(12px,env(safe-area-inset-bottom))!important;}
  .toast{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;}
  .permissions-v8-shell,.permissions-v8-db,.permissions-v8-scope,.permissions-v8-server,.permissions-v8-note,.permissions-v8-toolbar,.permissions-v8-rank-tools,.permissions-v8-workspace,.permissions-v8-editor,.permissions-v8-ranks{min-width:0!important;max-width:100%!important;}
  .permissions-v8-db-info,.permissions-v8-db-info>div,.permissions-v8-rank-title,.permissions-v8-editor-head>div{min-width:0!important;}
  .permissions-v8-db-actions,.permissions-v8-rank-actions,.permissions-v8-save-buttons{width:100%!important;max-width:none!important;}
  .permissions-v8-workspace{grid-template-columns:1fr!important;}
  .permissions-v8-rank-list{max-height:none!important;overflow:visible!important;}
  .permissions-v8-catalog{max-height:none!important;overflow:visible!important;}
  .permission-name b,.permission-name small,.permissions-v8-rank b,.permissions-v8-rank small{overflow-wrap:anywhere!important;white-space:normal!important;}
  .permission-toolbar-buttons{width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));}
  .permission-toolbar-buttons .btn{min-width:0!important;width:100%!important;}
  .permission-switch{min-width:0!important;}
  .console-v7-workspace,.console-v7-main-column,.console-v7-sidebar,.console-v7-terminal-card,.console-v7-command-card,.console-v7-history-card,.console-v7-side-card{min-width:0!important;max-width:100%!important;}
  .console-v7-toolbar,.console-v7-topbar,.console-v7-top-actions,.console-v7-terminal-head,.console-v7-terminal-foot{min-width:0!important;}
  .console-v7-stream{width:100%!important;max-width:100%!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;}
  .console-v7-line{min-width:0!important;}
  .console-v7-message{min-width:0!important;overflow-wrap:anywhere!important;word-break:break-word!important;}
  .analytics-server-head,.analytics-server-head>div,.analytics-section-head,.analytics-section-head>div,.analytics-metric-card{min-width:0!important;}
  .analytics-metric-head,.analytics-metric-value{min-width:0!important;}
  .analytics-metric-value{overflow-wrap:anywhere!important;}
  .api-tabs,.api-tab{min-width:0!important;}
  .api-tabs{overflow-x:auto!important;display:flex!important;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch!important;}
  .build-job-table,.build-job-row{overflow-x:auto!important;}
  .code-editor-files{min-width:0!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;}
  .code-editor-text,.build-code,.code-block,.ai-code-block{max-width:100%!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;}
  .profile-quick{min-width:0!important;max-width:100%!important;}
}
@media (max-width:640px){
  .main-content{padding-left:10px!important;padding-right:10px!important;padding-bottom:28px!important;}
  .app-topbar{width:calc(100% + 20px)!important;margin-left:-10px!important;margin-right:-10px!important;padding-left:56px!important;}
  .page-head-actions{grid-template-columns:1fr!important;}
  .metric-grid.four,.metric-grid.three{grid-template-columns:1fr!important;}
  .permission-toolbar-buttons{grid-template-columns:1fr!important;}
  .permissions-v8-db-actions,.permissions-v8-rank-actions,.permissions-v8-save-buttons,.permissions-v8-editor-actions{grid-template-columns:1fr!important;}
  .permissions-v8-db-actions .btn,.permissions-v8-rank-actions .btn,.permissions-v8-save-buttons .btn,.permissions-v8-editor-actions .btn{width:100%!important;}
  .permissions-v8-mode-buttons,.permissions-v8-scope-buttons{grid-template-columns:1fr!important;}
  .notification-full-head{align-items:flex-start!important;gap:4px!important;flex-direction:column!important;}
  .topbar-actions{gap:6px!important;}
  .topbar-user{max-width:56vw!important;min-width:0!important;}
  .topbar-user-copy b{max-width:90px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
  .console-v7-terminal-card{grid-template-rows:auto minmax(0,380px) auto!important;}
  .console-v7-side{grid-template-columns:1fr!important;}
  .console-v7-command-row{grid-template-columns:26px minmax(0,1fr)!important;}
  .console-v7-command-row .btn{grid-column:1/-1!important;width:100%!important;min-height:42px!important;}
  .ai-mobile-chat-btn{display:grid!important;}
  .ai-chat-title{gap:7px!important;}
  .ai-chat-head-actions .btn{font-size:10px!important;padding:7px 8px!important;}
  .ai-message-row{grid-template-columns:28px minmax(0,1fr)!important;}
  .ai-message-bubble{max-width:100%!important;overflow-wrap:anywhere!important;}
  .ai-message-toolbar{flex-wrap:wrap!important;gap:8px!important;}
  .ai-compose-toolbar{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;}
  .ai-format-tools,.ai-compose-tools{flex:0 0 auto!important;}
}
@media (max-width:380px){
  .sidebar{width:92vw!important;}
  .page-head h1{font-size:21px!important;}
  .topbar-user-copy{display:none!important;}
  .topbar-user{padding:6px!important;}
  .ai-chat-head-actions .btn[data-ai-action-global="clear"]{display:none!important;}
}

/* Mobile AI chat list drawer */
.ai-mobile-chat-btn{display:none;}
.ai-mobile-overlay{display:none;}
.ai-mobile-drawer{display:none;}
@media(max-width:980px){
  .ai-mobile-chat-btn{display:grid;place-items:center;}
  .ai-mobile-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.64);z-index:1080;opacity:0;pointer-events:none;transition:opacity .18s ease;}
  .ai-mobile-overlay.show{opacity:1;pointer-events:auto;}
  .ai-mobile-drawer{display:flex;position:fixed;top:0;bottom:0;left:0;width:min(88vw,330px);max-width:330px;z-index:1090;transform:translateX(-105%);transition:transform .18s ease;flex-direction:column;padding:12px;background:#070b10;border-right:1px solid #27313d;box-shadow:20px 0 70px rgba(0,0,0,.52);}
  .ai-mobile-drawer.open{transform:translateX(0);}
  .ai-mobile-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0 10px;}
  .ai-mobile-drawer .ai-thread-list{min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;}
}

/* Eclipse AI 7.34 — messenger-grade chat surface */
.ai-app-shell{height:calc(100dvh - 86px);min-height:620px;grid-template-columns:270px minmax(0,1fr);}
.ai-main-chat{grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;}
.ai-chat-head{min-height:58px;padding:10px 14px;position:relative;z-index:3;}
.ai-chat-head-actions .btn{white-space:nowrap;}
.ai-chat-messages{padding:20px clamp(12px,3vw,42px) 18px;scrollbar-gutter:stable;}
.ai-message-row{max-width:960px;grid-template-columns:32px minmax(0,1fr);margin-bottom:14px;}
.ai-message-column{position:relative;min-width:0;}
.ai-message-meta{margin-bottom:4px;}
.ai-message-bubble{max-width:min(760px,100%);padding:10px 12px;font-size:11px;line-height:1.55;overflow-wrap:anywhere;white-space:normal;}
.ai-user .ai-message-bubble{max-width:min(760px,100%);}
.ai-message-toolbar{flex-wrap:wrap;position:relative;align-items:center;gap:8px;margin-top:4px;}
.ai-message-toolbar button{font-size:8px;}
.ai-message-menu{right:0;top:29px;min-width:190px;}
.ai-message-row.ai-user .ai-message-menu{right:auto;left:0;}
.ai-reaction-popover{display:none;position:absolute;left:84px;bottom:24px;z-index:50;gap:2px;padding:4px 5px;border:1px solid #2c3844;border-radius:12px;background:#0a1016;box-shadow:0 16px 40px rgba(0,0,0,.4);}
.ai-message-row.ai-user .ai-reaction-popover{left:110px;}
.ai-message-row.reaction-open .ai-reaction-popover{display:flex;}
.ai-reaction-popover button{width:30px;height:30px;padding:0!important;border-radius:9px!important;display:grid!important;place-items:center!important;background:transparent!important;font-size:16px!important;color:#fff!important;}
.ai-reaction-popover button:hover{background:#151f29!important;}
.ai-toolbar-emoji{font-size:14px!important;line-height:1;}
.ai-reactions{margin-top:7px;display:flex;flex-wrap:wrap;gap:4px;}
.ai-reaction{display:inline-flex!important;align-items:center;gap:4px!important;padding:4px 7px!important;border:1px solid #2b3642!important;border-radius:999px!important;background:#0a1016!important;color:#c7d0d7!important;font-size:10px!important;}
.ai-reaction span{font-size:8px;color:#7f8c97;}
.ai-reply-quote{display:flex;align-items:stretch;gap:8px;width:100%;margin:0 0 8px;padding:6px 8px;border:1px solid #242f39;border-radius:9px;background:#070c11;color:#bfc8cf;text-align:left;cursor:pointer;min-width:0;}
.ai-reply-quote:hover{border-color:#44378a;background:#0b1018;}
.ai-reply-quote-accent{display:block;width:3px;flex:none;border-radius:3px;background:#7460ea;}
.ai-reply-quote-body{display:grid;gap:2px;min-width:0;}
.ai-reply-quote-body b{font-size:8px;color:#a796ff;}
.ai-reply-quote-body span{font-size:9px;color:#86939e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;}
.ai-replying-banner{display:flex;align-items:stretch;gap:8px;margin:0 auto 6px;max-width:960px;padding:7px 9px;border:1px solid #2a3150;border-radius:10px;background:#0d0d18;}
.ai-replying-banner>div{display:grid;gap:2px;min-width:0;flex:1;}
.ai-replying-banner small{font-size:7px;color:#8177c5;text-transform:uppercase;letter-spacing:.04em;}
.ai-replying-banner b{font-size:9px;color:#ccd2d8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ai-replying-banner .ai-reply-quote-accent{height:auto;}
.ai-composer{max-width:960px;}
.ai-compose-toolbar{min-height:34px;}
.ai-chat-editor{min-height:54px;max-height:160px;padding:9px 12px;font-size:11px;line-height:1.5;}
.ai-compose-bottom{min-height:40px;}
.ai-recording-state{display:none;align-items:center;gap:6px;color:#ef8c8c;font-size:9px;margin-left:auto;margin-right:auto;}
.ai-recording-state.show{display:flex;}
.ai-recording-state i{width:7px;height:7px;border-radius:50%;background:#ef6666;box-shadow:0 0 0 4px rgba(239,102,102,.12);animation:ai-record-pulse 1s infinite;}
@keyframes ai-record-pulse{50%{opacity:.25;transform:scale(.85)}}
.ai-composer.recording{border-color:#6e343a;box-shadow:0 0 0 2px rgba(190,70,80,.08),0 12px 40px rgba(0,0,0,.22);}
.ai-emoji-popover{display:none;position:absolute;right:8px;bottom:44px;z-index:70;width:min(360px,calc(100vw - 30px));padding:9px;border:1px solid #2a3540;border-radius:13px;background:#0a0f15;box-shadow:0 22px 60px rgba(0,0,0,.5);}
.ai-emoji-popover.show{display:block;}
.ai-emoji-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;color:#dce3e8;font-size:10px;}
.ai-emoji-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:2px;max-height:230px;overflow:auto;}
.ai-emoji-grid button{height:30px;border:0;border-radius:7px;background:transparent;font-size:18px;cursor:pointer;}
.ai-emoji-grid button:hover{background:#151d26;}
.ai-highlight .ai-message-bubble{animation:ai-highlight .9s ease;}
@keyframes ai-highlight{0%,100%{box-shadow:0 0 0 0 rgba(111,92,225,0)}30%{box-shadow:0 0 0 5px rgba(111,92,225,.18)}}
.ai-message-attachments{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));}
.ai-audio-attachment{display:flex;align-items:center;gap:8px;margin-top:8px;padding:7px 8px;border:1px solid #26313c;border-radius:9px;background:#070c11;}
.ai-audio-attachment audio{width:100%;max-width:360px;height:32px;}
@media(max-width:980px){
  .ai-app-shell{height:calc(100dvh - 76px);min-height:520px;grid-template-columns:1fr;}
  .ai-chat-messages{padding:12px 9px 14px;}
  .ai-message-row{grid-template-columns:27px minmax(0,1fr);gap:6px;margin-bottom:11px;}
  .ai-message-bubble{max-width:100%;font-size:10px;padding:9px 10px;}
  .ai-message-toolbar{gap:6px;}
  .ai-message-toolbar button{font-size:7px;}
  .ai-reaction-popover{left:58px;bottom:25px;}
  .ai-message-row.ai-user .ai-reaction-popover{left:72px;}
  .ai-emoji-popover{right:4px;bottom:42px;width:min(360px,calc(100vw - 20px));}
  .ai-chat-editor{min-height:48px;max-height:130px;}
}
@media(max-width:600px){
  .ai-chat-head{padding:8px 9px;min-height:52px;}
  .ai-chat-title .ai-avatar-bot{width:26px;height:26px;}
  .ai-chat-title h2{font-size:12px;}
  .ai-chat-title span{font-size:7px;}
  .ai-chat-head-actions{gap:4px;}
  .ai-chat-head-actions .btn{font-size:8px;padding:6px 7px;}
  .ai-message-meta b{font-size:9px;}
  .ai-message-meta span{font-size:7px;}
  .ai-reply-quote-body span{max-width:48vw;}
  .ai-compose-toolbar{overflow:visible;}
  .ai-format-tools button,.ai-tool-btn{width:29px;height:27px;}
  .ai-compose-actions .btn{min-height:36px;padding:7px 9px;}
  .ai-send-btn{min-width:88px;}
  .ai-emoji-grid{grid-template-columns:repeat(8,1fr);max-height:210px;}
}

/* 7.35.1 AI messenger thread menu overlay */
.ai-thread-item{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center}
.ai-thread-item.pinned{background:#0d0d17}.ai-thread-item.active.pinned{background:#17122a;border-color:#5947ae}
.ai-thread-actions{display:flex;align-items:center;gap:2px;opacity:.88;transition:opacity .15s ease}.ai-thread-item:hover .ai-thread-actions,.ai-thread-item:focus-within .ai-thread-actions{opacity:1}
.ai-thread-action{display:grid;place-items:center;width:24px;height:24px;border:0!important;border-radius:7px!important;background:transparent!important;color:#66737e!important;cursor:pointer!important;padding:0!important}.ai-thread-action:hover{background:#151c24!important;color:#dfe6eb!important}
.ai-thread-menu{position:fixed;left:0;top:0;right:auto;z-index:1600;min-width:190px;padding:5px;border:1px solid #2a3641;border-radius:10px;background:#0a1016;box-shadow:0 18px 40px rgba(0,0,0,.42)}
.ai-thread-menu button,.ai-chat-head-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:0;border-radius:7px;background:transparent;color:#c8d0d7;font-size:9px;text-align:left;cursor:pointer}.ai-thread-menu button:hover,.ai-chat-head-menu button:hover{background:#121a22}.ai-thread-menu button.danger,.ai-chat-head-menu button.danger{color:#ef8294}
.ai-chat-head-more{position:relative}.ai-chat-head-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:50;min-width:190px;padding:5px;border:1px solid #2a3641;border-radius:10px;background:#0a1016;box-shadow:0 18px 40px rgba(0,0,0,.42)}
@media(max-width:980px){.ai-thread-actions{opacity:1}.ai-thread-menu{min-width:210px}.ai-chat-head-menu{right:0}}
@media(max-width:600px){.ai-thread-item{grid-template-columns:28px minmax(0,1fr) auto}.ai-thread-time{display:none}.ai-thread-action{width:30px;height:30px}.ai-thread-menu,.ai-chat-head-menu{min-width:210px;max-width:calc(100vw - 16px)}}

/* 7.35.1 floating thread action menu */
.ai-thread-menu{max-height:min(60vh,360px);overflow:auto;overscroll-behavior:contain}
.ai-thread-menu:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:10px}
.ai-thread-menu button{min-height:34px}
.ai-thread-action{flex:none}


/* Eclipse Web 7.35.3 AI chat menu polish */
.ai-thread-item{display:flex!important;align-items:center!important;gap:8px!important;position:relative!important;overflow:visible!important;min-width:0!important;z-index:1}
.ai-thread-item:hover,.ai-thread-item:focus-within,.ai-thread-item.menu-open{z-index:40!important}
.ai-thread-icon{flex:0 0 30px}
.ai-thread-copy{flex:1 1 auto!important;min-width:0!important}
.ai-thread-time{flex:0 0 auto!important;white-space:nowrap!important;margin-left:auto!important}
.ai-thread-actions{flex:0 0 auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:3px!important;min-width:28px!important}
.ai-thread-action{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;flex:none!important}
.ai-thread-menu{position:absolute!important;right:8px!important;left:auto!important;top:calc(100% + 4px)!important;z-index:1800!important;min-width:210px!important;max-width:calc(100% - 16px)!important;max-height:min(58vh,360px)!important;overflow:auto!important;transform:none!important}
.ai-chat-head-more{position:relative!important}
.ai-chat-head-menu{position:absolute!important;right:0!important;left:auto!important;top:calc(100% + 6px)!important;z-index:1800!important}
@media(max-width:600px){.ai-thread-actions{min-width:32px!important}.ai-thread-action{width:30px!important;height:30px!important}.ai-thread-menu{right:4px!important;min-width:210px!important;max-width:calc(100vw - 20px)!important}}


/* Eclipse IDE — IntelliJ-like workspace */
.ide-shell{height:calc(100svh - 48px);min-height:680px;margin:-8px -4px 0;background:#0b0d10;border:1px solid #252a31;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 22px 70px rgba(0,0,0,.45)}
.ide-topbar{height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;background:linear-gradient(180deg,#16191e,#111419);border-bottom:1px solid #2a2f36;gap:12px}
.ide-topbar-left,.ide-topbar-actions{display:flex;align-items:center;gap:6px;min-width:0}.ide-topbar-left{flex:1}.ide-topbar-actions{justify-content:flex-end}.ide-window-btn,.ide-tool-btn{border:1px solid transparent;background:transparent;color:#aeb6c1;height:32px;border-radius:6px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;cursor:pointer}.ide-window-btn:hover,.ide-tool-btn:hover{background:#20252c;color:#fff}.ide-tool-btn.primary{background:#4e2fd2;color:#fff;border-color:#6c4cf0}.ide-project-title{font-weight:750;color:#edf0f5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ide-target-chip{padding:4px 8px;border:1px solid #3a3157;background:#171326;color:#ad9aff;border-radius:6px;font-size:10px;white-space:nowrap}.ide-main{min-height:0;flex:1;display:grid;grid-template-columns:275px minmax(0,1fr) 300px;background:#0b0d10}.ide-project-panel{min-width:0;border-right:1px solid #262b32;background:#101318;display:flex;flex-direction:column}.ide-project-head{padding:12px;border-bottom:1px solid #252a31;display:flex;align-items:center;gap:8px}.ide-project-head>div{min-width:0;flex:1}.ide-project-head b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ide-project-head small{display:block;color:#66707d;font-size:10px;margin-top:3px}.ide-tree-search{padding:8px;border-bottom:1px solid #23282e}.ide-tree-search span{display:flex;align-items:center;gap:6px;border:1px solid #2b3139;background:#0c0f13;border-radius:6px;padding:0 8px}.ide-tree-search .icon{width:14px;color:#69737f}.ide-tree-search input{width:100%;min-height:30px;background:transparent;border:0;outline:0;color:#d9dee6;font-size:11px}.ide-tree-scroll{min-height:0;overflow:auto;padding:7px 0}.ide-tree-row{width:100%;border:0;background:transparent;color:#9da7b3;display:flex;align-items:center;gap:6px;min-height:27px;padding:3px 8px 3px calc(8px + var(--ide-depth) * 14px);font-size:11px;text-align:left;cursor:pointer}.ide-tree-row:hover{background:#1b2027;color:#fff}.ide-file-row.active{background:#252b33;color:#fff}.ide-tree-row .icon{width:15px;height:15px}.ide-tree-row i{margin-left:auto;color:#59636e;font-size:8px;font-style:normal}.ide-tree-caret{margin-left:auto}.ide-tree-caret .icon{width:12px;height:12px}.ide-empty-tree{display:grid;place-items:center;padding:40px 18px;text-align:center;color:#5f6975;gap:7px}.ide-empty-tree b{color:#9fa9b6}.ide-editor-area{min-width:0;min-height:0;display:flex;flex-direction:column}.ide-tabs-bar{height:36px;display:flex;align-items:stretch;background:#15181d;border-bottom:1px solid #272c34;overflow:auto}.ide-editor-tab{border:0;border-right:1px solid #252a31;background:#171a1f;color:#8d97a3;padding:0 9px;display:flex;align-items:center;gap:6px;min-width:120px;max-width:220px;cursor:pointer;font-size:10px}.ide-editor-tab:hover{background:#1e232a;color:#fff}.ide-editor-tab.active{background:#0f1115;color:#fff;box-shadow:inset 0 2px #6f51ff}.ide-editor-tab i{margin-left:auto;color:#66707b;font-style:normal;font-size:14px}.ide-editor-tab i:hover{color:#fff}.ide-tabs-new{border:0;background:#15181d;color:#85909d;padding:0 12px;cursor:pointer}.ide-no-tabs{padding:10px;color:#5c6570;font-size:10px}.ide-editor-head{min-height:52px;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid #23282f;background:#0f1216}.ide-editor-head>div:first-child{min-width:0}.ide-editor-head b{display:inline-block;margin-left:8px;font-size:11px}.ide-editor-head small{display:block;color:#5e6874;font-size:9px;margin-top:4px}.ide-file-kind{display:inline-flex;padding:2px 5px;border:1px solid #313740;border-radius:4px;color:#8b96a3;font-size:8px}.ide-editor-actions{display:flex;gap:5px}.ide-code-wrap{min-height:0;flex:1;display:grid;grid-template-columns:50px minmax(0,1fr);background:#0d0f12}.ide-line-numbers{overflow:hidden;padding:12px 9px 18px 0;text-align:right;color:#4b535e;background:#0b0d10;border-right:1px solid #22272d;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;user-select:none;white-space:pre}.ide-editor{width:100%;height:100%;min-height:420px;resize:none;border:0;outline:0;padding:12px 16px 18px;background:#0d0f12;color:#d8dde5;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;tab-size:4;white-space:pre;overflow:auto}.ide-editor::selection{background:#394064}.ide-ai-panel{min-width:0;border-left:1px solid #262b32;background:#101318;display:flex;flex-direction:column;padding:12px;gap:10px}.ide-ai-head{display:flex;gap:8px;align-items:flex-start;border-bottom:1px solid #252a31;padding-bottom:10px}.ide-ai-head>div{min-width:0;flex:1}.ide-ai-head b{display:block;font-size:12px}.ide-ai-head small{display:block;color:#66707c;font-size:9px;line-height:1.4;margin-top:3px}.ide-ai-dot{width:7px;height:7px;border-radius:50%;background:#505862;margin-top:6px}.ide-ai-dot.on{background:#28db94;box-shadow:0 0 10px rgba(40,219,148,.5)}.ide-ai-prompt{min-height:140px;resize:vertical;border:1px solid #2b3139;border-radius:7px;background:#0b0e12;color:#dfe4eb;padding:9px;font:11px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;outline:0}.ide-ai-prompt:focus{border-color:#5b47b4;box-shadow:0 0 0 2px rgba(109,74,255,.12)}.ide-ai-note{font-size:9px;color:#65707d;line-height:1.5;border-top:1px solid #252a31;padding-top:9px}.ide-bottom{height:205px;min-height:155px;border-top:1px solid #292f37;background:#0a0d10;display:flex;flex-direction:column}.ide-bottom-tabs{height:35px;display:flex;align-items:center;border-bottom:1px solid #252a31;background:#111419}.ide-bottom-tab{height:100%;padding:0 11px;border:0;background:transparent;color:#7f8995;font-size:10px;cursor:pointer}.ide-bottom-tab.active{color:#fff;background:#171b21;box-shadow:inset 0 2px #6f51ff}.ide-bottom-tab em{font-style:normal;border-radius:10px;background:#492738;color:#ff98aa;padding:1px 5px;margin-left:3px;font-size:8px}.ide-bottom-spacer{flex:1}.ide-bottom-body{min-height:0;flex:1;overflow:auto}.ide-problem-row{width:100%;border:0;border-bottom:1px solid #1d2229;background:transparent;color:#aeb7c2;display:flex;gap:8px;padding:7px 10px;text-align:left;cursor:pointer}.ide-problem-row:hover{background:#13171c}.ide-problem-row .icon{width:14px}.ide-problem-row b{display:block;font-size:10px}.ide-problem-row small{display:block;color:#68727e;font-size:9px;margin-top:2px}.ide-bottom-empty,.ide-git-empty{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:#58626f;text-align:center;padding:18px}.ide-bottom-empty b,.ide-git-empty b{color:#8f99a5;font-size:11px}.ide-bottom-empty span,.ide-git-empty span{max-width:420px;font-size:9px;line-height:1.5}.ide-terminal-output{margin:0;padding:12px;color:#b6c0ca;font:10px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap}.ide-todo-row{display:flex;gap:12px;padding:6px 10px;border-bottom:1px solid #1b2026;font-size:10px}.ide-todo-row code{color:#806dff}.ide-landing{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:16px;min-height:620px;background:radial-gradient(circle at 30% 20%,rgba(109,74,255,.11),transparent 32%),#0a0d11;border:1px solid #222831;border-radius:16px;overflow:hidden}.ide-landing-main{padding:54px;display:flex;flex-direction:column;justify-content:center}.ide-logo{width:64px;height:64px;display:grid;place-items:center;border-radius:18px;background:#17112c;color:#a895ff;border:1px solid #3c2b73;box-shadow:0 20px 60px rgba(73,49,170,.2);margin-bottom:18px}.ide-logo .icon{width:32px;height:32px}.ide-landing-main h2{font-size:34px;line-height:1.1;max-width:760px;margin:7px 0 12px;letter-spacing:-.03em}.ide-landing-main p{max-width:760px;color:#7d8794;line-height:1.7;font-size:13px}.ide-open-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.ide-upload-panel{padding:28px;background:#0f1318;border-left:1px solid #252b33;display:flex;flex-direction:column;gap:13px;justify-content:center}.ide-instruction{resize:vertical;min-height:100px;padding:9px!important}.ide-auto-ai{display:flex;align-items:flex-start;gap:9px;padding:11px;border:1px solid #292f38;background:#0b0e12;border-radius:9px;cursor:pointer}.ide-auto-ai input{margin-top:2px;accent-color:#6d4aff}.ide-auto-ai b{display:block;font-size:10px}.ide-auto-ai small{display:block;color:#626d79;font-size:9px;line-height:1.45;margin-top:3px}
@media(max-width:1150px){.ide-main{grid-template-columns:245px minmax(0,1fr)}.ide-ai-panel{display:none}.ide-landing{grid-template-columns:1fr}.ide-upload-panel{border-left:0;border-top:1px solid #252b33}}
@media(max-width:980px){.ide-shell{height:auto;min-height:780px;margin:0}.ide-topbar{height:auto;min-height:46px;flex-wrap:wrap;padding:8px}.ide-topbar-actions{width:100%;justify-content:flex-start;overflow:auto}.ide-main{grid-template-columns:1fr}.ide-project-panel{min-height:240px;border-right:0;border-bottom:1px solid #262b32}.ide-tree-scroll{max-height:250px}.ide-editor-area{min-height:640px}.ide-ai-panel{display:flex;border-left:0;border-top:1px solid #262b32}.ide-bottom{height:190px}.ide-landing{min-height:0}.ide-landing-main{padding:28px}.ide-landing-main h2{font-size:27px}}

/* Eclipse Web 7.37 — Permissions workspace */
.permissions-pro-shell{margin-top:4px;border:1px solid #242b34;border-radius:14px;overflow:hidden;background:#0b0e12;box-shadow:0 24px 70px rgba(0,0,0,.32)}
.permissions-pro-head{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 20px;background:linear-gradient(180deg,#15191f,#101318);border-bottom:1px solid #272e37}
.permissions-pro-brand{display:flex;align-items:center;gap:12px;min-width:0}.permissions-pro-brand>div{min-width:0}.permissions-pro-brand h2{margin:2px 0 4px;font-size:18px}.permissions-pro-brand p{margin:0;color:#737d89;font-size:10px;line-height:1.5}.permissions-pro-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:#181128;color:#ab97ff;border:1px solid #392b67;flex:0 0 auto}.permissions-pro-icon .icon{width:22px;height:22px}.permissions-pro-db{display:flex;align-items:center;gap:9px;min-width:250px;padding:9px 10px;border:1px solid #252d36;border-radius:9px;background:#0c1014}.permissions-pro-db>div:nth-child(2){min-width:0;flex:1}.permissions-pro-db b{display:block;font-size:10px}.permissions-pro-db small{display:block;margin-top:2px;color:#65707d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:8px}.permissions-db-dot{width:8px;height:8px;border-radius:50%;background:#59636e;box-shadow:0 0 0 3px rgba(89,99,110,.08);flex:0 0 auto}.permissions-db-dot.on{background:#29d99a;box-shadow:0 0 11px rgba(41,217,154,.35)}
.permissions-pro-toolbar{display:grid;grid-template-columns:minmax(350px,1.15fr) auto minmax(300px,1fr);gap:10px;padding:10px;border-bottom:1px solid #252c34;background:#0e1217}.permissions-pro-segments,.permissions-pro-mode,.permissions-pro-actions{display:flex;align-items:stretch;gap:6px}.permissions-pro-segment{display:flex;align-items:center;gap:7px;min-width:160px;flex:1;text-align:left;border:1px solid #262e38;border-radius:8px;background:#11161c;color:#8994a1;padding:8px 10px;cursor:pointer}.permissions-pro-segment:hover,.permissions-pro-mode-btn:hover{border-color:#41395a;color:#edf1f7;background:#151a21}.permissions-pro-segment.active{background:#17122a;border-color:#4d3d78;color:#eeeaff;box-shadow:inset 0 0 0 1px rgba(128,100,255,.08)}.permissions-pro-segment .icon,.permissions-pro-mode-btn .icon{width:15px;height:15px}.permissions-pro-segment span,.permissions-pro-mode-btn{display:flex;align-items:center}.permissions-pro-segment span{flex-direction:column;align-items:flex-start}.permissions-pro-segment b{font-size:9px}.permissions-pro-segment small{font-size:8px;color:#616b77;margin-top:2px}.permissions-pro-mode-btn{border:1px solid #262e38;border-radius:8px;background:#11161c;color:#8994a1;padding:8px 9px;gap:6px;cursor:pointer;font-size:9px;white-space:nowrap}.permissions-pro-mode-btn small{font-size:8px;color:#616b77}.permissions-pro-mode-btn.active{background:#171c26;border-color:#43516d;color:#fff}.permissions-pro-actions{justify-content:flex-end;flex-wrap:wrap}.permissions-pro-serverbar{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:12px;align-items:end;padding:11px 12px;border-bottom:1px solid #252c34;background:#0c1014}.permissions-pro-serverbar .field-label{margin:0}.permissions-pro-note{display:flex;gap:7px;align-items:flex-start;padding:9px 10px;border:1px solid #252d36;border-radius:8px;background:#10151b;color:#68727e;font-size:9px;line-height:1.45}.permissions-pro-note .icon{width:14px;height:14px;flex:0 0 auto}.permissions-pro-global-note{margin:10px 12px 0}.permissions-pro-workspace{display:grid;grid-template-columns:250px minmax(0,1fr) 290px;min-height:670px}.permissions-pro-roles,.permissions-pro-inspector{background:#0e1217}.permissions-pro-roles{border-right:1px solid #262d35;min-width:0}.permissions-pro-inspector{border-left:1px solid #262d35;padding:13px;min-width:0}.permissions-pro-panel-title,.permissions-pro-inspector-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border-bottom:1px solid #242b33}.permissions-pro-panel-title b,.permissions-pro-inspector-head b{display:block;font-size:11px}.permissions-pro-panel-title small{display:block;color:#626d79;font-size:8px;margin-top:2px}.permissions-pro-role-actions{display:flex;gap:5px}.permissions-pro-search{display:flex;align-items:center;gap:7px;margin:9px;border:1px solid #2a313a;border-radius:7px;padding:0 8px;background:#0b0f13;color:#687480}.permissions-pro-search.wide{margin:0;flex:1}.permissions-pro-search .icon{width:13px;height:13px}.permissions-pro-search input{width:100%;height:31px;border:0;background:transparent;color:#dce2ea;outline:0;font-size:9px}.permissions-pro-role-list{padding:0 7px 10px;max-height:590px;overflow:auto}.permissions-pro-role{width:100%;display:flex;align-items:center;gap:8px;padding:8px 7px;margin-bottom:3px;border:1px solid transparent;border-radius:8px;background:transparent;color:#9da7b3;text-align:left;cursor:pointer}.permissions-pro-role:hover{background:#161b21;color:#fff}.permissions-pro-role.active{background:#211a38;border-color:#3f3562;color:#fff}.permissions-pro-role>span:nth-child(2){min-width:0;flex:1}.permissions-pro-role b{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permissions-pro-role small{display:block;color:#69737f;font-size:7px;margin-top:2px}.role-avatar{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#171b23;border:1px solid #2b333d;color:#8d98a6;flex:0 0 auto}.role-avatar.xlarge{width:34px;height:34px;border-radius:9px}.role-avatar .icon{width:13px;height:13px}.role-avatar.xlarge .icon{width:17px;height:17px}.permissions-role-lock{color:#555f6c;margin-left:auto}.permissions-pro-editor{min-width:0;display:flex;flex-direction:column;background:#0b0e12}.permissions-pro-editor-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;border-bottom:1px solid #252c34}.permissions-pro-editor-head h2{font-size:14px;margin:2px 0 3px}.permissions-pro-editor-head p{margin:0;color:#67727e;font-size:8px}.permissions-pro-editor-head code{color:#9c87ff}.permissions-pro-editor-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.permissions-pro-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:9px 12px;border-bottom:1px solid #232a32}.permissions-pro-stats>div{padding:8px 9px;border:1px solid #222a33;border-radius:7px;background:#10141a}.permissions-pro-stats span{display:block;color:#626d79;font-size:7px}.permissions-pro-stats b{display:block;margin-top:3px;font-size:12px}.permissions-pro-catalog-toolbar{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid #252c34}.permissions-pro-catalog-actions{display:flex;gap:4px}.permissions-pro-catalog{padding:8px 12px;overflow:auto;max-height:525px}.permissions-pro-category{border:1px solid #242c35;border-radius:9px;background:#101419;margin-bottom:7px;overflow:hidden}.permissions-pro-category-head{display:flex;align-items:stretch;border-bottom:1px solid #222932}.permissions-pro-category-main{display:flex;align-items:center;gap:8px;min-width:0;flex:1;border:0;background:transparent;color:#d6dce4;text-align:left;padding:9px;cursor:pointer}.permissions-pro-category-main:hover{background:#151a20}.permissions-pro-category-main>span:nth-last-of-type(1){min-width:0;flex:1}.permissions-pro-category-main b{display:block;font-size:9px}.permissions-pro-category-main small{display:block;color:#666f7a;margin-top:2px;font-size:7px}.permissions-pro-category-main>strong{font-size:9px;white-space:nowrap}.permissions-pro-category-main .icon{width:12px;height:12px}.permissions-pro-category-main .category-icon{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#151a21}.permissions-pro-category-switch{border:0;border-left:1px solid #222932;background:#131820;color:#818c98;min-width:55px;font-size:7px;font-weight:700;cursor:pointer}.permissions-pro-category-switch:hover{background:#202735;color:#fff}.permissions-pro-category-list{padding:4px 7px}.permissions-pro-category.is-collapsed .permissions-pro-category-list{display:none}.permissions-pro-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 3px;border-bottom:1px solid #1d242c}.permissions-pro-row:last-child{border-bottom:0}.permissions-pro-row-copy{min-width:0}.permissions-pro-row-copy code{display:block;color:#b49fff;font:9px/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow-wrap:anywhere}.permissions-pro-row-copy span{display:block;color:#b8c0ca;font-size:8px;margin-top:2px}.permissions-pro-row-copy small{display:block;color:#5f6873;font-size:7px;margin-top:2px}.permission-switch{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#68737f;cursor:pointer}.permission-switch-track{width:34px;height:18px;border-radius:10px;background:#252c34;border:1px solid #343e48;position:relative;display:block}.permission-switch-thumb{width:14px;height:14px;border-radius:50%;position:absolute;top:1px;left:1px;background:#8a949f;transition:.15s ease}.permission-switch-label{font-size:7px;min-width:20px;text-align:left}.permission-switch.on .permission-switch-track{background:#4d3d86;border-color:#6c54b8}.permission-switch.on .permission-switch-thumb{left:17px;background:#ddd5ff}.permission-switch.on .permission-switch-label{color:#c8bcff}.permission-switch.disabled{opacity:.45;cursor:not-allowed}.permissions-pro-add{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:9px 12px;padding:10px;border:1px dashed #303944;border-radius:9px;background:#0e1318}.permissions-pro-add b{display:block;font-size:9px}.permissions-pro-add small{display:block;color:#626d79;font-size:7px;margin-top:2px}.permissions-pro-add>div:last-child{display:flex;gap:6px;min-width:260px}.permissions-pro-inspector-head{padding:0 0 10px;border:0}.permissions-role-card{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid #252d36;border-radius:8px;background:#11161c}.permissions-role-card>div{min-width:0;flex:1}.permissions-role-card b{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.permissions-role-card small{display:block;color:#626d79;font-size:7px;margin-top:2px}.permissions-pro-detail{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:9px}.permissions-pro-detail>div{padding:8px;border:1px solid #242c35;border-radius:7px;background:#0d1116}.permissions-pro-detail span{display:block;color:#626d79;font-size:7px}.permissions-pro-detail b{display:block;margin-top:3px;font-size:9px}.permissions-pro-savebox{display:flex;align-items:flex-start;gap:7px;padding:9px;margin-top:9px;border:1px solid #252d36;border-radius:8px;background:#10151a}.permissions-pro-savebox.dirty{border-color:#4a3f6e;background:#151225}.permissions-pro-savebox b{display:block;font-size:8px}.permissions-pro-savebox small{display:block;color:#67717c;font-size:7px;line-height:1.45;margin-top:2px}.permissions-pro-inspector-actions{display:grid;gap:6px;margin-top:9px}.permissions-pro-tip{margin-top:auto;padding:9px;border-top:1px solid #242b33;color:#596572;font-size:7px;line-height:1.5}.permissions-pro-tip .icon{width:12px;height:12px;vertical-align:middle;margin-right:4px}.btn-danger{background:#29161b!important;border-color:#63303c!important;color:#ffadbb!important}.danger-icon{color:#d47b8c!important}

/* IntelliJ IDEA-like editor shell */
.ide-shell-v2{height:calc(100svh - 60px);min-height:720px;margin:0;border:1px solid #252b33;border-radius:10px;overflow:hidden;background:#090c10;display:flex;flex-direction:column;box-shadow:0 24px 72px rgba(0,0,0,.45)}
.ide-menubar{height:32px;display:flex;align-items:center;border-bottom:1px solid #20262d;background:#11151a;color:#7d8793}.ide-menu-group{display:flex;align-items:center;height:100%}.ide-menu-group button{height:100%;padding:0 9px;border:0;background:transparent;color:#89939f;font-size:9px;cursor:pointer}.ide-menu-group button:hover{background:#1a2027;color:#fff}.ide-menu-group.right{margin-left:auto}.ide-menu-title{min-width:0;flex:1;text-align:center;color:#aeb6c1;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ide-menu-title span{color:#505a66;margin:0 3px}
.ide-shell-v2 .ide-topbar{height:39px;padding:0 8px;background:#15191f;border-bottom:1px solid #272e36}.ide-tool-icon{width:30px;height:29px;display:grid;place-items:center;border:0;background:transparent;color:#7d8793;border-radius:5px;cursor:pointer}.ide-tool-icon:hover{background:#222932;color:#fff}.ide-tool-icon .icon{width:15px;height:15px}.ide-shell-v2 .ide-topbar-actions{gap:4px}.ide-shell-v2 .ide-tool-btn{height:28px;border:1px solid #2b333d;background:#171c22;color:#9aa4b0;border-radius:5px;padding:0 8px;font-size:8px}.ide-shell-v2 .ide-tool-btn:hover{background:#222831;color:#fff}.ide-shell-v2 .ide-tool-btn.primary{background:#5135a7;border-color:#6e50d2;color:#fff}.ide-shell-v2 .ide-project-title{margin-left:6px;font-size:9px}.ide-main{grid-template-columns:275px minmax(0,1fr) 295px}.ide-project-panel{background:#101419}.ide-editor-area{background:#0b0e12}.ide-tabs-bar{height:34px}.ide-editor-tab{min-width:140px;height:34px;background:#151a20;border-right-color:#232a31;font-size:8px}.ide-editor-tab.active{background:#0e1115;box-shadow:inset 0 2px #7560ff}.ide-editor-tab .icon{width:12px;height:12px}.ide-editor-tab i{font-size:12px}.ide-editor-head{min-height:42px;padding:6px 10px;background:#0e1115}.ide-editor-head b{font-size:9px}.ide-editor-head small{font-size:7px}.ide-file-kind{font-size:7px;padding:2px 4px}.ide-code-wrap{display:block!important;position:relative;background:#0b0e12}.ide-editor{display:block;min-height:0;width:100%;height:100%;padding:0;box-sizing:border-box}.ide-code-wrap .CodeMirror{height:100%!important;width:100%;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.ide-code-wrap .CodeMirror-scroll{min-height:100%}.ide-code-wrap .CodeMirror-gutters{z-index:2}.ide-bottom{height:185px;min-height:150px}.ide-ai-panel{background:#101419}.ide-tree-footer{display:flex;gap:5px;padding:7px;border-top:1px solid #242b33}.ide-tree-footer button{flex:1;border:1px solid #272f38;background:#151a20;color:#8e98a4;border-radius:6px;padding:7px 5px;font-size:7px;cursor:pointer}.ide-tree-footer button:hover{background:#222931;color:#fff}.ide-tree-footer button.danger:hover{background:#2a171d;border-color:#6a333f;color:#ffadba}.ide-shell-v2 .ide-project-head{padding:9px}.ide-shell-v2 .ide-project-head b{font-size:9px}.ide-shell-v2 .ide-project-head small{font-size:7px}.ide-shell-v2 .ide-tree-search{padding:6px}.ide-shell-v2 .ide-tree-search input{min-height:27px;font-size:8px}.ide-shell-v2 .ide-tree-row{font-size:8px;min-height:24px}.ide-shell-v2 .ide-tree-scroll{max-height:none}.ide-shell-v2 .ide-ai-panel{padding:10px;gap:7px}.ide-shell-v2 .ide-ai-head b{font-size:9px}.ide-shell-v2 .ide-ai-head small{font-size:7px}.ide-shell-v2 .ide-ai-prompt{min-height:120px;font-size:9px}.ide-shell-v2 .ide-ai-note{font-size:7px}.ide-bottom-tab{font-size:8px}.ide-problem-row b{font-size:8px}.ide-problem-row small{font-size:7px}.ide-terminal-output{font-size:8px}
.cm-s-eclipse-dark.CodeMirror{background:#0b0e12;color:#dbe1e8}.cm-s-eclipse-dark .CodeMirror-gutters{background:#0a0d11;border-right:1px solid #20262d}.cm-s-eclipse-dark .CodeMirror-linenumber{color:#4f5965}.cm-s-eclipse-dark .CodeMirror-cursor{border-left:1px solid #b9aaff}.cm-s-eclipse-dark .CodeMirror-selected{background:#293658!important}.cm-s-eclipse-dark .CodeMirror-activeline-background{background:#121821}.cm-s-eclipse-dark .CodeMirror-matchingbracket{color:#fff!important;background:#2d3950;border-bottom:1px solid #8374ff}.cm-s-eclipse-dark .cm-keyword{color:#c792ea}.cm-s-eclipse-dark .cm-atom,.cm-s-eclipse-dark .cm-number{color:#e3a86a}.cm-s-eclipse-dark .cm-def{color:#82aaff}.cm-s-eclipse-dark .cm-variable{color:#d9dee7}.cm-s-eclipse-dark .cm-variable-2,.cm-s-eclipse-dark .cm-variable-3{color:#89ddff}.cm-s-eclipse-dark .cm-property{color:#addb67}.cm-s-eclipse-dark .cm-operator{color:#89ddff}.cm-s-eclipse-dark .cm-string,.cm-s-eclipse-dark .cm-string-2{color:#c3e88d}.cm-s-eclipse-dark .cm-comment{color:#5f6b78}.cm-s-eclipse-dark .cm-builtin{color:#f78c6c}.cm-s-eclipse-dark .cm-tag{color:#f07178}.cm-s-eclipse-dark .cm-attribute{color:#c792ea}.cm-s-eclipse-dark .cm-meta{color:#89ddff}.cm-s-eclipse-dark .cm-qualifier{color:#82aaff}.cm-s-eclipse-dark .cm-link{color:#80cbc4}
.CodeMirror-hints{background:#171c23!important;border:1px solid #353e4a!important;box-shadow:0 12px 32px rgba(0,0,0,.4)}.CodeMirror-hint{color:#c7ced7!important;padding:4px 8px!important;font:11px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important}.CodeMirror-hint-active{background:#3d316b!important;color:#fff!important}.CodeMirror-dialog{background:#151a20!important;color:#ccd3dd!important;border-bottom:1px solid #303844!important;padding:5px!important}.CodeMirror-dialog input{background:#0b0e12;color:#fff;border:1px solid #343c47;border-radius:4px;padding:4px}.CodeMirror-foldmarker{color:#a994ff!important}.CodeMirror-foldgutter-open,.CodeMirror-foldgutter-folded{color:#71808f!important}
@media(max-width:1200px){.permissions-pro-toolbar{grid-template-columns:1fr}.permissions-pro-actions{justify-content:flex-start}.permissions-pro-workspace{grid-template-columns:225px minmax(0,1fr)}.permissions-pro-inspector{display:none}.ide-main{grid-template-columns:225px minmax(0,1fr)}.ide-ai-panel{display:none}}
@media(max-width:850px){.permissions-pro-head{align-items:flex-start;flex-direction:column}.permissions-pro-db{width:100%;box-sizing:border-box}.permissions-pro-workspace{grid-template-columns:1fr}.permissions-pro-roles{border-right:0;border-bottom:1px solid #262d35}.permissions-pro-role-list{max-height:220px}.permissions-pro-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.permissions-pro-add{align-items:stretch;flex-direction:column}.permissions-pro-add>div:last-child{min-width:0}.ide-shell-v2{height:auto;min-height:800px}.ide-main{grid-template-columns:1fr}.ide-project-panel{min-height:230px;border-right:0;border-bottom:1px solid #262d35}.ide-editor-area{min-height:650px}.ide-menubar{overflow:auto}.ide-menu-title{display:none}}
.ide-target-select{display:flex;align-items:center;gap:5px;margin-left:6px;padding:2px 5px;border:1px solid #302a46;border-radius:5px;background:#151226;color:#a995ff;font-size:7px;flex:0 0 auto}.ide-target-select span{font-weight:700;letter-spacing:.04em}.ide-target-control{max-width:180px;height:23px;border:0;outline:0;background:transparent;color:#c9c1ff;font-size:8px}.ide-target-control option{background:#15191f;color:#eef2f6}.ide-file-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:7px}.ide-file-menu-grid .btn{justify-content:flex-start}@media(max-width:650px){.ide-target-select{max-width:150px}.ide-target-control{max-width:110px}.ide-file-menu-grid{grid-template-columns:1fr}}

/* IDE file creation: compact IntelliJ-like two-column metadata row */
.form-grid-2{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.2fr);gap:12px;align-items:start}
@media (max-width:760px){.form-grid-2{grid-template-columns:1fr}}


/* Users / Accounts Center v4 */
.users-admin-v4{display:grid;gap:12px}.users-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.users-toolbar-v4{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px}.users-toolbar-main{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.users-search-v4{flex:1;min-width:220px}.users-filter-v4{min-width:150px;height:34px}.users-toolbar-meta{display:flex;align-items:baseline;gap:6px;color:#697582;font-size:9px;white-space:nowrap}.users-toolbar-meta b{font-size:12px;color:#dfe5ec}.users-admin-workspace{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:12px;min-height:650px}.users-list-panel-v4{min-width:0;display:flex;flex-direction:column}.users-list-panel-v4>.panel-head{flex:0 0 auto}.users-list-v4{padding:0 8px 8px;display:grid;gap:5px;overflow:auto;max-height:700px}.users-list-row-v4{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) auto 14px;align-items:center;gap:9px;padding:8px 9px;border:1px solid transparent;border-radius:9px;background:#0d1217;color:#dfe6ee;text-align:left;cursor:pointer;transition:.14s ease}.users-list-row-v4:hover{background:#141a21;border-color:#29323d}.users-list-row-v4.selected{background:#18152b;border-color:#5746a0;box-shadow:inset 2px 0 #866bff}.users-list-copy-v4{min-width:0}.users-list-copy-v4 b{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-list-copy-v4 small{display:block;margin-top:3px;color:#677482;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-list-state-v4{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.users-list-state-v4 .chip{font-size:7px}.users-row-chevron{color:#53606d}.users-row-chevron .icon{width:12px;height:12px}.users-detail-panel-v4{padding:0;min-width:0;overflow:hidden}.users-detail-v4{padding:14px;display:grid;gap:12px}.users-detail-head-v4{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:12px;border-bottom:1px solid #252c34}.users-detail-identity-v4{display:flex;align-items:center;gap:12px;min-width:0}.users-detail-identity-v4 h2{margin:3px 0 7px;font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-detail-actions-v4{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px;max-width:620px}.users-detail-actions-v4 .btn{min-height:31px}.protected-owner-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid #5e4c1d;background:#211a0e;color:#e7bd69;border-radius:8px;font-size:9px;font-weight:700}.protected-owner-badge .icon{width:13px;height:13px}.users-detail-grid-v4{display:grid;grid-template-columns:1fr 1fr;gap:10px}.users-info-card-v4{padding:11px;border:1px solid #242c35;border-radius:9px;background:#0d1217}.users-info-card-v4 h3{margin:0 0 10px;font-size:11px;color:#edf2f7}.users-detail-fields-v4{display:grid;grid-template-columns:1fr 1fr;gap:8px}.users-detail-fields-v4>div{min-width:0;padding:8px;border:1px solid #202832;border-radius:7px;background:#0a0f14}.users-detail-fields-v4 span{display:block;color:#61707e;font-size:7px;text-transform:uppercase;letter-spacing:.05em}.users-detail-fields-v4 b{display:block;margin-top:4px;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-security-list-v4{display:grid;gap:8px}.users-security-list-v4>div{display:flex;gap:8px;align-items:flex-start;padding:8px;border:1px solid #202832;border-radius:7px;background:#0a0f14}.users-security-list-v4 b{display:block;font-size:9px}.users-security-list-v4 small{display:block;margin-top:3px;color:#687582;font-size:7px;line-height:1.45}.security-mark{width:27px;height:27px;display:grid;place-items:center;flex:0 0 27px;border:1px solid #34404b;border-radius:7px;background:#141a20;color:#72808e}.security-mark.ok{border-color:#245640;background:#0d251a;color:#78d7a5}.security-mark.warn{border-color:#6c5722;background:#241d0d;color:#e7bd69}.security-mark .icon{width:14px;height:14px}.users-access-card-v4{padding-bottom:10px}.users-access-head-v4{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:9px}.users-access-head-v4 h3{margin-bottom:4px}.users-access-head-v4 p{margin:0;color:#687582;font-size:8px;line-height:1.45;max-width:680px}.users-access-summary-v4{display:grid;grid-template-columns:auto auto;column-gap:5px;row-gap:1px;text-align:right}.users-access-summary-v4 b{font-size:12px;color:#ddd6ff}.users-access-summary-v4 span{font-size:7px;color:#697582}.users-access-grid-v4{display:grid;grid-template-columns:1fr 1fr;gap:5px}.users-access-item-v4{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px 8px;border:1px solid #202832;border-radius:7px;background:#0a0f14}.users-access-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:6px;background:#151b23;color:#82909d}.users-access-icon .icon{width:13px;height:13px}.users-access-item-v4 b{display:block;font-size:8px}.users-access-item-v4 small{display:block;margin-top:2px;color:#5d6975;font-size:6.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.access-badges-v4{display:flex;align-items:center}.access-badge{padding:4px 6px;border-radius:5px;font-size:6.5px;font-weight:800;white-space:nowrap}.access-badge.manage{background:#16291f;color:#79d7a4;border:1px solid #244e38}.access-badge.view{background:#152432;color:#7ec7ff;border:1px solid #265172}.access-badge.none{background:#15191e;color:#606b76;border:1px solid #29313a}.users-detail-footer-v4{display:flex;justify-content:space-between;gap:12px;padding-top:3px;color:#5f6b78;font-size:7px}.users-form-v4{gap:12px}.users-form-section-v4{padding:10px;border:1px solid #242c35;border-radius:9px;background:#0d1217}.users-form-section-v4>.eyebrow{display:block;margin-bottom:8px}.users-check-row{display:flex;align-items:flex-start;gap:8px;margin-top:9px}.users-check-row input{margin-top:2px}.users-check-row b{display:block;font-size:9px}.users-check-row small{display:block;color:#697582;font-size:7px;margin-top:3px}.temporary-secret-v4{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:12px;border:1px solid #365e47;border-radius:9px;background:#0b1a12}.temporary-secret-v4 span{grid-column:1/-1;color:#75d5a2;font-size:8px;font-weight:700}.temporary-secret-v4 code{padding:9px;border:1px solid #253d2f;background:#08100c;border-radius:7px;color:#e7fff1;font:700 14px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}.temporary-secret-v4 .btn{justify-self:end}
@media(max-width:1050px){.users-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.users-admin-workspace{grid-template-columns:1fr}.users-list-v4{max-height:360px}.users-detail-actions-v4{max-width:none}.users-detail-grid-v4{grid-template-columns:1fr}}
@media(max-width:720px){.users-toolbar-v4{align-items:stretch;flex-direction:column}.users-toolbar-main{flex-direction:column;align-items:stretch}.users-search-v4{min-width:0}.users-filter-v4{width:100%}.users-detail{padding:10px}.users-detail-head-v4{flex-direction:column}.users-detail-actions-v4{justify-content:flex-start}.users-detail-actions-v4 .btn{flex:1;min-width:120px}.users-detail-fields-v4,.users-access-grid-v4{grid-template-columns:1fr}.users-access-head-v4{flex-direction:column}.users-access-summary-v4{text-align:left;grid-template-columns:auto auto}.users-list-state-v4 .status-pill{font-size:6px}.temporary-secret-v4{grid-template-columns:1fr}.temporary-secret-v4 .btn{justify-self:stretch}.users-detail-footer-v4{flex-direction:column}}
/* Users / personal section access 7.41 */
.users-admin-v5{display:grid;gap:12px}.users-access-editor-v5{background:linear-gradient(180deg,#0d1218,#0a0f14);border-color:#2b3440}.users-access-head-v5{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}.users-access-head-v5 h3{margin:3px 0 4px;font-size:12px}.users-access-head-v5 p{margin:0;max-width:760px;color:#6c7784;font-size:8px;line-height:1.55}.users-access-summary-v5{display:grid;grid-template-columns:auto auto;gap:2px 6px;text-align:right;min-width:105px}.users-access-summary-v5 b{font-size:13px;color:#ddd6ff}.users-access-summary-v5 span{font-size:7px;color:#687582}.user-access-note-v5{display:flex;gap:8px;align-items:flex-start;padding:9px 10px;margin-bottom:10px;border:1px solid #2a3340;border-radius:8px;background:#0a0f14;color:#7d8a98;font-size:8px;line-height:1.5}.user-access-note-v5>.icon{width:14px;height:14px;flex:0 0 14px;color:#8e7cff;margin-top:1px}.user-access-note-v5 b{color:#dde4eb}.user-access-table-v5{display:grid;gap:5px}.user-access-row-v5{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(105px,.6fr) minmax(185px,.85fr) 120px;align-items:center;gap:8px;padding:8px;border:1px solid #202832;border-radius:8px;background:#0a0f14}.user-access-row-v5:hover{border-color:#313d4a;background:#0c1218}.user-access-row-v5.locked{opacity:.62}.user-access-section-v5{display:flex;align-items:center;gap:8px;min-width:0}.user-access-section-v5>div{min-width:0}.user-access-section-v5 b{display:block;font-size:8px;color:#e0e7ee}.user-access-section-v5 small{display:block;margin-top:2px;color:#5e6b78;font-size:6.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-access-icon-v5{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:7px;background:#151b23;border:1px solid #28323c;color:#8492a0}.user-access-icon-v5 .icon{width:13px;height:13px}.user-access-base-v5{min-width:0;color:#768391;font-size:7px}.user-access-base-v5 .access-badge{display:inline-block;margin-top:3px}.user-access-select-wrap-v5{display:grid;gap:3px}.user-access-select-wrap-v5>span{color:#5e6b78;font-size:6px;text-transform:uppercase;letter-spacing:.06em}.user-access-select-v5{width:100%;height:31px;font-size:8px}.user-access-effective-v5{display:flex;justify-content:flex-start;align-items:center}.users-access-footer-v5{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:9px;border-top:1px solid #222b34;color:#677482;font-size:7px}.users-access-footer-v5 .row-actions{margin-left:auto}.user-access-owner-lock-v5{display:flex;gap:9px;align-items:flex-start;padding:10px;border:1px solid #325441;border-radius:8px;background:#0b1710}.user-access-owner-lock-v5 .metric-icon{flex:0 0 28px}.user-access-owner-lock-v5 b{display:block;font-size:9px;color:#83d9a8}.user-access-owner-lock-v5 small{display:block;margin-top:3px;color:#6b7c72;font-size:7px;line-height:1.5}
@media(max-width:1050px){.user-access-row-v5{grid-template-columns:minmax(230px,1fr) minmax(160px,.8fr) 120px}.user-access-base-v5{display:none}.users-access-summary-v5{text-align:right}}
@media(max-width:720px){.users-access-head-v5{flex-direction:column}.users-access-summary-v5{text-align:left}.user-access-row-v5{grid-template-columns:1fr;gap:6px}.user-access-effective-v5{justify-content:flex-start}.user-access-base-v5{display:block}.user-access-select-v5{height:35px}.users-access-footer-v5{align-items:stretch;flex-direction:column}.users-access-footer-v5 .row-actions{margin-left:0}.users-access-footer-v5 .btn{flex:1}}

.permission-switch.permission-toggle-error{outline:2px solid rgba(255,82,82,.72);box-shadow:0 0 0 4px rgba(255,82,82,.12)}
.api-tabs-v2{position:sticky;top:0;z-index:5;background:rgba(6,8,12,.92);backdrop-filter:blur(14px)}
.api-ai-grid-v2,.api-v2-overview-grid,.api-packages-grid-v2{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px}.api-ai-grid-v2>.panel,.api-v2-overview-grid>.panel,.api-packages-grid-v2>.panel{min-width:0}
.api-ai-status-v2{display:flex;align-items:center;gap:12px;min-width:230px}.api-ai-status-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(127,127,127,.12)}.api-ai-status-mark.ok{background:rgba(66,211,146,.12)}.api-ai-status-mark.warn{background:rgba(255,172,66,.12)}.api-ai-status-v2>div:nth-child(2){display:grid;gap:3px;min-width:0}.api-ai-status-v2 b{font-size:14px}.api-ai-status-v2 span{font-size:11px;opacity:.68;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.api-ai-status-pill{margin-left:auto;font-size:10px;font-weight:800;letter-spacing:.12em;opacity:.75}
.api-ai-summary-v2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.api-ai-summary-v2>div{padding:12px;border:1px solid var(--line,rgba(255,255,255,.08));border-radius:12px;background:rgba(255,255,255,.025);display:grid;gap:5px}.api-ai-summary-v2 span{font-size:11px;opacity:.6}.api-ai-summary-v2 b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.api-ai-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.api-ai-quick{appearance:none;border:1px solid var(--line,rgba(255,255,255,.08));border-radius:14px;background:rgba(255,255,255,.025);padding:14px;text-align:left;color:inherit;cursor:pointer;display:grid;gap:6px}.api-ai-quick:hover{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.15)}.api-ai-quick.disabled{cursor:not-allowed;opacity:.45}.api-ai-quick b{font-size:13px}.api-ai-quick span{font-size:11px;opacity:.58}
.api-ai-form-v2 .api-ai-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.api-ai-form-v2 .row-actions{justify-content:flex-end;margin-top:14px}.api-v2-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.api-v2-kpis>div{padding:15px;border-radius:14px;border:1px solid var(--line,rgba(255,255,255,.08));display:grid;gap:4px}.api-v2-kpis b{font-size:22px}.api-v2-kpis span{font-size:11px;opacity:.58}.api-target-card-v2{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px;border:1px solid var(--line,rgba(255,255,255,.08));border-radius:14px;background:rgba(255,255,255,.025)}.api-target-card-v2>div{display:grid;gap:4px;flex:1;min-width:220px}.api-file-list-v2{max-height:620px;overflow:auto;display:grid;gap:3px}.api-file-list-v2>div{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px 8px;border-radius:9px}.api-file-list-v2>div:hover{background:rgba(255,255,255,.035)}.api-file-list-v2 code{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.api-file-list-v2>div>span:last-child{font-size:10px;opacity:.45}
@media (max-width:900px){.api-ai-grid-v2,.api-v2-overview-grid,.api-packages-grid-v2{grid-template-columns:1fr}.api-ai-quick-grid{grid-template-columns:1fr}.api-ai-form-v2 .api-ai-form-grid{grid-template-columns:1fr}.api-tabs-v2{position:static}.api-ai-summary-v2{grid-template-columns:1fr}}

/* Users per-section access controls v6: native select replaced with explicit buttons. */
.user-access-row-v6{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(150px,.75fr) minmax(420px,2.4fr) minmax(120px,.55fr);gap:16px;align-items:center;padding:18px 0;border-top:1px solid rgba(255,255,255,.07)}
.user-access-row-v6:first-child{border-top:0}.user-access-row-v6.locked{opacity:.62}.user-access-section-v6{display:flex;gap:12px;align-items:flex-start}.user-access-icon-v6{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:rgba(124,92,255,.12);flex:0 0 auto}.user-access-section-v6 b,.user-access-section-v6 small{display:block}.user-access-section-v6 small{margin-top:4px;color:var(--muted,#8f96a6);line-height:1.35}.user-access-base-v6{color:var(--muted,#8f96a6);font-size:13px}.user-access-choice-group-v6{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.user-access-choice-v6{min-height:58px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);color:inherit;border-radius:10px;padding:9px 10px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;cursor:pointer;transition:.15s ease}.user-access-choice-v6:hover{border-color:rgba(124,92,255,.45);background:rgba(124,92,255,.08)}.user-access-choice-v6.active{border-color:rgba(124,92,255,.8);background:rgba(124,92,255,.16);box-shadow:inset 0 0 0 1px rgba(124,92,255,.18)}.user-access-choice-v6 span{opacity:.9}.user-access-choice-v6 b{font-size:12px;line-height:1.2;text-align:left}.user-access-choice-v6:disabled{cursor:not-allowed;opacity:.5}.user-access-effective-v6{justify-self:end}.users-safe-render{margin:24px}.users-access-editor-v5 .users-access-table-v5{overflow:visible}
@media (max-width:1200px){.user-access-row-v6{grid-template-columns:1fr 1fr}.user-access-effective-v6{justify-self:start}.user-access-choice-group-v6{grid-column:1/-1}}
@media (max-width:720px){.user-access-row-v6{grid-template-columns:1fr}.user-access-choice-group-v6{grid-template-columns:repeat(2,minmax(0,1fr))}.user-access-effective-v6{justify-self:start}.user-access-base-v6{font-size:12px}}
