@import url('./test-account.css?v=password-recovery-20261007-1');

/* Shared page header, sponsor strip, footer and account dialog. */
.site-layout.site-layout{display:block;margin:0;padding:0}
.site-header,.site-footer-wrap,.site-account-dialog{box-sizing:border-box;font-family:"Inter","Segoe UI",system-ui,-apple-system,sans-serif;font-synthesis:none;line-height:1.5;color:#173a5e}
.site-header *,.site-footer-wrap *,.site-account-dialog *{box-sizing:border-box}
.site-header a,.site-footer-wrap a,.site-account-dialog a{margin:0;color:inherit;text-decoration:none;font-weight:inherit}
.site-header button,.site-footer-wrap button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.site-account-dialog button{cursor:pointer;-webkit-tap-highlight-color:transparent}
.site-header svg,.site-footer-wrap svg,.site-account-dialog svg{display:block;width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex:none}
.site-header :is(a,button):focus-visible,.site-footer-wrap :is(a,button):focus-visible,.site-account-dialog button:focus-visible{outline:3px solid #c68a20;outline-offset:5px}
.site-header{position:relative;inset:auto;z-index:auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:20px;width:min(1120px,calc(100% - 80px));margin:0 auto;padding:28px 0 23px;background:transparent;border:0;border-bottom:1px solid #dfe6ef;text-align:left;box-shadow:none}
.site-header .site-brand{display:flex;align-items:center;gap:13px;min-width:0}
.site-brand-logo-link{position:relative;display:block;flex:none;border-radius:50%}
.site-brand-logo-link.is-live::before{content:"";position:absolute;inset:-4px;border:3px solid #ff0033;border-radius:50%;pointer-events:none}
.site-brand-live-badge{position:absolute;z-index:1;left:50%;bottom:-7px;transform:translateX(-50%);display:block;margin:0;padding:1px 5px;border:2px solid #f3f6fa;border-radius:4px;background:#ff0033;color:#fff;font-size:9px;font-weight:800;line-height:1.25;letter-spacing:.35px;pointer-events:none}
.site-brand-live-badge[hidden]{display:none!important}
.site-brand-copy{display:block;min-width:0}
.site-brand-logo{display:block;width:54px;height:54px;flex:none;position:relative;overflow:hidden;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #dbe3ed}
.site-header .site-brand-logo img{position:absolute;display:block;width:444.545455%;max-width:none;height:auto;left:-168.181818%;top:-6.363636%;margin:0;padding:0;border:0;border-radius:0;object-fit:initial;box-shadow:none}
.site-brand-name{display:block;font-size:19px;font-weight:750;letter-spacing:-.45px;line-height:1.25;white-space:normal;text-wrap:balance}
.site-brand-caption{display:block;color:#61738a;font-size:12px;font-weight:400;margin-top:4px;white-space:normal}
.site-header-right{display:flex;align-items:center;gap:22px;margin-left:auto;flex-shrink:0}
.site-fee-reminder{display:grid;gap:3px;flex:0 1 345px;max-width:345px;min-width:0}
.site-header .site-fee-reminder[hidden]{display:none!important}
.site-fee-reminder .site-fee-payment{width:100%;white-space:normal}
.site-header .site-fee-reminder .site-fee-payment small{font-size:11px;font-weight:750}
.site-fee-preference{display:flex;align-items:center;gap:8px;min-height:36px;padding:2px 3px;font-size:12px;font-weight:650;color:var(--theme-text,#173a5e);cursor:pointer;line-height:1.4}
.site-fee-preference input{appearance:auto;flex:none;width:18px;height:18px;min-height:18px;margin:0;padding:0;accent-color:#245d8a}
.site-fee-preference input:focus-visible{outline:3px solid #c68a20;outline-offset:3px}
.site-fee-preference-help,.site-fee-preference-status{margin:0;padding:0 3px;font-size:10px;line-height:1.5;color:var(--theme-muted,#61738a)}
.site-header .site-fee-preference-help a{text-decoration:underline;text-underline-offset:2px}
.site-fee-preference-status[data-kind="error"]{color:var(--theme-danger,#a03b32);font-weight:650}
.site-fee-preference-status[hidden]{display:none!important}
@media(max-width:580px){.site-header .site-fee-reminder{order:-1;flex:1 1 100%;max-width:none;width:100%}}
.site-header .site-fee-payment{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:9px 13px;border:1px solid #b57d0d;border-radius:12px;background:#ffda78;color:#402c08;font-size:13px;font-weight:750;line-height:1.35;box-shadow:0 3px 10px #80500016}
.site-header .site-fee-payment[hidden]{display:none!important}
.site-header .site-fee-payment:hover{background:#ffce50;color:#302000}
.site-fee-payment span{display:block;text-align:left}
.site-fee-payment small{display:block;font-size:10px;font-weight:550;margin-top:2px}
.site-header .site-fee-payment svg{width:20px;height:20px}
.site-header .site-fee-payment .site-fee-arrow{width:16px;height:16px}
@media(max-width:1050px){.site-header:has(.site-fee-payment:not([hidden])){flex-wrap:wrap}.site-header:has(.site-fee-payment:not([hidden])) .site-header-right{flex-wrap:wrap;gap:12px}.site-header:has(.site-fee-payment:not([hidden])) .site-brand{flex:1 1 100%}}
@media(max-width:580px){.site-header .site-fee-payment:not([hidden]){order:-1;flex:1 1 100%;justify-content:flex-start}.site-header .site-fee-payment .site-fee-arrow{margin-left:auto}}
.site-header .site-menu-link{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-size:12px;color:#4b627c;font-weight:600}
.site-header .site-menu-link svg{width:16px;height:16px}
.site-header .site-menu-link:hover{text-decoration:underline;text-underline-offset:4px}
.site-header .account-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;margin:0;padding:11px 17px;border:1px solid #1a416b;border-radius:12px;background:linear-gradient(125deg,#235388,#173a5e);color:#fff;font-size:13px;font-weight:700;line-height:1.35;box-shadow:0 5px 14px #173a5e18;white-space:nowrap;transition:background .18s,box-shadow .18s}
.site-header .account-button[hidden]{display:none!important}
.site-header .account-button:hover{background:#235388;box-shadow:0 7px 18px #173a5e26}
.site-header .account-button svg{width:20px;height:20px;flex:none}
/* Signed-in accounts are shown by their profile picture, not the login/register label. */
.site-header .account-button .account-header-avatar{display:none}
.site-header .account-button[data-signed-in="true"]{display:inline-flex;flex:0 0 46px;width:46px;height:46px;min-height:46px;padding:0;border:2px solid #fff;border-radius:50%;overflow:hidden;background:#eaf1f9;box-shadow:0 0 0 1px #bdcde0,0 4px 12px #173a5e22}
.site-header .account-button[data-signed-in="true"]>svg,.site-header .account-button[data-signed-in="true"]>span{display:none}
.site-header .account-button[data-signed-in="true"] .account-header-avatar{display:block;flex:none;width:100%;height:100%;max-width:none;margin:0;border:0;border-radius:50%;object-fit:cover;object-position:center}
/* This photo places the face in the left part of a wide banner. Keep the face fully visible inside the round account icon. */
.site-header .account-button[data-signed-in="true"] .account-header-avatar[src*="Sebastian%20Kaczmarek.jpg"]{object-position:0% center}
.site-header .account-button[data-signed-in="true"] .account-header-avatar[src*="Peter%20Barkenski"]{object-position:0% center}
.site-header .account-button[data-signed-in="true"] .account-header-avatar[data-portrait="left"]{object-position:0% center}
/* The custom 16:9 player card has its portrait on the left; frame that face in the round account control. */
.site-header .account-button[data-signed-in="true"] .account-header-avatar[src*="/storage/v1/object/public/player-profile-images/"]{object-position:0% center}
.site-header .account-button[data-signed-in="true"]:hover{box-shadow:0 0 0 2px #235388,0 5px 15px #173a5e33}
.site-footer-wrap{display:block;width:min(1120px,calc(100% - 80px));margin:30px auto 0}
.site-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:24px 0 26px;margin:21px 0 0;border:0;border-top:1px solid #dfe6ef;background:transparent;font-size:11px;color:#6d7f93}
.site-footer nav{display:flex;align-items:center;flex-wrap:wrap;gap:19px;margin:0;padding:0;border:0;background:transparent;font-size:inherit}
.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.site-page-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:24px 0 22px;padding:0;font-family:"Inter","Segoe UI",system-ui,sans-serif;font-size:13px;color:#173a5e}
.site-page-tools a,.site-page-tools button{margin:0;padding:9px 14px;border:1px solid #d5e0ed;border-radius:999px;background:#eef3f9;color:#173a5e;font:inherit;text-decoration:none;cursor:pointer}
.site-page-tools a:hover,.site-page-tools button:hover{background:#e0e8f3}
.site-page-title{margin:4px 0 20px;color:#173a5e;font-size:clamp(26px,3vw,36px);line-height:1.2}
.site-layout .admin-dock{position:relative;inset:auto;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;width:min(1120px,calc(100% - 80px));max-width:100%;margin:10px auto 0;padding:0;z-index:5}
.site-layout .competition-menu{position:static;inset:auto;width:fit-content;max-width:100%;margin:0 0 20px auto;z-index:5}
.site-layout .sc-page{width:min(1120px,calc(100% - 32px));margin:26px auto 0}
.site-layout[data-site-page="player"]>.card{box-sizing:border-box;width:616px;max-width:calc(100% - 12px);margin-inline:auto}
.site-layout[data-site-page="controller"]>.site-page-tools{width:min(1120px,calc(100% - 80px));margin:20px auto}
.site-layout[data-site-page="controller"]>#app{height:max(440px,calc(100dvh - 186px))}
.site-layout[data-site-page="cck-live-test"]>header:not(.site-header){position:relative;top:auto}
.site-layout[data-site-page="cck-live-test"]>.site-header,.site-layout[data-site-page="cck-live-test"]>.site-footer-wrap{background:#f3f6fa;padding-left:18px;padding-right:18px}

.site-sponsors{margin:0}
.site-sponsors .sponsors-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.site-sponsors .sponsors-heading h2{margin:0;padding:0;color:#4e6885;font-size:14px;font-weight:750;letter-spacing:.3px;line-height:1.5}
.site-sponsors .sponsors-toggle{min-height:36px;margin:0;padding:6px 12px;border:1px solid #d3deea;border-radius:8px;background:transparent;color:#526b85;font-size:14px;font-weight:400;line-height:1.4}
.site-sponsors .sponsors-toggle:hover{background:#e8eff7;border-color:#adbed2}
.site-sponsors [hidden]{display:none!important}
.site-sponsors .sponsors-marquee{overflow-x:auto;max-width:100%;border:1px solid #dfe6ef;border-radius:14px;background:#fff}
.site-sponsors.is-ready .sponsors-marquee{overflow:hidden}
.site-sponsors .sponsors-marquee:focus-visible{outline:3px solid #c68a20;outline-offset:5px}
.site-sponsors .sponsors-track{display:flex;width:max-content}
.site-sponsors.is-ready .sponsors-track{animation:site-sponsors-scroll 68s linear infinite}
.site-sponsors .sponsors-group{display:flex;flex-shrink:0;align-items:center;gap:32px;list-style:none;margin:0;padding:12px 32px 12px 0}
.site-sponsors .sponsors-item{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:160px;height:104px;margin:0;padding:0;overflow:visible}
.site-sponsors .sponsors-link{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:8px;cursor:pointer;transition:transform .22s ease,background .22s ease,box-shadow .22s ease}
.site-sponsors .sponsors-link:focus-visible{outline:3px solid #c68a20;outline-offset:-4px;background:#f2f6fb;box-shadow:0 0 0 1px #c8d7e8,0 6px 18px #173a5e12;transform:scale(1.08);z-index:1}
.site-sponsors .sponsors-item img{display:block;width:100%;height:84px;max-width:100%;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply;transition:filter .22s ease,opacity .22s ease}
.site-sponsors .sponsors-item img.sponsors-logo-square{width:112px;height:112px}
/* Optically center Hotel Plaza within the rotating sponsor strip (including the duplicated loop). */
.site-sponsors .sponsors-item img[src*="IMG_5374.jpeg"]{transform:translateY(-6px)}
.site-sponsors.is-paused .sponsors-track,.site-sponsors .sponsors-marquee:hover .sponsors-track,.site-sponsors .sponsors-marquee:focus-within .sponsors-track{animation-play-state:paused}
.site-sponsors .sponsors-track:has(.sponsors-link:focus-visible) .sponsors-link:not(:focus-visible):not(:hover) img{filter:grayscale(1) blur(1.5px);opacity:.55}
@media(hover:hover) and (pointer:fine){
  .site-sponsors .sponsors-link:hover{background:#f2f6fb;box-shadow:0 0 0 1px #c8d7e8,0 6px 18px #173a5e12;transform:scale(1.08);z-index:1}
  .site-sponsors .sponsors-track:has(.sponsors-link:hover) .sponsors-link:not(:hover):not(:focus-visible) img{filter:grayscale(1) blur(1.5px);opacity:.55}
}
@keyframes site-sponsors-scroll{to{transform:translateX(-50%)}}

.site-account-dialog{width:min(460px,calc(100% - 28px));max-height:calc(100dvh - 48px);margin:auto;padding:26px;overflow:auto;overscroll-behavior:contain;border:1px solid #dfe6ef;border-radius:20px;background:#fff;box-shadow:0 30px 90px #10284240;text-align:left}
.site-account-dialog::backdrop{background:#10253d70;backdrop-filter:blur(4px)}
body:has(.site-account-dialog[open]){overflow:hidden}
.site-account-dialog [hidden]{display:none!important}
.site-account-dialog .dialog-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.site-account-dialog .eyebrow{margin:0;color:#607691;font-size:10px;font-weight:750;letter-spacing:2px;text-transform:uppercase}
.site-account-dialog .close-dialog{display:grid;place-items:center;flex:none;width:40px;height:40px;margin:0;padding:0;border:1px solid #dfe6ef;border-radius:50%;background:#f3f6fa;color:#173a5e}
.site-account-dialog .close-dialog svg{width:18px;height:18px}
.site-account-dialog h2{margin:0;padding:0;font-size:28px;font-weight:750;letter-spacing:-.8px;line-height:1.2;color:#173a5e}
.site-account-dialog .dialog-description{color:#61738a;font-size:14px;line-height:1.7;margin:12px 0 18px}
.site-account-dialog .destination{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:66px;margin:10px 0 0;padding:16px;border:1px solid #dfe6ef;border-radius:11px;background:#f8fafc;color:#173a5e}
.site-account-dialog .destination strong{display:block;font-size:15px}
.site-account-dialog .destination small{display:block;font-size:12px;color:#61738a;margin-top:4px}
.site-account-dialog .destination svg{width:20px;height:20px}
.site-account-dialog .destination:hover{background:#edf2f8;border-color:#acbfd4}
.site-account-dialog .account-small a{color:#254f7a;text-decoration:underline;text-underline-offset:3px}
.site-account-dialog .account-field-help{color:#61738a}

@media(max-width:760px){
  .site-header,.site-footer-wrap,.site-layout .admin-dock{width:calc(100% - 36px)}
  .site-header{padding:19px 0 17px;gap:10px}
  .site-header .site-brand{gap:10px}.site-brand-logo{width:44px;height:44px}.site-brand-name{font-size:16px}.site-brand-caption{font-size:10px}
  .site-header-right{gap:8px}
  .site-footer-wrap{margin-top:24px}
  .site-footer{font-size:10px;gap:12px;flex-wrap:wrap;justify-content:center;text-align:center;margin-top:19px;padding:18px 0 22px}.site-footer nav{justify-content:center;gap:18px}
  .site-sponsors .sponsors-group{gap:24px;padding:10px 24px 10px 0}
  .site-sponsors .sponsors-item{width:140px;height:92px}
  .site-sponsors .sponsors-item img{height:74px}
  .site-sponsors .sponsors-item img.sponsors-logo-square{width:100px;height:100px}
  .site-layout[data-site-page="controller"]>.site-page-tools{width:calc(100% - 36px)}
  .site-layout[data-site-page="controller"]>#app{height:max(440px,calc(100dvh - 219px))}
}
@media(max-width:600px){
  .site-header .account-button{padding:9px 12px;gap:7px;font-size:12px;min-height:46px;text-align:left}
  .site-account-dialog{padding:20px}.site-account-dialog h2{font-size:26px}
}
@media(max-width:370px){
  .site-header,.site-footer-wrap,.site-layout .admin-dock{width:calc(100% - 28px)}
  .site-brand-name{font-size:14px}.site-brand-logo{width:39px;height:39px}.site-brand-caption{font-size:9px}
  .site-header .account-button{padding:9px 11px}.site-header .account-button svg{display:none}
}
@media(prefers-reduced-motion:reduce){
  .site-header .account-button,.site-sponsors .sponsors-link,.site-sponsors .sponsors-item img{transition:none}
  .site-sponsors.is-ready .sponsors-track{animation:none}
  .site-sponsors.is-ready .sponsors-marquee{overflow-x:auto}
  .site-sponsors .sponsors-group[aria-hidden="true"],.site-sponsors .sponsors-toggle{display:none}
  .site-sponsors .sponsors-link:is(:hover,:focus-visible){transform:none}
}
@media print{.site-header,.site-footer-wrap,.site-account-dialog,.site-layout .site-page-tools,.site-layout .admin-dock{display:none!important}}

/* Global role-verified administration menu: kept in the page HEADER. */
.site-header .site-staff-menu{position:relative;display:block;flex:none;z-index:80}
.site-header .site-staff-menu[hidden],
.site-header .site-staff-links a[hidden]{display:none!important}
.site-header:has(.site-staff-menu[open]){z-index:95}
.site-header .site-staff-menu>summary{
 display:flex;align-items:center;justify-content:center;gap:9px;
 min-height:44px;padding:9px 13px;list-style:none;cursor:pointer;
 background:#eaf1f9;border:1px solid #b9cfe5;border-radius:12px;
 color:#17466e;font-size:12px;font-weight:800;white-space:nowrap;
 transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.site-header .site-staff-menu>summary::-webkit-details-marker{display:none}
.site-header .site-staff-menu>summary:hover,
.site-header .site-staff-menu[open]>summary{background:#dbeaf8;border-color:#8caed0;box-shadow:0 4px 15px #173a5e12}
.site-header .site-staff-menu>summary svg{width:19px;height:19px;flex:none}
.site-header .site-staff-menu>summary .site-staff-chevron{width:13px;height:13px;transition:transform .16s ease}
.site-header .site-staff-menu[open]>summary .site-staff-chevron{transform:rotate(180deg)}
.site-header .site-staff-links{
 position:absolute;right:0;top:calc(100% + 9px);
 display:grid;gap:3px;width:min(315px,calc(100vw - 24px));padding:8px;
 background:#fff;border:1px solid #d7e4f0;border-radius:14px;
 box-shadow:0 18px 48px #102a4680;
}
.site-header .site-staff-links a{
 display:block;padding:11px 13px;border-radius:9px;
 color:#173a5e;text-decoration:none;font-size:13px;font-weight:750;line-height:1.3;
 overflow-wrap:anywhere;
}
.site-header .site-staff-links a:hover,
.site-header .site-staff-links a:focus-visible{background:#edf4fb;text-decoration:none}
.site-header .site-staff-links small{
 display:block;margin-top:4px;color:#70849a;font-size:11px;font-weight:500;line-height:1.45
}
@media(max-width:960px){
 .site-header .site-staff-menu{margin-left:auto}
 .site-header-right{gap:10px}
}
@media(max-width:600px){
 .site-header .site-staff-menu>summary{min-height:44px;padding:10px;border-radius:11px;gap:6px}
 .site-header .site-staff-menu>summary span{font-size:11px}
 .site-header .site-staff-menu>summary .site-staff-chevron{display:none}
 .site-header-right{gap:7px}
}
@media(max-width:385px){
 .site-header .site-staff-menu>summary svg{width:21px;height:21px}
}
@media print{.site-header .site-staff-menu{display:none!important}}

/* Keep all header actions visible on phones, in a dedicated row below the club name. */
@media(max-width:760px){
  .site-header{flex-wrap:wrap;row-gap:12px}
  .site-header .site-brand{flex:1 1 100%}
  .site-header-right{position:relative;flex:1 1 100%;min-width:0;flex-wrap:wrap;margin-left:0;justify-content:flex-end}
  .site-header .site-menu-link{margin-right:auto;white-space:nowrap;flex:none}
  .site-header .site-staff-menu{position:static;margin-left:0}
  .site-header .site-staff-links{width:min(315px,100%)}
}

/* The booking toolbar appears when a booking type or account action is available. */
.site-layout[data-site-page="booking"] .site-page-tools:not(.para-portal-nav):not(:has(button:not([hidden]))){display:none}


/* Lane displays fetch the original card; round web avatars use the centered portrait. */
.avatar img[src*="images/Sverige/Daniel-Mattsson-original.jpg"],
.account-header-avatar[src*="images/Sverige/Daniel-Mattsson-original.jpg"],
#acct-avatar[src*="images/Sverige/Daniel-Mattsson-original.jpg"] {
  content: url("/images/Sverige/Daniel-Mattsson.jpg");
}

.site-header .site-member-preview{border:1px solid #b9ccdd;border-radius:9px;padding:10px 13px;background:var(--surface,#fff);color:var(--text,#173d58);font:700 13px/1.2 Arial,sans-serif;cursor:pointer;white-space:nowrap}.site-header .site-member-preview[hidden]{display:none}.site-header .site-member-preview:focus-visible{outline:3px solid #58baff;outline-offset:3px}html[data-theme="dark"] .site-header .site-member-preview{background:#17334a;color:#e1f2ff;border-color:#4d6d87}@media(max-width:800px){.site-header:has(.site-member-preview:not([hidden])){flex-wrap:wrap}.site-header:has(.site-member-preview:not([hidden])) .site-header-right{flex-wrap:wrap;gap:8px}.site-header .site-member-preview{font-size:12px;padding:10px}}
