:root{
  --bg:#071120;--bg2:#0b1424;--panel:#0f1b2b;--panel2:#121f31;--panel3:#17263a;--text:#f3f6fb;--muted:#9aa8bb;--line:#2b3b50;
  --primary:#5b4bff;--primary2:#7d6cff;--cyan:#47b7ff;--yellow:#ffd23f;--danger:#fb7185;--shadow:0 24px 70px rgba(0,0,0,.38);
}
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at 18% 10%,rgba(72,78,255,.28),transparent 30%),linear-gradient(135deg,#0a1323 0%,#0d1730 48%,#07101e 100%);color:var(--text);min-height:100vh}a{color:inherit}.topbar{position:sticky;top:0;z-index:20;background:rgba(10,18,31,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(120,140,170,.16)}.topbar-inner{max-width:1840px;margin:auto;padding:18px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand-wrap{display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-size:30px;font-weight:900;letter-spacing:-.05em}.brand-icon{font-size:28px;color:var(--primary2)}.brand-sub{color:#b7c2d3}.nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.btn,.nav-btn{border:1px solid rgba(148,163,184,.18);border-radius:8px;padding:13px 20px;background:linear-gradient(180deg,#172438,#111c2c);color:var(--text);font-weight:800;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.btn:hover{filter:brightness(1.12)}.primary{background:linear-gradient(135deg,var(--primary),var(--primary2));border-color:rgba(125,108,255,.45);color:#fff}.logout{background:linear-gradient(135deg,var(--primary),#765df7)}.user-chip{display:inline-flex;align-items:center;padding:12px 18px;border-radius:999px;background:rgba(148,163,184,.11);color:#d8e1ef;font-weight:800}.app-shell{max-width:1840px;margin:0 auto;padding:32px;display:grid;grid-template-columns:var(--sidebar-width,460px) minmax(0,1fr);gap:30px}.panel{background:linear-gradient(180deg,rgba(18,31,49,.96),rgba(9,17,30,.96));border:1px solid rgba(129,148,177,.24);border-radius:8px;box-shadow:var(--shadow)}.sidebar{position:sticky;top:104px;height:calc(100vh - 136px);padding:28px 22px;display:flex;flex-direction:column}.side-search{display:grid;grid-template-columns:1fr 48px;gap:16px;margin-bottom:18px}.side-search-form{position:relative;display:flex}.side-search input,.toolbar input,.toolbar select,input,textarea,select{width:100%;border:1px solid var(--line);border-radius:6px;background:#08101f;color:var(--text);padding:14px 16px;outline:none;font-size:16px}.side-search input:focus,.toolbar input:focus,.toolbar select:focus,input:focus,textarea:focus,select:focus{border-color:var(--primary2);box-shadow:0 0 0 3px rgba(125,108,255,.17)}textarea{min-height:110px;resize:vertical}.icon-btn{position:absolute;right:8px;top:6px;border:0;background:transparent;color:#b9c4d5;font-size:28px;cursor:pointer}.square-add{height:48px;width:48px;border-radius:6px;background:linear-gradient(180deg,#43546d,#24364f);display:grid;place-items:center;text-decoration:none;font-size:28px;font-weight:700}.tree-nav{overflow:auto;padding-right:6px;display:grid;gap:4px}.tree-row{height:40px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 10px 0 14px;border-radius:7px;text-decoration:none;color:#e6edf7;font-size:18px}.tree-row:hover,.tree-row.active{background:rgba(91,75,255,.16)}.tree-label{display:flex;align-items:center;gap:10px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-ico{width:19px;text-align:center;color:#2dd4ff}.tree-ico.star,.fav-col,.star-btn,.star-static{color:var(--yellow)}.folder,.small-folder{color:#f4c847}.twisty{width:16px;color:#b9c4d5}.branch{color:#6d7f95}.count{min-width:30px;height:28px;border-radius:7px;background:linear-gradient(180deg,#40536c,#29384b);display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:14px;color:#dce6f3}.tree-children{margin-left:28px;border-left:1px solid #526177;padding-left:8px}.tree-children .tree-row{font-size:17px}.outline.full{margin-top:auto;background:transparent;border-color:var(--primary2);color:#9a90ff;width:100%;font-size:18px}.content{padding:26px 30px;min-width:0}.content-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}h1{margin:0;font-size:34px;letter-spacing:-.04em}h2{margin:0 0 18px;font-size:24px}.view-actions{display:flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.view-btn{width:45px;height:45px;display:grid;place-items:center;background:#111d2d;color:#aab6c6}.view-btn.active{background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff}.list-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:28px}.toolbar{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.toolbar .search-input{width:360px}.toolbar select{width:auto;min-width:190px}.compact{padding:13px 16px}.entry-form-panel{border:1px solid rgba(129,148,177,.22);border-radius:8px;background:rgba(8,16,31,.68);padding:22px;margin-bottom:24px}.stack{display:grid;gap:16px}label{display:grid;gap:7px;color:#ccd7e6;font-weight:650}.two-cols,.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.checkline{display:flex;align-items:center;gap:10px}.checkline input{width:auto}.form-actions{display:flex;gap:12px}.table-wrap{overflow:auto;border-radius:8px;background:rgba(9,17,30,.72)}table{width:100%;border-collapse:collapse;min-width:1120px}th,td{padding:20px 16px;border-bottom:1px solid rgba(148,163,184,.18);text-align:left;vertical-align:middle}th{font-size:15px;color:#c9d3e2;font-weight:900;background:rgba(19,32,50,.62)}tbody tr{transition:.15s background}tbody tr:hover{background:rgba(91,75,255,.08)}tbody tr.is-fav{background:rgba(255,210,63,.025)}.fav-col{width:44px;font-size:24px}.title-cell{display:flex;align-items:center;gap:14px;font-weight:900;white-space:nowrap}.favicon{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(135deg,#26354b,#0c1626);border:1px solid rgba(148,163,184,.2);font-size:14px}.link-title{text-decoration:none}.url-cell a{color:#8095ff;text-decoration:none;word-break:break-all}.note-cell{color:#d7deea;max-width:320px}.star-btn{font-size:26px;background:transparent;border:0;cursor:pointer}.actions-cell{display:flex;align-items:center;gap:0}.icon-action{width:42px;height:42px;border:1px solid var(--line);background:#101c2c;display:grid;place-items:center;color:#e8eef8;text-decoration:none;cursor:pointer}.icon-action:first-child{border-radius:7px 0 0 7px}.icon-action:last-child{border-radius:0 7px 7px 0}.icon-action.danger{color:#d4dbe7}.actions-cell form{display:inline-flex;margin:0}.empty-cell{text-align:center;color:var(--muted);padding:48px}.table-footer{display:flex;justify-content:space-between;align-items:center;margin-top:18px;color:#d6deea}.pager{display:flex;gap:10px}.pager button{min-width:42px;height:42px;border:0;border-radius:7px;background:#132137;color:#dce6f3;font-weight:800}.pager button.active{background:linear-gradient(135deg,var(--primary),var(--primary2))}.alert{grid-column:1/-1;background:rgba(251,113,133,.14);border:1px solid rgba(251,113,133,.32);padding:14px;border-radius:8px}.hint{color:var(--muted);font-size:13px}.danger{color:var(--danger)}@media(max-width:1250px){.app-shell{grid-template-columns:360px 1fr}.toolbar .search-input{width:260px}.nav{gap:10px}.topbar-inner{align-items:flex-start;flex-direction:column}.sidebar{top:142px;height:calc(100vh - 174px)}}@media(max-width:920px){.app-shell{grid-template-columns:1fr;padding:18px}.sidebar{position:static;height:auto}.list-toolbar{flex-direction:column}.toolbar,.toolbar .search-input,.toolbar select{width:100%}.two-cols,.form-row{grid-template-columns:1fr}.topbar-inner{padding:16px 18px}.brand-wrap{gap:12px;flex-wrap:wrap}.brand{font-size:26px}.nav .btn{flex:1}.content{padding:20px}}


/* v9 layout hardening: fixed left tree + right entries */
main.app-shell{
  display:grid !important;
  grid-template-columns: var(--sidebar-width,460px) minmax(0,1fr) !important;
  align-items:start !important;
  gap:30px !important;
  width:100% !important;
}
main.app-shell > aside.sidebar{
  grid-column:1 !important;
  min-width:0 !important;
  overflow:hidden !important;
}
main.app-shell > section.content{
  grid-column:2 !important;
  min-width:0 !important;
}
.sidebar .tree-nav{
  display:block !important;
  overflow:auto !important;
}
.tree-group{
  display:block !important;
  margin:2px 0 !important;
}
.tree-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  column-gap:10px !important;
  width:100% !important;
  min-height:38px !important;
  height:auto !important;
  line-height:1.25 !important;
  text-decoration:none !important;
}
.tree-label{
  min-width:0 !important;
  max-width:100% !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}
