/* SunriseCloud console — calm, resource-first cloud UI inspired by Hetzner Cloud. */
:root{
  --bg:#f2f3f5;--card:#fff;--ink:#20242a;--muted:#68717d;--line:#d8dce1;
  --accent:#d50c2d;--accent-hover:#b80a27;--good:#16845b;--danger:#c91f3d;
  --nav:#1c2025;--nav-panel:#252a30;--nav-line:#343a41;--shadow:0 1px 3px rgba(18,24,32,.12)
}
[data-theme="dark"]{
  --bg:#111418;--card:#1b1f24;--ink:#f1f3f5;--muted:#a2a9b2;--line:#343a42;
  --accent:#e51a3d;--accent-hover:#f02a4b;--good:#42b883;--danger:#ff5570;
  --nav:#171a1f;--nav-panel:#22262c;--nav-line:#333941;--shadow:0 1px 3px rgba(0,0,0,.35)
}
html,body{background:var(--bg);color:var(--ink)}
body{font-size:16px;letter-spacing:0;background:var(--bg)}

/* App frame */
@media(min-width:901px){
  .app{display:grid;grid-template-columns:72px minmax(0,1fr);min-height:100vh;padding:0}
  .app aside{position:fixed;inset:0 auto 0 0;z-index:40;display:flex;flex-direction:column;width:72px;height:100vh;padding:0;background:var(--nav);border:0;border-right:1px solid var(--nav-line);box-shadow:none}
  .sidebar-top{display:grid;place-items:center;height:68px;padding:0;background:#d50c2d;border-bottom:1px solid #ef4260}
  .wordmark{display:grid;place-items:center;margin:0;padding:0}
  .wordmark .logo{width:38px;height:38px;border:1px solid rgba(255,255,255,.42);border-radius:4px;background:transparent;color:#fff;box-shadow:none;font-weight:850}
  .wordmark>span:last-child,.nav-search{display:none}
  #navigation{display:flex;flex:1;flex-direction:column;align-items:center;gap:2px;min-height:0;padding:12px 8px;overflow:visible}
  #navigation>a,#navigation details{position:relative;display:block;width:56px;height:50px;flex:0 0 50px;margin:0;padding:0;border:0}
  #navigation>a{display:grid;place-items:center;height:50px;border-radius:3px;color:transparent;font-size:0}
  #navigation>a:before{display:grid;width:34px;height:34px;place-items:center;flex-basis:34px;border:0;border-radius:3px;background:transparent;color:#b7bdc5;font-size:15px}
  #navigation>a:hover,#navigation>a.active{background:#30353b;box-shadow:inset 3px 0 var(--accent)}
  #navigation>a.active:before{background:transparent;color:#fff}
  .nav-group{padding:0;border:0;background:transparent}
  .nav-group>summary{display:grid!important;place-items:center;width:56px;height:50px!important;padding:0!important;border-radius:3px;color:transparent!important;font-size:0!important;list-style:none;box-shadow:none!important}
  .nav-group>summary:before{display:grid;width:34px;height:34px;place-items:center;border-radius:3px;background:transparent;color:#b7bdc5;font-size:15px;font-weight:800}
  .nav-group:nth-of-type(1)>summary:before{content:'＋'}.nav-group:nth-of-type(2)>summary:before{content:'K'}.nav-group:nth-of-type(3)>summary:before{content:'D'}.nav-group:nth-of-type(4)>summary:before{content:'€'}.nav-group:nth-of-type(5)>summary:before{content:'↯'}.nav-group:nth-of-type(6)>summary:before{content:'?'}.nav-group:nth-of-type(7)>summary:before{content:'⚙'}
  .nav-group>summary:after{display:none}.nav-group>summary:hover,.nav-group[open]>summary{background:#30353b;box-shadow:inset 3px 0 var(--accent)!important}.nav-group[open]>summary:before{color:#fff}
  .nav-group>div{position:absolute;top:-5px;left:64px!important;right:auto!important;z-index:60;display:grid;width:272px;min-width:272px;max-width:272px;padding:50px 7px 7px;background:var(--nav-panel);border:1px solid var(--nav-line);border-radius:4px;box-shadow:0 14px 35px rgba(0,0,0,.38)}
  .nav-group>div:before{content:attr(data-title);position:absolute;inset:0 0 auto;height:42px;padding:13px 14px;border-bottom:1px solid var(--nav-line);color:#fff;font-size:12px;font-weight:750;letter-spacing:.035em;text-transform:uppercase}
  .nav-group>div:after{content:'';position:absolute;top:22px;left:-5px;width:8px;height:8px;transform:rotate(45deg);background:var(--nav-panel);border-left:1px solid var(--nav-line);border-bottom:1px solid var(--nav-line)}
  .nav-group:not([open])>div{display:none}
  #navigation details a{display:flex;width:100%;height:auto;margin:0;padding:10px 11px;border-radius:3px;color:#d7dbe0;font-size:14px;font-weight:560}
  #navigation details a:before{display:grid;width:27px;height:27px;flex:0 0 27px;place-items:center;border:0;border-radius:3px;background:#30363d;color:#c9ced4}
  #navigation details a:hover,#navigation details a.active{background:#353b42;color:#fff;box-shadow:inset 3px 0 var(--accent)}
  .sidebar-footer{display:grid;justify-items:center;gap:7px;flex:0 0 auto;margin:0;padding:10px 8px 12px;border:0;border-top:1px solid var(--nav-line);background:var(--nav)}
  .sidebar-user{padding:3px}.sidebar-user>span:last-child{display:none}.mini-avatar,.avatar{border-radius:3px;background:#373d45;color:#fff}
  .sidebar-footer .logout{width:38px;height:34px;margin:0;padding:0;overflow:hidden;border:1px solid var(--nav-line);border-radius:3px;background:#24292f;color:transparent;font-size:0}
  .sidebar-footer .logout:after{content:'↪';color:#c6cbd1;font-size:15px}
  .app main{grid-column:2;min-width:0}
  .app main>header{position:sticky;top:0;z-index:25;height:68px;padding:0 30px;background:var(--card);border:0;border-bottom:1px solid var(--line);backdrop-filter:none}
  .menu{display:none}.content{width:100%;max-width:none;padding:28px 32px 64px}
}

/* Project header */
.header-title{display:flex;align-items:baseline;gap:10px}.header-title small{order:2;color:var(--muted);font-size:12px;text-transform:none;letter-spacing:0}.header-title small:before{content:'/' ;margin-right:10px;color:var(--line)}.header-title strong{font-size:18px;font-weight:720}
.header-actions{gap:8px}.header-icon{width:36px;height:36px;border:1px solid var(--line);border-radius:3px;background:var(--card);color:var(--muted)}.header-icon:hover{border-color:#8d949d;color:var(--ink)}
.avatar{width:36px;height:36px;border:0;background:var(--accent);font-size:13px}.user{font-size:14px}

/* Content system */
.heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 22px;padding:0 0 18px;border-bottom:1px solid var(--line)}
.heading h1{font-size:26px;font-weight:720;letter-spacing:-.02em}.heading p{margin-top:5px;color:var(--muted);font-size:14px}.eyebrow{color:var(--accent);font-size:11px}
.cards{gap:14px}.card,.panel,.package,.dashboard-hero,.modal-card{border:1px solid var(--line);border-radius:4px;background:var(--card);box-shadow:var(--shadow);backdrop-filter:none}
.card{min-height:112px;padding:19px;border-top:1px solid var(--line)}.card:after{display:none}.card small{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em}.card strong{margin-top:8px;font-size:29px;font-weight:680;letter-spacing:-.03em}
.panel{margin-top:16px;padding:22px;border-radius:4px}.panel h2{font-size:18px;font-weight:700}.panel-title{padding-bottom:14px;border-bottom:1px solid var(--line)}
.dashboard-hero,[data-theme="dark"] .dashboard-hero,[data-theme="dark"] body[data-role="admin"] .dashboard-hero{gap:28px;margin-bottom:16px;padding:22px;background:var(--card)}.dashboard-hero h2{font-size:20px}.quick-grid{gap:8px}
.quick-action,[data-theme="dark"] .quick-action{padding:12px;border:1px solid var(--line);border-radius:3px;background:var(--card);box-shadow:none}.quick-action:hover{transform:none;border-color:var(--accent);background:color-mix(in srgb,var(--card) 96%,var(--accent) 4%)}.quick-action>span{width:30px;height:30px;flex-basis:30px;border-radius:3px;background:color-mix(in srgb,var(--accent) 12%,var(--card));color:var(--accent)}

/* Controls and data */
label{color:var(--ink);font-size:13px;font-weight:650}input,select,textarea,[data-theme="dark"] input,[data-theme="dark"] select,[data-theme="dark"] textarea{min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:3px;background:var(--card);color:var(--ink);box-shadow:none}
input:hover,select:hover,textarea:hover{border-color:#858d96}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}
.primary,.secondary,.danger{min-height:38px;padding:9px 14px;border-radius:3px;font-size:13px;font-weight:680;box-shadow:none}.primary,.primary:hover{background:var(--accent);border-color:var(--accent);box-shadow:none}.primary:hover:not(:disabled){transform:none;background:var(--accent-hover);filter:none}.secondary,[data-theme="dark"] .secondary{border:1px solid var(--line);background:var(--card);color:var(--ink)}.secondary:hover{border-color:#8c949d;background:color-mix(in srgb,var(--card) 94%,var(--ink) 6%)}
.table-wrap,[data-theme="dark"] .table-wrap{border:1px solid var(--line);border-radius:3px}table,[data-theme="dark"] table{background:var(--card)}th,[data-theme="dark"] th{padding:11px 13px;background:color-mix(in srgb,var(--card) 93%,var(--ink) 7%);color:var(--muted);font-size:11px}td{padding:12px 13px}th,td{border-bottom-color:var(--line)}tbody tr:hover{background:color-mix(in srgb,var(--card) 95%,var(--ink) 5%)}
.pill{border-radius:3px}.modal{background:rgba(5,7,10,.76);backdrop-filter:blur(2px)}.modal-card{padding:24px;border-radius:4px}.modal-card.wide{width:min(1100px,calc(100vw - 48px));max-height:calc(100vh - 48px)}
.shop-product,.domain-price-choice,.cloud-form-section,.domain-check-result,.auth-code-field,.notice,.callout,.sepa{border-radius:3px!important}.shop-product:before{background:var(--accent)}.domain-price-choice:hover{border-color:var(--accent);box-shadow:none}.domain-order-steps span.active{border-color:var(--accent)}

@media(max-width:1200px) and (min-width:901px){.content{padding:24px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-hero{grid-template-columns:1fr}}
@media(max-width:900px){
  .app{display:grid;padding:0}.app aside{background:var(--nav)}.sidebar-top{background:#d50c2d}.wordmark .logo{border-radius:3px;background:transparent}.content{padding:18px 14px 48px}.app main>header{background:var(--card);border-bottom:1px solid var(--line)}
  .header-title{display:block}.header-title small:before{display:none}.panel{padding:16px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-card.wide{width:100%;max-height:none}
}
@media(max-width:560px){.cards{grid-template-columns:1fr}.user>span:first-child{display:none}.heading{display:block}.content{padding-inline:11px}}

/* v45: Hetzner-like information architecture with SunriseCloud branding. */
:root{--accent:#5b55e7;--accent-hover:#4942d0;--brand:#ff6b3d;--brand-soft:rgba(255,107,61,.14);--nav:#0d1322;--nav-panel:#131b2b;--nav-line:#263149}
[data-theme="dark"]{--accent:#7772ff;--accent-hover:#8985ff;--brand:#ff7651;--nav:#0d1322;--nav-panel:#131b2b;--nav-line:#263149}
.sidebar-top{background:var(--nav);border-color:var(--nav-line)}
@media(min-width:901px){
  .app{grid-template-columns:250px minmax(0,1fr)}
  .app aside{width:250px;background:var(--nav);border-right:1px solid var(--nav-line)}
  .sidebar-top{display:block;height:auto;padding:18px 16px 14px;background:var(--nav);border-bottom:1px solid var(--nav-line)}
  .wordmark{display:flex;justify-content:flex-start;gap:11px;padding:0 2px 17px}.wordmark .logo{width:36px;height:36px;border:0;border-radius:8px;background:linear-gradient(135deg,var(--brand),#f04468);box-shadow:none}.wordmark>span:last-child{display:block}.wordmark b{color:#fff;font-size:16px}.wordmark small{display:block;color:#8390a5;font-size:10px}.nav-search{display:none}
  #navigation{display:block;min-height:0;padding:10px 9px 24px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#35415a transparent}
  #navigation>a,#navigation details{width:100%;height:auto;margin:0}
  #navigation>a{display:flex;height:auto;padding:11px 12px;border-radius:6px;color:#d8deea;font-size:14px;font-weight:650}
  #navigation>a:before{display:grid;width:25px;height:25px;flex-basis:25px;margin-right:9px;border-radius:5px;background:#1b263a;color:#aeb8ca;font-size:13px}
  #navigation>a:hover,#navigation>a.active{background:#202a3c;color:#fff;box-shadow:inset 3px 0 var(--brand)}#navigation>a.active:before{background:var(--brand-soft);color:var(--brand)}
  .nav-group{margin-top:9px!important;padding-top:9px!important;border-top:1px solid var(--nav-line)!important;background:transparent}
  .nav-group>summary{display:flex!important;justify-content:space-between;width:100%;height:auto!important;padding:8px 10px!important;border-radius:0;color:#7f8ba0!important;font-size:10px!important;font-weight:750!important;letter-spacing:.1em!important;text-transform:uppercase;list-style:none;cursor:pointer}
  .nav-group>summary:before{display:none}.nav-group>summary:after{content:'⌃';display:block;color:#69768c;font-size:11px;transition:transform .15s}.nav-group:not([open])>summary:after{transform:rotate(180deg)}.nav-group>summary:hover,.nav-group[open]>summary{background:transparent;box-shadow:none!important;color:#aab4c5!important}
  .nav-group>div{position:static;display:grid;width:auto;min-width:0;max-width:none;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}.nav-group>div:before,.nav-group>div:after{display:none}.nav-group:not([open])>div{display:none}
  #navigation details a{display:flex;width:100%;padding:9px 11px;border-radius:6px;color:#b5bfd0;font-size:13px;font-weight:560}
  #navigation details a:before{display:grid;width:24px;height:24px;flex:0 0 24px;margin-right:9px;border:0;border-radius:5px;background:#192438;color:#8f9caf}
  #navigation details a:hover,#navigation details a.active{background:#202a3c;color:#fff;box-shadow:inset 3px 0 var(--accent)}#navigation details a.active:before{background:rgba(119,114,255,.16);color:#aaa7ff}
  #navigation .nav-system,#navigation .nav-account{display:none!important}
  #navigation [hidden],#navigation details[hidden],#navigation a[hidden]{display:none!important}
  .sidebar-footer{display:none}
  .app main{grid-column:2}.app main>header{height:64px;padding:0 24px;background:#111827;border-bottom:1px solid #29344a}.content{padding:28px 32px 64px}
}
.header-search{display:flex;align-items:center;gap:8px;width:min(38vw,520px);margin-left:auto;padding:0 11px;border:1px solid #303b50;border-radius:6px;background:#0c1320;color:#7f8ba0}.header-search input{width:100%;min-height:38px;padding:0;border:0;background:transparent!important;color:#e8ecf4;box-shadow:none!important;font-size:13px}.header-search input::placeholder{color:#778397}
.header-actions{margin-left:16px}.header-dropdown{position:relative}.header-dropdown>summary{list-style:none;cursor:pointer}.header-dropdown>summary::-webkit-details-marker{display:none}.tools-dropdown>summary{display:grid;place-items:center;font-size:19px}.header-dropdown-menu{position:absolute;top:calc(100% + 10px);right:0;z-index:80;display:grid;width:238px;padding:7px;background:#172033;border:1px solid #35415a;border-radius:7px;box-shadow:0 18px 42px rgba(0,0,0,.42)}.header-dropdown-menu b{padding:10px 11px;border-bottom:1px solid #303b50;color:#8996aa;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.header-dropdown-menu a,.header-dropdown-menu button{display:block;width:100%;padding:10px 11px;border:0;border-radius:5px;background:transparent;color:#d5dbea;font:inherit;font-size:13px;text-align:left;text-decoration:none}.header-dropdown-menu a:hover,.header-dropdown-menu button:hover{background:#252f43;color:#fff}.header-dropdown-menu button{margin-top:5px;border-top:1px solid #303b50;border-radius:0;color:#ff8465}.account-dropdown .user{padding:3px 5px 3px 8px;border:1px solid transparent;border-radius:6px;cursor:pointer}.account-dropdown[open] .user,.account-dropdown .user:hover{border-color:#344058;background:#192236}.account-dropdown .user i{color:#8b97aa;font-size:11px;font-style:normal}
.logo{background:linear-gradient(135deg,var(--brand),#f04468)}.primary,.primary:hover{background:var(--accent);border-color:var(--accent)}.primary:hover:not(:disabled){background:var(--accent-hover)}.eyebrow{color:var(--brand)}.quick-action:hover,.domain-price-choice:hover{border-color:var(--accent)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(119,114,255,.2)}
@media(max-width:900px){.header-search{display:none}.tools-dropdown{display:none}.account-dropdown .user>span:first-child,.account-dropdown .user i{display:none}.header-dropdown-menu{position:fixed;top:62px;right:10px}.sidebar-footer{display:block}.nav-system,.nav-account{display:block}}

/* v47: open, compact resource navigation matching the supplied console reference. */
@media(min-width:901px){
  .app{grid-template-columns:214px minmax(0,1fr)}
  .app aside{top:0;width:214px;background:#292c31;border-right:1px solid #3a3e44}
  .sidebar-top{display:flex;align-items:center;height:62px;padding:0 15px;background:#303338;border-bottom:1px solid #41454b}
  .wordmark{display:flex;align-items:center;gap:9px;width:100%;padding:0}.wordmark .logo{width:32px;height:32px;border-radius:5px;font-size:13px}.wordmark b{font-size:14px}.wordmark small{font-size:9px;color:#a1a7b0}
  #navigation{padding:11px 7px 28px;background:#292c31;scrollbar-color:#4b5058 transparent}
  #navigation>a{min-height:34px;padding:5px 10px;border-radius:4px;font-size:12px}
  #navigation>a:before{width:21px;height:21px;flex-basis:21px;margin-right:7px;border-radius:3px;background:transparent;font-size:11px}
  #navigation>a:hover,#navigation>a.active{background:#3b3e43;box-shadow:inset 3px 0 var(--brand)}
  .nav-group{margin-top:7px!important;padding-top:7px!important;border-color:#41454b!important}
  .nav-group>summary{min-height:25px;padding:5px 8px!important;color:#9298a1!important;font-size:9px!important;letter-spacing:.08em!important;cursor:default}
  .nav-group>summary:after{display:none}.nav-group:not([open])>div{display:grid}.nav-group>div{display:grid!important}
  #navigation details a{min-height:32px;padding:4px 10px;border-radius:4px;color:#d0d4da;font-size:12px;line-height:1.25}
  #navigation details a:before{width:20px;height:20px;flex-basis:20px;margin-right:7px;border-radius:3px;background:transparent;color:#aeb4bd;font-size:10px}
  #navigation details a:hover,#navigation details a.active{background:#3b3e43;box-shadow:inset 3px 0 var(--accent)}
  #navigation details a.active:before{background:transparent;color:#aaa7ff}
  #navigation [hidden],#navigation details[hidden],#navigation a[hidden]{display:none!important}
  .app main{grid-column:2}.app main>header{height:62px;padding:0 18px 0 22px;background:#303338;border-color:#41454b}
  .header-title{min-width:210px}.header-title strong{font-size:15px;color:#f2f3f5}.header-title small{font-size:10px;color:#a5abb4}.header-title small:before{border-color:#50545b;color:#666b73}
  .header-search{width:min(42vw,620px);height:36px;background:#23262a;border-color:#42464c}.header-actions{margin-left:auto}
  .content{padding:26px 30px 64px;background:#111318}
}
[data-theme="light"] .content{background:#f2f3f5}

/* Admins switch cleanly between platform administration and their own account. */
.workspace-switch{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:10px 9px 2px;padding:3px;border:1px solid #444950;border-radius:5px;background:#22252a}
.workspace-switch[hidden]{display:none!important}.workspace-switch button{min-width:0;padding:7px 5px;border:0;border-radius:3px;background:transparent;color:#aeb4bd;font:inherit;font-size:10px;font-weight:700;cursor:pointer}.workspace-switch button[aria-pressed="true"]{background:#f5f6f7;color:#22252a}.workspace-switch button:not([aria-pressed="true"]):hover{background:#34383e;color:#fff}
[data-workspace="admin"] #navigation>a[href="#feedback"]{display:flex}
.admin-attention{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:16px;padding:13px 15px;border:1px solid color-mix(in srgb,#e9a23b 42%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--card) 92%,#e9a23b 8%);color:var(--ink)}.admin-attention span{color:var(--muted);font-size:12px}.admin-attention a{color:var(--accent);font-size:12px;font-weight:750;text-decoration:none}.admin-attention.healthy{grid-template-columns:auto 1fr;border-color:color-mix(in srgb,var(--good) 38%,var(--line));background:color-mix(in srgb,var(--card) 94%,var(--good) 6%)}
.admin-overview-metrics .card{color:var(--ink);text-decoration:none;transition:border-color .15s,transform .15s}.admin-overview-metrics .card:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--line));transform:translateY(-1px)}.admin-overview-grid{align-items:stretch}.admin-work-queue{display:grid}.admin-work-queue>a{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 3px;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}.admin-work-queue>a:first-child{border-top:0}.admin-work-queue>a:hover b{color:var(--accent)}.admin-work-queue small{display:block;margin-top:3px;color:var(--muted)}.queue-icon{display:grid;width:31px;height:31px;place-items:center;border-radius:7px;background:color-mix(in srgb,var(--accent) 14%,var(--card));color:var(--accent);font-weight:850}.admin-health{display:grid;gap:8px}.admin-health a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:7px;color:var(--ink);text-decoration:none}.admin-health a:hover{border-color:var(--accent)}.admin-health span{color:var(--muted);font-size:12px}.admin-health b{font-size:12px}
@media(max-width:700px){.admin-attention{grid-template-columns:1fr}.admin-overview-grid{grid-template-columns:1fr}}
.admin-stat-section{margin:22px 0}.admin-stat-section>h2{margin:0 0 12px;font-size:17px}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-stat{display:grid;gap:3px;min-height:112px;padding:17px 18px;border:1px solid transparent;border-radius:9px;color:#1e2833;text-decoration:none;transition:transform .15s,filter .15s}.admin-stat:hover{transform:translateY(-2px);filter:brightness(1.03)}.admin-stat strong{font-size:26px;line-height:1}.admin-stat span{font-size:14px;font-weight:700}.admin-stat small{margin-top:auto;color:rgba(20,30,40,.65)}.admin-stat.good{background:#dcefd7}.admin-stat.info{background:#d6ebf5}.admin-stat.warn{background:#f6efd2}.admin-stat.danger{background:#f2dada}.admin-chart-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-bottom:14px}.pie-layout{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:24px;padding:8px}.pie-chart{display:grid;width:150px;height:150px;place-items:center;border-radius:50%;background:var(--pie);position:relative}.pie-chart:after{content:'';position:absolute;width:88px;height:88px;border-radius:50%;background:var(--card)}.pie-chart>span{position:relative;z-index:1;display:grid;text-align:center}.pie-chart b{font-size:25px}.pie-chart small{color:var(--muted)}.pie-legend{display:grid;gap:10px}.pie-legend>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;font-size:12px}.pie-legend i{width:9px;height:9px;border-radius:3px;background:var(--legend)}.status-bars{display:grid;gap:15px;padding:7px 2px}.status-bars>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;color:var(--muted);font-size:12px}.status-bars b{color:var(--ink)}.status-bars i{grid-column:1/-1;height:7px;overflow:hidden;border-radius:7px;background:color-mix(in srgb,var(--line) 75%,transparent)}.status-bars em{display:block;height:100%;min-width:2px;border-radius:7px;background:var(--good)}.status-bars em.warning{background:#e9a23b}.status-bars em.info{background:#4aa8e8}.status-bars em.danger{background:var(--danger)}.booked-products{margin-bottom:14px}
@media(max-width:1050px){.admin-stat-grid{grid-template-columns:repeat(2,1fr)}.admin-chart-grid{grid-template-columns:1fr}}@media(max-width:560px){.admin-stat-grid{grid-template-columns:1fr}.pie-layout{grid-template-columns:1fr}.pie-chart{margin:auto}}
.package-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.package-toolbar label,.catalog-category-filter{width:min(320px,100%)}.package-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.package-order-actions{display:inline-flex;gap:4px;margin-right:2px}.package-order-actions button{min-width:38px;padding-inline:10px;font-size:18px;line-height:1}.package-order-actions button:disabled{opacity:.3;cursor:not-allowed}.package-category{margin-left:6px;background:rgba(119,114,255,.12);color:#aaa7ff}.catalog-category-filter{display:block;margin:12px 0}.package[hidden],.shop-product[hidden]{display:none!important}@media(max-width:620px){.package-toolbar{display:grid}.package-actions>*{flex:1}.package-order-actions{flex:0 0 auto}}

/* Kompakte Produktauswahl nach dem Bedienmuster der Hetzner Cloud. */
.hetzner-product-list.shop-grid,.hetzner-product-list.package-grid{display:flex;grid-template-columns:none;flex-direction:column;gap:10px;margin-top:14px}
.hetzner-product-list.package-grid>.package{width:100%;max-width:none}
.hetzner-product-head{display:grid;grid-template-columns:minmax(190px,1.45fr) repeat(4,minmax(95px,.72fr)) minmax(150px,.9fr) 132px;gap:18px;align-items:center;padding:0 20px 4px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.hetzner-product-list .shop-product,.hetzner-product-list [data-theme="dark"] .shop-product{display:grid;grid-template-columns:minmax(190px,1.45fr) repeat(4,minmax(95px,.72fr)) minmax(150px,.9fr) 132px;grid-template-rows:auto auto;gap:3px 18px;align-items:center;min-height:78px;padding:14px 20px;border:1px solid var(--line);border-radius:9px!important;background:color-mix(in srgb,var(--card) 93%,#fff 7%);box-shadow:none;cursor:pointer;overflow:visible;transition:border-color .15s,background .15s,box-shadow .15s}
[data-theme="dark"] .hetzner-product-list .shop-product{background:#20252d}
.hetzner-product-list .shop-product:before{display:none}
.hetzner-product-list .shop-product:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--card) 88%,#fff 12%)}
[data-theme="dark"] .hetzner-product-list .shop-product:hover{background:#272c34}
.hetzner-product-list .shop-product.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.hetzner-product-list .shop-product.selected:after{content:"✓";position:absolute;left:-11px;top:-11px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;font-weight:900}
.hetzner-product-list .shop-product h3{grid-column:1;grid-row:1;margin:0;font-size:17px;line-height:1.25}
.hetzner-product-list .shop-product>.pill{grid-column:1;grid-row:2;justify-self:start;margin:2px 5px 0 0;padding:2px 7px;font-size:10px}
.hetzner-product-list .shop-product>.pill:not(.package-category){display:none}
.hetzner-product-list .shop-product>.package-category{margin-left:0}
.hetzner-product-specs{display:contents}
.hetzner-product-specs>span{grid-row:1 / span 2;display:flex;align-items:center;color:var(--ink);font-size:15px}
.hetzner-product-specs>span:nth-child(1){grid-column:2}.hetzner-product-specs>span:nth-child(2){grid-column:3}.hetzner-product-specs>span:nth-child(3){grid-column:4}.hetzner-product-specs>span:nth-child(4){grid-column:5}
.hetzner-product-price{grid-column:6;grid-row:1 / span 2;justify-self:end;color:var(--accent);font-size:18px!important;white-space:nowrap}
.hetzner-product-periods{display:none!important}
.hetzner-product-list .add-shop-package{grid-column:7;grid-row:1 / span 2;width:100%;margin:0;padding:10px 12px;opacity:.86}
.hetzner-product-list .shop-product.selected .add-shop-package,.hetzner-product-list .shop-product:hover .add-shop-package{opacity:1}
@media(max-width:1050px){.hetzner-product-head{display:none}.hetzner-product-list .shop-product,.hetzner-product-list [data-theme="dark"] .shop-product{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;padding:17px}.hetzner-product-list .shop-product h3{grid-column:1;grid-row:1}.hetzner-product-list .shop-product>.pill{grid-column:1;grid-row:2}.hetzner-product-list .shop-product>.package-category{margin-left:0}.hetzner-product-specs{grid-column:1 / -1;grid-row:3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.hetzner-product-specs>span,.hetzner-product-specs>span:nth-child(n){grid-column:auto;grid-row:auto;display:grid;gap:3px;padding:9px;border:1px solid var(--line);border-radius:6px}.hetzner-product-specs>span:before{content:attr(data-label);color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase}.hetzner-product-price{grid-column:2;grid-row:1 / span 2}.hetzner-product-list .add-shop-package{grid-column:1 / -1;grid-row:4;margin-top:10px}}
@media(max-width:620px){.package-toolbar{display:grid}.package-actions>*{flex:1}.package-order-actions{flex:0 0 auto}.hetzner-product-list .shop-product,.hetzner-product-list [data-theme="dark"] .shop-product{grid-template-columns:1fr}.hetzner-product-price{grid-column:1;grid-row:3;justify-self:start;margin-top:8px}.hetzner-product-specs{grid-column:1;grid-row:4;grid-template-columns:1fr 1fr}.hetzner-product-list .add-shop-package{grid-column:1;grid-row:5}}

.view-preparing{visibility:hidden;min-height:520px}
.hetzner-product-head{grid-template-columns:minmax(160px,1.25fr) repeat(4,minmax(78px,.62fr)) repeat(4,minmax(92px,.72fr)) 132px;gap:12px}
.hetzner-product-list .shop-product,.hetzner-product-list [data-theme="dark"] .shop-product{grid-template-columns:minmax(160px,1.25fr) repeat(4,minmax(78px,.62fr)) repeat(4,minmax(92px,.72fr)) 132px;gap:3px 12px}
.hetzner-all-prices{display:contents}
.hetzner-all-prices>span{grid-row:1 / span 2;display:flex;align-items:center;justify-content:flex-end;color:var(--accent);font-size:15px;white-space:nowrap}
.hetzner-all-prices>span:nth-child(1){grid-column:6}.hetzner-all-prices>span:nth-child(2){grid-column:7}.hetzner-all-prices>span:nth-child(3){grid-column:8}.hetzner-all-prices>span:nth-child(4){grid-column:9}
.hetzner-product-list .add-shop-package{grid-column:10}
.admin-package-list .package-actions{grid-column:10;grid-row:1 / span 2;display:flex;justify-content:flex-end;margin:0}
.admin-package-list .package-actions .secondary,.admin-package-list .package-actions .primary{width:auto;margin:0;padding:8px 10px;font-size:12px}
.admin-package-list .package-actions .deploy-package{flex-basis:100%}
.admin-package-list .package>.pill:not(.package-category){display:none}
.admin-package-list .package-category{grid-column:1;grid-row:2;justify-self:start;margin:2px 0 0}
.admin-package-list .package h3{grid-column:1;grid-row:1}
@media(min-width:1351px){.admin-package-head,.admin-package-list .shop-product{grid-template-columns:minmax(150px,1.1fr) repeat(4,minmax(70px,.55fr)) repeat(4,minmax(82px,.65fr)) minmax(360px,2.5fr)}}
@media(max-width:1350px){.hetzner-product-head{display:none}.hetzner-product-list .shop-product,.hetzner-product-list [data-theme="dark"] .shop-product{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;padding:17px}.hetzner-product-list .shop-product h3,.admin-package-list .package h3{grid-column:1;grid-row:1}.hetzner-product-list .shop-product>.pill,.admin-package-list .package-category{grid-column:1;grid-row:2}.hetzner-product-specs{grid-column:1 / -1;grid-row:3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.hetzner-product-specs>span,.hetzner-product-specs>span:nth-child(n){grid-column:auto;grid-row:auto;display:grid;gap:3px;padding:9px;border:1px solid var(--line);border-radius:6px}.hetzner-product-specs>span:before{content:attr(data-label);color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase}.hetzner-all-prices{grid-column:1 / -1;grid-row:4;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.hetzner-all-prices>span,.hetzner-all-prices>span:nth-child(n){grid-column:auto;grid-row:auto;display:grid;gap:3px;justify-content:stretch;padding:9px;border:1px solid var(--line);border-radius:6px}.hetzner-all-prices>span:before{content:attr(data-label);color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase}.hetzner-product-list .add-shop-package{grid-column:1 / -1;grid-row:5}.admin-package-list .package-actions{grid-column:1 / -1;grid-row:5;justify-content:flex-start;margin-top:8px}}
@media(max-width:620px){.hetzner-product-specs,.hetzner-all-prices{grid-template-columns:1fr 1fr}.hetzner-product-list .shop-product,.hetzner-product-list [data-theme="dark"] .shop-product{grid-template-columns:1fr}.hetzner-product-specs{grid-row:3}.hetzner-all-prices{grid-row:4}.hetzner-product-list .add-shop-package,.admin-package-list .package-actions{grid-column:1;grid-row:5}}
.impersonation-banner{position:sticky;top:0;z-index:80;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 24px;background:#362b12;border-bottom:1px solid #8c6a1d;color:#ffe5a3}.impersonation-banner[hidden]{display:none}.impersonation-banner div{display:flex;align-items:center;gap:12px}.impersonation-banner span{color:#f3d58d}.impersonation-banner button{margin:0;width:auto;padding:8px 13px;background:#554218;border-color:#9b7927;color:#fff4d4}@media(max-width:620px){.impersonation-banner{align-items:flex-start;padding:10px 14px}.impersonation-banner div{display:grid;gap:2px}}
.impersonation-controls{display:flex;align-items:center;gap:9px;margin-right:4px}.impersonation-controls[hidden]{display:none}.impersonation-status{display:flex;align-items:center;gap:7px;min-width:0;padding:7px 10px;border:1px solid #8c6a1d;border-radius:9px;background:#362b12;color:#ffe5a3;font-size:12px}.impersonation-status>span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f3d58d}.impersonation-controls button{width:auto;margin:0;padding:8px 11px;white-space:nowrap;background:#554218;border-color:#9b7927;color:#fff4d4}.toast{top:92px;display:flex;align-items:flex-start;gap:14px;width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 112px);overflow:auto;user-select:text;white-space:pre-wrap;word-break:break-word}.toast[hidden]{display:none}.toast-message{flex:1;min-width:0}.toast-close{flex:0 0 auto;display:grid;place-items:center;width:25px;height:25px;margin:-4px -7px -4px 0;padding:0;border:0;border-radius:7px;background:transparent;color:inherit;font-size:21px;line-height:1}.toast-close:hover{background:#ffffff20}.toast-close:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media(max-width:900px){.impersonation-status b{display:none}.impersonation-status>span{max-width:105px}.impersonation-controls button{font-size:0}.impersonation-controls button:after{content:'Admin';font-size:12px}}@media(max-width:620px){.impersonation-status{display:none}.toast{top:82px;right:16px}}

/* Render large, off-screen view sections only when they approach the viewport. */
#content>section.panel,#content>.panel,#content>.table-wrap,#content>.shop-grid,#content>.hetzner-product-list{content-visibility:auto;contain-intrinsic-size:auto 420px}
@media print{#content>section.panel,#content>.panel,#content>.table-wrap,#content>.shop-grid,#content>.hetzner-product-list{content-visibility:visible}}
