:root{color-scheme:light;--ink:#081936;--blue:#075fc1;--pale:#f2f7fd;--line:#dce5ef;--muted:#506278;--paper:#fff;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#f7f9fc;font-size:16px}*{box-sizing:border-box}body{margin:0}a{color:var(--blue);text-underline-offset:.2em}button,input,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.75rem 1.1rem;border:1px solid var(--blue);border-radius:8px;background:var(--blue);color:#fff;text-decoration:none;font-weight:600;cursor:pointer}button:hover,.button:hover{filter:brightness(.94)}.secondary{background:#fff;color:var(--blue)}button:disabled{opacity:.6;cursor:wait}:focus-visible{outline:3px solid #e3a000;outline-offset:4px}.skip{position:absolute;top:-80px;left:1rem;background:white;padding:1rem;z-index:5}.skip:focus{top:0}.site-header{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:1rem 3vw;border-bottom:1px solid var(--line);gap:1rem}.brand{display:flex;align-items:center;gap:1.2rem;color:var(--ink);text-decoration:none}.brand img{object-fit:contain}.brand strong{display:block;font-size:1.35rem;font-weight:500}.brand small{display:block;font-size:1rem;margin-top:.35rem;color:var(--muted)}.contact{font-weight:600}.workspace{display:grid;grid-template-columns:245px minmax(0,1fr);max-width:1540px;margin:auto;min-height:calc(100vh - 250px)}aside{padding:2rem 1.3rem;border-right:1px solid var(--line);background:white}.portal-brand{display:block;margin-bottom:2rem}.portal-brand img{display:block;width:190px;max-width:100%;height:auto}aside nav{display:flex;flex-direction:column;gap:.45rem}aside nav a{padding:.85rem 1rem;color:var(--ink);text-decoration:none;border-radius:8px;min-height:44px}aside nav a:hover{background:var(--pale)}aside nav a[aria-current]{background:#e8f1fc;color:var(--blue);font-weight:bold}.sidebar-note{margin:3rem 1rem 0;line-height:1.6;color:var(--muted);font-size:.85rem}main{padding:2.4rem clamp(1.2rem,4vw,4rem);min-width:0}.page-heading{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.eyebrow{font-weight:bold;font-size:.8rem;letter-spacing:.08em;color:var(--muted)}.preview{font-size:.75rem;color:var(--muted);padding:.5rem .75rem;background:#fff;border:1px solid var(--line);border-radius:30px}.hero{background:linear-gradient(110deg,#edf5ff,#fff);border:1px solid var(--line);border-radius:16px;padding:clamp(1.5rem,3vw,3rem);margin-bottom:1.5rem}h1{font-size:clamp(1.8rem,3.4vw,3rem);line-height:1.12;letter-spacing:-.035em;margin:0 0 1.2rem}h1 span{color:#2864a6}h2{font-size:1.2rem;line-height:1.3;margin:.6rem 0 1rem}p{line-height:1.65}p:last-child{margin-bottom:0}.hero p{max-width:650px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.cards article,.form-card,.ticket{background:white;border:1px solid var(--line);border-radius:12px;padding:1.5rem}.cards article{display:flex;flex-direction:column}.cards article p{color:var(--muted);flex:1}.cards article .button{align-self:flex-start}.card-number{font-size:.8rem;letter-spacing:.12em;color:var(--blue);font-weight:bold}.notice{margin-top:1.5rem;padding:1.5rem;border-left:3px solid #6193cd;background:#f0f5fb}.notice p{color:var(--muted)}.toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin:1.5rem 0}.checkbox{display:flex;align-items:center;gap:.6rem;min-height:44px}.checkbox input{width:20px;height:20px;accent-color:var(--blue)}.ticket{margin-bottom:1rem}.ticket h2{overflow-wrap:anywhere}.ticket-meta{display:flex;flex-wrap:wrap;gap:.7rem 2rem;color:var(--muted);font-size:.88rem}.badge{display:inline-block;padding:.3rem .6rem;background:#edf4fd;color:#184e8a;border-radius:5px;font-size:.8rem;font-weight:bold}.ticket .button{margin-top:1.2rem}.message{white-space:pre-wrap;overflow-wrap:anywhere;border-top:1px solid var(--line);padding-top:1rem}.form-card{max-width:850px}form label{display:block;font-weight:600;margin:1.2rem 0 .5rem}input:not([type=checkbox]),textarea{width:100%;border:1px solid #8eaccb;border-radius:7px;padding:.8rem;color:var(--ink);background:white}textarea{resize:vertical}.muted{color:var(--muted);font-size:.9rem}.benefits{line-height:2}.error{border-left:3px solid #a03030;padding-left:1rem}footer{border-top:1px solid var(--line);background:white;text-align:center;padding:1.6rem;font-size:.85rem}footer p{margin:.3rem 0}footer nav{display:flex;justify-content:center;gap:1.2rem;flex-wrap:wrap;margin:.7rem 0}[hidden]{display:none!important}@media(max-width:1000px){.cards{grid-template-columns:1fr}.cards article .button{align-self:stretch}.workspace{grid-template-columns:210px minmax(0,1fr)}}@media(max-width:650px){.site-header{padding:.8rem 1rem}.brand img{width:50px;height:50px}.brand strong{font-size:1rem}.brand small{font-size:.8rem}.contact{display:none}.workspace{display:block}aside{border-right:0;border-bottom:1px solid var(--line);padding:1rem}.portal-brand,.sidebar-note{display:none}aside nav{display:grid;grid-template-columns:1fr 1fr;gap:.3rem}aside nav a{padding:.75rem;font-size:.9rem}main{padding:1.4rem 1rem}.page-heading{margin-bottom:.8rem}.hero{padding:1.5rem}.preview{border-radius:6px}.toolbar button{flex:1}.toolbar .checkbox{width:100%}}
.header-actions{display:flex;align-items:center;gap:1.5rem}.header-actions button{white-space:nowrap}@media(max-width:650px){.header-actions{gap:.5rem}.header-actions button{padding:.6rem .8rem;font-size:.9rem}.brand strong{font-size:.9rem}}
.sidebar-account{margin:3rem 1rem 0}.sidebar-account .sidebar-note{margin:0 0 1rem}.sidebar-account #logout{width:100%}@media(max-width:650px){.sidebar-account{margin:1rem .75rem 0}.sidebar-account .sidebar-note{display:block}.sidebar-account #logout{width:auto;min-width:140px}}
.login-window{max-width:640px;margin:3rem auto;padding:2rem;background:#fff;border:1px solid var(--line);border-radius:16px}.login-window>img{display:block;max-width:100%;height:auto;margin-bottom:1.5rem}.login-window h1{font-size:2rem}.login-window button{margin-top:1rem}@media(max-width:650px){.login-window{margin:1rem;padding:1.4rem}}
.apps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-actions{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;margin-top:1rem}.apps-grid .app-actions .button{align-self:stretch}@media(max-width:850px){.apps-grid{grid-template-columns:1fr}}

.store-badges{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;min-height:60px}.store-badges a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 201px;
  max-width: 100%;
  height: 64px;
  padding: 5px 8px;
  border-radius: 9px;
  background: #000;
}
.store-badges img {
  display: block;
  width: auto;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
}

#ueberblick .area-status {
  font-weight: 600;
}
#ueberblick .area-status[data-state="active"] {
  color: #087a35;
}
#ueberblick .area-status[data-state="inactive"] {
  color: #c01818;
}

