@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&display=swap');

:root{
  --blue:#0A84FF;
  --blue2:#4AA3FF;
  --blue3:#DCEEFF;
  --navy:#15345B;
  --text:#142033;
  --muted:#748399;
  --line:rgba(24,73,125,.12);
  --bg:#F4F8FC;
  --panel:rgba(255,255,255,.86);
  --shadow:0 18px 50px rgba(34,77,126,.12);
  --radius:22px;
}
*{box-sizing:border-box}html{background:var(--bg);color:var(--text)}body{margin:0}a{text-decoration:none;color:inherit}button,input,select{font:inherit}
.cloud-body{background:linear-gradient(180deg,#EEF6FF 0,#F8FBFF 34%,#F4F7FB 100%);min-height:100vh}
.cloud-shell{display:grid;grid-template-columns:252px 1fr;min-height:100vh}

.sidebar{
  position:sticky;top:0;height:100vh;padding:24px 16px 18px;
  background:linear-gradient(180deg,rgba(255,255,255,.93),rgba(245,250,255,.9));
  border-right:1px solid rgba(30,93,160,.10);
  backdrop-filter:blur(24px);
  display:flex;flex-direction:column;z-index:30
}
.brand-block{display:flex;align-items:center;gap:12px;padding:6px 12px 26px}.brand-block strong,.brand-block small{display:block}.brand-block strong{font-size:17px;color:#0C2C58}.brand-block small{font-size:12px;color:#6F83A0;margin-top:3px}
.cloud-logo{width:48px;height:48px;display:grid;place-items:center}.cloud-shape{width:43px;height:28px;border-radius:18px;background:linear-gradient(180deg,#47A9FF,#087AF5);box-shadow:0 10px 24px rgba(10,132,255,.27);position:relative}.cloud-shape:before,.cloud-shape:after{content:"";position:absolute;background:inherit;border-radius:50%}.cloud-shape:before{width:22px;height:22px;left:7px;top:-9px}.cloud-shape:after{width:18px;height:18px;right:5px;top:-5px}

.side-nav{display:grid;gap:6px}.side-nav a{min-height:44px;padding:0 12px;border-radius:12px;display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:7px;color:#35557D;font-size:14px;font-weight:600}.side-nav a:hover{background:rgba(10,132,255,.07)}.side-nav a.active{background:linear-gradient(90deg,#3D97FA,#78B7FF);color:white;box-shadow:0 10px 22px rgba(10,132,255,.22)}.side-nav .nav-icon{font-size:17px;text-align:center}.side-nav em{font-style:normal;font-size:9px;color:#9BAABD}.side-nav b{font-size:10px;background:#0A84FF;color:white;border-radius:999px;padding:3px 6px}.side-nav a.disabled{opacity:.58}.side-nav a.disabled:hover{background:transparent}.nav-section{font-size:10px;letter-spacing:.08em;color:#9AA9BA;padding:22px 12px 5px}
.storage-card{margin-top:auto;background:rgba(255,255,255,.75);border:1px solid rgba(30,93,160,.10);padding:14px;border-radius:16px}.storage-head{display:flex;justify-content:space-between;gap:10px;font-size:11px}.storage-head span{font-weight:700}.storage-head strong{color:#3C77B9}.storage-bar{height:6px;background:#E9F0F7;border-radius:999px;margin:10px 0;overflow:hidden}.storage-bar i{display:block;height:100%;background:linear-gradient(90deg,#0A84FF,#76B9FF);border-radius:999px}.storage-card small{display:block;color:#8493A7;font-size:10px;line-height:1.4}.side-footer{padding:18px 12px 0;font-size:10px;color:#94A1B2}

.content{min-width:0;padding:0 28px 24px}.topbar{height:72px;display:flex;justify-content:space-between;align-items:center}.top-actions{display:flex;align-items:center;gap:10px}.round-btn{width:40px;height:40px;border:0;border-radius:14px;background:rgba(255,255,255,.75);color:#244D7D;box-shadow:0 8px 24px rgba(50,91,139,.10);cursor:pointer}
.profile-menu{position:relative}.profile-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:9px;background:rgba(255,255,255,.75);padding:5px 10px 5px 5px;border-radius:15px;box-shadow:0 8px 24px rgba(50,91,139,.10)}.profile-menu summary::-webkit-details-marker{display:none}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#5EB4FF,#0A84FF);color:white;font-weight:800;box-shadow:0 8px 18px rgba(10,132,255,.22)}.avatar.large{width:48px;height:48px}.avatar.add{background:#E9F4FF;color:#0A84FF;box-shadow:none}.profile-name{font-size:13px;font-weight:700}.chevron{color:#7590AF}.profile-popover{position:absolute;right:0;top:54px;width:260px;background:rgba(255,255,255,.96);border:1px solid rgba(20,71,128,.1);box-shadow:0 22px 60px rgba(34,77,126,.18);border-radius:18px;padding:10px;z-index:100;backdrop-filter:blur(18px)}.profile-card-head{display:flex;gap:10px;align-items:center;padding:8px 9px 12px}.profile-card-head strong,.profile-card-head small{display:block}.profile-card-head small{font-size:11px;color:#8493A7;margin-top:3px}.profile-popover a{display:block;padding:10px;border-radius:10px;font-size:13px}.profile-popover a:hover{background:#F0F6FC}.profile-popover hr{border:0;border-top:1px solid #E6EEF6}.profile-popover .logout-link{color:#FF3B30}

.hero-card{position:relative;min-height:255px;border-radius:28px;overflow:hidden;padding:42px 38px;background:
 radial-gradient(circle at 78% 20%,rgba(255,255,255,.35),transparent 28%),
 linear-gradient(135deg,#075EB9 0%,#0A84FF 48%,#69B8FF 100%);
 color:white;box-shadow:0 24px 50px rgba(10,89,172,.22)}
.hero-card:after{content:"";position:absolute;inset:auto 0 0;height:86px;background:linear-gradient(180deg,transparent,rgba(4,49,104,.17))}
.hero-orb{position:absolute;border-radius:50%;filter:blur(1px);background:rgba(255,255,255,.12)}.orb-one{width:240px;height:240px;right:13%;top:-60px}.orb-two{width:140px;height:140px;right:28%;bottom:-70px}.hero-content{position:relative;z-index:2;max-width:650px}.eyebrow{font-size:11px;letter-spacing:.15em;font-weight:800;opacity:.8}.hero-content h1{font-size:43px;line-height:1.04;margin:13px 0 12px;letter-spacing:-.035em}.hero-content p{font-size:16px;margin:0;opacity:.88}.hero-status{position:absolute;right:30px;bottom:24px;z-index:3;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.22);border-radius:18px;padding:14px 17px;backdrop-filter:blur(18px);min-width:200px}.hero-status span,.hero-status strong,.hero-status small{display:block}.hero-status span{font-size:10px;opacity:.85}.hero-status strong{font-size:25px;margin:6px 0}.hero-status small{font-size:10px;opacity:.8}

.quick-modules{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:16px 0}.quick-module{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:10px;background:var(--panel);border:1px solid rgba(30,93,160,.08);border-radius:18px;padding:13px 14px;box-shadow:0 10px 30px rgba(50,91,139,.08);backdrop-filter:blur(16px)}.quick-module:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(50,91,139,.12)}.quick-module.disabled{opacity:.58}.quick-module .tile-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;font-size:19px;font-weight:800}.tile-icon.file{background:#E8F2FF;color:#3D8EFF}.tile-icon.photo{background:linear-gradient(135deg,#FFD35A,#FE5D5D,#8B5CF6);color:white}.tile-icon.shop{background:#E9F6FF;color:#0A84FF}.tile-icon.cal{background:#EDF0FF;color:#5D61E8}.quick-module strong,.quick-module small{display:block}.quick-module strong{font-size:13px}.quick-module small{font-size:10px;color:#8191A4;margin-top:3px}.quick-module i{font-style:normal;color:#6F8FB2}

.dashboard-grid{display:grid;grid-template-columns:1.2fr .85fr .72fr;gap:16px;align-items:start}.glass-panel{background:var(--panel);border:1px solid rgba(30,93,160,.08);border-radius:20px;box-shadow:0 12px 35px rgba(50,91,139,.08);backdrop-filter:blur(18px)}.activity-panel,.shopping-panel,.family-panel,.access-panel{padding:18px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:10px}.panel-head h2{font-size:16px;margin:0}.panel-head p{font-size:10px;color:#8A98A8;margin:3px 0 0}.panel-head a{font-size:11px;color:#0A84FF;font-weight:700}.activity-list{display:grid}.activity-row{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #EDF2F6}.activity-row:last-child{border-bottom:0}.activity-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#5EB4FF,#0A84FF);color:white;font-weight:900}.activity-main strong,.activity-main small{display:block}.activity-main strong{font-size:12px}.activity-main small{font-size:10px;color:#8593A6;margin-top:2px}.activity-row time{font-size:10px;color:#95A2B2}.mini-shopping{display:grid}.mini-shop-row{display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid #EDF2F6}.fake-check{width:18px;height:18px;border:1.5px solid #B6C8D9;border-radius:5px}.mini-shop-row strong,.mini-shop-row small{display:block}.mini-shop-row strong{font-size:12px}.mini-shop-row small{font-size:10px;color:#8896A8}.soft-action{margin-top:12px;display:block;border:1px solid #DCE7F2;background:#F7FAFD;border-radius:10px;padding:9px 10px;font-size:11px;color:#7290AE}.family-list{display:grid;gap:10px}.family-row{display:grid;grid-template-columns:42px 1fr 10px;gap:9px;align-items:center}.family-row strong,.family-row small{display:block}.family-row strong{font-size:12px}.family-row small{font-size:10px;color:#8593A6;margin-top:2px}.online-dot{width:8px;height:8px;border-radius:50%;background:#25C987}.muted-row{opacity:.58}.promo-panel{grid-column:1/3;display:grid;grid-template-columns:70px 1fr 240px;gap:18px;align-items:center;padding:22px}.promo-icon{font-size:46px;color:#0A84FF}.promo-panel h2{font-size:17px;margin:0 0 7px}.promo-panel p{font-size:11px;color:#7C8DA3;line-height:1.55;margin:0}.promo-actions{display:flex;gap:8px;margin-top:14px}.primary-btn,.secondary-btn{border:0;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}.primary-btn{background:linear-gradient(180deg,#2194FF,#0A84FF);color:white;box-shadow:0 8px 18px rgba(10,132,255,.22)}.secondary-btn{background:#EFF5FB;color:#47719D}.primary-btn[disabled],.secondary-btn[disabled]{opacity:.6;cursor:not-allowed}.device-stack{position:relative;height:100px}.device{position:absolute;bottom:0;background:linear-gradient(180deg,#0B2340 0 7%,#DDEFFF 7% 92%,#C7D7E6 92%);border-radius:7px;border:2px solid #0B2340;box-shadow:0 8px 18px rgba(26,61,99,.18)}.device.laptop{width:130px;height:82px;left:0}.device.tablet{width:72px;height:90px;left:100px}.device.phone{width:36px;height:70px;left:163px}.access-panel{grid-column:3}.access-row{display:grid;grid-template-columns:22px 1fr;gap:8px;padding:9px 10px;border-radius:9px;background:#F4F8FC;margin:6px 0;font-size:11px}.access-row:hover{background:#ECF4FC}.access-row.disabled{opacity:.45}.empty-state{padding:16px;color:#8A99AB;font-size:11px}.empty-state.large{text-align:center;padding:35px}.main-footer{display:flex;justify-content:center;gap:26px;align-items:center;font-size:10px;color:#91A0B2;padding:22px}.main-footer strong{margin-left:auto;color:#4E6F95;font-style:italic}

.settings-body{background:linear-gradient(160deg,#EEF6FF,#F8FBFF 48%,#F1F6FB);min-height:100vh}.settings-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.settings-sidebar{padding:26px 18px;border-right:1px solid rgba(30,93,160,.1);background:rgba(255,255,255,.72);backdrop-filter:blur(20px)}.settings-sidebar h1{font-size:22px;margin:22px 8px 16px}.settings-sidebar nav{display:grid;gap:6px}.settings-sidebar nav a{padding:10px 12px;border-radius:11px;color:#476786;font-size:13px}.settings-sidebar nav a:hover,.settings-sidebar nav a.active{background:#EAF4FF;color:#0A84FF}.back-link{font-size:12px;color:#5D7FA0}.settings-content{width:min(900px,calc(100% - 36px));margin:0 auto;padding:30px 0 60px}.settings-hero{min-height:150px;border-radius:24px;padding:26px 28px;background:linear-gradient(135deg,#0A84FF,#62B2FF);color:white;display:flex;justify-content:space-between;align-items:center;box-shadow:0 22px 44px rgba(10,132,255,.2)}.settings-kicker{font-size:10px;letter-spacing:.14em;font-weight:800;opacity:.75}.settings-hero h2{font-size:32px;margin:7px 0 5px}.settings-hero p{margin:0;font-size:13px;opacity:.85}.settings-avatar{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.35);font-size:24px;font-weight:800}.settings-card{background:rgba(255,255,255,.88);border:1px solid rgba(30,93,160,.09);border-radius:20px;padding:20px;margin-top:16px;box-shadow:0 12px 34px rgba(50,91,139,.07)}.settings-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.settings-card-head h3{margin:0;font-size:16px}.settings-card-head p{margin:3px 0 0;color:#8796A8;font-size:10px}.settings-icon{width:38px;height:38px;border-radius:12px;background:#EAF4FF;color:#0A84FF;display:grid;place-items:center}.settings-form{display:grid;gap:12px}.settings-form.compact{margin-top:18px;padding-top:16px;border-top:1px solid #EDF2F6}.settings-form h4{margin:0 0 2px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.settings-form label{display:grid;gap:6px;font-size:11px;color:#64768D;font-weight:700}.settings-form input{width:100%;border:1px solid #DCE6F0;background:#FBFDFF;border-radius:10px;padding:10px 11px;color:#1D2D42;outline:none}.settings-form input:focus{border-color:#7AB9F6;box-shadow:0 0 0 3px rgba(10,132,255,.08)}.settings-form input:disabled{background:#F3F6F9;color:#95A3B2}.form-actions{display:flex;justify-content:flex-end}.security-badge{display:flex;gap:10px;align-items:center;border-radius:13px;padding:12px 14px}.security-badge.good{background:#EBFAF4;color:#256B52}.security-badge.warn{background:#FFF7E5;color:#806220}.status-dot{width:9px;height:9px;border-radius:50%;background:#2ACB91}.security-badge.warn .status-dot{background:#F0AE38}.security-badge strong,.security-badge small{display:block}.security-badge small{font-size:10px;opacity:.7;margin-top:2px}.button-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.button-row form{display:inline}.future-setting{display:flex;justify-content:space-between;gap:15px;align-items:center;background:#F7FAFD;border:1px solid #E8EFF6;border-radius:12px;padding:13px 14px}.future-setting strong,.future-setting small{display:block}.future-setting strong{font-size:12px}.future-setting small{font-size:10px;color:#8795A6;margin-top:3px}.pill{font-size:9px;padding:5px 8px;border-radius:999px;background:#E9F4FF;color:#0A84FF;font-weight:700}.appearance-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.appearance-choice{border:1px solid #E2EAF2;background:#FBFDFF;border-radius:13px;padding:10px;text-align:left;color:#4F6780}.appearance-choice.selected{border-color:#8DC5FB;box-shadow:0 0 0 3px rgba(10,132,255,.06)}.theme-preview{display:block;height:48px;border-radius:9px;margin-bottom:9px}.theme-preview.light{background:linear-gradient(135deg,#fff,#EAF4FF)}.theme-preview.dark{background:linear-gradient(135deg,#17202A,#33485F)}.theme-preview.auto{background:linear-gradient(90deg,#fff 0 50%,#26394D 50%)}.appearance-choice strong,.appearance-choice small{display:block}.appearance-choice small{font-size:9px;color:#8A99AA;margin-top:2px}.storage-overview{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:center}.storage-ring{width:64px;height:64px;border-radius:50%;background:conic-gradient(#0A84FF 0 1%,#E8EFF6 1%);display:grid;place-items:center;position:relative}.storage-ring:before{content:"";position:absolute;width:50px;height:50px;border-radius:50%;background:white}.storage-ring span{position:relative;font-size:11px;font-weight:800;color:#0A84FF}.storage-overview strong,.storage-overview small{display:block}.storage-overview strong{font-size:12px}.storage-overview small{font-size:10px;color:#8392A4;margin-top:4px}.toast{padding:12px 14px;border-radius:11px;margin-top:14px;font-size:12px}.toast.success{background:#EAF9F3;color:#22644D}.toast.error{background:#FFF0F0;color:#993C3C}

.module-body{min-height:100vh;background:linear-gradient(160deg,#EEF6FF,#F8FBFF 55%,#F2F6FA)}.module-shell{width:min(980px,calc(100% - 32px));margin:0 auto;padding:26px 0}.module-topbar{display:flex;align-items:center;gap:22px;margin-bottom:20px}.module-topbar h1{font-size:28px;margin:0}.module-topbar p{font-size:12px;color:#8190A1;margin:4px 0 0}.module-main{display:block}.module-card{padding:18px}.shopping-add-modern{display:grid;grid-template-columns:1fr 140px 48px;gap:9px}.shopping-add-modern input{border:1px solid #DCE6F0;background:#FBFDFF;border-radius:10px;padding:11px}.shopping-modern-list{display:grid;margin-top:14px}.shopping-modern-row{display:grid;grid-template-columns:42px 1fr 40px;align-items:center;gap:9px;padding:12px 4px;border-bottom:1px solid #EDF2F6}.circle-check,.icon-only{border:0;background:transparent;cursor:pointer}.circle-check{font-size:25px;color:#92A8BC}.icon-only{font-size:16px}.icon-only.danger{opacity:.55}.shop-text strong,.shop-text small{display:block}.shop-text strong{font-size:13px}.shop-text small{font-size:10px;color:#8696A8;margin-top:3px}.audit-modern-list{display:grid;gap:8px}.audit-modern-row{border:1px solid #E6EDF4;background:#FBFDFF;border-radius:13px;overflow:hidden}.audit-modern-row summary{list-style:none;display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:12px;cursor:pointer}.audit-modern-row summary::-webkit-details-marker{display:none}.audit-modern-row summary strong,.audit-modern-row summary small{display:block}.audit-modern-row summary strong{font-size:12px}.audit-modern-row summary small{font-size:10px;color:#8796A8;margin-top:3px}.audit-modern-row pre{margin:0;padding:12px;background:#F4F7FA;border-top:1px solid #E6EDF4;white-space:pre-wrap;word-break:break-word;font-size:11px}
.back-link{font-size:11px;color:#5C7EA1}

.center{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#EEF6FF,#F9FBFD)}.card{background:rgba(255,255,255,.92);width:min(650px,100%);padding:28px;border:1px solid rgba(30,93,160,.1);border-radius:22px;box-shadow:0 20px 60px rgba(34,77,126,.12)}.login{max-width:430px}.mark{width:48px;height:48px;border-radius:14px;background:linear-gradient(180deg,#47A9FF,#087AF5);color:white;display:grid;place-items:center;font-weight:900;box-shadow:0 10px 25px rgba(10,132,255,.22)}.muted{color:#718079}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}form{display:grid;gap:12px}label{display:grid;gap:5px;font-weight:700;font-size:13px}input{padding:11px;border:1px solid #DCE6F0;border-radius:10px;font:inherit}button{font:inherit}.error,.warning{padding:12px;border-radius:10px;margin:12px 0}.error{background:#fff0f0;color:#922}.warning{background:#fff7df}.secret{display:block;padding:14px;background:#111;color:#fff;border-radius:10px;word-break:break-all}.codes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.codes code{background:#f2f4f3;padding:10px;border-radius:8px;text-align:center}

@media(max-width:1180px){
  .quick-modules{grid-template-columns:1fr 1fr}
  .dashboard-grid{grid-template-columns:1fr 1fr}
  .family-panel,.access-panel{grid-column:auto}
  .promo-panel{grid-column:1/3}
}
@media(max-width:820px){
  .cloud-shell{display:block}.sidebar{position:static;height:auto}.storage-card,.side-footer{display:none}.side-nav{grid-template-columns:repeat(3,1fr)}.side-nav a{grid-template-columns:24px 1fr}.side-nav a em,.nav-section{display:none}
  .content{padding:0 14px 20px}.topbar{height:64px}.hero-card{min-height:230px;padding:30px 24px}.hero-content h1{font-size:34px}.hero-status{position:relative;right:auto;bottom:auto;margin-top:22px;display:inline-block}.quick-modules{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.promo-panel,.access-panel{grid-column:auto}.promo-panel{grid-template-columns:56px 1fr}.device-stack{display:none}.profile-name{display:none}
  .settings-shell{display:block}.settings-sidebar{border-right:0;border-bottom:1px solid rgba(30,93,160,.1)}.settings-sidebar nav{grid-template-columns:repeat(3,1fr)}.settings-content{width:min(100% - 24px,900px)}.appearance-options{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .side-nav{grid-template-columns:1fr 1fr}.brand-block{padding-bottom:18px}.hero-card{border-radius:22px}.hero-content h1{font-size:30px}.quick-modules{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:1fr}.main-footer{flex-wrap:wrap;justify-content:flex-start}.main-footer strong{margin-left:0}.shopping-add-modern{grid-template-columns:1fr 90px 48px}.settings-sidebar nav{grid-template-columns:1fr 1fr}.codes{grid-template-columns:1fr}.grid{grid-template-columns:1fr}
}


/* =========================================================
   V4 THEMES
   ========================================================= */
.appearance-choice{cursor:pointer;position:relative}
.appearance-choice input[type="radio"]{position:absolute;opacity:0;pointer-events:none}
.theme-form{display:grid;gap:14px}

/* Dark theme — Apple-inspired Midnight Blue */
.theme-dark{
  --blue:#2F9BFF;
  --blue2:#65B8FF;
  --blue3:#173A5E;
  --navy:#D9EBFF;
  --text:#F2F7FC;
  --muted:#91A8BF;
  --line:rgba(151,193,235,.14);
  --bg:#07121F;
  --panel:rgba(14,31,49,.88);
  --shadow:0 18px 50px rgba(0,0,0,.34);
  background:#07121F;
  color:var(--text);
}
.theme-dark.cloud-body,
.theme-dark.settings-body,
.theme-dark.module-body{
  background:
    radial-gradient(circle at 70% -10%,rgba(19,94,166,.27),transparent 34%),
    linear-gradient(180deg,#07121F 0%,#0A1624 46%,#08131F 100%);
  color:var(--text);
}
.theme-dark .sidebar{
  background:linear-gradient(180deg,rgba(7,20,34,.96),rgba(8,24,39,.94));
  border-right-color:rgba(129,177,224,.12);
}
.theme-dark .brand-block strong{color:#F3F8FD}
.theme-dark .brand-block small,
.theme-dark .side-footer,
.theme-dark .storage-card small{color:#829AB1}
.theme-dark .side-nav a{color:#C3D3E3}
.theme-dark .side-nav a:hover{background:rgba(58,142,225,.10)}
.theme-dark .side-nav a.active{background:linear-gradient(90deg,#1265B9,#217FD5);color:#fff}
.theme-dark .nav-section{color:#607B94}
.theme-dark .storage-card{
  background:rgba(14,35,55,.78);
  border-color:rgba(119,170,218,.12)
}
.theme-dark .storage-bar{background:#1A3046}
.theme-dark .round-btn,
.theme-dark .profile-menu summary{
  background:rgba(14,34,53,.86);
  color:#D9EBFB;
  box-shadow:0 8px 24px rgba(0,0,0,.22)
}
.theme-dark .profile-popover{
  background:rgba(9,24,39,.97);
  border-color:rgba(135,180,221,.13);
  box-shadow:0 24px 64px rgba(0,0,0,.46)
}
.theme-dark .profile-popover a{color:#DCE9F6}
.theme-dark .profile-popover a:hover{background:#132B43}
.theme-dark .profile-popover hr{border-color:#1A344D}
.theme-dark .hero-card{
  background:
    radial-gradient(circle at 78% 20%,rgba(94,170,240,.16),transparent 28%),
    linear-gradient(135deg,#06213D 0%,#0A3C70 48%,#105A99 100%);
  box-shadow:0 24px 58px rgba(0,0,0,.38)
}
.theme-dark .hero-status{
  background:rgba(6,26,45,.35);
  border-color:rgba(169,208,242,.17)
}
.theme-dark .quick-module,
.theme-dark .glass-panel,
.theme-dark .settings-card,
.theme-dark .module-card{
  background:rgba(12,29,46,.88);
  border-color:rgba(123,170,216,.12);
  box-shadow:0 12px 35px rgba(0,0,0,.20)
}
.theme-dark .quick-module strong,
.theme-dark .panel-head h2,
.theme-dark .activity-main strong,
.theme-dark .mini-shop-row strong,
.theme-dark .family-row strong,
.theme-dark .promo-panel h2,
.theme-dark .settings-card-head h3,
.theme-dark .future-setting strong,
.theme-dark .storage-overview strong,
.theme-dark .shop-text strong,
.theme-dark .audit-modern-row summary strong{
  color:#F2F7FC
}
.theme-dark .quick-module small,
.theme-dark .panel-head p,
.theme-dark .activity-main small,
.theme-dark .activity-row time,
.theme-dark .mini-shop-row small,
.theme-dark .family-row small,
.theme-dark .promo-panel p,
.theme-dark .settings-card-head p,
.theme-dark .future-setting small,
.theme-dark .storage-overview small,
.theme-dark .shop-text small,
.theme-dark .audit-modern-row summary small,
.theme-dark .module-topbar p{color:#87A0B8}
.theme-dark .activity-row,
.theme-dark .mini-shop-row,
.theme-dark .shopping-modern-row{
  border-bottom-color:#173149
}
.theme-dark .fake-check{border-color:#54728F}
.theme-dark .soft-action,
.theme-dark .access-row,
.theme-dark .future-setting{
  background:#10283F;
  border-color:#1A3A57;
  color:#A9C2D9
}
.theme-dark .access-row:hover{background:#14324E}
.theme-dark .tile-icon.file{background:#173A5B;color:#67B8FF}
.theme-dark .tile-icon.shop{background:#113452;color:#4BAEFF}
.theme-dark .tile-icon.cal{background:#1D3159;color:#8A9DFF}
.theme-dark .device{filter:brightness(.76) saturate(.9)}
.theme-dark .main-footer{color:#7089A1}
.theme-dark .main-footer strong{color:#9AB8D4}

/* Settings dark */
.theme-dark .settings-sidebar{
  background:rgba(7,20,34,.92);
  border-color:rgba(118,164,207,.12)
}
.theme-dark .settings-sidebar h1{color:#F2F7FC}
.theme-dark .settings-sidebar nav a{color:#B4C7DA}
.theme-dark .settings-sidebar nav a:hover,
.theme-dark .settings-sidebar nav a.active{
  background:#102D48;color:#58B1FF
}
.theme-dark .settings-hero{
  background:linear-gradient(135deg,#0B4D89,#0E70C5);
  box-shadow:0 22px 48px rgba(0,0,0,.30)
}
.theme-dark .settings-form label{color:#A9BDD0}
.theme-dark .settings-form input{
  background:#0C2135;
  border-color:#1D3D59;
  color:#EEF6FD
}
.theme-dark .settings-form input:disabled{
  background:#101E2B;color:#6F8498
}
.theme-dark .settings-form input:focus{
  border-color:#318FDF;
  box-shadow:0 0 0 3px rgba(47,155,255,.10)
}
.theme-dark .security-badge.good{background:#0D312B;color:#9AE3CB}
.theme-dark .security-badge.warn{background:#352B16;color:#F0D392}
.theme-dark .secondary-btn{background:#112C45;color:#B8D3EB}
.theme-dark .pill{background:#113A5D;color:#65B9FF}
.theme-dark .appearance-choice{
  background:#0C2135;
  border-color:#1B3C59;
  color:#B7CDE0
}
.theme-dark .appearance-choice.selected{
  border-color:#318FDF;
  box-shadow:0 0 0 3px rgba(47,155,255,.10)
}
.theme-dark .theme-preview.light{opacity:.85}
.theme-dark .storage-ring:before{background:#0C1D2D}

/* Module pages dark */
.theme-dark .shopping-add-modern input{
  background:#0C2135;
  border-color:#1B3C59;
  color:#F1F6FB
}
.theme-dark .shopping-add-modern input::placeholder{color:#688199}
.theme-dark .circle-check{color:#63829E}
.theme-dark .audit-modern-row{
  background:#0C2135;
  border-color:#193A56
}
.theme-dark .audit-modern-row pre{
  background:#081827;
  border-top-color:#193A56;
  color:#C8D8E7
}

/* Login / setup remain clean but respect system palette if a future preference is applied */


/* =========================================================
   V5 - Rich module iconography
   ========================================================= */
.nav-img{width:26px;height:26px;display:block;border-radius:8px;box-shadow:0 3px 10px rgba(24,99,171,.08)}
.side-nav a.active .nav-img{box-shadow:0 3px 10px rgba(255,255,255,.16)}
.tile-img{width:46px;height:46px;border-radius:14px;display:block;box-shadow:0 7px 18px rgba(35,93,154,.12)}
.access-img{width:22px;height:22px;border-radius:7px;display:block}
.menu-img{width:23px;height:23px;vertical-align:middle;margin-right:8px;border-radius:7px}
.profile-popover a{display:flex;align-items:center}
.promo-icon-wrap{width:58px;height:58px;display:grid;place-items:center}
.promo-img{width:58px;height:58px;filter:drop-shadow(0 8px 15px rgba(10,132,255,.16))}
.settings-nav-img{width:24px;height:24px;border-radius:8px;vertical-align:middle;margin-right:8px}
.settings-sidebar nav a{display:flex;align-items:center}
.settings-card-img{width:34px;height:34px;border-radius:10px;display:block}
.settings-icon{background:transparent!important}
.title-with-icon{display:flex;align-items:center;gap:12px}
.title-img{width:42px;height:42px;border-radius:13px;box-shadow:0 8px 18px rgba(30,100,170,.12)}
.theme-dark .nav-img,
.theme-dark .tile-img,
.theme-dark .access-img,
.theme-dark .menu-img,
.theme-dark .settings-nav-img,
.theme-dark .settings-card-img,
.theme-dark .title-img{
  box-shadow:0 6px 16px rgba(0,0,0,.22);
}
.theme-dark .quick-module.disabled .tile-img,
.theme-dark .side-nav a.disabled .nav-img{opacity:.82}


/* V6 inline SVG icon fix - no external icon files required */
.nav-img,.tile-img,.access-img,.menu-img,.promo-img,.settings-nav-img,.settings-card-img,.title-img{
  display:inline-grid;place-items:center;flex:0 0 auto;
}
.nav-img svg,.tile-img svg,.access-img svg,.menu-img svg,.promo-img svg,.settings-nav-img svg,.settings-card-img svg,.title-img svg{
  width:100%;height:100%;display:block;
}
.nav-img{width:26px;height:26px;border-radius:8px}
.tile-img{width:46px;height:46px;border-radius:14px}
.access-img{width:22px;height:22px;border-radius:7px}
.menu-img{width:23px;height:23px;border-radius:7px;margin-right:8px}
.promo-img{width:58px;height:58px}
.settings-nav-img{width:24px;height:24px;border-radius:8px;margin-right:8px}
.settings-card-img{width:34px;height:34px;border-radius:10px}
.title-img{width:42px;height:42px;border-radius:13px}


/* V7 definitive inline SVG icon rendering */
.nav-img,.tile-img,.access-img,.menu-img,.promo-img,.settings-nav-img,.settings-card-img,.title-img{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  overflow:hidden;
}
.nav-img svg,.tile-img svg,.access-img svg,.menu-img svg,.promo-img svg,.settings-nav-img svg,.settings-card-img svg,.title-img svg{
  width:100% !important;
  height:100% !important;
  display:block !important;
}
.nav-img{width:26px;height:26px;border-radius:8px}
.tile-img{width:46px;height:46px;border-radius:14px}
.access-img{width:22px;height:22px;border-radius:7px}
.menu-img{width:23px;height:23px;border-radius:7px;margin-right:8px}
.promo-img{width:58px;height:58px}
.settings-nav-img{width:24px;height:24px;border-radius:8px;margin-right:8px}
.settings-card-img{width:34px;height:34px;border-radius:10px}
.title-img{width:42px;height:42px;border-radius:13px}


/* V8 user administration */
.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 18px}.permission-item{display:flex!important;gap:10px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:rgba(120,170,220,.06);cursor:pointer}.permission-item input{width:18px!important;height:18px!important;flex:0 0 auto}.permission-item span{display:grid;gap:2px}.permission-item strong{font-size:14px}.permission-item small{color:var(--muted);font-size:12px}.user-admin-card{margin-top:18px}.user-admin-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.user-admin-head h2{margin:0}.user-admin-head h2 small{font-size:14px;color:var(--muted);font-weight:500}.user-admin-head p{margin:4px 0 0;color:var(--muted)}.admin-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.reset-inline{display:flex;gap:8px;flex:1;min-width:320px}.reset-inline input{flex:1;padding:11px 12px;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:var(--text)}.theme-dark .permission-item{background:#10283f;border-color:#1a3a57}.theme-dark .reset-inline input{background:#0c2135;border-color:#1d3d59;color:#eef6fd}@media(max-width:800px){.permission-grid{grid-template-columns:1fr}.user-admin-head{align-items:flex-start;flex-direction:column}.reset-inline{min-width:100%;flex-direction:column}}


/* =========================================================
   V9 - Modern authentication experience
   ========================================================= */
.auth-page{
  min-height:100vh;
  background:#F4F8FC;
  color:#142033;
}
.auth-shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(420px,1.05fr) minmax(420px,.95fr);
}
.auth-visual{
  position:relative;
  overflow:hidden;
  padding:38px 44px;
  background:
    radial-gradient(circle at 74% 16%,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(145deg,#064E96 0%,#0A84FF 48%,#5BB1FF 100%);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.auth-visual-compact{background:linear-gradient(145deg,#063B70 0%,#0B6FC2 50%,#3F9EEA 100%)}
.auth-brand{display:flex;align-items:center;gap:12px;position:relative;z-index:2}
.auth-brand strong,.auth-brand small{display:block}
.auth-brand strong{font-size:16px}
.auth-brand small{font-size:11px;opacity:.76;margin-top:2px}
.auth-cloud-logo{filter:drop-shadow(0 8px 18px rgba(0,0,0,.12))}
.auth-visual-content{position:relative;z-index:2;max-width:640px;margin:auto 0}
.auth-kicker{font-size:10px;letter-spacing:.15em;font-weight:800;opacity:.72}
.auth-visual-content h1{font-size:48px;line-height:1.04;letter-spacing:-.045em;margin:14px 0 16px}
.auth-visual-content p{font-size:16px;line-height:1.55;opacity:.86;max-width:560px}
.auth-feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px;max-width:640px}
.auth-feature{display:flex;gap:10px;align-items:center;padding:13px 14px;border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.11);border-radius:16px;backdrop-filter:blur(14px)}
.auth-feature>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.15)}
.auth-feature strong,.auth-feature small{display:block}
.auth-feature strong{font-size:12px}.auth-feature small{font-size:9px;opacity:.72;margin-top:2px}
.auth-orb{position:absolute;border-radius:50%;background:rgba(255,255,255,.09)}
.orb-a{width:360px;height:360px;right:-120px;top:-100px}
.orb-b{width:250px;height:250px;left:34%;bottom:-120px}
.auth-grid-pattern{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,transparent,black 25%,black 70%,transparent)}
.auth-security-illustration{display:flex;align-items:center;gap:14px;margin-top:28px;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.17);max-width:450px}
.shield-ring{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.17);font-weight:900;font-size:22px}
.auth-security-illustration strong,.auth-security-illustration small{display:block}.auth-security-illustration small{font-size:10px;opacity:.75;margin-top:3px}

.auth-form-pane{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:42px 36px 22px;
  background:
    radial-gradient(circle at 84% 8%,rgba(10,132,255,.07),transparent 26%),
    linear-gradient(180deg,#FAFCFF,#F3F7FB);
}
.auth-card{
  width:min(470px,100%);
  background:rgba(255,255,255,.92);
  border:1px solid rgba(24,73,125,.10);
  border-radius:26px;
  padding:28px;
  box-shadow:0 22px 60px rgba(34,77,126,.13);
  backdrop-filter:blur(18px);
}
.auth-card-wide{width:min(560px,100%)}
.auth-card-top{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px}
.auth-mini-cloud{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto}
.auth-card-top h2{font-size:29px;margin:3px 0 5px;letter-spacing:-.025em}
.auth-card-top p{margin:0;color:#7B8CA0;font-size:12px;line-height:1.45}
.auth-eyebrow{font-size:9px;letter-spacing:.14em;font-weight:800;color:#0A84FF}
.auth-form{display:grid;gap:15px}
.auth-form label{display:grid;gap:7px;font-size:11px;color:#526A83;font-weight:700}
.input-wrap{position:relative}
.input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#7D9DBC;font-size:14px}
.auth-form input{
  width:100%;
  border:1px solid #DDE7F1;
  background:#FBFDFF;
  border-radius:12px;
  padding:12px 13px;
  outline:none;
  color:#1C2D42;
  transition:.18s ease;
}
.input-wrap input{padding-left:38px}
.auth-form input:focus{border-color:#78B9F7;box-shadow:0 0 0 4px rgba(10,132,255,.08);background:#fff}
.auth-primary-btn{
  width:100%;
  border:0;
  border-radius:12px;
  padding:13px 15px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:linear-gradient(180deg,#1F94FF,#0A84FF);
  color:white;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(10,132,255,.24);
}
.auth-primary-btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(10,132,255,.28)}
.auth-alert{padding:11px 13px;border-radius:11px;background:#FFF0F0;color:#A43A3A;border:1px solid #F3D0D0;font-size:11px;margin-bottom:14px}
.auth-security-note{display:flex;gap:10px;align-items:center;margin-top:20px;padding-top:16px;border-top:1px solid #EDF2F6}
.security-dot{width:9px;height:9px;border-radius:50%;background:#2ACB91;box-shadow:0 0 0 5px rgba(42,203,145,.09)}
.auth-security-note strong,.auth-security-note small{display:block}
.auth-security-note strong{font-size:10px}.auth-security-note small{font-size:9px;color:#8B99A8;margin-top:2px}
.auth-footer{font-size:9px;color:#95A3B2;margin-top:18px}
.auth-back-link{display:inline-block;margin-top:16px;font-size:10px;color:#5D7FA0}
.otp-input{text-align:center;font-size:30px!important;font-weight:800;letter-spacing:.32em;padding-left:20px!important}
.auth-setup-key{margin:14px 0 18px;padding:14px;border-radius:14px;background:#F5F9FD;border:1px solid #E1EAF3}
.auth-setup-key span{display:block;font-size:9px;color:#8191A4;margin-bottom:7px}
.auth-setup-key code{display:block;word-break:break-all;color:#0A5FAF;font-size:13px;font-weight:800;letter-spacing:.05em}

@media(max-width:900px){
  .auth-shell{grid-template-columns:1fr}
  .auth-visual{min-height:350px;padding:28px}
  .auth-visual-content h1{font-size:38px}
  .auth-feature-row{grid-template-columns:1fr 1fr 1fr}
  .auth-form-pane{padding:28px 20px}
}
@media(max-width:560px){
  .auth-visual{min-height:300px;padding:22px}
  .auth-visual-content h1{font-size:31px}
  .auth-visual-content p{font-size:14px}
  .auth-feature-row{grid-template-columns:1fr;gap:8px;margin-top:22px}
  .auth-feature{padding:10px 12px}
  .auth-form-pane{padding:20px 14px}
  .auth-card{padding:22px;border-radius:22px}
  .auth-card-top h2{font-size:25px}
  .auth-card-top{margin-bottom:20px}
}


/* =========================================================
   V10 – Shopping module
   ========================================================= */
.shopping-v10{width:min(1320px,calc(100% - 34px));}
.shopping-header{margin-bottom:16px}
.shopping-title-row{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center}
.shopping-heading h1{margin:0}.shopping-heading p{margin:4px 0 0;color:#8191A3;font-size:11px}
.shopping-gear{width:42px;height:42px;border:1px solid #DCE7F1;background:rgba(255,255,255,.82);border-radius:13px;color:#47739E;cursor:pointer}
.shopping-list-tabs{display:flex;gap:7px;align-items:center;overflow:auto;margin-top:18px;padding-bottom:3px}
.shopping-list-tabs a,.shopping-list-tabs button{white-space:nowrap;border:1px solid #DDE8F2;background:rgba(255,255,255,.72);color:#5E7790;border-radius:999px;padding:8px 12px;font-size:10px;font-weight:700;display:flex;gap:6px;align-items:center;cursor:pointer}
.shopping-list-tabs a.active{background:#0A84FF;color:#fff;border-color:#0A84FF;box-shadow:0 7px 16px rgba(10,132,255,.2)}
.shopping-list-tabs b{font-size:9px;border-radius:999px;background:rgba(10,132,255,.11);padding:2px 5px}.shopping-list-tabs a.active b{background:rgba(255,255,255,.22)}
.shopping-main-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px;align-items:start}
.shopping-primary-panel{padding:18px}
.shopping-composer{display:grid;gap:9px;padding-bottom:16px;border-bottom:1px solid #EDF2F6}
.composer-main{display:grid;grid-template-columns:1fr 180px;gap:9px}
.composer-main input,.composer-more input,.composer-more select,.shopping-filterbar input,.shopping-filterbar select,.modal-form input,.modal-form select{border:1px solid #DCE6F0;background:#FBFDFF;color:#1D2D42;border-radius:10px;padding:10px 11px;outline:none}
.composer-main input:first-child{font-size:15px;padding:13px}
.composer-more{display:grid;grid-template-columns:165px 125px minmax(180px,1fr) auto;gap:9px;align-items:center}
.urgent-toggle{display:flex!important;align-items:center;gap:7px!important;color:#6B7D91!important;font-size:10px!important;cursor:pointer}
.urgent-toggle input{width:auto!important}.urgent-toggle span{width:22px;height:22px;border-radius:7px;background:#FFF0F0;color:#ED5A5A;display:grid;place-items:center;font-weight:900}
.shopping-filterbar{display:grid;grid-template-columns:minmax(170px,1fr) 160px 130px auto auto;gap:8px;align-items:center;padding:14px 0}
.shopping-search{position:relative}.shopping-search span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#8AA0B4}.shopping-search input{width:100%;padding-left:30px}
.filter-check{display:flex!important;align-items:center;gap:6px!important;font-size:10px!important;color:#6C7F93!important}.filter-check input{width:auto}
.filter-reset{font-size:9px;color:#0A84FF}
.shopping-view-toggle{display:flex;gap:8px;margin-bottom:8px}.shopping-view-toggle a{padding:7px 11px;border-radius:9px;color:#77899C;font-size:10px;font-weight:800}.shopping-view-toggle a.active{background:#EAF4FF;color:#0A84FF}.shopping-view-toggle b{font-size:9px}
.shopping-items-v10{display:grid;gap:8px}
.shopping-item-card{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:start;padding:13px;border:1px solid #E5EDF4;background:#FBFDFF;border-radius:15px;transition:.15s ease}
.shopping-item-card:hover{border-color:#CFE1F2;box-shadow:0 7px 18px rgba(40,87,132,.06)}
.shopping-item-card.is-urgent{border-left:3px solid #FF615A}.shopping-item-card.is-done{opacity:.67}
.item-check{width:30px;height:30px;border-radius:10px;border:1.5px solid #A9BED0;background:#fff;color:#fff;font-weight:900;cursor:pointer}
.is-done .item-check{background:#2FCB91;border-color:#2FCB91}
.item-title-line{display:flex;gap:8px;align-items:center}.item-title-line strong{font-size:13px}.is-done .item-title-line strong{text-decoration:line-through;color:#77899B}
.urgent-badge{font-size:8px;background:#FFF0F0;color:#EA4E4E;padding:3px 6px;border-radius:999px;font-weight:800}
.item-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}.quantity-pill,.category-pill{font-size:9px;padding:3px 7px;border-radius:999px;background:#EEF4F9;color:#668099}.category-pill{background:#EAF4FF;color:#3A79B7}
.item-notes{font-size:10px;color:#74879A;margin:7px 0 0;line-height:1.45}
.item-history{display:flex;gap:11px;flex-wrap:wrap;margin-top:8px;font-size:8.5px;color:#9AA8B6}.item-history strong{font-weight:700;color:#7A8C9F}
.item-actions{display:flex;gap:4px;align-items:center}.item-actions form{display:inline}.icon-action{border:0;background:transparent;border-radius:8px;padding:6px;cursor:pointer;color:#587795}.icon-action:hover{background:#EEF4F9}.icon-action.delete:hover{background:#FFF0F0}
.shopping-empty{text-align:center;padding:46px 20px;color:#8292A3}.shopping-empty strong,.shopping-empty span{display:block}.shopping-empty strong{font-size:13px;margin-top:8px}.shopping-empty span{font-size:10px;margin-top:4px}.empty-cart{font-size:34px}
.shopping-side{display:grid;gap:12px}.shopping-info-panel{padding:15px}.side-panel-head h2{margin:0;font-size:13px}.side-panel-head span{display:block;font-size:9px;color:#8998A8;margin-top:3px}
.shopping-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px}.shopping-stats div{background:#F5F9FC;border-radius:10px;padding:10px;text-align:center}.shopping-stats strong,.shopping-stats span{display:block}.shopping-stats strong{font-size:18px;color:#0A84FF}.shopping-stats span{font-size:8px;color:#8191A3;margin-top:2px}
.category-cloud{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.category-cloud a{padding:6px 8px;border-radius:999px;background:#F1F6FA;color:#607B94;font-size:9px}.category-cloud a span{margin-right:3px}
.soft-full-btn{width:100%;border:1px solid #DCE7F1;background:#F8FBFD;color:#61809C;border-radius:9px;padding:8px;font-size:9px;cursor:pointer}
.tip-panel{display:grid;grid-template-columns:38px 1fr;gap:10px}.tip-icon{width:36px;height:36px;border-radius:12px;background:#EAF4FF;color:#0A84FF;display:grid;place-items:center;font-size:18px}.tip-panel strong{font-size:10px}.tip-panel p{font-size:9px;color:#8393A4;line-height:1.5;margin:3px 0 0}

/* Modals */
.modal-backdrop{position:fixed;inset:0;background:rgba(7,19,33,.48);display:grid;place-items:center;padding:18px;z-index:500;backdrop-filter:blur(6px)}
.modal-backdrop[hidden]{display:none}.modal-card{width:min(590px,100%);background:#fff;border-radius:22px;padding:21px;box-shadow:0 30px 90px rgba(0,0,0,.25);max-height:92vh;overflow:auto}.compact-modal{width:min(470px,100%)}
.modal-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:17px}.modal-head h2{margin:3px 0 0;font-size:22px}.modal-kicker{font-size:8px;letter-spacing:.13em;font-weight:800;color:#0A84FF}.modal-close{border:0;background:#F2F6F9;width:32px;height:32px;border-radius:10px;cursor:pointer;color:#6E8194;font-size:18px}
.modal-form{display:grid;gap:12px}.modal-form label{display:grid;gap:5px;font-size:10px;color:#647A90;font-weight:700}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.modal-grid.small-first{grid-template-columns:95px 1fr}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.modal-urgent{padding:8px 0}
.danger-zone{border-top:1px solid #EDF2F6;margin-top:18px;padding-top:16px}.danger-zone strong{font-size:11px;color:#BA4040}.danger-zone p{font-size:9px;color:#8795A4;line-height:1.45}.danger-btn{border:0;background:#FFF0F0;color:#C14848;border-radius:9px;padding:9px 12px;font-weight:700;cursor:pointer}
.modal-open{overflow:hidden}

/* Dark */
.theme-dark .shopping-gear,.theme-dark .shopping-list-tabs a,.theme-dark .shopping-list-tabs button{background:#0D2337;border-color:#1C3B57;color:#B7CADC}
.theme-dark .shopping-list-tabs a.active{background:#137ACF;color:#fff;border-color:#137ACF}
.theme-dark .shopping-composer{border-color:#173149}
.theme-dark .composer-main input,.theme-dark .composer-more input,.theme-dark .composer-more select,.theme-dark .shopping-filterbar input,.theme-dark .shopping-filterbar select,.theme-dark .modal-form input,.theme-dark .modal-form select{background:#0C2135;border-color:#1C3C58;color:#ECF4FB}
.theme-dark .shopping-view-toggle a.active{background:#103253;color:#62B6FF}
.theme-dark .shopping-item-card{background:#0C2135;border-color:#193A56}.theme-dark .shopping-item-card:hover{border-color:#2B5679}
.theme-dark .item-check{background:#0B1B2A;border-color:#55748F}.theme-dark .is-done .item-check{background:#249B71;border-color:#249B71}
.theme-dark .quantity-pill{background:#152F45;color:#A9BED1}.theme-dark .category-pill{background:#11395A;color:#79BFFF}
.theme-dark .shopping-stats div,.theme-dark .category-cloud a,.theme-dark .soft-full-btn{background:#10283E;color:#A9BFD2;border-color:#193A56}
.theme-dark .modal-card{background:#091D2E;color:#ECF4FB}.theme-dark .modal-close{background:#122D44;color:#AFC6D9}.theme-dark .danger-zone{border-color:#19364E}

@media(max-width:1050px){.shopping-main-grid{grid-template-columns:1fr}.shopping-side{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){
 .shopping-v10{width:min(100% - 20px,1320px)}.shopping-title-row{grid-template-columns:1fr auto}.shopping-title-row>.back-link{grid-column:1/3}.composer-main{grid-template-columns:1fr 110px}.composer-more{grid-template-columns:1fr 1fr}.composer-more .primary-btn{grid-column:2}.shopping-filterbar{grid-template-columns:1fr 1fr}.shopping-search{grid-column:1/3}.shopping-side{grid-template-columns:1fr}.item-history{display:grid;gap:3px}
}
@media(max-width:500px){.composer-main,.composer-more,.shopping-filterbar,.modal-grid,.modal-grid.small-first{grid-template-columns:1fr}.shopping-search{grid-column:auto}.composer-more .primary-btn{grid-column:auto}.shopping-item-card{grid-template-columns:38px 1fr}.item-actions{grid-column:2;justify-content:flex-end}.shopping-list-tabs{margin-left:-4px;margin-right:-4px}}


/* =========================================================
   V11 – Warranties module
   ========================================================= */
.warranty-v11{width:min(1320px,calc(100% - 34px))}
.warranty-header{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:16px}.warranty-header h1{margin:9px 0 3px}.warranty-header p{margin:0;color:#8191A3;font-size:11px}
.warranty-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.summary-card{background:rgba(255,255,255,.82);border:1px solid #E4EDF5;border-radius:16px;padding:15px;box-shadow:0 8px 22px rgba(50,91,139,.06)}.summary-card strong,.summary-card span{display:block}.summary-card strong{font-size:25px}.summary-card span{font-size:9px;color:#8191A3;margin-top:3px}.summary-card.active strong{color:#22A779}.summary-card.soon strong{color:#E29A24}.summary-card.expired strong{color:#E14C4C}.summary-card.total strong{color:#0A84FF}
.warranty-panel{padding:17px}.warranty-filterbar{display:grid;grid-template-columns:minmax(230px,1fr) 170px 160px auto auto;gap:8px;align-items:center;margin-bottom:13px}.warranty-search{position:relative}.warranty-search span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#8AA0B4}.warranty-search input{width:100%;padding-left:30px}.warranty-filterbar input,.warranty-filterbar select{border:1px solid #DCE6F0;background:#FBFDFF;color:#1D2D42;border-radius:10px;padding:10px 11px}
.warranty-table-wrap{overflow:auto;border:1px solid #E7EEF5;border-radius:13px}.warranty-table{width:100%;min-width:900px;border-collapse:collapse;background:#FBFDFF}.warranty-table th{font-size:9px;color:#8493A4;text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:10px 12px;background:#F4F8FB}.warranty-table td{font-size:10px;color:#5E7287;padding:12px;border-top:1px solid #EDF2F6;vertical-align:middle}.warranty-open-link{border:0;background:transparent;text-align:left;padding:0;cursor:pointer;color:#1E344C}.warranty-open-link strong,.warranty-open-link small{display:block}.warranty-open-link strong{font-size:12px}.warranty-open-link small{font-size:9px;color:#8A99AA;margin-top:2px}.warranty-actions{display:flex;gap:4px;align-items:center}.warranty-actions form{display:inline}
.warranty-status{display:inline-block;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:800}.warranty-status.active{background:#E9F8F2;color:#238963}.warranty-status.soon{background:#FFF6E5;color:#B77812}.warranty-status.expired{background:#FFF0F0;color:#C14444}.warranty-status.unknown{background:#EFF3F6;color:#728294}.file-count{font-size:9px;color:#7290AD}
.warranty-category-panel{margin-top:13px;padding:14px}
.warranty-modal-card{width:min(720px,100%)}.file-upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.file-upload-card{border:1px dashed #C9D8E6;border-radius:13px;padding:13px;text-align:center;background:#F8FBFD;cursor:pointer}.file-upload-card span,.file-upload-card strong,.file-upload-card small{display:block}.file-upload-card span{font-size:24px}.file-upload-card strong{font-size:10px;margin-top:5px}.file-upload-card small{font-size:8px;color:#8897A8;margin:3px 0 7px}.file-upload-card input{font-size:8px;padding:0;border:0;background:transparent}
.warranty-detail-card{width:min(760px,100%)}.warranty-detail-status{margin-bottom:13px}.warranty-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.warranty-detail-grid>div{background:#F7FAFD;border:1px solid #E8EFF6;border-radius:11px;padding:11px}.warranty-detail-grid small,.warranty-detail-grid strong{display:block}.warranty-detail-grid small{font-size:8px;color:#8796A8;margin-bottom:3px}.warranty-detail-grid strong{font-size:11px}.warranty-note{margin-top:11px;background:#F7FAFD;border-radius:11px;padding:12px}.warranty-note small{font-size:8px;color:#8796A8}.warranty-note p{font-size:10px;line-height:1.5;margin:4px 0 0}
.warranty-files{margin-top:17px}.warranty-file-row{display:grid;grid-template-columns:36px 1fr auto 32px;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #EDF2F6}.file-type-icon{font-size:20px}.warranty-file-row strong,.warranty-file-row small{display:block}.warranty-file-row strong{font-size:10px}.warranty-file-row small{font-size:8px;color:#8796A8;margin-top:2px}.secondary-btn.mini{padding:6px 9px;font-size:8px}.empty-docs{font-size:9px;color:#8898A8;padding:14px 0}

/* Dark */
.theme-dark .summary-card{background:#0D2337;border-color:#1C3B57}.theme-dark .warranty-filterbar input,.theme-dark .warranty-filterbar select{background:#0C2135;border-color:#1C3C58;color:#ECF4FB}.theme-dark .warranty-table-wrap{border-color:#193A56}.theme-dark .warranty-table{background:#0C2135}.theme-dark .warranty-table th{background:#10283E;color:#8FA7BC}.theme-dark .warranty-table td{border-color:#193A56;color:#AFC2D4}.theme-dark .warranty-open-link{color:#F0F6FC}.theme-dark .warranty-open-link small{color:#849BB0}.theme-dark .file-upload-card{background:#0C2135;border-color:#2B4E6C}.theme-dark .warranty-detail-grid>div,.theme-dark .warranty-note{background:#0C2135;border-color:#193A56}.theme-dark .warranty-file-row{border-color:#193A56}

@media(max-width:850px){.warranty-summary{grid-template-columns:1fr 1fr}.warranty-filterbar{grid-template-columns:1fr 1fr}.warranty-search{grid-column:1/3}.file-upload-grid{grid-template-columns:1fr}.warranty-detail-grid{grid-template-columns:1fr}}
@media(max-width:520px){.warranty-header{display:grid;align-items:start}.warranty-summary{grid-template-columns:1fr 1fr}.warranty-filterbar{grid-template-columns:1fr}.warranty-search{grid-column:auto}.warranty-v11{width:min(100% - 20px,1320px)}}


/* =========================================================
   V12.1 – Persistent navigation hotfix
   ========================================================= */
.persistent-nav-content{
  min-width:0;
  padding:24px 28px 40px;
}
.persistent-nav-content > .module-shell{
  width:min(1320px,100%);
  margin:0 auto;
  padding:0;
}
.persistent-nav-content .shopping-v10,
.persistent-nav-content .warranty-v11{
  width:min(1320px,100%);
}
.persistent-nav-content > .settings-shell{
  width:100%;
  min-height:auto;
  margin:0;
}
.theme-dark .persistent-nav-content{background:transparent}
@media(max-width:820px){
  .persistent-nav-content{padding:18px 14px 30px}
  .persistent-nav-content > .module-shell{width:100%}
}


/* =========================================================
   V13 – To-dos
   ========================================================= */
.todo-v13{width:min(1320px,100%);margin:0 auto}
.todo-header{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:16px}.todo-header h1{margin:0}.todo-header p{margin:4px 0 0;color:#8191A3;font-size:11px}
.todo-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.todo-summary-card{background:rgba(255,255,255,.82);border:1px solid #E3EDF5;border-radius:15px;padding:14px;box-shadow:0 8px 22px rgba(50,91,139,.05)}.todo-summary-card strong,.todo-summary-card span{display:block}.todo-summary-card strong{font-size:24px;color:#0A84FF}.todo-summary-card span{font-size:9px;color:#8292A4;margin-top:3px}.todo-summary-card.mine strong{color:#745BDF}.todo-summary-card.overdue strong{color:#E14D4D}.todo-summary-card.active{border-color:#83BDF4;box-shadow:0 0 0 3px rgba(10,132,255,.06)}
.todo-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:15px;align-items:start}.todo-main-panel{padding:17px}.todo-filterbar{display:grid;grid-template-columns:minmax(190px,1fr) 160px 140px 150px auto;gap:8px;align-items:center;padding-bottom:13px;border-bottom:1px solid #EDF2F6}.todo-filterbar input,.todo-filterbar select{border:1px solid #DCE6F0;background:#FBFDFF;color:#1D2D42;border-radius:10px;padding:9px 10px}.todo-search{position:relative}.todo-search span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#8AA0B4}.todo-search input{width:100%;padding-left:29px}
.todo-view-tabs{display:flex;gap:7px;margin:12px 0}.todo-view-tabs a{font-size:9px;font-weight:800;color:#788A9D;padding:7px 10px;border-radius:9px}.todo-view-tabs a.active{background:#EAF4FF;color:#0A84FF}.todo-view-tabs b{font-size:8px}
.todo-list{display:grid;gap:8px}.todo-card{display:grid;grid-template-columns:40px 1fr auto;gap:10px;padding:13px;border:1px solid #E5EDF4;background:#FBFDFF;border-radius:15px}.todo-card.priority-high{border-left:3px solid #FF5B57}.todo-card.is-done{opacity:.66}.todo-card.is-done .todo-title-line>strong{text-decoration:line-through}.todo-check{width:30px;height:30px;border-radius:10px;border:1.5px solid #A8BED0;background:#fff;color:#fff;font-weight:900;cursor:pointer}.is-done .todo-check{background:#2FCB91;border-color:#2FCB91}
.todo-title-line{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.todo-title-line>strong{font-size:13px}.todo-priority,.todo-due{font-size:8px;border-radius:999px;padding:3px 6px;font-weight:800}.todo-priority.high{background:#FFF0F0;color:#D54848}.todo-priority.normal{background:#EEF5FB;color:#557A9B}.todo-priority.low{background:#EDF9F5;color:#3D8D70}.todo-due.overdue{background:#FFF0F0;color:#D54848}.todo-due.today{background:#FFF5DF;color:#B07813}.todo-due.soon{background:#FFF8E9;color:#A87E2A}.todo-due.future{background:#EAF4FF;color:#3D78B0}.todo-due.none,.todo-due.done{background:#F0F3F6;color:#7A8998}
.todo-card-content>p{font-size:10px;color:#6F8295;line-height:1.5;margin:7px 0}.todo-meta{display:flex;gap:8px;flex-wrap:wrap;font-size:8.5px;color:#92A0AE;margin-top:8px}.todo-actions{display:flex;gap:3px}.todo-actions form{display:inline}
.todo-empty{text-align:center;padding:45px 20px;color:#8191A3}.todo-empty>div{font-size:33px}.todo-empty strong,.todo-empty span{display:block}.todo-empty strong{font-size:12px;margin-top:8px}.todo-empty span{font-size:9px;margin-top:3px}
.todo-side{display:grid;gap:12px}.todo-side-panel{padding:14px}.todo-side-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.todo-side-stats div{text-align:center;background:#F5F9FC;border-radius:10px;padding:10px}.todo-side-stats strong,.todo-side-stats span{display:block}.todo-side-stats strong{font-size:17px;color:#0A84FF}.todo-side-stats span{font-size:8px;color:#8595A6}.todo-people{display:grid;gap:7px;margin-top:11px}.todo-people a{display:flex;align-items:center;gap:8px;background:#F7FAFD;border-radius:10px;padding:8px}.todo-people strong{font-size:9px}.mini-avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#63B9FF,#0A84FF);color:#fff;display:grid;place-items:center;font-size:9px;font-weight:800}
.todo-modal-card{width:min(660px,100%)}.assignee-fieldset{border:1px solid #E2EBF3;border-radius:12px;padding:11px}.assignee-fieldset legend{font-size:9px;color:#6B8197;padding:0 4px}.assignee-options{display:flex;gap:8px;flex-wrap:wrap}.assignee-options label{display:flex!important;align-items:center;gap:6px!important;background:#F7FAFD;border:1px solid #E7EEF5;border-radius:999px;padding:6px 9px!important;cursor:pointer}.assignee-options input{width:auto!important}.assignee-options strong{font-size:9px}
.theme-dark .todo-summary-card{background:#0D2337;border-color:#1C3B57}.theme-dark .todo-filterbar{border-color:#173149}.theme-dark .todo-filterbar input,.theme-dark .todo-filterbar select{background:#0C2135;border-color:#1C3C58;color:#ECF4FB}.theme-dark .todo-view-tabs a.active{background:#103253;color:#64B8FF}.theme-dark .todo-card{background:#0C2135;border-color:#193A56}.theme-dark .todo-check{background:#0B1B2A;border-color:#55748F}.theme-dark .is-done .todo-check{background:#249B71;border-color:#249B71}.theme-dark .todo-side-stats div,.theme-dark .todo-people a{background:#10283E}.theme-dark .assignee-fieldset{border-color:#1D3A54}.theme-dark .assignee-options label{background:#10283E;border-color:#1D3A54}
@media(max-width:1050px){.todo-grid{grid-template-columns:1fr}.todo-side{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.todo-filterbar{grid-template-columns:1fr 1fr}.todo-search{grid-column:1/3}.todo-side{grid-template-columns:1fr}}
@media(max-width:540px){.todo-summary{grid-template-columns:1fr 1fr}.todo-header{display:grid}.todo-filterbar{grid-template-columns:1fr}.todo-search{grid-column:auto}.todo-card{grid-template-columns:38px 1fr}.todo-actions{grid-column:2;justify-content:flex-end}.todo-meta{display:grid;gap:3px}}


/* =========================================================
   V14 – Family + Personal Files
   ========================================================= */
.files-v14{width:min(1320px,100%);margin:0 auto}.files-header{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px}.files-header h1{margin:0}.files-header p{font-size:11px;color:#8191A3;margin:4px 0 0}.files-header-actions{display:flex;gap:8px}
.storage-scope-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:13px}.storage-scope-tabs a{display:flex;gap:10px;align-items:center;background:rgba(255,255,255,.75);border:1px solid #E2ECF4;border-radius:16px;padding:12px 14px}.storage-scope-tabs a.active{border-color:#7BBBF5;box-shadow:0 0 0 3px rgba(10,132,255,.06);background:#F8FCFF}.scope-icon{width:38px;height:38px}.scope-icon svg{width:100%;height:100%}.storage-scope-tabs strong,.storage-scope-tabs small{display:block}.storage-scope-tabs strong{font-size:11px}.storage-scope-tabs small{font-size:8px;color:#8494A6;margin-top:2px}
.files-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.breadcrumbs{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:9px;color:#6F849A}.breadcrumbs a{color:#397DBE;font-weight:700}.files-search{position:relative;width:min(300px,100%)}.files-search span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#8EA1B3}.files-search input{width:100%;border:1px solid #DDE7F0;background:#FBFDFF;border-radius:10px;padding:9px 10px 9px 29px}
.files-grid-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px;align-items:start}.files-panel{padding:16px;min-height:420px}.files-list-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:13px}.files-list-head h2{margin:0;font-size:14px}.files-list-head p{font-size:8px;color:#8B99A8;margin:3px 0}.scope-privacy{font-size:8px;font-weight:800;border-radius:999px;padding:5px 8px}.scope-privacy.family{background:#EAF4FF;color:#3D7CB7}.scope-privacy.personal{background:#F1ECFF;color:#7656B5}
.folder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.folder-card{border:1px solid #E6EEF5;background:#FBFDFF;border-radius:13px;padding:10px;display:grid;grid-template-columns:1fr auto;gap:5px;align-items:center}.folder-open{display:flex;align-items:center;gap:9px;min-width:0}.folder-glyph{width:34px;height:30px;border-radius:8px;background:linear-gradient(180deg,#7DC8FF,#3C92E7);color:white;display:grid;place-items:center;font-size:16px}.folder-open strong,.folder-open small{display:block}.folder-open strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-open small{font-size:8px;color:#8A99AA;margin-top:2px}.folder-actions{display:flex;gap:2px}.folder-actions form{display:inline}
.file-table-wrap{overflow:auto;border:1px solid #E7EEF5;border-radius:12px}.file-table{width:100%;min-width:690px;border-collapse:collapse;background:#FBFDFF}.file-table th{font-size:8px;color:#8493A4;text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:9px 10px;background:#F4F8FB}.file-table td{font-size:9px;color:#64788D;padding:10px;border-top:1px solid #EDF2F6}.file-name-link{display:flex;gap:9px;align-items:center}.file-name-link>span{font-size:21px}.file-name-link strong,.file-name-link small{display:block}.file-name-link strong{font-size:10px;color:#21384F}.file-name-link small{font-size:8px;color:#8B99A9;margin-top:2px}.file-actions{display:flex;gap:3px}.file-actions form{display:inline}
.files-empty{text-align:center;padding:60px 20px;color:#8392A3}.empty-files-icon{display:inline-block;width:65px;height:65px}.empty-files-icon svg{width:100%;height:100%}.files-empty strong,.files-empty span{display:block}.files-empty strong{font-size:12px;margin-top:8px}.files-empty span{font-size:9px;margin-top:3px}
.files-side{display:grid;gap:11px}.file-side-card{padding:14px}.storage-big-number{font-size:27px;font-weight:800;color:#0A84FF;margin-top:12px}.file-side-card>p{font-size:8px;color:#8595A6;line-height:1.5}.privacy-info,.api-ready{display:grid;grid-template-columns:38px 1fr;gap:10px}.privacy-info>span,.api-ready>span{width:36px;height:36px;border-radius:11px;background:#EAF4FF;display:grid;place-items:center}.privacy-info strong,.api-ready strong{font-size:9px}.privacy-info p,.api-ready p{font-size:8px;color:#8191A3;line-height:1.5;margin:3px 0 0}
.file-modal{width:min(620px,100%)}.big-dropzone{border:1.5px dashed #BFD4E6!important;border-radius:16px!important;padding:28px!important;text-align:center!important;background:#F8FBFD!important;cursor:pointer}.big-dropzone>span,.big-dropzone>strong,.big-dropzone>small{display:block}.big-dropzone>span{font-size:30px;color:#0A84FF}.big-dropzone>strong{font-size:11px;margin-top:5px}.big-dropzone>small{font-size:8px;color:#8494A5;margin:4px 0 12px}.big-dropzone input{font-size:9px!important}.upload-scope-note{font-size:9px;color:#678096;background:#F2F7FB;border-radius:9px;padding:8px 10px}
.file-detail-card{width:min(820px,100%)}.file-detail-top{display:grid;grid-template-columns:48px 1fr auto;gap:11px;align-items:center}.file-detail-icon{font-size:38px}.file-detail-meta strong,.file-detail-meta span,.file-detail-meta small{display:block}.file-detail-meta strong{font-size:12px}.file-detail-meta span{font-size:9px;color:#72879B;margin-top:3px}.file-detail-meta small{font-size:7.5px;color:#98A6B4;margin-top:5px;word-break:break-all}.file-preview{height:420px;margin-top:14px;border:1px solid #E0E9F1;border-radius:13px;overflow:hidden;background:#F3F7FA}.file-preview iframe{width:100%;height:100%;border:0}.version-section{margin-top:15px}.version-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #EDF2F6}.version-row strong,.version-row small{display:block}.version-row strong{font-size:9px}.version-row small{font-size:7.5px;color:#8595A6;margin-top:2px}.new-version-form{margin-top:13px;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.new-version-form label{font-size:9px;color:#657C91}

/* Dark */
.theme-dark .storage-scope-tabs a,.theme-dark .folder-card,.theme-dark .file-table{background:#0C2135;border-color:#193A56}.theme-dark .storage-scope-tabs a.active{background:#102D48;border-color:#337AB6}.theme-dark .files-search input{background:#0C2135;border-color:#1C3C58;color:#ECF4FB}.theme-dark .file-table-wrap{border-color:#193A56}.theme-dark .file-table th{background:#10283E;color:#91A8BC}.theme-dark .file-table td,.theme-dark .version-row{border-color:#193A56}.theme-dark .file-name-link strong,.theme-dark .folder-open strong{color:#EDF5FC}.theme-dark .big-dropzone{background:#0C2135!important;border-color:#31526D!important}.theme-dark .upload-scope-note{background:#10283E;color:#A7BDD0}.theme-dark .file-preview{background:#081827;border-color:#193A56}.theme-dark .privacy-info>span,.theme-dark .api-ready>span{background:#113552}

@media(max-width:1050px){.files-grid-layout{grid-template-columns:1fr}.files-side{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.folder-grid{grid-template-columns:1fr 1fr}.files-side{grid-template-columns:1fr}.files-toolbar{display:grid}.files-search{width:100%}}
@media(max-width:540px){.files-header{display:grid}.files-header-actions{justify-content:flex-start}.storage-scope-tabs{grid-template-columns:1fr}.folder-grid{grid-template-columns:1fr}.file-detail-top{grid-template-columns:45px 1fr}.file-detail-top>.primary-btn{grid-column:2}.file-preview{height:300px}.new-version-form{grid-template-columns:1fr}}


/* =========================================================
   V15 – Personal profile pictures
   ========================================================= */
.avatar-has-image{overflow:hidden;padding:0!important}
.avatar-has-image img{width:100%;height:100%;object-fit:cover;display:block}
.settings-avatar-wrap{display:grid;place-items:center}
.settings-avatar{
  width:70px;height:70px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.35);
  font-size:24px;font-weight:800;color:#fff;overflow:hidden
}
.settings-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.profile-picture-card{overflow:hidden}
.profile-picture-layout{display:grid;grid-template-columns:110px 1fr;gap:22px;align-items:center}
.profile-picture-preview{display:grid;place-items:center}
.profile-picture-large{
  width:104px;height:104px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(135deg,#5EB4FF,#0A84FF);color:#fff;
  font-size:32px;font-weight:800;box-shadow:0 12px 28px rgba(10,132,255,.20);
  overflow:hidden
}
.profile-picture-large img{width:100%;height:100%;object-fit:cover;display:block}
.profile-picture-actions{display:grid;gap:10px}
.profile-picture-actions>div>strong,.profile-picture-actions>div>small{display:block}
.profile-picture-actions>div>strong{font-size:12px}
.profile-picture-actions>div>small{font-size:9px;color:#8595A6;line-height:1.5;margin-top:3px}
.avatar-upload-form{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:center}
.avatar-upload-form input[type=file]{
  border:1px solid #DCE6F0;background:#FBFDFF;border-radius:10px;padding:9px;font-size:9px;color:#64798F
}
.mini-avatar.avatar-has-image{display:inline-flex}
.theme-dark .avatar-upload-form input[type=file]{background:#0C2135;border-color:#1C3C58;color:#C7D8E7}
@media(max-width:620px){
  .profile-picture-layout{grid-template-columns:1fr;justify-items:start}
  .avatar-upload-form{grid-template-columns:1fr}
}


/* V15.1 – due To-do count in global navigation */
.side-nav a b.todo-due-badge{
  background:#FF5B57;
  color:#fff;
  box-shadow:0 4px 10px rgba(255,91,87,.22);
}
.theme-dark .side-nav a b.todo-due-badge{
  background:#FF6B66;
  color:#fff;
}


/* V15.2 – immediate theme preview/selection */
.appearance-choice{
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease;
}
.appearance-choice:hover{
  transform:translateY(-1px);
}
.appearance-choice.selected{
  border-color:#0A84FF !important;
  box-shadow:0 0 0 3px rgba(10,132,255,.16) !important;
}
.theme-dark .appearance-choice.selected{
  border-color:#36A3FF !important;
  box-shadow:0 0 0 3px rgba(54,163,255,.14) !important;
}


/* V15.3 – theme auto-save */
.theme-form .appearance-options{margin-bottom:0}
.appearance-choice{cursor:pointer}
.appearance-choice input[type="radio"]{cursor:pointer}


/* =========================================================
   V15.4 – Files Grid/List view switch
   ========================================================= */
.files-toolbar-right{display:flex;align-items:center;gap:8px}
.files-view-switch{display:flex;align-items:center;background:rgba(255,255,255,.72);border:1px solid #DDE7F0;border-radius:10px;padding:3px;gap:2px}
.files-view-switch button{width:34px;height:30px;border:0;background:transparent;border-radius:7px;display:grid;place-items:center;cursor:pointer;color:#6C849A}
.files-view-switch button.active{background:#0A84FF;color:#fff;box-shadow:0 5px 12px rgba(10,132,255,.2)}
.view-grid-icon{width:15px;height:15px;display:grid;grid-template-columns:1fr 1fr;gap:2px}.view-grid-icon i{border-radius:1.5px;background:currentColor}
.view-list-icon{width:16px;height:14px;display:grid;gap:2px}.view-list-icon i{height:3px;border-radius:2px;background:currentColor}

.file-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}
.file-card-grid-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px;background:#FBFDFF;border:1px solid #E6EEF5;border-radius:13px;padding:10px}
.file-card-open{display:flex;align-items:center;gap:9px;min-width:0}.file-card-icon{font-size:27px;flex:0 0 auto}.file-card-open strong,.file-card-open small{display:block}.file-card-open strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#21384F}.file-card-open small{font-size:8px;color:#8999AA;margin-top:2px}.file-card-actions{display:flex;gap:2px}.file-card-actions form{display:inline}

.explorer-list-wrap{overflow:auto;border:1px solid #E7EEF5;border-radius:12px}.explorer-list-table{width:100%;min-width:720px;border-collapse:collapse;background:#FBFDFF}.explorer-list-table th{font-size:8px;color:#8393A4;text-transform:uppercase;letter-spacing:.04em;text-align:left;background:#F4F8FB;padding:9px 11px}.explorer-list-table td{font-size:9px;color:#65798D;padding:9px 11px;border-top:1px solid #EDF2F6;vertical-align:middle}.explorer-list-table tbody tr:hover{background:#F4F9FD}.explorer-name{display:flex;align-items:center;gap:9px;min-width:0}.explorer-name strong{font-size:10px;color:#21384F}.explorer-name small{display:block;font-size:7.5px;color:#8B9AAA;margin-top:1px}.explorer-folder-icon{width:27px;height:24px;border-radius:7px;background:linear-gradient(180deg,#7DC8FF,#3C92E7);display:grid;place-items:center;color:#fff}.explorer-file-icon{width:27px;text-align:center;font-size:20px}.explorer-actions{display:flex;gap:2px;justify-content:flex-end}.explorer-actions form{display:inline}

.theme-dark .files-view-switch{background:#0C2135;border-color:#1C3C58}.theme-dark .file-card-grid-item,.theme-dark .explorer-list-table{background:#0C2135;border-color:#193A56}.theme-dark .file-card-open strong,.theme-dark .explorer-name strong{color:#EDF5FC}.theme-dark .explorer-list-wrap{border-color:#193A56}.theme-dark .explorer-list-table th{background:#10283E;color:#91A8BC}.theme-dark .explorer-list-table td{border-color:#193A56;color:#AFC2D4}.theme-dark .explorer-list-table tbody tr:hover{background:#10283E}

@media(max-width:900px){.file-card-grid{grid-template-columns:1fr 1fr}.files-toolbar-right{width:100%}.files-search{flex:1}}
@media(max-width:600px){.file-card-grid{grid-template-columns:1fr}.files-toolbar-right{display:grid;grid-template-columns:1fr auto}.files-view-switch{justify-self:end}}


/* =========================================================
   V15.5 – Global search
   ========================================================= */
.round-btn{display:grid;place-items:center;text-decoration:none}
.global-search-v155{width:min(1180px,100%);margin:0 auto}
.global-search-header{margin-bottom:14px}.global-search-header h1{margin:0}.global-search-header p{font-size:10px;color:#8292A4;margin:4px 0 0}.search-title-icon{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#63B9FF,#0A84FF);color:#fff;display:grid;place-items:center;font-size:22px;box-shadow:0 9px 20px rgba(10,132,255,.18)}
.global-search-box-wrap{margin-bottom:15px}.global-search-form{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;background:rgba(255,255,255,.87);border:1px solid #DDE8F1;border-radius:17px;padding:8px 9px 8px 14px;box-shadow:0 12px 32px rgba(50,88,130,.07)}.global-search-form>span{font-size:19px;color:#7A91A6}.global-search-form input{border:0;background:transparent;outline:none;font-size:15px;color:#193047;padding:8px 2px;min-width:0}.global-search-form input::placeholder{color:#9AA8B6}.search-clear{width:28px;height:28px;border-radius:8px;background:#EFF4F8;color:#71869A;display:grid;place-items:center;font-size:16px}
.search-start{text-align:center;padding:52px 25px}.search-start-icon{width:58px;height:58px;border-radius:18px;background:#EAF4FF;color:#0A84FF;display:grid;place-items:center;margin:0 auto;font-size:26px}.search-start strong{display:block;font-size:14px;margin-top:11px}.search-start p{font-size:9px;color:#8393A5;max-width:500px;margin:5px auto 0;line-height:1.55}.search-scope-chips{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin-top:16px}.search-scope-chips span{font-size:8px;padding:5px 8px;border-radius:999px;background:#F1F6FA;color:#647D93}
.search-result-summary{font-size:9px;color:#7E8FA1;margin:0 2px 9px}.search-result-summary strong{color:#0A84FF;font-size:12px}.global-search-results{display:grid;gap:11px}.search-group{padding:14px}.search-group-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.search-group-head h2{font-size:12px;margin:0}.search-group-head span{font-size:8px;color:#8494A5}
.search-result-list{display:grid}.search-result-row{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:10px 7px;border-top:1px solid #EDF2F6;border-radius:9px}.search-result-row:first-child{border-top:0}.search-result-row:hover{background:#F5F9FC}.search-result-icon{width:34px;height:34px;border-radius:10px;background:#EDF5FC;display:grid;place-items:center;font-size:18px}.search-result-content{min-width:0}.search-result-content strong,.search-result-content small{display:block}.search-result-content strong{font-size:10.5px;color:#21384F}.search-result-content small{font-size:8px;color:#8091A3;margin-top:2px}.search-result-content p{font-size:8.5px;color:#71869A;margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-arrow{color:#91A5B6;font-size:18px}
.theme-dark .global-search-form{background:#0D2337;border-color:#1C3B57}.theme-dark .global-search-form input{color:#F0F6FC}.theme-dark .search-clear{background:#142D43;color:#ABC0D2}.theme-dark .search-start-icon,.theme-dark .search-result-icon{background:#103453}.theme-dark .search-scope-chips span{background:#10283E;color:#AFC3D5}.theme-dark .search-result-row{border-color:#19364F}.theme-dark .search-result-row:hover{background:#10283E}.theme-dark .search-result-content strong{color:#EDF5FC}.theme-dark .search-result-content small,.theme-dark .search-result-content p{color:#93A9BC}
@media(max-width:620px){.global-search-form{grid-template-columns:auto 1fr auto}.global-search-form .primary-btn{grid-column:1/4}.search-result-row{grid-template-columns:34px 1fr auto}}

/* V15.6 – Logo links back to overview */
.brand-home-link{
    text-decoration:none;
    color:inherit;
    cursor:pointer;
}
.brand-home-link strong,
.brand-home-link small{
    color:inherit;
}


/* =========================================================
   V16 – Contracts
   ========================================================= */
.contracts-v16{width:min(1320px,100%);margin:0 auto}.contracts-header{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px}.contracts-header h1{margin:0}.contracts-header p{font-size:10px;color:#8191A3;margin:4px 0 0}
.contracts-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:13px}.contract-summary-card{background:rgba(255,255,255,.82);border:1px solid #E3EDF5;border-radius:15px;padding:13px}.contract-summary-card strong,.contract-summary-card span{display:block}.contract-summary-card strong{font-size:23px}.contract-summary-card span{font-size:8px;color:#8393A4;margin-top:3px}.contract-summary-card.active strong{color:#20A577}.contract-summary-card.deadline strong{color:#E29A24}.contract-summary-card.ended strong{color:#7C8B9A}.contract-summary-card.total strong{color:#0A84FF}
.contracts-panel{padding:16px}.contracts-filterbar{display:grid;grid-template-columns:minmax(210px,1fr) 170px 175px 150px auto;gap:8px;align-items:center;margin-bottom:12px}.contracts-filterbar input,.contracts-filterbar select{border:1px solid #DDE7F0;background:#FBFDFF;color:#1D2D42;border-radius:10px;padding:9px 10px}.contracts-search{position:relative}.contracts-search span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#8EA1B3}.contracts-search input{width:100%;padding-left:29px}
.contracts-table-wrap{overflow:auto;border:1px solid #E7EEF5;border-radius:12px}.contracts-table{width:100%;min-width:1000px;border-collapse:collapse;background:#FBFDFF}.contracts-table th{font-size:8px;text-transform:uppercase;letter-spacing:.04em;color:#8493A4;text-align:left;padding:9px 10px;background:#F4F8FB}.contracts-table td{font-size:9px;color:#63788D;padding:10px;border-top:1px solid #EDF2F6;vertical-align:middle}.contract-open-link{border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:#21384F}.contract-open-link strong,.contract-open-link small{display:block}.contract-open-link strong{font-size:10.5px}.contract-open-link small{font-size:8px;color:#8999A9;margin-top:2px}.contract-cost-interval{display:block;font-size:8px;color:#8B9AAA;margin-top:2px}.contract-date-cell strong,.contract-date-cell small{display:block}.contract-date-cell small{font-size:8px;color:#8B9AAA;margin-top:2px}.responsible-pill{font-size:8px;padding:4px 7px;border-radius:999px;background:#EAF4FF;color:#3D79B1}
.contract-state{display:inline-block;font-size:8px;font-weight:800;border-radius:999px;padding:4px 7px}.contract-state.active{background:#E9F8F2;color:#238963}.contract-state.notice-soon{background:#FFF5E2;color:#B77B18}.contract-state.notice-overdue{background:#FFF0F0;color:#C24646}.contract-state.cancelled{background:#F0ECFF;color:#7255AA}.contract-state.ended{background:#EFF3F6;color:#778695}.contract-file-count{display:block;font-size:8px;color:#7C90A4;margin-top:4px}.contract-actions{display:flex;gap:3px}.contract-actions form{display:inline}
.contracts-empty{text-align:center;padding:45px 20px}.contracts-empty>span{font-size:31px}.contracts-empty strong,.contracts-empty small{display:block}.contracts-empty strong{font-size:11px;margin-top:7px}.contracts-empty small{font-size:8px;color:#8797A7;margin-top:3px}.contract-categories{margin-top:12px;padding:14px}
.contract-modal-card{width:min(760px,100%)}.contract-check{display:flex!important;align-items:center;gap:8px!important}.contract-check input{width:auto!important}.cost-grid{grid-template-columns:1fr 110px}.contract-file-upload{display:grid!important;grid-template-columns:38px 1fr;gap:9px!important;align-items:center;border:1px dashed #C7D7E5;border-radius:12px;padding:11px!important;background:#F8FBFD}.contract-file-upload>span{font-size:22px}.contract-file-upload strong,.contract-file-upload small{display:block}.contract-file-upload strong{font-size:9px}.contract-file-upload small{font-size:8px;color:#8393A4;margin-top:2px}.contract-file-upload input{grid-column:2;border:0!important;padding:3px 0!important;background:transparent!important;font-size:8px!important}
.contract-detail-card{width:min(800px,100%)}.contract-detail-status{margin-bottom:12px}.contract-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.contract-detail-grid>div{background:#F7FAFD;border:1px solid #E7EEF5;border-radius:10px;padding:10px}.contract-detail-grid small,.contract-detail-grid strong{display:block}.contract-detail-grid small{font-size:8px;color:#8696A7;margin-bottom:3px}.contract-detail-grid strong{font-size:10px}.contract-note{margin-top:10px;background:#F7FAFD;border-radius:10px;padding:11px}.contract-note small{font-size:8px;color:#8797A8}.contract-note p{font-size:9px;line-height:1.5;margin:3px 0 0}.contract-linked-files{margin-top:16px}.contract-file-row{display:grid;grid-template-columns:34px 1fr auto 30px;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #EDF2F6}.contract-file-row>span{font-size:20px}.contract-file-row strong,.contract-file-row small{display:block}.contract-file-row strong{font-size:9px}.contract-file-row small{font-size:8px;color:#8797A8;margin-top:2px}.contract-file-row form{display:inline}.contract-files-empty{font-size:8px;color:#8797A8;padding:11px 0}
.theme-dark .contract-summary-card{background:#0D2337;border-color:#1C3B57}.theme-dark .contracts-filterbar input,.theme-dark .contracts-filterbar select{background:#0C2135;border-color:#1C3C58;color:#ECF4FB}.theme-dark .contracts-table-wrap{border-color:#193A56}.theme-dark .contracts-table{background:#0C2135}.theme-dark .contracts-table th{background:#10283E;color:#91A8BC}.theme-dark .contracts-table td{border-color:#193A56;color:#AFC2D4}.theme-dark .contract-open-link{color:#EDF5FC}.theme-dark .contract-file-upload,.theme-dark .contract-detail-grid>div,.theme-dark .contract-note{background:#0C2135;border-color:#193A56}.theme-dark .contract-file-row{border-color:#193A56}
@media(max-width:850px){.contracts-summary{grid-template-columns:1fr 1fr}.contracts-filterbar{grid-template-columns:1fr 1fr}.contracts-search{grid-column:1/3}}
@media(max-width:560px){.contracts-header{display:grid}.contracts-filterbar{grid-template-columns:1fr}.contracts-search{grid-column:auto}.contract-detail-grid{grid-template-columns:1fr}.contracts-summary{grid-template-columns:1fr 1fr}}


/* =========================================================
   V17 – Notes
   ========================================================= */
.notes-v17{width:min(1240px,100%);margin:0 auto}.notes-header{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:12px}.notes-header h1{margin:0}.notes-header p{font-size:10px;color:#8191A3;margin:4px 0 0}
.notes-scope-tabs{display:flex;gap:6px;margin-bottom:10px}.notes-scope-tabs a{font-size:9px;font-weight:700;padding:8px 11px;border-radius:10px;background:rgba(255,255,255,.68);border:1px solid #E0EAF2;color:#708499}.notes-scope-tabs a.active{background:#0A84FF;color:#fff;border-color:#0A84FF;box-shadow:0 6px 15px rgba(10,132,255,.18)}
.notes-toolbar{padding:10px;margin-bottom:11px}.notes-toolbar form{display:grid;grid-template-columns:1fr 180px auto;gap:8px}.notes-toolbar input,.notes-toolbar select{border:1px solid #DDE7F0;background:#FBFDFF;color:#1D2D42;border-radius:10px;padding:9px 10px}.notes-search{position:relative}.notes-search span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#8EA1B3}.notes-search input{width:100%;padding-left:29px}
.notes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.note-card{position:relative;background:rgba(255,255,255,.84);border:1px solid #E4EDF5;border-radius:15px;padding:12px;min-height:175px;display:flex;flex-direction:column;box-shadow:0 8px 25px rgba(57,89,120,.04)}.note-card.pinned{border-color:#BBDCF9;box-shadow:0 0 0 2px rgba(10,132,255,.06)}.note-card-top{display:flex;justify-content:space-between;align-items:center}.note-category{font-size:8px;color:#66819A;background:#F0F6FA;padding:4px 7px;border-radius:999px}.note-pin{border:0;background:transparent;color:#F0A92F;font-size:17px;cursor:pointer}.note-card-open{display:block;flex:1;padding:8px 1px;text-decoration:none}.note-card-open h2{font-size:12px;color:#20384F;margin:0 0 6px}.note-card-open p{font-size:9px;line-height:1.55;color:#6F8396;margin:0;white-space:pre-line}.note-card-meta{display:flex;gap:7px;flex-wrap:wrap;font-size:7.5px;color:#8A9AAA;border-top:1px solid #EDF2F6;padding-top:8px}.note-card-actions{position:absolute;right:8px;bottom:6px;display:flex;gap:2px}.note-card-actions form{display:inline}
.notes-empty{text-align:center;padding:48px 25px}.notes-empty>span{font-size:32px}.notes-empty strong,.notes-empty small{display:block}.notes-empty strong{font-size:12px;margin-top:7px}.notes-empty small{font-size:9px;color:#8595A5;margin:4px auto 14px}.note-category-panel{padding:14px;margin-top:12px}
.note-modal-card{width:min(720px,100%)}.note-modal-card textarea{resize:vertical;min-height:190px;line-height:1.5}.note-detail-card{width:min(760px,100%)}.note-detail-meta{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.note-detail-meta span{font-size:8px;padding:4px 7px;border-radius:999px;background:#EFF5F9;color:#6D8397}.note-detail-body{font-size:10px;line-height:1.7;color:#31495F;background:#F8FBFD;border:1px solid #E7EEF5;border-radius:12px;padding:16px;min-height:100px;white-space:normal}
.theme-dark .notes-scope-tabs a{background:#0D2337;border-color:#1C3B57;color:#AFC3D5}.theme-dark .notes-scope-tabs a.active{background:#0A84FF;color:#fff}.theme-dark .notes-toolbar input,.theme-dark .notes-toolbar select{background:#0C2135;border-color:#1C3C58;color:#EDF5FC}.theme-dark .note-card{background:#0D2337;border-color:#1C3B57}.theme-dark .note-card.pinned{border-color:#28699D}.theme-dark .note-category,.theme-dark .note-detail-meta span{background:#10283E;color:#AFC3D5}.theme-dark .note-card-open h2{color:#EDF5FC}.theme-dark .note-card-open p{color:#A8BACB}.theme-dark .note-card-meta{border-color:#193A56}.theme-dark .note-detail-body{background:#0C2135;border-color:#193A56;color:#DDE9F3}
@media(max-width:900px){.notes-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.notes-header{display:grid}.notes-grid{grid-template-columns:1fr}.notes-toolbar form{grid-template-columns:1fr}.notes-scope-tabs{display:grid;grid-template-columns:1fr 1fr}}


/* V17.1 – per-user default module start views */
.default-view-settings{display:grid;gap:9px}
.default-view-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:16px;align-items:center;border:1px solid #E5EDF4;background:#F8FBFD;border-radius:13px;padding:12px}
.default-view-label{display:flex;gap:10px;align-items:center;min-width:0}
.default-view-icon{width:38px;height:38px;flex:0 0 38px}.default-view-icon svg{width:100%;height:100%}
.default-view-label strong,.default-view-label small{display:block}.default-view-label strong{font-size:10px}.default-view-label small{font-size:8px;color:#8393A4;margin-top:2px;line-height:1.45}
.default-view-row select{width:100%;border:1px solid #DCE6F0;background:#fff;color:#21384F;border-radius:10px;padding:9px 10px;font-size:9px}
.theme-dark .default-view-row{background:#0C2135;border-color:#193A56}.theme-dark .default-view-row select{background:#10283E;border-color:#1C3C58;color:#EDF5FC}
@media(max-width:620px){.default-view-row{grid-template-columns:1fr}}


/* V17.2 – Contract deadline badge in global navigation */
.side-nav a b.contract-due-badge{
  background:#F6B93B;
  color:#fff;
  box-shadow:0 4px 10px rgba(246,185,59,.24);
}
.theme-dark .side-nav a b.contract-due-badge{
  background:#FFC54D;
  color:#182536;
}


/* =========================================================
   V18 – Cards / IDs
   ========================================================= */
.cards-v18{width:min(1240px,100%);margin:0 auto}.cards-header{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:12px}.cards-header h1{margin:0}.cards-header p{font-size:10px;color:#8191A3;margin:4px 0 0}
.cards-scope-tabs{display:flex;gap:6px;margin-bottom:10px}.cards-scope-tabs a{font-size:9px;font-weight:700;padding:8px 11px;border-radius:10px;background:rgba(255,255,255,.68);border:1px solid #E0EAF2;color:#708499}.cards-scope-tabs a.active{background:#0A84FF;color:#fff;border-color:#0A84FF;box-shadow:0 6px 15px rgba(10,132,255,.18)}
.cards-toolbar{padding:10px;margin-bottom:11px}.cards-toolbar form{display:grid;grid-template-columns:minmax(220px,1fr) 175px 160px auto;gap:8px}.cards-toolbar input,.cards-toolbar select{border:1px solid #DDE7F0;background:#FBFDFF;color:#1D2D42;border-radius:10px;padding:9px 10px}.cards-search{position:relative}.cards-search span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#8EA1B3}.cards-search input{width:100%;padding-left:29px}
.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.id-card{background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(243,249,254,.88));border:1px solid #DCE9F3;border-radius:18px;padding:13px;box-shadow:0 10px 28px rgba(44,84,124,.06);min-height:210px;display:flex;flex-direction:column}.id-card.urgent{border-color:#F3B4B2}.id-card.soon{border-color:#F2D398}.id-card-head{display:flex;justify-content:space-between;gap:7px;align-items:center}.id-card-category{font-size:8px;color:#667F95;background:#EFF6FA;padding:4px 7px;border-radius:999px}.id-card-state{font-size:7.5px;font-weight:800;border-radius:999px;padding:4px 7px}.id-card-state.valid{background:#E9F8F2;color:#238963}.id-card-state.soon{background:#FFF5E2;color:#B67A18}.id-card-state.urgent,.id-card-state.expired{background:#FFF0F0;color:#C24646}.id-card-state.none{background:#EFF3F6;color:#758595}
.id-card-open{flex:1;padding:14px 0 8px}.id-card-person{display:flex;align-items:center;gap:10px}.id-owner-avatar,.card-detail-avatar{border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#5EB4FF,#0A84FF);color:#fff;font-weight:800;overflow:hidden}.id-owner-avatar{width:43px;height:43px;font-size:14px}.id-owner-avatar img,.card-detail-avatar img{width:100%;height:100%;object-fit:cover}.id-card-person strong,.id-card-person small{display:block}.id-card-person strong{font-size:12px;color:#21384F}.id-card-person small{font-size:8px;color:#8797A8;margin-top:2px}.id-card-data{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}.id-card-data span{background:rgba(232,243,251,.7);border-radius:9px;padding:8px}.id-card-data small,.id-card-data strong{display:block}.id-card-data small{font-size:7px;color:#8494A5}.id-card-data strong{font-size:9px;color:#31495F;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.id-card-open p{font-size:8.5px;color:#71869A;line-height:1.45;margin:10px 1px 0}.id-card-footer{border-top:1px solid #E8EFF5;padding-top:8px;display:flex;align-items:center;gap:7px;font-size:8px;color:#7C90A2}.id-card-actions{margin-left:auto;display:flex;gap:2px}.id-card-actions form{display:inline}
.cards-empty{text-align:center;padding:50px 25px}.cards-empty>span{font-size:34px}.cards-empty strong,.cards-empty small{display:block}.cards-empty strong{font-size:12px;margin-top:8px}.cards-empty small{font-size:9px;color:#8494A5;margin:4px auto 14px}.card-category-panel{padding:14px;margin-top:12px}
.card-modal-card{width:min(720px,100%)}.card-image-uploads{display:grid;grid-template-columns:1fr 1fr;gap:8px}.card-image-uploads label{border:1px dashed #C8D8E5;border-radius:12px;padding:10px!important;background:#F8FBFD}.card-image-uploads span{display:block;font-size:9px;font-weight:700;margin-bottom:7px}
.card-detail-card{width:min(760px,100%)}.card-detail-hero{display:grid;grid-template-columns:72px 1fr;gap:13px;align-items:center;margin-bottom:13px}.card-detail-avatar{width:68px;height:68px;font-size:22px}.card-detail-hero h3{font-size:14px;margin:5px 0 2px}.card-detail-hero p{font-size:8px;color:#8191A3;margin:0}.card-linked-files{margin-top:15px}
.theme-dark .cards-scope-tabs a{background:#0D2337;border-color:#1C3B57;color:#AFC3D5}.theme-dark .cards-scope-tabs a.active{background:#0A84FF;color:#fff}.theme-dark .cards-toolbar input,.theme-dark .cards-toolbar select{background:#0C2135;border-color:#1C3C58;color:#EDF5FC}.theme-dark .id-card{background:linear-gradient(145deg,#0D2337,#0A1F32);border-color:#1C3B57}.theme-dark .id-card-category,.theme-dark .id-card-data span{background:#10283E}.theme-dark .id-card-person strong,.theme-dark .id-card-data strong{color:#EDF5FC}.theme-dark .id-card-person small,.theme-dark .id-card-open p{color:#A8BACB}.theme-dark .id-card-footer{border-color:#193A56}.theme-dark .card-image-uploads label{background:#0C2135;border-color:#31526D}
@media(max-width:950px){.cards-grid{grid-template-columns:1fr 1fr}.cards-toolbar form{grid-template-columns:1fr 1fr}.cards-search{grid-column:1/3}}
@media(max-width:620px){.cards-header{display:grid}.cards-grid{grid-template-columns:1fr}.cards-toolbar form{grid-template-columns:1fr}.cards-search{grid-column:auto}.cards-scope-tabs{display:grid;grid-template-columns:1fr}.card-image-uploads{grid-template-columns:1fr}}


/* =========================================================
   V19 – Notification Center
   ========================================================= */
.notification-top-btn{position:relative}.notification-top-btn b{position:absolute;right:-4px;top:-4px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#FF5B57;color:#fff;font-size:8px;display:grid;place-items:center;box-shadow:0 3px 8px rgba(255,91,87,.25)}
.notifications-v19{width:min(1120px,100%);margin:0 auto}.notifications-header{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:13px}.notifications-header h1{margin:0}.notifications-header p{font-size:10px;color:#8191A3;margin:4px 0 0}.notification-title-icon{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#63B9FF,#0A84FF);display:grid;place-items:center;color:#fff;font-size:21px}.notification-header-actions{display:flex;gap:7px}.notification-header-actions form{display:inline}
.notification-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}.notification-summary-card{background:rgba(255,255,255,.82);border:1px solid #E4EDF5;border-radius:14px;padding:12px}.notification-summary-card strong,.notification-summary-card span{display:block}.notification-summary-card strong{font-size:22px}.notification-summary-card span{font-size:8px;color:#8393A4;margin-top:3px}.notification-summary-card.unread strong{color:#0A84FF}.notification-summary-card.urgent strong{color:#E6504D}.notification-summary-card.upcoming strong{color:#D99A28}.notification-summary-card.all strong{color:#6E8091}
.notification-filter-row{display:flex;align-items:center;gap:6px;margin-bottom:9px}.notification-filter-row>a{font-size:8px;font-weight:800;padding:6px 9px;border-radius:9px;color:#74889B}.notification-filter-row>a.active{background:#EAF4FF;color:#0A84FF}.notification-filter-row form{margin-left:auto}.link-button{border:0;background:transparent;color:#0A84FF;font-size:8px;cursor:pointer}
.notification-list-panel{padding:10px}.notification-row{display:grid;grid-template-columns:42px 1fr 82px 34px;gap:10px;align-items:center;padding:11px 8px;border-bottom:1px solid #EDF2F6;border-left:3px solid transparent}.notification-row:last-child{border-bottom:0}.notification-row.danger{border-left-color:#FF5B57}.notification-row.warning{border-left-color:#F1B43B}.notification-row.info{border-left-color:#4C9EF0}.notification-row.is-read{opacity:.72}.notification-row.is-dismissed{opacity:.45}.notification-module-icon{width:36px;height:36px;border-radius:11px;background:#F0F6FA;display:grid;place-items:center;font-size:19px}.notification-main{min-width:0}.notification-row-top{display:flex;align-items:center;gap:6px}.notification-row-top>span{font-size:7.5px;text-transform:uppercase;letter-spacing:.04em;color:#8797A7;font-weight:800}.notification-row-top i{font-style:normal;font-size:7px;background:#0A84FF;color:#fff;border-radius:999px;padding:2px 5px}.notification-main>strong{display:block;font-size:10.5px;color:#21384F;margin-top:2px}.notification-main p{font-size:8.5px;color:#71869A;margin:3px 0 0}.notification-date{font-size:8px;color:#8797A8;text-align:right}.notification-actions form{display:inline}.dismissed-label{font-size:7px;color:#8A99A8}.notification-empty{text-align:center;padding:48px 20px}.notification-empty>span{font-size:31px;color:#20A577}.notification-empty strong,.notification-empty small{display:block}.notification-empty strong{font-size:12px;margin-top:8px}.notification-empty small{font-size:8px;color:#8797A8;margin-top:3px}.notification-explainer{display:grid;grid-template-columns:36px 1fr;gap:10px;margin-top:11px;padding:13px}.notification-explainer>span{width:34px;height:34px;border-radius:10px;background:#EAF4FF;color:#0A84FF;display:grid;place-items:center}.notification-explainer strong{font-size:9px}.notification-explainer p{font-size:8px;color:#8191A3;line-height:1.55;margin:3px 0 0}
.notification-setting-list{display:grid;gap:8px}.notification-setting-row{display:grid!important;grid-template-columns:1fr auto;gap:14px!important;align-items:center;background:#F8FBFD;border:1px solid #E5EDF4;border-radius:12px;padding:11px!important;cursor:pointer}.notification-setting-row strong,.notification-setting-row small{display:block}.notification-setting-row strong{font-size:9.5px}.notification-setting-row small{font-size:8px;color:#8292A3;line-height:1.45;margin-top:2px}.notification-setting-row input{width:18px!important;height:18px!important}.notification-push-future{margin-top:10px}
.theme-dark .notification-summary-card{background:#0D2337;border-color:#1C3B57}.theme-dark .notification-filter-row>a.active{background:#103453;color:#64B8FF}.theme-dark .notification-row{border-color:#193A56}.theme-dark .notification-module-icon,.theme-dark .notification-explainer>span{background:#103453}.theme-dark .notification-main>strong{color:#EDF5FC}.theme-dark .notification-main p{color:#A8BACB}.theme-dark .notification-setting-row{background:#0C2135;border-color:#193A56}
@media(max-width:720px){.notifications-header{display:grid}.notification-summary{grid-template-columns:1fr 1fr}.notification-row{grid-template-columns:38px 1fr 30px}.notification-date{grid-column:2;text-align:left}.notification-actions{grid-column:3;grid-row:1/3}.notification-header-actions{flex-wrap:wrap}}


/* =========================================================
   V20 – Vehicles + central warranties
   ========================================================= */
.side-nav a b.vehicle-due-badge{background:#F6B93B;color:#fff;box-shadow:0 4px 10px rgba(246,185,59,.24)}
.theme-dark .side-nav a b.vehicle-due-badge{background:#FFC54D;color:#182536}
.vehicles-v20{width:min(1240px,100%);margin:0 auto}.vehicles-header{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:12px}.vehicles-header h1{margin:0}.vehicles-header p{font-size:10px;color:#8191A3;margin:4px 0 0}
.vehicles-toolbar{padding:10px;margin-bottom:11px}.vehicles-toolbar form{display:grid;grid-template-columns:minmax(220px,1fr) 150px 130px 150px auto;gap:8px}.vehicles-toolbar input,.vehicles-toolbar select{border:1px solid #DDE7F0;background:#FBFDFF;color:#1D2D42;border-radius:10px;padding:9px 10px}.vehicle-search{position:relative}.vehicle-search span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#8EA1B3}.vehicle-search input{width:100%;padding-left:29px}
.vehicles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.vehicle-card{background:rgba(255,255,255,.86);border:1px solid #E0EAF2;border-radius:17px;padding:12px;box-shadow:0 9px 26px rgba(48,84,118,.05);display:flex;flex-direction:column;min-height:230px}.vehicle-card-head{display:flex;justify-content:space-between;align-items:center;font-size:8px;color:#688096}.vehicle-status{font-style:normal;border-radius:999px;padding:4px 7px;font-size:7.5px;font-weight:800}.vehicle-status.active{background:#E9F8F2;color:#238963}.vehicle-status.stored{background:#FFF5E2;color:#AE791D}.vehicle-status.sold{background:#EFF3F6;color:#738495}
.vehicle-open{flex:1;padding:12px 0}.vehicle-identity{display:flex;gap:10px;align-items:center}.vehicle-glyph,.vehicle-detail-glyph{display:grid;place-items:center;background:linear-gradient(135deg,#DFF2FF,#B9DFFF);border-radius:14px}.vehicle-glyph{width:48px;height:48px;font-size:25px}.vehicle-identity h2{font-size:12px;color:#21384F;margin:0}.vehicle-identity p{font-size:8px;color:#8393A4;margin:3px 0 0}.vehicle-facts{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:13px}.vehicle-facts span{background:#F5F9FC;border-radius:9px;padding:8px}.vehicle-facts small,.vehicle-facts strong{display:block}.vehicle-facts small{font-size:7px;color:#8797A8}.vehicle-facts strong{font-size:9px;color:#31495F;margin-top:2px}.vehicle-next{margin-top:10px;border-radius:9px;padding:8px}.vehicle-next small,.vehicle-next strong{display:block}.vehicle-next small{font-size:7px}.vehicle-next strong{font-size:8.5px;margin-top:2px}.vehicle-next.none{background:#F0F3F6;color:#778796}.vehicle-next.ok{background:#EAF4FF;color:#397BB8}.vehicle-next.info{background:#EEF6FF;color:#397BB8}.vehicle-next.warning{background:#FFF5E2;color:#AE791D}.vehicle-next.danger{background:#FFF0F0;color:#C24646}.vehicle-footer{border-top:1px solid #E8EFF5;padding-top:8px;display:flex;align-items:center;gap:7px;font-size:8px;color:#7D90A2}.vehicle-actions{margin-left:auto;display:flex;gap:2px}.vehicle-actions form{display:inline}
.vehicles-empty{text-align:center;padding:50px 25px}.vehicles-empty>span{font-size:35px}.vehicles-empty strong,.vehicles-empty small{display:block}.vehicles-empty strong{font-size:12px;margin-top:8px}.vehicles-empty small{font-size:9px;color:#8494A5;margin:4px auto 14px}.vehicle-category-panel{padding:14px;margin-top:12px}.vehicle-modal-card{width:min(760px,100%)}.vehicle-section-title{font-size:9px;font-weight:800;color:#55718A;text-transform:uppercase;letter-spacing:.05em;margin:5px 0 -2px}.vehicle-detail-card{width:min(790px,100%)}.vehicle-detail-hero{display:flex;align-items:center;gap:12px;margin-bottom:13px}.vehicle-detail-glyph{width:65px;height:65px;font-size:34px}.vehicle-detail-hero h3{font-size:14px;margin:0}.vehicle-detail-hero p{font-size:8px;color:#8191A3;margin:4px 0 0}
.theme-dark .vehicles-toolbar input,.theme-dark .vehicles-toolbar select{background:#0C2135;border-color:#1C3C58;color:#EDF5FC}.theme-dark .vehicle-card{background:#0D2337;border-color:#1C3B57}.theme-dark .vehicle-identity h2,.theme-dark .vehicle-facts strong{color:#EDF5FC}.theme-dark .vehicle-identity p{color:#A8BACB}.theme-dark .vehicle-facts span{background:#10283E}.theme-dark .vehicle-footer{border-color:#193A56}.theme-dark .vehicle-glyph,.theme-dark .vehicle-detail-glyph{background:#103453}
@media(max-width:970px){.vehicles-grid{grid-template-columns:1fr 1fr}.vehicles-toolbar form{grid-template-columns:1fr 1fr}.vehicle-search{grid-column:1/3}}
@media(max-width:620px){.vehicles-header{display:grid}.vehicles-grid{grid-template-columns:1fr}.vehicles-toolbar form{grid-template-columns:1fr}.vehicle-search{grid-column:auto}}


/* =========================================================
   V20.1 – Selected Gentle Flow brand signet
   ========================================================= */
.cloud-logo{
  width:52px;
  height:46px;
  display:grid;
  place-items:center;
  flex:0 0 52px;
}
.brand-logo-img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 7px 13px rgba(10,132,255,.15));
}
.brand-block .brand-logo-img{transform:scale(1.04)}
.auth-cloud-logo{
  width:66px;
  height:58px;
}
.auth-cloud-logo .brand-logo-img{
  filter:drop-shadow(0 9px 20px rgba(0,0,0,.12));
}
/* Old generated cloud is intentionally no longer used. */
.cloud-shape{display:none!important}


/* =========================================================
   V21 – Web Push
   ========================================================= */
.push-device-panel{margin-top:12px;border-top:1px solid #E7EEF5;padding-top:13px}
.push-device-current{display:flex;justify-content:space-between;gap:14px;align-items:center;background:#F8FBFD;border:1px solid #E4EDF4;border-radius:13px;padding:12px}
.push-device-current strong,.push-device-current small{display:block}.push-device-current strong{font-size:10px}.push-device-current small{font-size:8px;color:#8292A3;margin-top:3px;line-height:1.45}.push-device-buttons{display:flex;gap:6px;flex-wrap:wrap}.push-message{margin-top:8px;border-radius:10px;padding:8px 10px;font-size:8.5px}.push-message.success{background:#EAF8F1;color:#23795A}.push-message.error{background:#FFF0F0;color:#B54343}
.registered-devices{margin-top:12px}.registered-devices h3{font-size:9px;margin:0 0 6px}.registered-device{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:9px 4px;border-top:1px solid #EDF2F6}.registered-device strong,.registered-device small{display:block}.registered-device strong{font-size:9px}.registered-device small{font-size:7.5px;color:#8797A8;margin-top:2px}.registered-device.inactive{opacity:.55}.push-last-error{color:#C14D4D!important}
.push-setup-v21{width:min(900px,100%);margin:0 auto}.push-setup-card{padding:16px}.push-check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px}.push-check-grid>div{background:#F8FBFD;border:1px solid #E5EDF4;border-radius:11px;padding:10px}.push-check-grid span,.push-check-grid strong{display:block}.push-check-grid span{font-size:8px;color:#8393A4}.push-check-grid strong{font-size:10px;margin-top:3px}.push-ready-box{background:#EAF8F1;color:#276B55;border-radius:12px;padding:12px}.push-ready-box strong,.push-ready-box small{display:block}.push-ready-box small{font-size:8px;margin-top:3px}.settings-help{font-size:8px;color:#8091A2}.settings-help code{font-size:8px}
.theme-dark .push-device-panel{border-color:#193A56}.theme-dark .push-device-current,.theme-dark .push-check-grid>div{background:#0C2135;border-color:#193A56}.theme-dark .registered-device{border-color:#193A56}
@media(max-width:620px){.push-device-current{display:grid}.push-check-grid{grid-template-columns:1fr}}


/* V21.3 – Push diagnostics */
.push-diagnostics-box{margin-top:12px;border:1px solid #E4EDF4;background:#FBFDFF;border-radius:13px;padding:11px}
.push-diagnostic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:8px}
.push-diagnostic-grid>div{background:#F5F9FC;border-radius:9px;padding:8px}
.push-diagnostic-grid small,.push-diagnostic-grid strong{display:block}
.push-diagnostic-grid small{font-size:7px;color:#8292A3}
.push-diagnostic-grid strong{font-size:8.5px;color:#31495F;margin-top:2px;word-break:break-word}
.theme-dark .push-diagnostics-box{background:#0C2135;border-color:#193A56}
.theme-dark .push-diagnostic-grid>div{background:#10283E}
.theme-dark .push-diagnostic-grid strong{color:#EDF5FC}
@media(max-width:700px){.push-diagnostic-grid{grid-template-columns:1fr 1fr}}

/* V21.5 */
.danger-soft{border-color:#E9B9B9!important;color:#B84A4A!important;background:#FFF7F7!important}
.theme-dark .danger-soft{background:#2A1719!important;border-color:#63343A!important;color:#FF9D9D!important}

/* V21.7 – production Push UI cleanup */
.advanced-push-diagnostics{margin-top:12px;border-top:1px solid #E4EDF4;padding-top:10px}
.advanced-push-diagnostics>summary{cursor:pointer;font-size:9px;font-weight:700;color:#75899C;list-style:none}
.advanced-push-diagnostics>summary::-webkit-details-marker{display:none}
.advanced-push-diagnostics>summary:after{content:"›";float:right;font-size:14px;line-height:10px;transition:transform .15s}
.advanced-push-diagnostics[open]>summary:after{transform:rotate(90deg)}
.advanced-push-tools{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.theme-dark .advanced-push-diagnostics{border-color:#193A56}

/* V21.8 – automatic push / WebCron */
.push-automation-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:11px;border:1px solid #E4EDF4;border-radius:12px;background:#F8FBFD}
.push-automation-row strong,.push-automation-row small{display:block}.push-automation-row strong{font-size:9px}.push-automation-row small{font-size:8px;color:#8393A4;margin-top:2px}
.cron-url-box{display:grid;gap:8px;margin-bottom:12px}.cron-url-box strong{font-size:9px}.cron-url-box code{display:block;padding:10px;background:#F5F9FC;border:1px solid #E1EAF2;border-radius:9px;font-size:8px;word-break:break-all;user-select:all}
.theme-dark .push-automation-row{background:#0C2135;border-color:#193A56}.theme-dark .cron-url-box code{background:#10283E;border-color:#193A56;color:#EAF4FC}
@media(max-width:620px){.push-automation-row{display:grid}}

/* V21.10 – current-device push binding */
#currentDeviceTestBtn{margin-left:6px}
@media(max-width:620px){#currentDeviceTestBtn{margin-left:0;margin-top:6px}}


/* V22 – Sync API / device tokens */
.sync-token-once{padding:12px;border-radius:12px;background:#EAF8F1;border:1px solid #BFE5D4;margin-bottom:12px;color:#236C54}
.sync-token-once strong,.sync-token-once small,.sync-token-once code{display:block}
.sync-token-once small{font-size:8px;margin:3px 0 9px}.sync-token-once code{background:#fff;border:1px solid #CFE6DB;border-radius:9px;padding:10px;font-size:8px;word-break:break-all;user-select:all;margin-bottom:8px;color:#1D4253}
.sync-api-summary{display:flex;align-items:center;justify-content:space-between;border:1px solid #E4EDF4;background:#F8FBFD;border-radius:12px;padding:11px}
.sync-api-summary strong,.sync-api-summary small{display:block}.sync-api-summary strong{font-size:10px}.sync-api-summary small{font-size:8px;color:#8494A5;margin-top:2px}
.sync-capabilities{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0 12px}.sync-capabilities span{font-size:7.5px;background:#EAF4FF;color:#2874B8;padding:5px 8px;border-radius:999px}
.sync-device-create{display:grid;grid-template-columns:1.4fr 1fr auto;gap:8px;align-items:end;margin:12px 0}.sync-device-create label{font-size:8px;font-weight:700}.sync-device-create input,.sync-device-create select{display:block;width:100%;margin-top:4px}
.sync-device-list{margin-top:12px}.sync-device-list h4{font-size:9px;margin:0 0 6px}.sync-device-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:9px 2px;border-top:1px solid #E9EFF4}.sync-device-row strong,.sync-device-row small{display:block}.sync-device-row strong{font-size:9px}.sync-device-row small{font-size:7.5px;color:#8494A5;margin-top:2px}.sync-device-row.inactive{opacity:.55}
.sync-api-details{margin-top:12px}.sync-endpoint{margin:9px 0}.sync-endpoint small,.sync-endpoint code{display:block}.sync-endpoint small{font-size:7px;color:#8494A5}.sync-endpoint code{font-size:8px;padding:8px;background:#F6F9FC;border-radius:8px;margin-top:3px;word-break:break-all}
.theme-dark .sync-token-once{background:#12382F;border-color:#26594B;color:#A5E7D0}.theme-dark .sync-token-once code{background:#0E2636;border-color:#25506B;color:#E9F5FC}.theme-dark .sync-api-summary{background:#0C2135;border-color:#193A56}.theme-dark .sync-capabilities span{background:#123655;color:#84C5FF}.theme-dark .sync-device-row{border-color:#193A56}.theme-dark .sync-endpoint code{background:#10283E;color:#EAF4FC}
@media(max-width:720px){.sync-device-create{grid-template-columns:1fr}.sync-device-row{grid-template-columns:1fr}}

/* V22.1 – duplicate upload / version choice */
.duplicate-upload-choice{margin-top:10px;padding:12px;border:1px solid #BFDDF8;background:#F1F8FF;border-radius:14px;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start}
.duplicate-upload-choice[hidden]{display:none}
.duplicate-upload-icon{width:34px;height:34px;border-radius:10px;background:#DCEEFF;display:grid;place-items:center;font-size:18px;color:#1674C4}
.duplicate-upload-choice strong{font-size:10px;display:block}
.duplicate-upload-choice p{font-size:9px;margin:3px 0 4px;color:#36566F}
.duplicate-upload-choice small{font-size:8px;line-height:1.4;color:#72879A;display:block}
.duplicate-upload-actions{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap;margin-top:3px}
.theme-dark .duplicate-upload-choice{background:#102A42;border-color:#235478}
.theme-dark .duplicate-upload-icon{background:#173D5E;color:#8DC8F7}
.theme-dark .duplicate-upload-choice p{color:#C6DCEB}.theme-dark .duplicate-upload-choice small{color:#88A4B8}

/* Files V23 – private family sharing */
.storage-scope-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
.scope-privacy.shared{background:rgba(88,86,214,.12);color:#5856d6}
.shared-person-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--line,rgba(127,127,127,.18))}
.shared-person-section:first-of-type{margin-top:8px;border-top:0}
.shared-person-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.shared-person-head strong{font-size:17px}.shared-person-head span{font-size:12px;opacity:.62}
.share-help{font-size:13px;line-height:1.45;opacity:.72;margin:0}
@media(max-width:760px){.storage-scope-tabs{grid-template-columns:1fr}.shared-person-head{align-items:flex-start;gap:8px}}


/* V23.1 – File sharing permission management */
.share-item-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.shared-manage-link{display:block;margin:0 14px 12px;font-size:.78rem;font-weight:700;opacity:.78;text-decoration:none}
.shared-manage-link:hover{opacity:1}
.share-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.share-back-link{display:inline-block;margin-bottom:10px;text-decoration:none;font-weight:700;opacity:.8}
.share-permission-list{display:flex;flex-direction:column;gap:8px;margin-top:18px}
.share-permission-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(127,127,127,.18);border-radius:15px;background:rgba(127,127,127,.055)}
.share-permission-row.owner-row{grid-template-columns:42px minmax(0,1fr) auto}
.share-person-avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;background:rgba(127,127,127,.14)}
.share-person-main{display:flex;flex-direction:column;min-width:0}
.share-person-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.share-person-main small{opacity:.62;margin-top:2px}
.share-inline-form{margin:0}
.share-inline-form select,.share-add-form select{min-height:40px;border-radius:10px;padding:7px 10px}
.share-permission-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border-radius:999px;background:rgba(127,127,127,.12);font-size:.8rem;font-weight:750}
.share-permission-pill.owner{opacity:.75}
.danger-action{font-size:1.2rem}
.share-add-panel{margin-top:22px;padding-top:18px;border-top:1px solid rgba(127,127,127,.16)}
.share-add-panel h3{margin:0 0 12px}
.share-add-form{display:grid;grid-template-columns:minmax(180px,1fr) 150px auto;gap:10px;align-items:center}
.muted-share-text{opacity:.66}
@media(max-width:700px){
 .share-permission-row{grid-template-columns:38px minmax(0,1fr) auto}
 .share-permission-row .share-inline-form{grid-column:2/4;width:100%}
 .share-permission-row .share-inline-form select{width:100%}
 .share-permission-row form:last-child{grid-column:3}
 .share-add-form{grid-template-columns:1fr}
}


/* Shared-root cards can also be switched to a compact list presentation. */
body.shared-list-view .shared-owner-grid{
  display:flex!important;flex-direction:column!important;gap:8px!important
}
body.shared-list-view .shared-owner-grid .folder-card{
  width:100%;max-width:none
}

/* V23.4 – shared view uses native explorer list visuals */
.shared-person-section + .shared-person-section{margin-top:24px}
.shared-person-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 10px}
.shared-person-head strong{font-size:1.08rem}
.shared-person-head span{opacity:.68;font-size:.86rem}
.shared-person-section .explorer-list-wrap{margin-top:0}


/* =========================================================
   V24 – Gesundheit
   ========================================================= */
.health-module{max-width:1500px}
.health-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.health-header h1{margin-bottom:4px}.health-header p{margin:0;opacity:.68}
.health-alert{padding:12px 15px;border-radius:14px;margin:0 0 14px;font-weight:700}
.health-alert.error{background:rgba(255,82,82,.12);border:1px solid rgba(255,82,82,.28)}
.health-alert.success{background:rgba(53,199,89,.12);border:1px solid rgba(53,199,89,.28)}
.health-person-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 16px;margin-bottom:14px}
.health-person-current{display:flex;align-items:center;gap:12px}.health-person-current>div{display:flex;flex-direction:column}
.health-person-current small{opacity:.55}.health-person-current strong{font-size:1.08rem}.health-person-current span{opacity:.7;font-size:.82rem}
.health-person-select label{display:flex;align-items:center;gap:10px;font-size:.82rem;opacity:.8}
.health-person-select select{min-width:180px}
.health-tabs{display:flex;gap:6px;overflow:auto;padding:4px;margin:0 0 16px;border-bottom:1px solid rgba(127,127,127,.14)}
.health-tabs a{text-decoration:none;color:inherit;padding:10px 13px;border-radius:10px;font-weight:750;white-space:nowrap;opacity:.65}
.health-tabs a:hover{opacity:1;background:rgba(127,127,127,.07)}.health-tabs a.active{opacity:1;background:rgba(22,136,255,.14);color:#1688ff}
.health-dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,.75fr);gap:16px}
.health-dashboard-grid.secondary{grid-template-columns:1fr 1fr;margin-top:16px}
.health-overview-main,.health-list-panel,.health-due-panel{padding:18px}
.health-profile-head,.health-list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.health-profile-head h2,.health-list-head h2{margin:0 0 3px}.health-profile-head p,.health-list-head p{margin:0;opacity:.6}
.health-profile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.health-profile-grid>div{padding:12px;border:1px solid rgba(127,127,127,.14);border-radius:13px;background:rgba(127,127,127,.04);display:flex;flex-direction:column;gap:4px}
.health-profile-grid small,.health-profile-note small{opacity:.58}.health-profile-grid strong{overflow-wrap:anywhere}
.health-profile-note{margin-top:12px;padding:14px;border-radius:13px;background:rgba(255,184,48,.07);border:1px solid rgba(255,184,48,.16)}
.health-profile-note p{margin:5px 0 0;line-height:1.45}
.health-summary-stack{display:flex;flex-direction:column;gap:10px}
.health-stat-card{padding:15px;display:flex;align-items:center;gap:13px;text-decoration:none;color:inherit}
.health-stat-card:hover{transform:translateY(-1px)}.health-stat-icon{font-size:1.7rem;width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:rgba(22,136,255,.12)}
.health-stat-card div{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2px 8px;flex:1}.health-stat-card small{grid-column:1;opacity:.6}.health-stat-card strong{grid-column:2;grid-row:1/3;font-size:1.8rem;color:#1688ff}.health-stat-card p{grid-column:1;margin:0;font-size:.78rem;opacity:.65}
.health-due-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 0;border-top:1px solid rgba(127,127,127,.12)}
.health-due-row:first-of-type{border-top:0}.health-due-row>span{font-size:1.3rem}.health-due-row div{display:flex;flex-direction:column}.health-due-row small{opacity:.6}.health-due-row b{font-size:.82rem}.health-due-row b.danger,.health-record-meta .danger{color:#ff5d62}
.health-empty-compact{padding:22px 4px;opacity:.62}
.health-record-list{display:flex;flex-direction:column}.health-record{display:grid;grid-template-columns:46px minmax(0,1fr) minmax(140px,auto) auto;align-items:center;gap:13px;padding:13px 5px;border-top:1px solid rgba(127,127,127,.14)}
.health-record:first-child{border-top:0}.health-record-glyph{width:42px;height:42px;border-radius:13px;background:rgba(22,136,255,.1);display:grid;place-items:center;font-size:1.3rem}
.health-record-main{display:flex;flex-direction:column;min-width:0}.health-record-main strong{font-size:.98rem}.health-record-main small{opacity:.6;margin-top:2px}.health-record-main p{margin:5px 0 0;font-size:.84rem;opacity:.78}
.health-record-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.health-record-meta small{opacity:.55}.health-record-actions{display:flex;gap:3px;align-items:center}
.health-record-actions form{margin:0}.health-status,.health-severity{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:.76rem;font-weight:800}
.health-status.active{background:rgba(53,199,89,.13);color:#35c759}.health-status.paused{background:rgba(255,184,48,.14);color:#e5a423}.health-status.ended{background:rgba(127,127,127,.12)}
.health-severity.leicht{background:rgba(53,199,89,.12);color:#35c759}.health-severity.mittel{background:rgba(255,184,48,.14);color:#e5a423}.health-severity.schwer{background:rgba(255,82,82,.13);color:#ff5d62}
.health-empty{min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;opacity:.68;font-size:1.6rem}.health-empty strong{font-size:1rem}.health-empty span{font-size:.85rem}
.health-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.health-document-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:13px;border:1px solid rgba(127,127,127,.14);border-radius:14px;background:rgba(127,127,127,.035)}
.health-doc-icon{font-size:1.45rem}.health-document-card>div{display:flex;flex-direction:column;min-width:0}.health-document-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health-document-card small{opacity:.58}
.health-doc-category{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#1688ff;font-weight:800}
.health-sharing-warning{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:14px;background:rgba(22,136,255,.07);border:1px solid rgba(22,136,255,.14);margin-bottom:15px}
.health-sharing-warning>div{display:flex;flex-direction:column}.health-sharing-warning p{margin:3px 0 0;opacity:.65}
.health-access-list{display:flex;flex-direction:column;gap:7px}.health-access-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:11px;border:1px solid rgba(127,127,127,.13);border-radius:13px}
.health-access-row>div{display:flex;flex-direction:column}.health-access-row small{opacity:.55}.health-access-row form{margin:0}.health-access-row.owner{grid-template-columns:42px minmax(0,1fr) auto}
.health-share-add{display:grid;grid-template-columns:minmax(200px,1fr) 160px auto;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid rgba(127,127,127,.14)}
.health-modal{width:min(680px,calc(100vw - 30px))}
@media(max-width:1000px){.health-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.health-dashboard-grid{grid-template-columns:1fr}.health-summary-stack{display:grid;grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.health-header{flex-direction:column}.health-person-bar{align-items:stretch;flex-direction:column}.health-person-select label{justify-content:space-between}.health-person-select select{min-width:0;max-width:60%}.health-dashboard-grid.secondary{grid-template-columns:1fr}.health-summary-stack{grid-template-columns:1fr 1fr}.health-record{grid-template-columns:42px minmax(0,1fr);align-items:start}.health-record-meta{grid-column:2;align-items:flex-start}.health-record-actions{grid-column:2}.health-document-grid{grid-template-columns:1fr}.health-document-card{grid-template-columns:40px minmax(0,1fr) auto}.health-document-card form{grid-column:3}.health-share-add{grid-template-columns:1fr}.health-access-row{grid-template-columns:38px minmax(0,1fr) auto}.health-access-row form:first-of-type{grid-column:2/4}.health-profile-grid{grid-template-columns:1fr}.health-summary-stack{grid-template-columns:1fr}}


/* =========================================================
   V25 – Inventar
   ========================================================= */
.inventory-module{max-width:1500px}.inventory-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.inventory-header h1{margin-bottom:4px}.inventory-header p{margin:0;opacity:.68}.inventory-head-actions{display:flex;gap:9px;flex-wrap:wrap}
.inventory-alert{margin-bottom:14px;padding:12px 15px;border-radius:13px;background:rgba(255,82,82,.12);border:1px solid rgba(255,82,82,.26)}
.inventory-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.inventory-stat{padding:15px;display:flex;align-items:center;gap:12px}.inventory-stat>span{width:45px;height:45px;display:grid;place-items:center;border-radius:13px;background:rgba(22,136,255,.1);font-size:1.45rem}.inventory-stat>div{display:flex;flex-direction:column}.inventory-stat small{opacity:.58}.inventory-stat strong{font-size:1.25rem}
.inventory-toolbar{padding:12px;margin-bottom:14px}.inventory-toolbar form{display:grid;grid-template-columns:minmax(240px,1fr) 190px 180px 160px auto auto;gap:9px;align-items:center}.inventory-search{display:flex;align-items:center;gap:7px;border:1px solid rgba(127,127,127,.2);border-radius:11px;padding:0 10px;background:var(--input-bg,rgba(127,127,127,.05))}.inventory-search input{border:0!important;background:transparent!important;padding-left:2px!important;box-shadow:none!important}
.inventory-list-panel{padding:17px}.inventory-list-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.inventory-list-head h2{margin:0}.inventory-list-head p{margin:3px 0 0;opacity:.58}
.inventory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.inventory-card{display:grid;grid-template-columns:50px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px;border:1px solid rgba(127,127,127,.14);border-radius:15px;text-decoration:none;color:inherit;background:rgba(127,127,127,.025);transition:.15s ease}.inventory-card:hover{transform:translateY(-1px);border-color:rgba(22,136,255,.3);background:rgba(22,136,255,.035)}
.inventory-card-icon{width:47px;height:47px;display:grid;place-items:center;border-radius:13px;background:rgba(22,136,255,.09);font-size:1.5rem}.inventory-card-main{display:flex;flex-direction:column;min-width:0}.inventory-card-main strong{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inventory-card-main small{opacity:.58;min-height:1em}.inventory-category{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.045em;color:#1688ff}
.inventory-card-meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px;font-size:.78rem}.inventory-status{padding:3px 8px;border-radius:999px;background:rgba(127,127,127,.1);font-weight:750}.inventory-status.active{background:rgba(53,199,89,.12);color:#35a954}.inventory-status.lent{background:rgba(255,184,48,.14);color:#d89a1d}.inventory-status.sold,.inventory-status.disposed{opacity:.55}.inventory-card-value{min-width:100px;text-align:right;display:flex;flex-direction:column}.inventory-card-value small{opacity:.55}.inventory-card-value strong{font-size:.9rem}
.inventory-empty{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}.inventory-empty>span{font-size:2.1rem}.inventory-empty small{opacity:.6}
.inventory-modal{width:min(760px,calc(100vw - 28px));max-height:min(90vh,920px);overflow:auto}.inventory-modal.small{width:min(560px,calc(100vw - 28px))}
.inventory-upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mini-upload{border:1px dashed rgba(127,127,127,.28);border-radius:13px;padding:12px;display:flex;align-items:center;gap:7px;cursor:pointer}.mini-upload input{display:none}.mini-upload:hover{border-color:#1688ff;background:rgba(22,136,255,.04)}
.inventory-linked-files{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:13px;background:rgba(127,127,127,.04)}.inventory-linked-files>a{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;text-decoration:none;color:inherit;padding:7px;border-radius:9px}.inventory-linked-files>a:hover{background:rgba(127,127,127,.07)}.inventory-linked-files a div{display:flex;flex-direction:column;min-width:0}.inventory-linked-files b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inventory-linked-files small{opacity:.55}
.inventory-category-list{display:flex;flex-direction:column;gap:6px;padding:0 18px 8px}.inventory-category-list>div{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;padding:9px 3px;border-bottom:1px solid rgba(127,127,127,.11)}.inventory-category-list form{margin:0}.inventory-category-add{border-top:1px solid rgba(127,127,127,.11);margin-top:8px}.modal-grid.compact{grid-template-columns:100px 1fr}
.danger-btn{border:0;border-radius:11px;padding:10px 14px;background:rgba(255,82,82,.12);color:#e7474c;font-weight:800;cursor:pointer;margin-right:auto}
@media(max-width:1100px){.inventory-stats{grid-template-columns:repeat(2,1fr)}.inventory-toolbar form{grid-template-columns:1fr 1fr 1fr}.inventory-grid{grid-template-columns:1fr}}
@media(max-width:700px){.inventory-header{flex-direction:column}.inventory-head-actions{width:100%}.inventory-head-actions>*{flex:1}.inventory-stats{grid-template-columns:1fr 1fr}.inventory-toolbar form{grid-template-columns:1fr}.inventory-grid{grid-template-columns:1fr}.inventory-card{grid-template-columns:46px minmax(0,1fr) auto}.inventory-card-meta{grid-column:2;align-items:flex-start}.inventory-card-value{grid-column:3;grid-row:1/3}.inventory-upload-grid{grid-template-columns:1fr}.inventory-stat strong{font-size:1.05rem}}


/* =========================================================
   V25.1 – Navigation favorites
   ========================================================= */
.nav-section-favorites{display:flex!important;align-items:center;justify-content:space-between;margin-top:12px!important;color:inherit!important;opacity:.62}.nav-favorite-star{font-size:.8rem;color:#f5ad27}.nav-favorites{display:flex;flex-direction:column;gap:3px;margin-bottom:4px}.side-nav a.favorite-nav-item{position:relative;background:rgba(255,181,48,.055);border:1px solid rgba(255,181,48,.08)}.side-nav a.favorite-nav-item:hover{background:rgba(255,181,48,.1);border-color:rgba(255,181,48,.14)}.side-nav a.favorite-nav-item.active{background:rgba(22,136,255,.12);border-color:rgba(22,136,255,.14)}.nav-section-modules{margin-top:10px!important}
.favorite-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.favorite-module-option{display:grid;grid-template-columns:42px minmax(0,1fr) 28px;align-items:center;gap:10px;padding:11px 12px;border:1px solid rgba(127,127,127,.16);border-radius:14px;cursor:pointer;background:rgba(127,127,127,.025);transition:.15s ease}.favorite-module-option:hover{border-color:rgba(22,136,255,.28);background:rgba(22,136,255,.035)}.favorite-module-option:has(input:checked){border-color:rgba(255,181,48,.28);background:rgba(255,181,48,.055)}.favorite-module-option input{position:absolute;opacity:0;pointer-events:none}.favorite-module-icon{width:40px;height:40px;display:grid;place-items:center}.favorite-module-icon .settings-card-img{width:40px;height:40px}.favorite-module-copy{display:flex;flex-direction:column;min-width:0}.favorite-module-copy strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.favorite-module-copy small{opacity:.55;margin-top:2px}.favorite-module-star{font-size:1.28rem;text-align:center;color:#f3ad27}.settings-hint{margin-top:12px;padding:11px 13px;border-radius:12px;background:rgba(22,136,255,.055);font-size:.86rem;opacity:.76}
@media(max-width:760px){.favorite-module-grid{grid-template-columns:1fr}}


/* =========================================================
   V25.3 – kompaktere linke Navigation
   ========================================================= */
.sidebar{padding-top:14px!important;padding-bottom:12px!important}
.side-nav{gap:2px!important}
.side-nav a{min-height:38px!important;padding-top:6px!important;padding-bottom:6px!important;margin-top:0!important;margin-bottom:0!important}
.side-nav .nav-img{width:30px!important;height:30px!important;flex:0 0 30px!important}
.nav-section{margin-top:12px!important;margin-bottom:4px!important;padding-top:0!important;padding-bottom:0!important;line-height:1.2!important}
.nav-section-favorites{margin-top:8px!important;margin-bottom:3px!important}
.nav-section-modules{margin-top:7px!important;margin-bottom:3px!important}
.nav-favorites{gap:2px!important;margin-bottom:1px!important}
.side-nav a.favorite-nav-item{min-height:38px!important}
.storage-card{margin-top:10px!important;padding-top:11px!important;padding-bottom:11px!important}
.side-footer{margin-top:9px!important;padding-top:8px!important}




/* =========================================================
   V25.5 – Manrope als feste Schriftart
   ========================================================= */
html,body,button,input,select,textarea{
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}


/* =========================================================
   V26 – Finanzen
   ========================================================= */
.finance-module{max-width:1500px}.finance-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px}.finance-header h1{margin-bottom:4px}.finance-header p{margin:0;opacity:.65}.finance-head-actions{display:flex;gap:8px;flex-wrap:wrap}
.finance-tabs{display:flex;gap:5px;margin-bottom:14px;padding:4px;border:1px solid rgba(127,127,127,.13);border-radius:13px;width:max-content;background:rgba(127,127,127,.035)}.finance-tabs a{padding:9px 15px;border-radius:10px;font-weight:750;opacity:.62}.finance-tabs a.active{background:rgba(22,136,255,.12);color:#1688ff;opacity:1}
.finance-period{padding:12px 15px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between}.finance-period>div{display:flex;flex-direction:column}.finance-period small{opacity:.55}.finance-period strong{font-size:1.05rem}.finance-period input{padding:8px 10px;border-radius:10px;border:1px solid rgba(127,127,127,.18);background:transparent;color:inherit}
.finance-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.finance-stats.three{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-stat{padding:14px;display:flex;align-items:center;gap:11px}.finance-stat>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(22,136,255,.08);font-size:1.2rem;font-weight:800}.finance-stat>div{display:flex;flex-direction:column}.finance-stat small{opacity:.55}.finance-stat strong{font-size:1.15rem}.finance-stat.income strong,.finance-row-amount.income{color:#35b968}.finance-stat.expense strong,.finance-row-amount.expense{color:#f05b61}
.finance-panel{padding:16px}.finance-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px}.finance-panel-head h2{margin:0}.finance-panel-head p{margin:3px 0 0;opacity:.55}.finance-contract-hint{padding:6px 9px;border-radius:999px;background:rgba(22,136,255,.08);color:#1688ff;font-size:.76rem;font-weight:750}
.finance-budget-list,.finance-tx-list{display:flex;flex-direction:column;gap:6px}.finance-budget-row{display:grid;grid-template-columns:42px minmax(0,1fr) 100px 160px 80px;align-items:center;gap:10px;padding:10px;border:1px solid rgba(127,127,127,.12);border-radius:12px}.finance-tx-row{display:grid;grid-template-columns:42px minmax(0,1fr) 150px 20px;align-items:center;gap:10px;padding:10px;border:1px solid rgba(127,127,127,.12);border-radius:12px;color:inherit;text-decoration:none}.finance-tx-row:hover,.finance-budget-row:hover{background:rgba(22,136,255,.025);border-color:rgba(22,136,255,.2)}
.finance-row-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:11px;background:rgba(22,136,255,.075);font-size:1.25rem}.finance-row-main{display:flex;flex-direction:column;min-width:0}.finance-row-main strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-row-main small{opacity:.55;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-source{font-size:.7rem;font-weight:800;padding:4px 7px;border-radius:999px;text-align:center;background:rgba(127,127,127,.09)}.finance-source.contract{background:rgba(22,136,255,.09);color:#1688ff}.finance-row-amount{text-align:right;font-weight:800}.finance-row-amount small{display:block;font-weight:500;font-size:.68rem;opacity:.55;color:inherit}.finance-row-actions{text-align:right}.finance-row-actions a{font-size:.78rem;color:#1688ff}.finance-budget-note{margin-top:12px;padding:10px 12px;border-radius:11px;background:rgba(22,136,255,.05);font-size:.78rem;opacity:.78}.finance-empty{padding:36px;text-align:center;opacity:.55}
.finance-filter{padding:10px;margin-bottom:12px}.finance-filter form{display:grid;grid-template-columns:150px minmax(180px,1fr) 140px 170px 190px auto;gap:7px}.finance-filter input,.finance-filter select{min-width:0}
.finance-modal{width:min(760px,calc(100vw - 28px));max-height:90vh;overflow:auto}.finance-modal.settings{width:min(980px,calc(100vw - 28px))}.budget-month-fields{transition:.15s ease}.finance-upload{display:flex;align-items:center;gap:8px;padding:11px;border:1px dashed rgba(127,127,127,.24);border-radius:12px;cursor:pointer}.finance-upload input{margin-left:auto}.finance-receipts{display:flex;flex-direction:column;gap:5px}.finance-receipts>div{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-radius:10px;background:rgba(127,127,127,.05)}.finance-receipts form{margin:0}.finance-receipts button,.finance-settings-list button{border:0;background:transparent;color:#e74e54;cursor:pointer}
.finance-settings-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:0 18px 18px}.finance-settings-columns h4{margin:0 0 8px}.finance-settings-list{display:flex;flex-direction:column;gap:5px}.finance-settings-list>div{display:grid;grid-template-columns:30px minmax(0,1fr) 100px 24px;gap:8px;align-items:center;padding:8px;border-bottom:1px solid rgba(127,127,127,.1)}.finance-settings-list small{opacity:.5}.finance-mini-form{display:grid;grid-template-columns:1fr 130px 130px auto;gap:6px;margin-top:12px}.finance-settings-columns section+section .finance-mini-form{grid-template-columns:70px 1fr 120px auto}
@media(max-width:1050px){.finance-stats{grid-template-columns:repeat(2,1fr)}.finance-filter form{grid-template-columns:1fr 1fr 1fr}.finance-budget-row{grid-template-columns:42px minmax(0,1fr) 110px 150px}.finance-row-actions{grid-column:2/5}.finance-settings-columns{grid-template-columns:1fr}}
@media(max-width:700px){.finance-header{flex-direction:column}.finance-head-actions{width:100%}.finance-head-actions>*{flex:1}.finance-tabs{width:100%}.finance-tabs a{flex:1;text-align:center}.finance-stats,.finance-stats.three{grid-template-columns:1fr 1fr}.finance-filter form{grid-template-columns:1fr}.finance-budget-row{grid-template-columns:38px minmax(0,1fr) auto}.finance-source{grid-column:2}.finance-row-amount{grid-column:3;grid-row:1/3}.finance-row-actions{grid-column:2/4}.finance-tx-row{grid-template-columns:38px minmax(0,1fr) auto}.finance-tx-row>span:last-child{display:none}.finance-settings-columns{padding:0 12px 14px}.finance-mini-form,.finance-settings-columns section+section .finance-mini-form{grid-template-columns:1fr}.finance-period{align-items:flex-end}}


/* =========================================================
   V27 – zentrale Bereichs-Berechtigungen
   ========================================================= */
.admin-permission-hint{margin:-4px 0 10px;opacity:.58;font-size:.84rem}
.scope-permission-groups{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}
.scope-permission-group{padding:12px 13px;border:1px solid rgba(127,127,127,.14);border-radius:14px;background:rgba(127,127,127,.02)}
.scope-permission-group h5{margin:0 0 9px;font-size:.9rem}
.scope-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.scope-permission-item{display:flex;gap:9px;align-items:flex-start;padding:9px 10px;border-radius:11px;background:rgba(127,127,127,.035);cursor:pointer}
.scope-permission-item input{margin-top:3px}.scope-permission-item span{display:flex;flex-direction:column}.scope-permission-item strong{font-size:.86rem}.scope-permission-item small{opacity:.52;margin-top:2px;font-size:.74rem}
.finance-personal-placeholder{padding:28px;display:flex;align-items:flex-start;gap:16px}.finance-personal-placeholder .finance-personal-icon{width:54px;flex:0 0 54px}.finance-personal-placeholder h2{margin:0 0 6px}.finance-personal-placeholder p{margin:0;max-width:760px;opacity:.65;line-height:1.55}
@media(max-width:720px){.scope-permission-grid{grid-template-columns:1fr}}


/* =========================================================
   V28 – Meine Finanzen
   ========================================================= */
.finance-personal-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;margin-bottom:10px;background:linear-gradient(135deg,rgba(22,136,255,.06),rgba(88,196,255,.025))}.finance-personal-hero h2{margin:7px 0 3px}.finance-personal-hero p{margin:0;opacity:.62;max-width:760px}.finance-private-badge{display:inline-flex;width:max-content;align-items:center;gap:4px;padding:5px 9px;border-radius:999px;background:rgba(22,136,255,.08);color:#1688ff;font-size:.72rem;font-weight:800}.finance-private-badge.small{font-size:.68rem;padding:4px 7px}.finance-personal-balance{display:flex;flex-direction:column;text-align:right;min-width:170px}.finance-personal-balance small{opacity:.52}.finance-personal-balance strong{font-size:1.35rem;margin-top:2px}
.finance-subtabs{display:flex;gap:5px;width:max-content;margin:0 0 12px;padding:4px;border-radius:12px;background:rgba(127,127,127,.045);border:1px solid rgba(127,127,127,.12)}.finance-subtabs a{padding:8px 13px;border-radius:9px;font-size:.84rem;font-weight:750;opacity:.58}.finance-subtabs a.active{background:rgba(22,136,255,.11);color:#1688ff;opacity:1}
.finance-budget-row.personal{grid-template-columns:42px minmax(0,1fr) 105px 150px 80px}.finance-personal-settings-note{font-size:.78rem;opacity:.55;margin:-3px 0 8px}.finance-mini-form.personal{grid-template-columns:1fr 135px auto}.finance-mini-form.personal.category{grid-template-columns:70px 1fr 120px auto}
@media(max-width:900px){.finance-personal-hero{align-items:flex-start}.finance-budget-row.personal{grid-template-columns:42px minmax(0,1fr) 120px}.finance-budget-row.personal .finance-source{grid-column:2}.finance-budget-row.personal .finance-row-amount{grid-column:3;grid-row:1/3}.finance-budget-row.personal .finance-row-actions{grid-column:2/4}}
@media(max-width:700px){.finance-personal-hero{flex-direction:column}.finance-personal-balance{text-align:left}.finance-subtabs{width:100%}.finance-subtabs a{flex:1;text-align:center}.finance-mini-form.personal,.finance-mini-form.personal.category{grid-template-columns:1fr}}


/* =========================================================
   V28.2 – Budget Jahresansicht
   ========================================================= */
.finance-budget-period{gap:16px}.finance-period-controls{display:flex;align-items:center;gap:9px}.finance-view-toggle{display:flex;gap:3px;padding:3px;border-radius:10px;background:rgba(127,127,127,.06);border:1px solid rgba(127,127,127,.12)}.finance-view-toggle a{padding:6px 10px;border-radius:8px;font-size:.78rem;font-weight:800;opacity:.58}.finance-view-toggle a.active{background:rgba(22,136,255,.13);color:#1688ff;opacity:1}.finance-budget-period input[type=number]{width:92px}
.finance-year-table-wrap{overflow-x:auto}.finance-year-table{width:100%;border-collapse:collapse;min-width:620px}.finance-year-table th,.finance-year-table td{padding:11px 12px;border-bottom:1px solid rgba(127,127,127,.11);text-align:right}.finance-year-table th:first-child,.finance-year-table td:first-child{text-align:left}.finance-year-table thead th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;opacity:.55}.finance-year-table tbody tr:hover{background:rgba(22,136,255,.025)}.finance-year-table a{color:inherit;font-weight:750}.finance-year-table .income{color:#35b968}.finance-year-table .expense{color:#f05b61}.finance-year-table tfoot th{border-bottom:0;border-top:2px solid rgba(127,127,127,.14);font-size:.92rem}
@media(max-width:700px){.finance-budget-period{align-items:flex-start;flex-direction:column}.finance-period-controls{width:100%;justify-content:space-between}.finance-view-toggle{flex:1}.finance-view-toggle a{flex:1;text-align:center}}


/* =========================================================
   V29 – Budget Dashboard
   ========================================================= */
.finance-dashboard-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:2px 0 16px}.finance-dashboard-topbar h2{font-size:1.35rem;margin:3px 0}.finance-dashboard-topbar p{margin:0;opacity:.56}.finance-dashboard-eyebrow{font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#2997ff}
.finance-dashboard-year{display:flex;align-items:center;gap:8px;min-width:135px;padding:8px 12px;border-radius:12px;border:1px solid rgba(127,127,127,.16);background:rgba(127,127,127,.035)}.finance-dashboard-year select{border:0;background:transparent;font-weight:800;font-size:.95rem;min-width:82px}
.finance-dashboard-summary-grid,.finance-dashboard-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.finance-dashboard-summary-grid.single,.finance-dashboard-chart-grid.single{grid-template-columns:1fr}
.finance-dashboard-summary-card{padding:18px 20px}.finance-dashboard-card-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid rgba(127,127,127,.1)}.finance-dashboard-card-head>a{padding:7px 10px;border:1px solid rgba(41,151,255,.48);border-radius:9px;color:#2997ff;font-size:.75rem;font-weight:750;white-space:nowrap}.finance-dashboard-card-title{display:flex;gap:11px;align-items:center}.finance-dashboard-card-title h3{margin:0 0 3px;font-size:1.05rem}.finance-dashboard-card-title p{margin:0;opacity:.52;font-size:.78rem}.finance-dashboard-card-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:rgba(41,151,255,.14);font-size:1.25rem}.finance-dashboard-card-icon.person{font-size:1rem;color:#fff}
.finance-dashboard-metrics{display:grid;grid-template-columns:repeat(3,1fr);padding-top:15px}.finance-dashboard-metrics>div{padding:0 15px;border-right:1px solid rgba(127,127,127,.11)}.finance-dashboard-metrics>div:first-child{padding-left:0}.finance-dashboard-metrics>div:last-child{border-right:0}.finance-dashboard-metrics small{display:block;opacity:.52;margin-bottom:4px}.finance-dashboard-metrics strong{font-size:1.22rem}.finance-dashboard-metrics .income{color:#4ad58a}.finance-dashboard-metrics .expense{color:#ff646b}.finance-dashboard-metrics .balance-positive{color:#2997ff}
.finance-dashboard-chart-card{padding:18px 20px;min-width:0}.finance-donut-layout{display:grid;grid-template-columns:minmax(170px,210px) minmax(0,1fr);gap:20px;align-items:center;margin-top:8px}.finance-donut{width:190px;height:190px;border-radius:50%;display:grid;place-items:center;margin:auto;position:relative}.finance-donut:after{content:"";position:absolute;inset:39px;border-radius:50%;background:var(--panel-bg,#0f2133);box-shadow:0 0 0 1px rgba(127,127,127,.08)}.theme-light .finance-donut:after{background:#fff}.finance-donut>div{position:relative;z-index:1;display:flex;flex-direction:column;text-align:center}.finance-donut small{font-weight:800;opacity:.62}.finance-donut strong{font-size:1.15rem}
.finance-donut-legend{display:flex;flex-direction:column;gap:7px;min-width:0}.finance-donut-legend>div{display:grid;grid-template-columns:10px minmax(0,1fr) 48px 86px;align-items:center;gap:8px;font-size:.75rem}.finance-donut-legend i{width:9px;height:9px;border-radius:50%}.finance-donut-legend span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-donut-legend em{font-style:normal;opacity:.58;text-align:right}.finance-donut-legend strong{text-align:right;font-weight:750}
.finance-dashboard-year-card{padding:0;margin-bottom:18px;overflow:hidden}.finance-dashboard-year-card>.finance-panel-head{padding:15px 18px;border-bottom:1px solid rgba(127,127,127,.1)}.finance-dashboard-scope-toggle{display:flex;gap:2px;background:rgba(127,127,127,.06);padding:3px;border-radius:10px}.finance-dashboard-scope-toggle button{border:0;background:transparent;padding:6px 18px;border-radius:8px;font-weight:750;opacity:.6;cursor:pointer}.finance-dashboard-scope-toggle button.active{background:#1476d4;color:#fff;opacity:1}
.finance-dashboard-month-table{overflow-x:auto;padding:8px 18px 15px}.finance-dashboard-month-table.is-hidden{display:none}.finance-dashboard-month-table table{width:100%;min-width:900px;border-collapse:collapse}.finance-dashboard-month-table th,.finance-dashboard-month-table td{padding:10px 9px;text-align:right;border-bottom:1px solid rgba(127,127,127,.08);font-size:.75rem}.finance-dashboard-month-table thead th{opacity:.55;font-size:.7rem}.finance-dashboard-month-table th:first-child{text-align:left;min-width:110px}.finance-dashboard-month-table tbody th{font-weight:750}.finance-dashboard-month-table tbody th span{font-size:.6rem;margin-right:7px}.finance-dashboard-month-table tr.income th span{color:#4ad58a}.finance-dashboard-month-table tr.expense th span{color:#ff646b}.finance-dashboard-month-table tr.balance th span{color:#2997ff}.finance-dashboard-month-table tr.balance td{color:#2997ff;font-weight:750}.finance-dashboard-month-table td.negative{color:#ff646b!important}
@media(max-width:1050px){.finance-dashboard-summary-grid,.finance-dashboard-chart-grid{grid-template-columns:1fr}.finance-donut-layout{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:680px){.finance-dashboard-topbar{align-items:stretch;flex-direction:column}.finance-dashboard-year{width:100%;justify-content:space-between}.finance-dashboard-card-head{flex-direction:column}.finance-dashboard-metrics{grid-template-columns:1fr}.finance-dashboard-metrics>div{border-right:0;border-bottom:1px solid rgba(127,127,127,.1);padding:10px 0}.finance-dashboard-metrics>div:last-child{border-bottom:0}.finance-donut-layout{grid-template-columns:1fr}.finance-donut-legend>div{grid-template-columns:10px minmax(0,1fr) 42px 82px}}


/* =========================================================
   V30 – Multi Environment
   ========================================================= */
.brand-home-link{position:relative}
.brand-home-link .brand-copy{min-width:0;white-space:nowrap}
.global-demo-badge{
 position:absolute;right:8px;top:5px;margin:0;padding:2px 5px;border-radius:6px;
 background:rgba(255,179,0,.16);border:1px solid rgba(255,179,0,.42);color:#ffb300;
 font-size:.50rem;font-weight:900;line-height:1.25;letter-spacing:.07em;
 transform:translateY(-45%)
}
.install-v30{position:relative;max-width:720px;width:min(720px,calc(100vw - 28px))}.install-env-badge{position:absolute;right:18px;top:18px;padding:5px 9px;border-radius:8px;font-size:.68rem;font-weight:900;letter-spacing:.08em}.install-env-badge.demo{background:rgba(255,179,0,.15);border:1px solid rgba(255,179,0,.4);color:#ffb300}.install-env-badge.production{background:rgba(52,199,89,.12);border:1px solid rgba(52,199,89,.35);color:#34c759}.install-info{display:flex;flex-direction:column;gap:4px;padding:12px 14px;margin:14px 0;border-radius:12px;background:rgba(41,151,255,.08);border:1px solid rgba(41,151,255,.18);font-size:.82rem}.install-info span{opacity:.64;line-height:1.4}.install-info.subtle{background:rgba(127,127,127,.045);border-color:rgba(127,127,127,.12)}.install-v30 label small{display:block;margin-top:5px;opacity:.56;font-size:.74rem}


/* V30.3 – environment diagnostics */
.environment-diagnostics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.environment-diagnostics>div{padding:14px 16px;border:1px solid var(--line,#dfe6ef);border-radius:14px;background:rgba(127,127,127,.055);min-width:0}
.environment-diagnostics>div.wide{grid-column:1/-1}
.environment-diagnostics small{display:block;margin-bottom:5px;opacity:.68;font-size:.78rem}
.environment-diagnostics strong{display:block;overflow-wrap:anywhere;font-size:.94rem}
.environment-diagnostics code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
@media(max-width:720px){.environment-diagnostics{grid-template-columns:1fr}.environment-diagnostics>div.wide{grid-column:auto}}

/* V30.8 – folder upload + drag & drop */
.folder-upload-separator{display:flex;align-items:center;gap:10px;margin:2px 0;color:rgba(127,127,127,.72);font-size:.75rem}
.folder-upload-separator:before,.folder-upload-separator:after{content:"";height:1px;flex:1;background:rgba(127,127,127,.18)}
.folder-picker{margin-top:0}
.files-v14{position:relative}
.files-global-drop-overlay{position:absolute;z-index:90;inset:0;border:2px dashed #0a84ff;border-radius:22px;background:rgba(10,132,255,.12);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);pointer-events:none}
.files-global-drop-overlay>div{position:sticky;top:calc(50vh - 80px);margin:25vh auto 0;width:min(430px,calc(100% - 40px));padding:28px;text-align:center;border:1px solid rgba(10,132,255,.4);border-radius:20px;background:var(--panel,#fff);box-shadow:0 18px 60px rgba(0,0,0,.18)}
.files-global-drop-overlay span{display:block;font-size:2rem;color:#0a84ff;margin-bottom:8px}.files-global-drop-overlay strong{display:block;font-size:1.08rem}.files-global-drop-overlay small{display:block;margin-top:6px;opacity:.68;line-height:1.45}
.drag-upload-active{outline:none}

/* V30.9 – visible upload progress */
.upload-progress-backdrop{position:fixed;z-index:10000;inset:0;display:grid;place-items:center;padding:22px;background:rgba(4,13,24,.54);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.upload-progress-backdrop[hidden]{display:none!important}
.upload-progress-card{width:min(560px,100%);max-height:min(680px,calc(100vh - 44px));overflow:auto;padding:24px;border:1px solid rgba(127,127,127,.2);border-radius:22px;background:var(--panel,#fff);box-shadow:0 24px 80px rgba(0,0,0,.3)}
.upload-progress-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.upload-progress-head h2{margin:2px 0 0}.upload-progress-head>strong{font-size:1.25rem;color:#0a84ff;font-variant-numeric:tabular-nums}
.upload-progress-track{height:10px;margin:20px 0 16px;overflow:hidden;border-radius:999px;background:rgba(127,127,127,.14)}.upload-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:#0a84ff;transition:width .12s linear}
.upload-progress-current{display:flex;justify-content:space-between;gap:18px;align-items:baseline}.upload-progress-current strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-progress-current small{flex:none;opacity:.65;font-variant-numeric:tabular-nums}
.upload-progress-list{display:grid;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid rgba(127,127,127,.14)}.upload-progress-list>div:not(.upload-progress-more){display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;align-items:center}.upload-progress-list>div>span{color:#0a84ff}.upload-progress-list>div>div{display:flex;justify-content:space-between;gap:12px;min-width:0}.upload-progress-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.upload-progress-list small,.upload-progress-more{opacity:.6;font-size:.75rem}.upload-progress-note{margin:18px 0 0;opacity:.6;font-size:.76rem}
@media(max-width:620px){.upload-progress-current{align-items:flex-start;flex-direction:column;gap:4px}.upload-progress-list>div>div{flex-direction:column;gap:2px}}

/* V30.13 – sequential upload queue */
.upload-progress-list .upload-row-state{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;font-weight:800}
.upload-progress-list>div.active .upload-row-state{color:#0a84ff}
.upload-progress-list>div.done .upload-row-state{color:#30d158}
.upload-progress-list>div.error .upload-row-state{color:#ff453a}
.upload-progress-list>div.done strong{opacity:.7}

/* =========================================================
   V30.14 – Mobile navigation: compact, gap-free layout
   ========================================================= */
@media(max-width:820px){
  .sidebar{
    width:100%!important;
    padding:14px 14px 12px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(129,177,224,.12);
  }
  .brand-block{
    width:100%;
    padding:6px 8px 14px!important;
  }
  .side-nav{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
    width:100%;
  }
  /* Sections must span the complete mobile grid. They were previously hidden,
     causing favorites and normal modules to flow into the same CSS grid and leave holes. */
  .side-nav .nav-section{
    display:flex!important;
    grid-column:1/-1;
    margin:8px 2px 1px!important;
    padding:0 4px!important;
    min-height:18px;
    align-items:center;
    font-size:9px;
  }
  .side-nav .nav-section:first-of-type{margin-top:4px!important}
  .side-nav .nav-favorites{
    display:contents!important;
  }
  .side-nav a,
  .side-nav a.favorite-nav-item{
    width:100%;
    min-width:0;
    min-height:50px!important;
    padding:7px 9px!important;
    grid-template-columns:30px minmax(0,1fr) auto!important;
    border-radius:13px;
  }
  .side-nav a span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .side-nav a em{display:none!important}
}
@media(max-width:600px){
  .side-nav{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .side-nav a,
  .side-nav a.favorite-nav-item{
    min-height:48px!important;
  }
}
@media(max-width:380px){
  .side-nav{grid-template-columns:1fr!important}
}

/* V30.15 – Cards mobile upload */
.card-mobile-upload-actions{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 14px}.card-mobile-upload-actions .secondary-btn{font-size:.78rem}
.mobile-upload-content{text-align:center;padding:2px 18px 20px}.mobile-upload-content>p{max-width:520px;margin:0 auto 16px;opacity:.68;line-height:1.5}.mobile-upload-qr{width:244px;min-height:244px;margin:0 auto 14px;padding:12px;border-radius:18px;background:#fff;display:grid;place-items:center}.mobile-upload-qr img,.mobile-upload-qr canvas{max-width:220px!important;max-height:220px!important}.mobile-upload-content>strong,.mobile-upload-content>small{display:block}.mobile-upload-content>small{max-width:430px;margin:5px auto 0;opacity:.55;line-height:1.4}.mobile-upload-wait{margin:16px auto 0;width:max-content;max-width:100%;padding:9px 13px;border-radius:999px;background:rgba(22,136,255,.08);color:#1688ff;font-size:.8rem;font-weight:750}.mobile-upload-wait span{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:#1688ff;animation:mobilePulse 1.1s infinite}.mobile-upload-wait.done{color:#30b961;background:rgba(48,209,88,.1)}.mobile-upload-wait.done span{display:none}@keyframes mobilePulse{50%{opacity:.25;transform:scale(.75)}}@media(max-width:600px){.card-mobile-upload-actions{display:grid;grid-template-columns:1fr}.mobile-upload-qr{width:224px;min-height:224px}.mobile-upload-qr img,.mobile-upload-qr canvas{max-width:200px!important;max-height:200px!important}}

/* V30.20 – Karten/Ausweise: visuelle Vorder-/Rückseiten */
.card-side-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.card-side-preview{overflow:hidden;border:1px solid rgba(127,127,127,.14);border-radius:16px;background:rgba(127,127,127,.025)}
.card-side-preview-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid rgba(127,127,127,.11)}
.card-side-preview-head strong{font-size:.86rem}
.card-side-preview-head form,.card-attachment-preview form{margin:0}
.card-preview-remove{width:26px;height:26px;border:0;border-radius:9px;background:rgba(255,69,58,.09);color:#e74e54;cursor:pointer;font-size:17px;line-height:1}
.card-side-preview-media{display:grid;place-items:center;aspect-ratio:1.58/1;background:rgba(127,127,127,.055);overflow:hidden}
.card-side-preview-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s ease}
.card-side-preview-media:hover img{transform:scale(1.015)}
.card-preview-document{display:grid;place-items:center;width:58px;height:72px;border-radius:11px;background:rgba(22,136,255,.1);color:#1688ff;font-weight:850}
.card-side-preview-meta{display:flex;justify-content:space-between;gap:10px;padding:9px 12px}
.card-side-preview-meta span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.78rem;font-weight:700}
.card-side-preview-meta small{opacity:.55}
.card-side-preview-empty{aspect-ratio:1.58/1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;opacity:.45}
.card-side-preview-empty>span{font-size:1.8rem;font-weight:300}
.card-side-preview.empty{border-style:dashed}
.card-attachment-heading{display:flex;align-items:center;justify-content:space-between;margin:18px 2px 8px}
.card-attachment-heading span{opacity:.55;font-size:.8rem}
.card-attachment-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.card-attachment-preview{position:relative;display:grid;grid-template-columns:74px minmax(0,1fr) 28px;align-items:center;gap:9px;padding:8px;border:1px solid rgba(127,127,127,.13);border-radius:13px;background:rgba(127,127,127,.025)}
.card-attachment-preview>a{width:74px;height:56px;border-radius:9px;overflow:hidden;display:grid;place-items:center;background:rgba(127,127,127,.07)}
.card-attachment-preview img{width:100%;height:100%;object-fit:cover}
.card-attachment-preview>a span{font-size:.72rem;font-weight:800;color:#1688ff}
.card-attachment-preview>div{display:flex;flex-direction:column;min-width:0}
.card-attachment-preview strong{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-attachment-preview small{font-size:.66rem;opacity:.5;margin-top:2px}
@media(max-width:760px){
  .card-side-preview-grid{grid-template-columns:1fr}
  .card-attachment-preview-grid{grid-template-columns:1fr}
}