.tree-label > span:last-child,
.tree-label .label-text{
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.count{
  flex:0 0 auto !important;
  margin-left:8px !important;
}
.tree-children{
  display:block !important;
  margin-left:24px !important;
  padding-left:12px !important;
  border-left:1px solid rgba(148,163,184,.32) !important;
}
.tree-children .tree-row{
  padding-left:6px !important;
}
.content .list-toolbar{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}
.table-wrap{
  width:100% !important;
}
@media(max-width:920px){
  main.app-shell{display:block !important;padding:18px !important;}
  main.app-shell > aside.sidebar, main.app-shell > section.content{grid-column:auto !important;width:100% !important;margin-bottom:18px !important;}
}


/* v10 table hardening: keep columns structured and action buttons visible */
.links-table{
  overflow-x:auto !important;
  overflow-y:visible !important;
  border:1px solid rgba(148,163,184,.16) !important;
}
.links-grid{
  width:100% !important;
  min-width:1040px !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
}
.links-grid .col-pin{width:46px;}
.links-grid .col-title{width:230px;}
.links-grid .col-url{width:260px;}
.links-grid .col-group{width:170px;}
.links-grid .col-note{width:220px;}
.links-grid .col-owner{width:105px;}
.links-grid .col-fav{width:82px;}
.links-grid .col-actions{width:150px;}
.links-grid th,.links-grid td{
  padding:16px 14px !important;
  vertical-align:middle !important;
  overflow:hidden !important;
}
.links-grid th{
  white-space:nowrap !important;
}
.links-grid td{
  height:74px !important;
}
.title-cell{
  width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
}
.link-title{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  display:block !important;
}
.url-cell a,
.links-grid td:nth-child(4),
.note-cell,
.links-grid td:nth-child(6){
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
  line-height:1.35 !important;
}
.links-grid td:nth-child(6){white-space:nowrap !important;display:table-cell !important;text-overflow:ellipsis !important;}
.links-grid td:nth-child(7){text-align:center !important;}
.actions-cell{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:8px !important;
  overflow:visible !important;
  white-space:nowrap !important;
}
.actions-cell form{display:inline-flex !important;margin:0 !important;}
.icon-action{
  flex:0 0 40px !important;
  width:40px !important;
  height:40px !important;
  border-radius:8px !important;
}
.icon-action:first-child,.icon-action:last-child{border-radius:8px !important;}
.star-btn,.star-static{display:inline-grid !important;place-items:center !important;width:40px !important;height:40px !important;line-height:1 !important;}
.fav-col{text-align:center !important;}
@media(max-width:1250px){
  main.app-shell{grid-template-columns:360px minmax(0,1fr) !important;}
  .links-grid{min-width:980px !important;}
  .links-grid .col-title{width:210px;}
  .links-grid .col-url{width:230px;}
  .links-grid .col-note{width:190px;}
}

/* v11 final table layout fix: fit all columns including favorite/actions in the right panel */
.links-table{
  width:100% !important;
  max-width:100% !important;
  overflow-x:visible !important;
  overflow-y:visible !important;
}
.links-grid{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
}
.links-grid .col-pin{width:46px;}
.links-grid .col-title{width:22%;}
.links-grid .col-url{width:25%;}
.links-grid .col-group{width:15%;}
.links-grid .col-note{width:15%;}
.links-grid .col-owner{width:8%;}
.links-grid .col-fav{width:7%;}
.links-grid .col-actions{width:128px;}
.links-grid th,
.links-grid td{
  display:table-cell !important;
  padding:16px 14px !important;
  overflow:hidden !important;
  vertical-align:middle !important;
}
.links-grid td.actions-cell{
  display:table-cell !important;
  overflow:visible !important;
  white-space:nowrap !important;
}
.actions-cell .actions-inner,
.actions-cell{
  white-space:nowrap !important;
}
.title-td{overflow:hidden !important;}
.title-cell{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  width:100% !important;
  min-width:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
}
.favicon{flex:0 0 34px !important;}
.link-title{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.url-cell a{
  display:block !important;
  color:#8095ff !important;
  text-decoration:none !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
  line-height:1.35 !important;
  max-height:2.7em !important;
  overflow:hidden !important;
}
.links-grid td:nth-child(4),
.note-cell{
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
  line-height:1.35 !important;
}
.links-grid td:nth-child(6){
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}
.links-grid td:nth-child(7){
  text-align:center !important;
}
.actions-cell{
  text-align:left !important;
}
.actions-cell a,
.actions-cell form,
.actions-cell button{
  vertical-align:middle !important;
}
.actions-cell form{display:inline-block !important;margin:0 !important;}
.icon-action{
  display:inline-grid !important;
  place-items:center !important;
  width:36px !important;
  height:36px !important;
  min-width:36px !important;
  border-radius:8px !important;
  margin-right:6px !important;
  padding:0 !important;
}
.star-btn,.star-static{
  margin:0 auto !important;
  display:inline-grid !important;
  place-items:center !important;
  width:36px !important;
  height:36px !important;
  padding:0 !important;
  border-radius:8px !important;
}
@media(max-width:1180px){
  .links-table{overflow-x:auto !important;}
  .links-grid{min-width:980px !important;}
}

/* v12: benutzerspezifische Spaltenauswahl und stabilere Tabellenbreiten */
.columns-panel{
  margin:-6px 0 18px;
  border:1px solid rgba(148,163,184,.16);
  border-radius:8px;
  background:rgba(8,16,31,.55);
  overflow:hidden;
}
.columns-panel summary{
  cursor:pointer;
  padding:12px 16px;
  font-weight:850;
  color:#dce6f3;
  user-select:none;
}
.columns-form{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px 18px;
  padding:0 16px 16px;
}
.fixed-col{
  color:#9fb0c6;
  font-weight:750;
}
.column-check{
  display:inline-flex !important;
  grid-template-columns:none !important;
  align-items:center;
  gap:8px;
  color:#dce6f3;
  font-weight:750;
}
.column-check input{width:auto !important;}
.links-grid .col-title{width:24%;}
.links-grid .col-url{width:27%;}
.links-grid .col-group{width:16%;}
.links-grid .col-note{width:18%;}
.links-grid .col-owner{width:9%;}
.links-grid .col-fav{width:82px;}
.links-grid .col-actions{width:134px;}
.row-star{
  flex:0 0 auto;
  color:var(--yellow);
  font-size:22px;
  line-height:1;
}
.favorite-cell{text-align:center !important;}
.group-cell,.note-cell,.owner-cell{
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
  line-height:1.35 !important;
}
.owner-cell{white-space:nowrap !important;text-overflow:ellipsis !important;}
.actions-cell .danger{font-size:17px !important;}
@media(max-width:1180px){
  .links-table{overflow-x:auto !important;}
  .links-grid{min-width:920px !important;}
}

/* v13: dynamische Zellbreiten + native Tooltips bei abgeschnittenem Text */
.links-table{
  width:100% !important;
  max-width:100% !important;
  overflow-x:auto !important;
}
.links-grid{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
}
.links-grid th,
.links-grid td{
  min-width:0 !important;
  max-width:0 !important;
  overflow:hidden !important;
}
.links-grid th{
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}
.tooltip-text,
.group-cell .tooltip-text,
.note-cell .tooltip-text,
.owner-cell .tooltip-text,
.url-cell .tooltip-text{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  line-height:1.35 !important;
}
.title-cell{
  min-width:0 !important;
  max-width:100% !important;
}
.title-cell .tooltip-text{
  flex:1 1 auto !important;
}
.url-cell a{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-height:none !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
.group-cell,
.note-cell,
.owner-cell{
  white-space:nowrap !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
.links-grid .col-title{width:auto;}
.links-grid .col-url{width:auto;}
.links-grid .col-group{width:auto;}
.links-grid .col-note{width:auto;}
.links-grid .col-owner{width:110px;}
.links-grid .col-fav{width:84px;}
.links-grid .col-actions{width:136px;}
.links-grid:has(.col-url) .col-url{width:28%;}
.links-grid:has(.col-note) .col-note{width:18%;}
.links-grid:has(.col-group) .col-group{width:16%;}
.links-grid:has(.col-url) .col-title{width:24%;}
.favorite-cell,
.actions-cell{
  max-width:none !important;
  overflow:visible !important;
}
.actions-cell{
  white-space:nowrap !important;
}
@media(max-width:1180px){
  .links-grid{min-width:760px !important;}
}

/* v18: auswählbare Benutzer-Designs */
.theme-switch{display:inline-flex;align-items:center;margin:0}
.theme-switch select{min-width:150px;padding:11px 14px;border-radius:999px;font-weight:850;background:linear-gradient(180deg,var(--panel3),var(--panel2));color:var(--text);border:1px solid var(--line)}
body.theme-dark{color-scheme:dark;background:radial-gradient(circle at 18% 10%,rgba(72,78,255,.28),transparent 30%),linear-gradient(135deg,#0a1323 0%,#0d1730 48%,#07101e 100%)}
body.theme-light{color-scheme:light;--bg:#f5f7fb;--bg2:#ffffff;--panel:#ffffff;--panel2:#eef3fb;--panel3:#dde7f4;--text:#152033;--muted:#65758b;--line:#cfd9e8;--primary:#4764ff;--primary2:#7c5cff;--cyan:#0088cc;--yellow:#e6a900;--danger:#dc2626;--shadow:0 20px 55px rgba(25,44,75,.14);background:radial-gradient(circle at 12% 8%,rgba(71,100,255,.18),transparent 28%),linear-gradient(135deg,#f7faff 0%,#edf3fb 52%,#ffffff 100%)}
body.theme-cyberpunk{color-scheme:dark;--bg:#090014;--bg2:#12001e;--panel:#160425;--panel2:#210734;--panel3:#31104a;--text:#f9f4ff;--muted:#c7a9de;--line:#66327f;--primary:#ff2bd6;--primary2:#00e5ff;--cyan:#00e5ff;--yellow:#fff23d;--danger:#ff3864;--shadow:0 24px 80px rgba(255,43,214,.18);background:radial-gradient(circle at 18% 0%,rgba(255,43,214,.35),transparent 28%),radial-gradient(circle at 82% 12%,rgba(0,229,255,.25),transparent 30%),linear-gradient(135deg,#090014 0%,#130226 48%,#020712 100%)}
body.theme-mystery{color-scheme:dark;--bg:#05090b;--bg2:#0a1113;--panel:#0d1719;--panel2:#132123;--panel3:#1e3436;--text:#eef8f2;--muted:#9cb0aa;--line:#29464a;--primary:#16a085;--primary2:#8e44ad;--cyan:#4dd5c0;--yellow:#d7c46a;--danger:#e05265;--shadow:0 30px 90px rgba(0,0,0,.48);background:radial-gradient(circle at 20% 12%,rgba(22,160,133,.25),transparent 25%),radial-gradient(circle at 70% 0%,rgba(142,68,173,.2),transparent 28%),linear-gradient(135deg,#05090b 0%,#081618 46%,#020405 100%)}
body.theme-fantasy{color-scheme:dark;--bg:#100a19;--bg2:#1b1028;--panel:#21132f;--panel2:#2a183b;--panel3:#3a2452;--text:#fff8ed;--muted:#d7c5a5;--line:#5b4771;--primary:#b7791f;--primary2:#805ad5;--cyan:#63b3ed;--yellow:#f6e05e;--danger:#f56565;--shadow:0 24px 80px rgba(128,90,213,.18);background:radial-gradient(circle at 15% 12%,rgba(246,224,94,.18),transparent 28%),radial-gradient(circle at 78% 8%,rgba(128,90,213,.28),transparent 30%),linear-gradient(135deg,#100a19 0%,#1b1028 55%,#0d0713 100%)}
body.theme-light .topbar{background:rgba(255,255,255,.88);border-bottom-color:rgba(88,111,145,.2)}
body.theme-light .panel{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(243,247,252,.98));border-color:rgba(127,146,177,.3)}
body.theme-light .side-search input,body.theme-light .toolbar input,body.theme-light .toolbar select,body.theme-light input,body.theme-light textarea,body.theme-light select{background:#fff;color:var(--text)}
body.theme-light .btn,body.theme-light .nav-btn{background:linear-gradient(180deg,#ffffff,#eaf0f7);color:var(--text)}
body.theme-light .table-wrap{background:rgba(255,255,255,.84)}
body.theme-light th{background:rgba(226,235,247,.75);color:#26364c}
body.theme-light tbody tr:hover{background:rgba(71,100,255,.08)}
body.theme-light .view-btn,body.theme-light .icon-action,body.theme-light .pager button{background:#eef4fb;color:#172335}
body.theme-light .favicon{background:linear-gradient(135deg,#e6eef9,#ffffff)}
body.theme-cyberpunk .panel,body.theme-cyberpunk .topbar{box-shadow:0 0 0 1px rgba(0,229,255,.12),0 24px 90px rgba(255,43,214,.18)}
body.theme-cyberpunk .btn,body.theme-cyberpunk .view-btn.active,body.theme-cyberpunk .pager button.active,body.theme-cyberpunk .logout{background:linear-gradient(135deg,#ff2bd6,#00e5ff);color:#090014}
body.theme-cyberpunk .tree-row:hover,body.theme-cyberpunk .tree-row.active{background:rgba(255,43,214,.18)}
body.theme-mystery .panel{background:linear-gradient(180deg,rgba(13,23,25,.96),rgba(4,10,11,.96))}
body.theme-mystery .btn,body.theme-mystery .view-btn.active,body.theme-mystery .pager button.active,body.theme-mystery .logout{background:linear-gradient(135deg,#16a085,#8e44ad)}
body.theme-fantasy .panel{background:linear-gradient(180deg,rgba(33,19,47,.97),rgba(20,12,30,.97));border-color:rgba(246,224,94,.22)}
body.theme-fantasy .btn,body.theme-fantasy .view-btn.active,body.theme-fantasy .pager button.active,body.theme-fantasy .logout{background:linear-gradient(135deg,#b7791f,#805ad5)}
body.theme-fantasy .folder,body.theme-fantasy .small-folder{color:#f6e05e}

/* v19: Top navigation as burger menu */
.brand{text-decoration:none}
.topbar-inner{position:relative;min-height:72px}.burger-menu{position:relative;margin-left:auto}.burger-menu>summary{list-style:none}.burger-menu>summary::-webkit-details-marker{display:none}.burger-button{width:54px;height:48px;border:1px solid rgba(148,163,184,.24);border-radius:10px;background:linear-gradient(180deg,#172438,#111c2c);display:grid;place-items:center;gap:4px;padding:12px;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}.burger-button span{display:block;width:24px;height:2px;border-radius:99px;background:var(--text)}.burger-menu[open] .burger-button{background:linear-gradient(135deg,var(--primary),var(--primary2));border-color:rgba(125,108,255,.55)}.menu-panel{position:absolute;right:0;top:calc(100% + 14px);width:min(360px,calc(100vw - 36px));padding:14px;border:1px solid rgba(129,148,177,.26);border-radius:12px;background:linear-gradient(180deg,rgba(18,31,49,.98),rgba(9,17,30,.98));box-shadow:0 24px 70px rgba(0,0,0,.5);display:grid!important;grid-template-columns:1fr;gap:10px;z-index:100}.menu-panel::before{content:"";position:absolute;right:16px;top:-8px;width:16px;height:16px;transform:rotate(45deg);background:rgba(18,31,49,.98);border-left:1px solid rgba(129,148,177,.26);border-top:1px solid rgba(129,148,177,.26)}.menu-panel .btn,.menu-panel .nav-btn,.menu-panel .user-chip,.menu-panel .theme-switch,.menu-panel .theme-switch select{width:100%;justify-content:flex-start}.menu-panel .user-chip{justify-content:center}.menu-panel .logout{justify-content:center}.menu-panel .theme-switch{display:block}.menu-panel .theme-switch select{min-width:0}.nav{flex-wrap:nowrap}.topbar .nav:not(.menu-panel){display:none!important}@media(max-width:920px){.topbar-inner{flex-direction:row!important;align-items:center!important}.brand-wrap{min-width:0}.brand-sub{display:none}.menu-panel{right:-4px}}

/* v21 credentials + TOTP */
.three-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.password-input{display:flex;align-items:center;gap:8px;background:rgba(5,10,22,.62);border:1px solid var(--line);border-radius:8px;padding-right:8px}
.password-input input{border:0!important;background:transparent!important;min-width:0;flex:1}
.eye-btn{border:1px solid var(--line);background:#101c2c;color:#e8eef8;border-radius:8px;width:38px;height:34px;display:inline-grid;place-items:center;cursor:pointer;font-size:15px}
.eye-btn.small{width:34px;height:32px;font-size:14px;flex:0 0 auto}
.eye-btn.active{background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff}
.links-grid .col-username{width:11%}
.links-grid .col-password{width:11%}
.links-grid .col-totp{width:100px}
.copy-value{max-width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;padding:0;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:middle}
.copy-value:hover{text-decoration:underline;text-underline-offset:3px}
.copy-value.copied{color:var(--primary2)!important;text-decoration:none}
.secret-wrap{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%}
.secret-text{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;min-width:0;color:#dbe7ff}
.secret-text.revealed{letter-spacing:normal;max-width:calc(100% - 42px)}
.totp-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:900;color:#ffd43b;font-size:16px;letter-spacing:.08em}
.totp-timer{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.username-cell,.password-cell,.totp-cell{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
@media(max-width:920px){.three-cols{grid-template-columns:1fr}.links-grid .col-username,.links-grid .col-password{width:120px}.links-grid .col-totp{width:110px}}


/* v22: Passwort-Anzeige in der Übersicht zuverlässig sichtbar */
.password-cell{overflow:visible!important;position:relative!important;}
.password-cell .secret-wrap{position:relative!important;display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;max-width:100%!important;}
.password-cell .secret-text{display:inline-block!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.password-cell .secret-text.revealed{letter-spacing:normal!important;color:var(--text)!important;background:rgba(8,16,31,.96)!important;border:1px solid var(--line)!important;border-radius:6px!important;padding:7px 9px!important;max-width:calc(100% - 42px)!important;box-shadow:0 10px 28px rgba(0,0,0,.25)!important;}
.password-cell .eye-btn.small{z-index:2!important;}

/* v23 resizable table columns */
.links-grid{
  table-layout:fixed !important;
}
.links-grid th{
  position:relative !important;
  user-select:none;
}
.col-resizer{
  position:absolute;
  top:0;
  right:-4px;
  width:9px;
  height:100%;
  cursor:col-resize;
  z-index:5;
  touch-action:none;
}
.col-resizer::after{
  content:"";
  position:absolute;
  top:20%;
  bottom:20%;
  left:4px;
  width:1px;
  background:rgba(148,163,184,.38);
  opacity:.45;
}
.links-grid th:hover .col-resizer::after,
.resizing-columns .col-resizer::after{
  opacity:1;
  background:var(--primary);
}
.resizing-columns,
.resizing-columns *{
  cursor:col-resize !important;
  user-select:none !important;
}
.links-grid td,
.links-grid th{
  min-width:60px;
}

/* v24: resizable columns functional fix - stored/dragged col widths must override defaults */
.links-grid col[data-col]{min-width:60px;}
.links-grid.resizing-active{table-layout:fixed !important;}

/* v25: Passwort-Spalte nicht zusammendrücken */
.links-grid .password-cell{
  min-width:0 !important;
  overflow:hidden !important;
}
.links-grid .password-cell .secret-wrap{
  width:100% !important;
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 34px !important;
  align-items:center !important;
  gap:8px !important;
}
.links-grid .password-cell .secret-text{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  box-sizing:border-box !important;
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.links-grid .password-cell .secret-text.revealed{
  max-width:none !important;
  width:100% !important;
  letter-spacing:normal !important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace !important;
}
.links-grid .password-cell .eye-btn.small{
  width:34px !important;
  min-width:34px !important;
  max-width:34px !important;
  padding:0 !important;
  justify-self:end !important;
}

/* v26: Passwort-Spalte endgültig entstauchen */
.links-grid td.password-cell{
  max-width:none !important;
  min-width:0 !important;
  overflow:hidden !important;
  padding-left:14px !important;
  padding-right:14px !important;
}
.links-grid .password-cell .secret-wrap{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:8px !important;
}
.links-grid .password-cell .secret-text,
.links-grid .password-cell .copy-value.secret-text{
  flex:1 1 auto !important;
  width:auto !important;
  min-width:72px !important;
  max-width:calc(100% - 42px) !important;
  display:block !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  text-align:left !important;
  line-height:1.3 !important;
}
.links-grid .password-cell .secret-text.masked{
  letter-spacing:.12em !important;
}
.links-grid .password-cell .secret-text.revealed{
  flex:1 1 auto !important;
  width:auto !important;
  min-width:72px !important;
  max-width:calc(100% - 42px) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  letter-spacing:normal !important;
}
.links-grid .password-cell .eye-btn.small{
  flex:0 0 34px !important;
  width:34px !important;
  min-width:34px !important;
  max-width:34px !important;
}
.links-grid .col-password{width:180px;}


.checkbox-col{
  width:48px !important;
  min-width:48px !important;
  max-width:48px !important;
  text-align:center;
  white-space:nowrap;
}
.resize-handle.checkbox-resize{
  cursor:col-resize;
}


/* v32: Checkbox-Auswahl ist eine echte eigene, skalierbare Spalte */
.links-grid .col-select{width:48px;min-width:36px;}
.links-grid th.check-col,
.links-grid td.check-col{
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  padding-left:8px !important;
  padding-right:8px !important;
}
.links-grid th.check-col{position:relative !important;}
.links-grid th.check-col .col-resizer{display:block !important;}
.links-grid th.check-col input,
.links-grid td.check-col input{width:auto !important;}

/* v35 pagination + stored certificate UI */
.pager a.pager-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:32px;
  height:32px;
  padding:0 10px;
  border-radius:10px;
  text-decoration:none;
  border:1px solid var(--border, rgba(255,255,255,.14));
  color:var(--text, inherit);
  background:var(--panel-2, rgba(255,255,255,.06));
}
.pager .pager-gap{padding:0 6px; opacity:.7;}
#stored-cert-box{border:1px solid var(--border, rgba(255,255,255,.14)); border-radius:12px; padding:10px 12px; background:var(--panel-2, rgba(255,255,255,.06));}


/* User font size preference */
body.font-small{--font-scale:.875;--base-font-size:14px}
body.font-normal{--font-scale:1;--base-font-size:16px}
body.font-large{--font-scale:1.125;--base-font-size:18px}
body.font-xlarge{--font-scale:1.25;--base-font-size:20px}
body[class*="font-"]{font-size:var(--base-font-size)}
body[class*="font-"] .brand{font-size:calc(30px * var(--font-scale))}
body[class*="font-"] .brand-icon{font-size:calc(28px * var(--font-scale))}
body[class*="font-"] .btn,body[class*="font-"] .nav-btn,body[class*="font-"] .user-chip{font-size:calc(15px * var(--font-scale))}
body[class*="font-"] input,body[class*="font-"] textarea,body[class*="font-"] select{font-size:calc(16px * var(--font-scale))}
body[class*="font-"] .tree-row{font-size:calc(18px * var(--font-scale))}
body[class*="font-"] .tree-children .tree-row{font-size:calc(17px * var(--font-scale))}
body[class*="font-"] h1{font-size:calc(34px * var(--font-scale))}
body[class*="font-"] h2{font-size:calc(24px * var(--font-scale))}
body[class*="font-"] th{font-size:calc(15px * var(--font-scale))}
body[class*="font-"] td{font-size:calc(16px * var(--font-scale))}
body[class*="font-"] .hint,body[class*="font-"] .totp-timer{font-size:calc(12px * var(--font-scale))}
body[class*="font-"] .totp-code{font-size:calc(16px * var(--font-scale))}
body[class*="font-"] .icon-action{font-size:calc(16px * var(--font-scale))}
body[class*="font-"] .count{font-size:calc(14px * var(--font-scale))}
body[class*="font-"] .outline.full{font-size:calc(18px * var(--font-scale))}
.font-switch{display:inline-flex;align-items:center;margin:0}
.font-switch select{min-width:150px;padding:11px 14px;border-radius:999px;font-weight:850;background:linear-gradient(180deg,var(--panel3),var(--panel2));color:var(--text);border:1px solid var(--line)}
.menu-panel .font-switch,.menu-panel .font-switch select{width:100%;justify-content:flex-start;min-width:0}


/* v38: Username-Spalte zuverlässig anzeigen */
.links-grid .username-cell{
  color:var(--text) !important;
  min-width:0 !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
  padding-left:14px !important;
  padding-right:14px !important;
}
.links-grid .username-cell .username-value,
.links-grid .username-cell .copy-value{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  color:var(--text) !important;
  opacity:1 !important;
  visibility:visible !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  line-height:1.35 !important;
}
.links-grid .username-cell .username-value:focus{
  outline:2px solid var(--primary2);
  outline-offset:2px;
  border-radius:4px;
}


/* v40: Username-Spalte zuverlässig sichtbar, auch wenn einzelne Spalten ausgeblendet sind */
.links-grid td.username-cell{
  display:table-cell !important;
  visibility:visible !important;
  opacity:1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  color:var(--text) !important;
}
.links-grid td.username-cell .username-value,
.links-grid td.username-cell .copy-value{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  color:var(--text) !important;
}
.links-grid .col-username{
  min-width:130px !important;
}


/* v44: user adjustable sidebar, filter visibility, column order */
main.app-shell{grid-template-columns:var(--sidebar-width,460px) minmax(0,1fr) !important;}
.sidebar{position:sticky;}
.sidebar-resizer{position:absolute;top:0;right:-8px;width:16px;height:100%;cursor:col-resize;z-index:8;touch-action:none;}
.sidebar-resizer::after{content:"";position:absolute;top:18px;bottom:18px;left:7px;width:2px;border-radius:99px;background:rgba(148,163,184,.24);}
.sidebar-resizer:hover::after,.resizing-sidebar .sidebar-resizer::after{background:var(--primary2);box-shadow:0 0 18px rgba(125,108,255,.45);}
.resizing-sidebar,.resizing-sidebar *{cursor:col-resize!important;user-select:none!important;}
.filter-visibility-row{display:flex;justify-content:flex-end;margin:0 0 12px;}
.column-order-box{grid-column:1/-1;border:1px solid var(--line);border-radius:8px;padding:12px;background:rgba(8,16,31,.45);display:grid;gap:8px;}
.column-order-box small{color:var(--muted);font-weight:500;}
.column-order-list{display:flex;flex-wrap:wrap;gap:8px;}
.order-item{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(148,163,184,.24);border-radius:999px;padding:8px 12px;background:linear-gradient(180deg,#172438,#111c2c);font-weight:800;cursor:grab;}
.order-item:active{cursor:grabbing;}
.order-item.dragging{opacity:.45;outline:2px solid var(--primary2);}
.drag-grip{opacity:.75;color:var(--primary2);}
.links-grid col.col-favorite{width:84px;}
.links-grid col.col-select{width:48px;}
.links-grid th[data-col],.links-grid td{overflow:hidden;}
@media(max-width:920px){main.app-shell{display:block!important}.sidebar-resizer{display:none}.filter-visibility-row{justify-content:stretch}.filter-visibility-row .btn{width:100%;}.column-order-list{display:grid;grid-template-columns:1fr 1fr;}}


.menu-action-form {
  margin: 0;
  padding: 0;
  display: contents;
}
.menu-action-form .nav-btn {
  width: 100%;
  text-align: left;
}


.single-page {
  padding: 18px;
  display: block;
}
.settings-panel {
  max-width: 980px;
  margin: 0 auto;
}
.settings-panel .card {
  margin: 16px 0;
  padding: 18px;
  border-radius: 18px;
  background: var(--panel, rgba(255,255,255,.06));
  border: 1px solid var(--border, rgba(255,255,255,.12));
}
.success {
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(34,197,94,.14);
  border: 1px solid rgba(34,197,94,.35);
  margin: 10px 0;
}
.danger {
  color: #ffb4b4;
}


.qr-card {
  text-align: center;
}
.qr-wrap {
  display: inline-flex;
  padding: 14px;
  border-radius: 18px;
  background: #fff;
  margin: 10px auto;
}
.qr-wrap img {
  width: 260px;
  height: 260px;
  display: block;
}
.copy-field {
  width: 100%;
  max-width: 680px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}


.mobile-page {
  display: grid;
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
  gap: 16px;
  padding: 16px;
  min-height: calc(100vh - 72px);
}
.mobile-side {
  position: sticky;
  top: 84px;
  align-self: start;
  height: auto;
  max-height: calc(100vh - 100px);
}
.content-panel {
  min-width: 0;
  border-radius: 24px;
  background: var(--panel, rgba(255,255,255,.06));
  border: 1px solid var(--border, rgba(255,255,255,.12));
  padding: 18px;
  box-shadow: var(--shadow, 0 18px 60px rgba(0,0,0,.25));
}
.content-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 14px;
}
.panel-section {
  margin-top: 16px;
  padding: 18px;
  border-radius: 20px;
  background: var(--card, rgba(255,255,255,.045));
  border: 1px solid var(--border, rgba(255,255,255,.10));
}
.section-title-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
}
.inline-form {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 12px;
  align-items: end;
}
.qr-layout {
  display: grid;
  grid-template-columns: auto minmax(240px, 1fr);
  gap: 22px;
  align-items: center;
}
.qr-wrap {
  display: inline-flex;
  padding: 14px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(0,0,0,.28);
}
.qr-wrap img {
  width: 260px;
  height: 260px;
  display: block;
}
.qr-info {
  min-width: 0;
}
.copy-field {
  width: 100%;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.success {
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(34,197,94,.14);
  border: 1px solid rgba(34,197,94,.35);
  margin: 10px 0;
}
.danger {
  color: #ffb4b4;
}
@media (max-width: 900px) {
  .mobile-page {
    grid-template-columns: 1fr;
  }
  .mobile-side {
    position: static;
    max-height: none;
  }
  .inline-form,
  .qr-layout {
    grid-template-columns: 1fr;
  }
}


/* v51 Smartphone/Passkey: an Hauptlayout angepasst */
.mobile-access-shell {
  display: grid;
  grid-template-columns: var(--sidebar-width, 320px) minmax(0, 1fr);
  gap: 16px;
  padding: 16px;
  align-items: start;
}
.mobile-access-shell .sidebar.panel {
  min-height: calc(100vh - 100px);
}
.mobile-content {
  min-width: 0;
  padding: 18px;
  overflow: hidden;
}
.mobile-section {
  margin-top: 16px;
  padding: 18px;
  border-radius: 18px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.10);
}
.inline-form {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 12px;
  align-items: end;
}
.qr-layout {
  display: grid;
  grid-template-columns: auto minmax(240px, 1fr);
  gap: 22px;
  align-items: center;
}
.qr-wrap {
  display: inline-flex;
  padding: 14px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(0,0,0,.28);
}
.qr-wrap img {
  width: 260px;
  height: 260px;
  display: block;
}
.copy-field {
  width: 100%;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
@media (max-width: 900px) {
  .mobile-access-shell {
    grid-template-columns: 1fr;
  }
  .mobile-access-shell .sidebar.panel {
    min-height: 0;
  }
  .inline-form,
  .qr-layout {
    grid-template-columns: 1fr;
  }
}


/* v52 Smartphone/Passkey final layout */
body.app-body {
  min-height: 100vh;
  background: var(--bg);
  color: var(--text);
}

.mobile-access-shell {
  display: grid !important;
  grid-template-columns: var(--sidebar-width, 320px) minmax(0, 1fr);
  gap: 16px;
  padding: 16px;
  align-items: start;
}

.mobile-access-shell .sidebar.panel {
  min-height: calc(100vh - 112px);
  max-height: calc(100vh - 112px);
  overflow: auto;
}

.mobile-access-shell .mobile-content,
.mobile-content {
  min-width: 0;
  padding: 22px;
  border-radius: 24px;
  background: var(--panel);
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
}

.mobile-content .list-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 16px;
}

.mobile-section {
  margin-top: 16px;
  padding: 18px;
  border-radius: 20px;
  background: var(--panel-2, rgba(255,255,255,.045));
  border: 1px solid var(--border);
}

.mobile-section h2 {
  margin-top: 0;
}

.inline-form {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto;
  gap: 12px;
  align-items: end;
}

.inline-form label {
  display: grid;
  gap: 8px;
}

.qr-layout {
  display: grid;
  grid-template-columns: auto minmax(240px, 1fr);
  gap: 22px;
  align-items: center;
}

.qr-wrap {
  display: inline-flex;
  padding: 14px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(0,0,0,.28);
  width: max-content;
}

.qr-wrap img {
  width: 260px;
  height: 260px;
  display: block;
}

.qr-info {
  min-width: 0;
}

.copy-field {
  width: 100%;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.mobile-section .link-table {
  width: 100%;
}

.success {
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(34,197,94,.14);
  border: 1px solid rgba(34,197,94,.35);
  margin: 10px 0;
}

.danger {
  color: #ffb4b4;
}

@media (max-width: 900px) {
  .mobile-access-shell {
    grid-template-columns: 1fr;
    padding: 10px;
  }
  .mobile-access-shell .sidebar.panel {
    min-height: 0;
    max-height: none;
  }
  .inline-form,
  .qr-layout {
    grid-template-columns: 1fr;
  }
  .qr-wrap img {
    width: min(260px, 72vw);
    height: min(260px, 72vw);
  }
}


/* v53 Mobile: Ordnerstruktur darf Inhalte nicht überblenden */
@media (max-width: 900px) {
  .app-shell,
  .mobile-access-shell {
    display: block !important;
    grid-template-columns: 1fr !important;
    padding: 10px !important;
    overflow: visible !important;
  }

  .app-shell .sidebar,
  .mobile-access-shell .sidebar,
  aside.sidebar.panel {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 42vh !important;
    overflow: auto !important;
    margin: 0 0 12px 0 !important;
    z-index: 1 !important;
  }

  .list-panel,
  .mobile-content,
  .content-panel,
  section.panel {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    z-index: 2 !important;
    overflow-x: auto !important;
  }

  .tree-nav {
    max-height: 30vh !important;
    overflow: auto !important;
  }

  .sidebar-resizer,
  .resizer,
  .sidebar-dragger {
    display: none !important;
  }

  .link-table {
    min-width: 760px;
  }
}

@media (max-width: 620px) {
  .app-shell .sidebar,
  .mobile-access-shell .sidebar,
  aside.sidebar.panel {
    max-height: 34vh !important;
  }

  .tree-nav {
    max-height: 24vh !important;
  }

  .topbar-inner {
    gap: 8px;
  }

  .brand-sub {
    display: none;
  }
}