#ueberblick .area-status[data-state="cancelled"],
#ueberblick .subscription-backup {
  color: #a34400;
}
#ueberblick .cards article {
  gap: 0.75rem;
}
#ueberblick .cards article > h2,
#ueberblick .cards article p {
  margin: 0;
}
#ueberblick .area-status-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
}
@supports (grid-template-rows: subgrid) {
  @media (min-width: 1001px) {
    #ueberblick .cards article {
      display: grid;
      grid-row: span 4;
      grid-template-rows: subgrid;
      align-items: start;
    }
    #ueberblick .cards article > .button {
      justify-self: start;
    }
  }
}
#ueberblick #subscription-message:empty { display: none; }

.portal-attribution {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1px;
  margin-bottom: 0.5rem;
  font-size: 11px;
  line-height: 1.3;
  color: var(--ink);
}
.portal-attribution img {
  display: block;
  width: 146px;
  max-width: 100%;
  height: auto;
}

#ueberblick .subscription-details { width: 100%; }
#ueberblick .subscription-details summary {
  cursor: pointer;
  width: fit-content;
  list-style: none;
  color: var(--blue);
}
#ueberblick .subscription-details summary::-webkit-details-marker { display: none; }
#ueberblick .subscription-details summary::before {
  content: "";
  display: inline-block;
  width: 0.45em;
  height: 0.45em;
  margin-inline: 0.15em 0.6em;
  border: solid currentColor;
  border-width: 0 0.12em 0.12em 0;
  transform: rotate(-45deg);
  vertical-align: 0.12em;
}
#ueberblick .subscription-details[open] summary::before { transform: rotate(45deg); }
#ueberblick .subscription-details[open] .subscription-backup { margin-top: 0.4rem; }

#ueberblick .vault-areas {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
#ueberblick .vault-area {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  min-width: 0;
}
#ueberblick .vault-area h3 { margin: 0; }
@media (min-width: 1001px) {
  #ueberblick .overview-vault { grid-column: span 2; }
}
@supports (grid-template-rows: subgrid) {
  @media (min-width: 1001px) {
    #ueberblick .vault-areas { grid-row: span 2; align-self: stretch; }
  }
}
@media (max-width: 650px) {
  #ueberblick .vault-areas { grid-template-columns: 1fr; }
}

.registration-welcome {
  margin-block: 1rem;
}

.registration-welcome > p {
  margin-block: 0 .4rem;
  font-weight: 600;
}

.registration-logos {
  display: inline-flex;
  align-items: center;
  gap: clamp(.5rem, 3vw, 1rem);
  box-sizing: border-box;
  max-inline-size: 100%;
  padding: .5rem .75rem;
  border-radius: .65rem;
  background: #fff;
}

.registration-logos > img {
  display: block;
  block-size: auto;
  min-inline-size: 0;
}

.registration-logos > img:first-child { inline-size: 3rem; }
.registration-logos > img:last-child { inline-size: 9rem; }

#registration-form[hidden] { display: none; }
#registration-status:empty { display: none; }

.portal-account-heading { margin-bottom: 1.5rem; min-width: 0; }
.portal-account-heading .portal-brand { margin-bottom: 0; }
#signed-in-email {
  margin: .3rem 0 0;
  color: var(--muted);
  font-size: .875rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (min-width: 651px) {
  .workspace { grid-template-columns: 17rem minmax(0, 1fr); }
}
