/* AIDOO palette. Loaded after the component styles so every view shares these roles. */
:root {
  --rk-surface: #ffffff;
  --rk-link: #225db2;
  --rk-ink: #203049;
  --rk-muted: #52647c;
  --rk-paper: #f1f5fa;
  --rk-line: #d5dfeb;
  --rk-brand: #1768ed;
  --rk-deep: #f1f5fa;
  --rk-action: #1768ed;
  --rk-action-hover: #1055cb;
  --rk-control-border: #93a5bb;
  --rk-control-fill: #f8fafd;
  --rk-soft: #e7effb;
  --rk-soft-hover: #dce8fa;
  --rk-on-dark: #203049;
  --rk-dark-muted: #52647c;
  --rk-focus: #9abffc;
  --rk-success: #187448;
  --rk-success-fill: #e9f7ef;
  --rk-warning: #865600;
  --rk-warning-fill: #fff3d9;
  --rk-danger: #b42332;
  --rk-danger-fill: #fff0f0;
}
html { overflow-x: clip; color-scheme:light; }
.rk-header { position:relative; isolation:isolate; background:var(--rk-deep); border-bottom-color:#354052; color:var(--rk-on-dark); }
.rk-header::before { content:""; position:absolute; z-index:-1; top:0; bottom:-1px; left:50%; width:100vw; transform:translateX(-50%); background:var(--rk-deep); }
.rk-header .rk-brand,.rk-header .rk-nav a,.rk-header .rk-lang { color:var(--rk-on-dark)!important; }
.rk-header .rk-nav a:hover { color:#9abffc!important; text-decoration:underline; text-underline-offset:4px; }
.rk-header .rk-user-menu { background:var(--rk-soft)!important; color:var(--rk-on-dark)!important; }
.rk-header .rk-user-menu:before { border-color:#7b8798!important; }
.rk-header a:focus-visible,.rk-header .q-btn:focus-visible,.rk-contact .q-btn:focus-visible { outline-color:#9abffc!important; }
.rk-user-menu:before { border-color:var(--rk-control-border)!important; }
.rk-footer a:hover { color:var(--rk-link); }

/* Quiet dark controls with clearly visible outlines and labels. */
.q-field--outlined .q-field__control,.rk-field .q-field__control { background:var(--rk-control-fill)!important; }
.q-field--outlined .q-field__control:before,.rk-field .q-field__control:before { border-color:var(--rk-control-border)!important; }
.q-field__label,.rek-app .q-field__label,.rk-field .q-field__label { color:var(--rk-muted)!important; }
.q-field__native,.q-field__input { color:var(--rk-ink); }
.q-field__native::placeholder,.q-field__input::placeholder,.home-code-input input::placeholder { color:var(--rk-muted); opacity:1; }
.rek-app .q-field--outlined:not(.q-field--disabled):not(.q-field--readonly):hover .q-field__control:before { border-color:var(--rk-link)!important; }
.q-field--focused .q-field__control,.rek-app .q-field--focused .q-field__control { box-shadow:0 0 0 3px #1768ed26; }
.q-field--focused .q-field__control:after { border-color:var(--rk-link)!important; }
.rek-app .q-field--readonly .q-field__control,.rek-app .q-field--disabled .q-field__control { background:var(--rk-paper)!important; }
.q-field--error .q-field__control:before,.q-field--error .q-field__control:after,.rek-app .q-field--error .q-field__control:before,.rek-app .q-field--error .q-field__control:after { border-color:var(--rk-danger)!important; }
.q-field--error .q-field__control,.rek-app .q-field--error .q-field__control { box-shadow:0 0 0 3px #b91c1c14; }
.rk-browser-login-input { background:var(--rk-control-fill); color:var(--rk-ink); border-color:var(--rk-control-border); }
.rk-browser-login-input:focus-visible { outline:3px solid var(--rk-focus); outline-offset:3px; }

/* Primary actions: white text on blue, including detached dialogs. */
.primary-btn,.rk-primary,.rk-secondary,.order-pay,.home-create,.home-open-button { background:var(--rk-action)!important; color:#fff!important; }
.primary-btn:hover,.rk-primary:hover,.rk-secondary:hover,.order-pay:hover,.home-create:hover,.home-open-button:hover { background:var(--rk-action-hover)!important; }
.rek-app .primary-btn,.rek-app .rk-primary,.rek-app .rk-secondary,.rek-app .home-open-button,.rek-app .order-pay,.rek-app .home-create { box-shadow:none!important; }
.outline-btn,.rek-app .outline-btn,.rk-photo-pick-button,.rek-app .rk-photo-pick-button,.rek-app .home-camera-button { background:var(--rk-surface)!important; color:var(--rk-link)!important; border:1px solid var(--rk-action)!important; }
.outline-btn:hover,.rek-app .outline-btn:hover,.rk-photo-pick-button:hover,.rek-app .rk-photo-pick-button:hover,.rek-app .home-camera-button:hover { background:var(--rk-soft)!important; }
.rek-app .rk-tabs .q-tab--active { color:var(--rk-link)!important; background:var(--rk-soft); }
.rek-app .rk-tabs .q-tab { opacity:1; color:var(--rk-muted); }
.q-btn:focus-visible,a:focus-visible,.rk-focus:focus-visible { outline:3px solid var(--rk-focus); outline-offset:3px; }

/* Quiet blue accents replace decorative green; green is reserved for success. */
.rk-avatar,.rk-login-icon,.home-lookup-icon,.home-shortcut-icon,.order-product-icon { background:var(--rk-soft); color:var(--rk-link); }
.rk-owner,.rk-visibility,.rk-privacy-note,.rk-login-status,.rk-library-slots { background:var(--rk-soft); color:var(--rk-ink); border-color:var(--rk-line); }
.rk-visibility { color:var(--rk-link); }
.rk-note,.rk-status-report,.rk-qr { background:var(--rk-paper); border-color:var(--rk-line); }
.rk-photo .q-uploader__header { background:var(--rk-soft); color:var(--rk-link); }
.rk-photo-picker .q-uploader__header { background:transparent!important; color:var(--rk-link)!important; }
.rk-library-edit,.home-eyebrow,.home-shortcut-arrow,.home-qr-id,.order-package-price { color:var(--rk-link)!important; }
.rk-account-bar .q-icon,.rk-library-code,.home-lead,.order-sales .q-icon,.order-delivery .q-icon,.order-availability .q-icon,.home-scan-tip .q-icon { color:var(--rk-muted); }
.rk-library-card:hover,.rk-list-item:hover { border-color:var(--rk-action); box-shadow:none!important; }
.rk-library-actions,.rk-data-row+.rk-data-row { border-color:var(--rk-line); }
.home-lookup { border-color:var(--rk-line); box-shadow:none; }
.home-shortcut,.home-shortcut+.home-shortcut { background:var(--rk-surface); border-color:var(--rk-line); }
.home-shortcut:hover { background:var(--rk-soft); border-color:var(--rk-action); }
.story-controls button,.story-controls .story-next { background:var(--rk-surface); color:var(--rk-link); border-color:var(--rk-control-border); }
.story-controls button:hover,.story-controls .story-next:hover { background:var(--rk-soft); border-color:var(--rk-action); }
.story-select[aria-pressed="true"] { background:var(--rk-action); color:#fff; border-color:var(--rk-action); }
.home-qr-id { background:linear-gradient(var(--rk-brand),var(--rk-brand)) left top/9px 3px no-repeat,linear-gradient(var(--rk-brand),var(--rk-brand)) left top/3px 9px no-repeat,linear-gradient(var(--rk-brand),var(--rk-brand)) right bottom/9px 3px no-repeat,linear-gradient(var(--rk-brand),var(--rk-brand)) right bottom/3px 9px no-repeat; }
.home-qr-id:after { background:var(--rk-brand); box-shadow:-6px 0 var(--rk-brand),0 6px var(--rk-brand),-6px 12px var(--rk-brand); }
.order-step-number { background:var(--rk-soft); color:var(--rk-link); border-color:var(--rk-control-border); }
.order-package-selected { background:var(--rk-soft)!important; border-color:var(--rk-link)!important; }
.order-sales { border-color:var(--rk-line); }
.order-package:focus-visible,.rk-camera-dialog button:focus-visible { outline-color:var(--rk-focus); }

/* Status colours always accompany the existing text and icon. */
.rk-status { background:var(--rk-success-fill); color:var(--rk-success); border-color:#8da995; }
.rk-status-dot { background:var(--rk-success); }
.rk-status-lost { background:var(--rk-warning-fill); color:var(--rk-warning); border-color:#b49b66; }
.rk-status-lost .rk-status-dot { background:var(--rk-warning); }
.rk-status-inactive { background:var(--rk-paper); color:var(--rk-muted); border-color:var(--rk-control-border); }
.rk-status-inactive .rk-status-dot { background:var(--rk-muted); }
.rk-alert,.rk-lost-banner { background:var(--rk-warning-fill); color:var(--rk-warning); border-color:#b49b66; }
.rk-lost-contact { background:#854d0e!important; color:#fff!important; }
.theft-warning,.theft-banner { background:var(--rk-danger-fill); color:var(--rk-danger); border-color:#d99090; }
.theft-banner .rk-lost-contact,.rk-remove-confirm,.rk-remove-confirm:disabled { background:#b91c1c!important; color:#fff!important; }
.rk-invalid,.home-error,.order-error,.remove-btn,.rk-footer a.rk-footer-stolen { color:var(--rk-danger)!important; }
.remove-btn { border-color:var(--rk-danger)!important; }
.rk-footer a.rk-footer-stolen:hover { color:#fecaca!important; }

.rk-contact { background:var(--rk-deep); color:var(--rk-on-dark); }
.rk-contact p { color:var(--rk-dark-muted); }
.rk-contact-icon { color:#9abffc; border-color:var(--rk-control-border); }
.rk-cookie .rk-cookie-card { background:var(--rk-deep)!important; color:var(--rk-on-dark)!important; border-color:#354052; box-shadow:0 8px 28px #10172520!important; }
.rk-cookie .rk-cookie-accept { background:var(--rk-control-fill)!important; color:var(--rk-ink)!important; }
.rk-cookie .rk-cookie-accept:focus-visible { outline-color:#9abffc; }

/* Main-photo selection is visible through border, label and colour together. */
.rk-gallery-photo { padding:6px; border:2px solid transparent; border-radius:16px; }
.rk-gallery-main { border-color:var(--rk-action); background:var(--rk-soft); }

/* NiceGUI imports Quasar's important utilities into a cascade layer. Important
   theme rules must also be layered to take precedence over those utilities. */
@layer theme {
  .rk-header .q-btn { color:var(--rk-on-dark)!important; }
  .rk-header .rk-user-menu { background:var(--rk-soft)!important; }
  .outline-btn,.rek-app .outline-btn,.rk-photo-pick-button,.rek-app .rk-photo-pick-button,.rek-app .home-camera-button { background:var(--rk-surface)!important; color:var(--rk-link)!important; }
  .outline-btn:hover,.rek-app .outline-btn:hover,.rk-photo-pick-button:hover,.rek-app .rk-photo-pick-button:hover,.rek-app .home-camera-button:hover { background:var(--rk-soft)!important; }
  .rk-cookie .rk-cookie-accept { background:var(--rk-control-fill)!important; color:var(--rk-ink)!important; }
}


/* Dark surfaces replace the previous white cards, including portal-mounted UI. */
.rk-card,.rk-home,.home-lookup,.rk-save,.rk-user-menu,.q-card,.q-menu,.q-dialog .q-card,.q-table__container,.q-table__card {
  background:var(--rk-surface)!important; color:var(--rk-ink)!important;
}
.rk-user-dropdown,.q-select__dialog,.q-date { background:var(--rk-surface); color:var(--rk-ink); }
.q-table,.q-table thead,.q-table tbody { background:transparent; color:var(--rk-ink); }
.q-separator { background:var(--rk-line); }
.q-menu,.q-dialog .q-card { border:1px solid var(--rk-line); }
.q-item--active,.q-item.q-router-link--active { color:var(--rk-link); }
.q-item:hover { background:var(--rk-soft); }
.rk-photo .q-uploader { background:var(--rk-surface); color:var(--rk-ink); }
.rk-gallery-photo .q-img { background:var(--rk-control-fill); }
.rk-note,.rk-qr,.rk-status-report { background:var(--rk-surface); }
.rk-contact { border:1px solid var(--rk-line); }
.rk-field .q-field__control,.rek-app .q-field--outlined .q-field__control { background:var(--rk-control-fill)!important; }
.rek-app .q-field--focused .q-field__control { background:var(--rk-control-fill)!important; box-shadow:0 0 0 3px #9abffc33; }
.rek-app .q-field--outlined:not(.q-field--disabled):not(.q-field--readonly):hover .q-field__control:before { border-color:var(--rk-link)!important; }
.rek-app .q-field--readonly .q-field__control,.rek-app .q-field--disabled .q-field__control { background:var(--rk-surface)!important; }
.q-field__bottom,.q-field__counter,.q-uploader__subtitle { color:var(--rk-muted); }
.q-field--error .q-field__bottom { color:var(--rk-danger); }
.home-lookup-icon,.home-shortcut-icon,.rk-login-icon,.order-product-icon { background:var(--rk-soft); color:var(--rk-link); }
.home-shortcut:hover { background:var(--rk-control-fill); border-color:var(--rk-control-border); }
.rk-remove-cancel { background:var(--rk-control-fill)!important; color:var(--rk-ink)!important; }
.rk-back,.rk-link { color:var(--rk-muted)!important; }
.rk-back:hover,.rk-link:hover { color:var(--rk-link)!important; }
.story-list-link { background:var(--rk-danger-fill); color:var(--rk-danger)!important; border-color:#9f5964; }
.story-list-link:hover { background:#43242c; border-color:var(--rk-danger); }

@layer theme {
  .text-primary,.q-field--focused .q-field__label { color:var(--rk-link)!important; }
  .text-positive { color:var(--rk-success)!important; }
  .text-negative,.text-red-700,.text-red-800 { color:var(--rk-danger)!important; }
  .text-warning,.text-amber-800 { color:var(--rk-warning)!important; }
  .text-black,.text-grey-9,.text-grey-10 { color:var(--rk-ink)!important; }
  .text-grey,.text-grey-6,.text-grey-7,.text-grey-8 { color:var(--rk-muted)!important; }
  .rek-app .bg-white,.q-dialog .bg-white,.rek-app .bg-grey-1,.rek-app .bg-grey-2,.rek-app .bg-grey-3 { background:var(--rk-surface)!important; }
  .order-package { background:var(--rk-surface)!important; color:var(--rk-ink)!important; }
  .order-package-selected { background:var(--rk-soft)!important; }
}
.subtitle,.footer-text,.footer-links,.footer-links a { color:var(--rk-muted); opacity:1; }
.q-field--outlined.q-field--dense.q-field--float .q-field__label,
.q-card .q-field--outlined.q-field--dense.q-field--float .q-field__label { background:var(--rk-control-fill)!important; }
.rk-gallery-main { border-color:var(--rk-link); }
.q-field__marginal,.q-select__dropdown-icon,.q-field__append,.q-field__prepend { color:var(--rk-muted); }
.q-checkbox__inner,.q-toggle__inner,.q-radio__inner { color:var(--rk-control-border); }
@layer theme {
  .q-checkbox__inner--truthy,.q-toggle__inner--truthy,.q-radio__inner--truthy { color:var(--rk-action)!important; }
}

/* Room for the metal border and a visible mounting hole without shrinking the lettering. */
.rk-header .rk-brand img { width:176px; height:auto; }
@media(max-width:640px) { .rk-header .rk-brand img { width:156px; height:auto; } }

/* Compact phone header: keep the brand and account controls on one row. */
@media (max-width: 640px) {
  .rek-app { padding-left:16px; padding-right:16px; }
  .rk-header {
    display:grid; grid-template-columns:120px minmax(0,1fr);
    align-items:center; flex-wrap:nowrap; min-height:68px;
    height:auto!important; padding:10px 0; gap:10px;
  }
  .rk-header .rk-brand { min-width:0; width:120px; flex-shrink:0; }
  .rk-header .rk-brand img { display:block; width:120px; max-width:100%; height:auto; }
  .rk-header .rk-nav {
    min-width:0; max-width:100%; margin-left:0;
    justify-content:flex-end; gap:6px; flex-wrap:wrap;
  }
  .rk-header .rk-user-menu { width:44px; min-width:44px; padding:0; flex-shrink:0; }
  .rk-header .rk-user-menu .q-btn__content > .block { display:none!important; }
  .rk-header .rk-user-menu .q-icon { margin:0; }
  .rk-header .rk-user-menu .q-btn__content { gap:0; }
  .rk-header .rk-lang { min-width:44px; padding:0 4px; }
  .rk-header .rk-lang .q-icon { font-size:20px; margin-right:4px; }
  .rk-header .rk-nav > .rk-workspace:not(.rk-user-menu) { max-width:100%; font-size:11px; }
  .rek-content { padding-top:16px; }
  .rk-registration { padding:0!important; gap:16px!important; }
  .rk-drafts-section { padding:0!important; background:transparent!important; gap:12px!important; }
  .rk-drafts-heading { font-size:18px!important; line-height:1.35; }
  .rk-draft-card { padding:14px!important; border-radius:12px!important; }
  .rk-draft-card > .nicegui-label { overflow-wrap:anywhere; }
  .rk-draft-card .q-btn { min-height:44px; text-transform:none; }
}
@layer theme {
  @media (max-width:640px) {
    .rk-header .rk-user-menu .q-btn__content > .block { display:none!important; }
  }
}

/* Keep the full signed-in identity visible without crowding the logo row. */
.rk-session-status { display:none; }
@media (max-width:640px) {
  .rk-header .rk-session-status {
    display:block; grid-column:1 / -1; width:100%; min-width:0;
    font-size:12px; line-height:1.4; overflow-wrap:anywhere;
    color:var(--rk-on-dark); padding:0 0 2px;
  }
}

/* Mobile registration workflow */
.reg-page{gap:20px!important;padding:0 0 20px;min-width:0}
.reg-title{font-size:28px;font-weight:650;line-height:1.2;letter-spacing:-.5px}
.reg-hint{font-size:14px;line-height:1.6;color:var(--rk-muted);overflow-wrap:anywhere}
.reg-card-title{font-size:20px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.reg-back{display:inline-flex;align-items:center;min-height:48px;color:var(--rk-link);text-decoration:none}
.reg-choice,.reg-section{width:100%;padding:22px;border:1px solid var(--rk-line);border-radius:16px!important;gap:12px!important}
.reg-choice-icon{font-size:28px;color:var(--rk-link)}
.reg-primary,.reg-primary-link{background:#1766e8!important;color:white!important;min-height:50px;width:100%;border-radius:12px!important;text-transform:none!important;font-size:15px!important;font-weight:600;box-shadow:none!important}
.reg-secondary{min-height:48px;text-transform:none!important;color:var(--rk-link)!important;box-shadow:none!important;border:1px solid var(--rk-line);border-radius:10px!important;font-size:14px!important}
.reg-primary-link{display:flex;align-items:center;justify-content:center;text-decoration:none}
.reg-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%;padding:8px 0 14px;border-bottom:1px solid var(--rk-line)}
.reg-progress-step{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--rk-muted);font-size:12px}
.reg-progress-step .q-icon{font-size:22px}
.reg-progress-step.is-current{color:var(--rk-link);font-weight:700}
.reg-progress-step.is-done{color:var(--rk-success)}
.reg-save-state{font-size:12px;color:var(--rk-muted);align-self:flex-end;min-height:18px}
.reg-error{color:var(--rk-danger);font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.reg-error:empty{display:none}
.reg-warning{color:var(--rk-warning)!important;background:var(--rk-warning-fill)!important;padding:14px;border-radius:10px;font-size:14px;line-height:1.5;width:100%}
.reg-ok{color:var(--rk-success);font-size:13px;line-height:1.4}
.reg-photo-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.reg-upload{width:100%;min-width:0;max-width:100%;box-shadow:none!important;border:1px solid var(--rk-line);border-radius:12px!important;overflow:hidden}
.reg-upload .q-uploader__header{background:var(--rk-soft)!important;color:var(--rk-link)!important;min-height:56px;padding:10px}
.reg-upload .q-uploader__subtitle,.reg-upload .q-uploader__list{display:none!important}
.reg-upload .q-uploader__header-content{min-width:0}
.reg-upload .q-uploader__title{font-size:14px;font-weight:600;white-space:normal}
.reg-upload .q-btn{min-width:44px;min-height:44px}
.reg-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}
.reg-photo{padding:10px;gap:8px;width:100%;min-width:0;border-radius:12px!important}
.reg-thumb{height:140px;width:100%;border-radius:8px}
.reg-photo .reg-secondary{width:100%;font-size:12px!important}
.reg-field{width:100%}.reg-field .q-field__control{border-radius:10px;min-height:56px}
.reg-field .q-field__native{font-size:16px}
.reg-bottom{position:static;width:100%;padding:12px 0;background:var(--rk-paper)}
.reg-wrap{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
.reg-preview-image{height:240px;width:100%;border-radius:12px}
.reg-dialog{width:100%;max-width:600px;max-height:90dvh;overflow:auto;padding:22px!important;gap:16px!important}
.reg-dialog .reg-title{font-size:23px}
.reg-license-options{display:flex;flex-direction:column;gap:12px;width:100%}
.reg-license-options .q-radio{min-height:52px;border:1px solid var(--rk-line);border-radius:10px;padding:10px;width:100%}
.reg-success{width:100%;padding:24px;gap:18px;align-items:center}
.reg-success-icon{font-size:48px;color:var(--rk-success)}
.reg-code{font-size:34px;letter-spacing:.12em;font-family:monospace}
.reg-home .home-lookup{padding:22px}
.reg-home .home-lookup-heading{margin-bottom:10px}
.reg-home .home-lookup-intro{margin-bottom:12px}
.reg-home .home-code-input{margin-bottom:12px}
.reg-home .home-lookup-icon{display:none}
.reg-home .home-lookup-title{font-size:25px}
.reg-home .home-code-help{margin-top:10px}
@media(max-width:640px){
 .rk-header{grid-template-columns:100px minmax(0,1fr)}
 .rk-header .rk-brand,.rk-header .rk-brand img{width:100px}
 .reg-title{font-size:25px}
 .reg-choice,.reg-section{padding:18px}
 .reg-page{gap:16px!important}
 .reg-home .home-lookup{padding:18px}
 .reg-dialog{max-height:88dvh;padding:18px!important}
}
@layer theme{
 .reg-upload .q-uploader__subtitle,.reg-upload .q-uploader__list{display:none!important}
}
.reg-page{padding-bottom:24px}
.reg-bottom{width:100%;border-top:1px solid var(--rk-line)}
.reg-draft-thumb{width:80px;height:70px;border-radius:10px}
.reg-home .home-shortcut:last-child{border-color:#698bbd}
@media(max-width:640px){.reg-home .home-intro{display:none}}
.reg-secondary{background:transparent!important}
.reg-back{min-height:40px}
.reg-page> .nicegui-column{gap:14px!important}
@media(max-width:640px){.reg-page{gap:12px!important}.reg-save-state{margin-top:-4px}}
.reg-review-thumbs{display:flex;gap:8px;flex-wrap:wrap;width:100%}
.reg-review-thumb{width:64px;height:64px;border:1px solid var(--rk-line);border-radius:8px}
@layer theme{
 .reg-secondary{background:transparent!important;color:var(--rk-link)!important}
 .reg-primary{background:#1766e8!important;color:white!important}
}
@layer theme{
 .reg-home .home-open-button{background:transparent!important;color:var(--rk-link)!important;border:1px solid var(--rk-line)}
 .reg-home .home-shortcut:last-child{background:#1766e8!important;border-color:#1766e8;color:white!important}
 .reg-home .home-shortcut:last-child .home-shortcut-description{color:#edf4ff!important}
 .reg-home .home-shortcut:last-child .home-shortcut-icon{background:rgba(255,255,255,.15);color:white}
 .reg-home .home-shortcut:last-child .home-shortcut-arrow{color:white}
}

/* Light mobile workspace and compact, identifiable account control. */
.rk-header{border-bottom-color:var(--rk-line)}
.rk-header .rk-user-menu{border-radius:24px!important}
.reg-choice,.reg-section,.home-lookup,.home-shortcut{box-shadow:0 3px 12px #25395606!important}
.reg-home .home-open-button{box-shadow:none!important}
@media(max-width:640px){
 .rk-header .rk-user-menu{width:auto;min-width:44px;max-width:calc(100vw - 190px);padding:0 10px}
 .rk-header .rk-user-menu .q-btn__content{flex-wrap:nowrap;gap:6px;min-width:0}
 .rk-header .rk-user-menu .q-icon{font-size:20px;flex-shrink:0;color:var(--rk-success)}
 .rk-header .rk-user-menu .q-btn__content>.block{max-width:124px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
 .rk-header{min-height:70px}
}
@layer theme{
 @media(max-width:640px){
  .rk-header .rk-user-menu .q-btn__content>.block{display:block!important}
 }
 .reg-home .home-open-button{box-shadow:none!important}
}

/* A quiet, clearly labelled service footer. */
.rk-footer-clear{align-items:flex-start;gap:20px;padding:24px 0; margin-top:32px}
.rk-footer-about{gap:4px!important}
.rk-footer-name{font-size:15px;font-weight:650;color:var(--rk-ink)}
.rk-footer-description{font-size:12px;line-height:1.5;color:var(--rk-muted)}
.rk-footer-clear .rk-footer-links{display:flex;flex-wrap:wrap;gap:0 20px;align-items:center}
.rk-footer-clear .rk-footer-links a{display:inline-flex;align-items:center;gap:5px;min-height:44px;font-size:13px;color:var(--rk-muted);text-decoration:none}
.rk-footer-clear .rk-footer-links a:hover{color:var(--rk-link);text-decoration:underline}
@media(max-width:640px){.rk-footer-clear{gap:12px}.rk-footer-clear .rk-footer-links{width:100%;justify-content:flex-start}}

/* Benefit-led introduction after the primary tasks, including on phones. */
.reg-home .home-intro{display:block!important;width:100%;border-top:1px solid var(--rk-line);margin-top:28px;padding-top:24px}
.home-benefit-slogan{font-size:clamp(25px,4vw,34px);font-weight:650;letter-spacing:-.5px;line-height:1.25;margin:0 0 22px}
.home-benefit-slogan>.nicegui-label{font:inherit}
.story-benefit-title{font-size:21px;font-weight:600;line-height:1.35;margin:0 0 12px;overflow-wrap:anywhere}
.home-stories .home-story{transition:none}
.home-stories .home-intro-text{font-size:14px;line-height:1.7;max-width:560px;margin-bottom:12px}
.home-stories .story-controls{gap:8px;flex-wrap:wrap;margin-bottom:0}
.home-stories .story-controls button{min-width:44px;min-height:44px;box-shadow:none;color:var(--rk-link);background:var(--rk-surface);border:1px solid var(--rk-line)}
.home-stories .story-controls .story-pause{width:auto;padding:0 12px;border-radius:22px;margin-left:0}
.home-stories .story-controls .story-next{width:auto;padding:0 12px}
.home-stories .story-count{letter-spacing:0;margin-right:2px;min-width:30px}
@media(max-width:640px){.story-benefit-title{font-size:20px}.reg-home .home-intro{margin-top:24px}}

/* Keep the previous and next registration steps together within the form. */
.reg-bottom{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-top:12px}
.reg-bottom>.reg-secondary{margin-right:auto;width:auto!important}
.reg-bottom>.reg-primary{width:auto!important;min-width:180px}
@media(max-width:480px){.reg-bottom{gap:8px}.reg-bottom>.reg-primary{min-width:0;flex:1}.reg-bottom>.reg-secondary{flex:0 0 auto}}

.reg-page:has(.reg-details-layout){max-width:1120px!important}
.reg-details-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;width:100%;align-items:start}
@media(max-width:800px){.reg-details-layout{grid-template-columns:1fr}}
