/* User-controlled outer rails are independent of dashboard widget widths. */
@media (min-width:1025px) {
  :root { --sidebar-width:var(--workspace-sidebar-width,224px); --pinboard-width:var(--workspace-pinboard-width,280px); }
  html body #appSidebar:not(.collapsed) :is(.sidebar-link-text,.sidebar-school-name,.sidebar-user-info,.sidebar-version) { display:block!important; }
  html body #appSidebar:not(.collapsed) .sidebar-link { justify-content:flex-start; }
  html body #appSidebar:not(.collapsed) .sidebar-header { justify-content:space-between; padding:18px 14px; gap:8px; }
  html body #appSidebar:not(.collapsed) .sidebar-logo-link { flex:1; min-width:0; gap:8px; }
  html body #appSidebar:not(.collapsed) .sidebar-collapse-btn { display:flex!important; }
  html body #appSidebar:not(.collapsed) .sidebar-user-row { flex-direction:row; }
  html body #appSidebar .sidebar-footer { padding:12px; }
  html body .main-content { min-width:0; }
  .workspace-resize { position:absolute; top:0; bottom:0; width:14px; z-index:20; cursor:col-resize; touch-action:none; opacity:0; transition:opacity .15s ease,background-color .15s ease; }
  .workspace-resize-sidebar { right:0; }
  .workspace-resize-pinboard { left:0; }
  .workspace-resize::after { content:''; position:absolute; top:calc(50% - 24px); height:48px; width:3px; left:5px; border-radius:3px; background:var(--text-secondary,#64748b); opacity:0; transition:opacity .15s ease,background-color .15s ease; }
  .workspace-resize:hover,.workspace-resize:focus-visible,.workspace-resize:active,html.workspace-resizing .workspace-resize { opacity:1; background:color-mix(in srgb,var(--primary) 14%,transparent); outline:0; }
  .workspace-resize:focus-visible::after,.workspace-resize:hover::after,.workspace-resize:active::after,html.workspace-resizing .workspace-resize::after { background:var(--primary); opacity:1; }
  .sidebar.collapsed .workspace-resize,.pinboard-collapsed .workspace-resize { display:none; }
  html.workspace-resizing,html.workspace-resizing * { cursor:col-resize!important; user-select:none!important; }
html.workspace-resizing :is(.main-content,.sidebar,.pinboard-sidebar) { transition:none!important; }

.iserv-favorites{margin:16px 12px 8px;padding:14px;border:1px solid rgba(100,116,139,.2);border-radius:16px;background:rgba(148,163,184,.08)}
.iserv-favorites-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.iserv-kicker{font-size:10px;font-weight:800;letter-spacing:.12em;color:#64748b}.iserv-favorites h3{margin:2px 0 0;font-size:15px}.iserv-favorites-hint{font-size:11px;color:#94a3b8}.iserv-favorite-grid{display:flex;flex-wrap:wrap;gap:7px}.iserv-favorite-card{display:flex;align-items:center;gap:2px;border:1px solid rgba(100,116,139,.18);border-radius:10px;background:var(--card-bg,#fff);overflow:hidden}.iserv-favorite-card a{display:flex;align-items:center;gap:6px;padding:8px 9px;font-size:12px;color:inherit;text-decoration:none}.iserv-favorite-icon{font-size:16px}.iserv-favorite-remove{border:0;background:transparent;color:#94a3b8;padding:6px;cursor:pointer}.iserv-favorite-add{border:1px dashed #94a3b8;border-radius:10px;background:transparent;padding:8px 10px;color:#64748b;cursor:pointer;font-size:12px}.iserv-favorite-form{display:grid;grid-template-columns:1fr 1.6fr 42px auto;gap:6px;margin-top:10px}.iserv-favorite-form input,.iserv-favorite-form button{min-width:0;padding:8px;border:1px solid #cbd5e1;border-radius:8px;background:var(--card-bg,#fff)}.iserv-favorite-form button{cursor:pointer;background:#2563eb;color:white;border-color:#2563eb}
}
@media(max-width:1024px) { .workspace-resize { display:none; } }
.workspace-design-button { display:flex; align-items:center; gap:9px; padding:10px 12px; width:100%; border:1px solid var(--border); border-radius:10px; color:var(--text-primary); background:var(--bg-secondary); font:inherit; font-size:.82rem; cursor:pointer; margin-bottom:12px; min-height:40px; }
.workspace-design-button > span:first-child { font-size:1.2rem; }
.workspace-preferences { margin:auto; padding:24px; width:min(480px,calc(100vw - 28px)); max-height:90dvh; overflow:auto; border:1px solid var(--border,#d3dce7); border-radius:20px; background:var(--bg-card,#fff); color:var(--text-primary,#182536); box-sizing:border-box; }
.workspace-preferences::backdrop { background:#020617aa; backdrop-filter:blur(4px); }
.workspace-preferences header,.workspace-preferences footer { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.workspace-preferences h2 { margin:4px 0; font-size:1.3rem; }
.workspace-preferences p { line-height:1.6; color:var(--text-secondary); font-size:.87rem; margin:16px 0; }
.workspace-preferences label { display:grid; gap:7px; margin:18px 0; }
.workspace-preferences select { width:100%; padding:10px; font:inherit; }
.workspace-preferences button { padding:10px 13px; border:1px solid var(--border); border-radius:10px; background:var(--bg-secondary); color:var(--text-primary); cursor:pointer; font:inherit; }
.workspace-theme-preview { display:grid; grid-template-columns:88px 1fr; border:1px solid #33445e; border-radius:14px; overflow:hidden; background:#0e1727; color:#e8eefc; }
.workspace-theme-preview > span { padding:22px 12px; background:#080f1c; font-size:.8rem; color:#a5b4fc; }
.workspace-theme-preview > div { display:flex; flex-wrap:wrap; gap:8px; padding:22px; }
.workspace-theme-preview b { font-size:1.5rem; width:100%; }
.workspace-theme-preview small { color:#b6c5df; width:100%; margin-bottom:8px; }
.workspace-theme-preview i { height:30px; flex:1; border:1px solid #425074; border-radius:6px; background:#1b2941; }
.workspace-theme-preview i:first-of-type { background:#5558b8; }
@media print { .workspace-resize,.workspace-design-button,.workspace-preferences { display:none!important; } }
