/* Admin layout reused from Trip. */
.adm-home{display:flex;flex-direction:column;gap:16px;padding-bottom:8px}
/* v457: heron ligger tatt mot toppraden, rutnatet far luft efterat. */
.adm-home>.adm-hero{margin-top:-4px}
.adm-home>.adm-hero+.adm-tiles{margin-top:4px}
/* v456: adminsidan har ett eget hero-kort. Sidmallens stora bild ovanfor
   skulle bli en andra rubrik pa samma sak - den doljs bara har. */
.v2-subpage[data-page="lottery"]>.vj-hero,
.v2-subpage[data-page="lottery"]>.vj-header{display:none!important}
.adm-hero{position:relative;min-height:230px;border-radius:0;margin:0 -12px;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:22px 20px;overflow:hidden}
.adm-hero h1{margin:0;color:#fff!important;font:700 clamp(26px,6.4vw,34px)/1.1 Inter,system-ui,sans-serif;letter-spacing:-.015em;text-shadow:0 2px 12px #0006}
.bnh-admin-v145 .adm-hero p{margin:6px 0 0!important;color:#eef4ee!important;font:500 13px/1.35 Inter,system-ui,sans-serif!important;letter-spacing:.01em!important;text-transform:none!important;text-shadow:0 1px 6px #0007}
.adm-title{margin:4px 2px -4px;font:600 11px/1 Inter,system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#5d7a6b!important}
.adm-cards{display:flex;flex-direction:column;gap:10px}
/* v504: resraden i gruppens reselista far en egen knapprad under sig. */
.adm-trip-item{display:block}
.adm-trip-actions{display:flex;gap:8px;flex-wrap:wrap;padding:0 16px 12px}
.adm-trip-actions button{flex:0 0 auto}
.adm-pill.is-amber{background:#fdf6e3!important;color:#6b5520!important;border-color:#e8d9a8!important}
.adm-card{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:#fff;border:1px solid #e3e8dd;border-radius:20px;padding:16px;cursor:pointer;min-height:76px;box-shadow:0 6px 18px #163a2708}
.adm-card:hover{border-color:#c9d6c8}
.adm-card-icon{flex:0 0 auto;width:56px;height:56px;border-radius:50%;background:#e8efe6;display:grid;place-items:center}
.adm-card-icon img{width:30px;height:30px;object-fit:contain}
.adm-card-body{flex:1;min-width:0;display:block}
.adm-card-body strong{display:block;font:700 16px/1.25 Inter,system-ui,sans-serif;color:#0f3d2a!important;letter-spacing:-.01em}
.adm-card-body small{display:block;margin-top:3px;font:400 12px/1.4 Inter,system-ui,sans-serif;color:#63746a!important}
.adm-card-body em{display:block;margin-top:7px;font:600 12px/1 Inter,system-ui,sans-serif;font-style:normal;color:#2f6b4a!important}
.adm-card-chevron{flex:0 0 auto;font-size:24px;color:#9bab9f}
.adm-bar{height:5px;background:#e6ebe3;border-radius:5px;overflow:hidden;margin-top:8px}
.adm-bar span{display:block;height:100%;background:#092e1c}
.adm-ready{background:#f2f5ee;border:1px solid #e0e5dc;border-radius:20px;padding:16px}
.adm-ready>small{display:block;font:600 10px/1 Inter,system-ui,sans-serif;letter-spacing:.14em;color:#5d7a6b!important;margin-bottom:10px}
.adm-ready ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.adm-ready li{display:flex;gap:9px;align-items:baseline;font:500 13px/1.4 Inter,system-ui,sans-serif;color:#153c2d!important}
.adm-ready li span{flex:0 0 14px;font-weight:800}
.adm-ready li.ok span{color:#2f6b4a!important}
.adm-ready li.todo span{color:#b4791f!important}
.adm-ready li.todo{color:#7a5a23!important}
.adm-back{background:#fff;border:1px solid #dce2d8;border-radius:999px;padding:9px 16px;font:600 13px/1 Inter,system-ui,sans-serif;color:#153c2d!important;cursor:pointer;min-height:40px;margin-bottom:12px}
/* v454: adminstarten ar inte langre en hero + en lista. Den ar rubriken Admin,
   resans namn och ett rutnat med ikoner - flikraden ar borta helt. */
.adm-head{margin:10px 2px 2px}
.adm-head h1{margin:0;font:500 34px/1.05 'Bodoni Moda',Georgia,serif;color:#092e1c!important}
.adm-head p{margin:7px 0 0;font:600 12px/1.3 Inter,system-ui,sans-serif!important;letter-spacing:.12em;text-transform:uppercase;color:#5d7a6b!important}
.adm-tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.adm-tile{display:flex;flex-direction:column;align-items:center;gap:9px;background:#fff;border:1px solid #e3e8dd;border-radius:18px;padding:22px 14px 18px;min-height:152px;text-align:center;cursor:pointer;box-shadow:0 4px 14px #163a2708}
.adm-tile:hover{border-color:#c9d6c8}
/* v456: ikonerna ritas inline i stallet for att peka pa ./assets/v2/icons/ -
   dels ser de ut som konceptbildens streckikoner, dels slipper sidan vara
   beroende av bildfiler som inte gar att kontrollera harifran. */
.adm-tile-icon{flex:0 0 auto;width:58px;height:58px;color:#0f3d2a;display:grid;place-items:center}
.adm-tile-icon svg,.adm-tile-icon img{width:56px;height:56px;display:block;object-fit:contain}
.adm-tile-label{display:block;font:700 15.5px/1.2 Inter,system-ui,sans-serif;color:#0f3d2a!important;letter-spacing:-.01em}
.adm-tile-desc{display:block;margin-top:-4px;font:400 11.5px/1.4 Inter,system-ui,sans-serif;color:#7b8a80!important}
.adm-tile-status{display:block;font:600 12px/1.35 Inter,system-ui,sans-serif;color:#153c2d!important}
/* v455: statusflaggan pa varje ikon - gron bock nar det ar klart, gul varning
   nar nagot fattas. Samma sprak som checklistan pa startsidan. */
.adm-tile-flag{display:flex;align-items:baseline;justify-content:center;gap:5px;margin-top:auto;padding-top:4px;font:600 11px/1.35 Inter,system-ui,sans-serif}
.adm-tile-flag>span{font-weight:800}
.adm-tile-flag.is-ok{color:#2f6b4a!important}
.adm-tile-flag.is-warn{color:#9a6a12!important}
.bnh-admin-v145 .adm-hero .adm-hero-comp{margin:7px 0 0!important;color:#fff!important;font:600 14px/1.3 Inter,system-ui,sans-serif!important;letter-spacing:.01em!important;text-transform:none!important;text-shadow:0 1px 6px #0007}
/* v454: segmenterad vaxel (Medlemmar/Resor/Info, Fran grupp/Lank/Manuellt) */
.adm-seg{display:flex;gap:6px;background:#eef1ea;border-radius:15px;padding:4px}
.adm-seg button{flex:1;min-height:40px!important;border:0!important;border-radius:11px!important;background:transparent!important;font:600 13px/1 Inter,system-ui,sans-serif!important;color:#5d7a6b!important;cursor:pointer}
.adm-seg button.is-on{background:#0f3d2a!important;color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:0 2px 8px #163a2726}
/* v462: fyra flikar far plats aven pa en smal telefon. */
.adm-seg.is-four button{font-size:12px!important;padding:0 4px!important}
/* Falt i konceptets form: etikett ovanfor, ruta under, ingen kortram runt. */
.adm-form{display:flex;flex-direction:column;gap:14px}
.adm-field>span{display:block;font:600 12px/1.3 Inter,system-ui,sans-serif;color:#5d7a6b!important;margin-bottom:6px}
.adm-field input,.adm-field select,.adm-field textarea{width:100%;box-sizing:border-box}
.adm-field textarea{min-height:104px!important}
.adm-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.adm-days>li>button{align-items:flex-start;gap:12px}
.adm-day-n{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:#0f3d2a;color:#fff!important;-webkit-text-fill-color:#fff!important;display:grid;place-items:center;font:800 13px/1 Inter,system-ui,sans-serif;margin-top:1px}
.adm-days .adm-list-label strong{display:block;font:700 15px/1.25 Inter,system-ui,sans-serif;color:#153c2d!important}
.adm-days .adm-list-label small{display:block;margin-top:2px;font:500 12.5px/1.4 Inter,system-ui,sans-serif;color:#63746a!important}
.adm-days .adm-list-label em{display:block;margin-top:5px;font:600 11.5px/1.4 Inter,system-ui,sans-serif;font-style:normal;color:#2f6b4f!important}
.adm-days .adm-list-chevron{align-self:center}
.adm-formats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 4px}
.adm-formats button{display:grid;justify-items:center;align-content:center;gap:8px;min-height:92px;padding:12px 6px;border:1px solid #dce2d6;border-radius:14px;background:#fff;color:#153c2d!important;font:600 11.5px/1.25 Inter,system-ui,sans-serif;text-align:center;cursor:pointer}
.adm-formats img{width:26px;height:26px;object-fit:contain}
.adm-formats button.active{background:#0f3d2a!important;border-color:#0f3d2a!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.adm-formats button.active img{filter:brightness(0) invert(1)}
.adm-linkbtn{background:none;border:0;padding:0;font:inherit;color:#2f6b4f!important;text-decoration:underline;cursor:pointer}
.adm-formats-list button{min-height:112px;gap:6px}
.adm-formats-list button em{font-style:normal;font:500 10.5px/1.3 Inter,system-ui,sans-serif;color:#63746a!important}
.adm-formats-list button.is-used{border-color:#0f3d2a;box-shadow:inset 0 0 0 1px #0f3d2a}
.adm-h3{margin:0 0 6px;font:700 17px/1.25 Inter,system-ui,sans-serif;color:#153c2d!important}
.adm-formula{margin:8px 0;padding:12px;border-radius:12px;background:#f2f6ef;font:600 13px/1.5 ui-monospace,Menlo,Consolas,monospace;color:#153c2d!important;text-align:center}
.adm-points .adm-kv-value{font-variant-numeric:tabular-nums;font-weight:700}
.adm-days .adm-list-label em.is-ok{color:#2f6b4f!important}
.adm-days .adm-list-label em.is-warn{color:#9b6a1f!important}
.adm-balls{display:grid;gap:12px}
.adm-ball{background:#fff;border:1px solid #e3e8dd;border-radius:18px;padding:14px;display:grid;gap:8px}
.adm-ball-tray{border-style:dashed;background:#fbfcf8}
.adm-ball-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.adm-ball-head strong{font:700 15px/1.2 Inter,system-ui,sans-serif;color:#0f3d2a!important}
.adm-ball-head span{font:600 12px/1 ui-monospace,Menlo,Consolas,monospace;color:#63746a!important}

.ta-admin .card{overflow:hidden}.ta-admin input[type=checkbox]{width:auto}.ta-actions{display:flex;flex-wrap:wrap;gap:8px}.ta-actions button{width:auto}.ta-player-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ta-admin .adm-home{padding:16px}.ta-admin .adm-note{line-height:1.5}.ta-admin .adm-card-pad{padding:18px;background:#fff;border:1px solid #dedfd3;border-radius:16px}.ta-admin .adm-kv{padding:0;list-style:none}.ta-admin .adm-kv li{display:flex;justify-content:space-between;padding:8px;border-bottom:1px solid #dedfd3}.ta-admin .adm-primary,.ta-admin .adm-secondary{border-radius:12px;padding:12px;border:1px solid #103d31;background:white}.ta-admin .adm-primary{background:#103d31;color:white}.ta-admin .ta-error{color:#9a301b}.ta-admin .ta-wizard-nav{display:flex;gap:5px;overflow:auto;margin-bottom:16px}.ta-admin .ta-wizard-nav span{padding:8px;font-size:12px;white-space:nowrap}.ta-admin .ta-wizard-nav .active{background:#103d31;color:white;border-radius:12px}.ta-draw-players{display:grid;gap:8px}.ta-draw-players label{margin:0}.ta-admin h2{font-size:22px}.ta-admin small{overflow-wrap:anywhere}@media(max-width:420px){.ta-player-grid{grid-template-columns:1fr}}/* Trip-style tournament setup: one focused step at a time. */
.to-onboarding{padding:0}.to-wizard-hero{height:160px;background-size:cover;background-position:center;display:flex;flex-direction:column;align-items:center;justify-content:center;color:white}.to-wizard-hero p{font-size:16px;color:white!important}.to-wizard-hero>div{display:flex;gap:6px}.to-wizard-hero span{display:block;width:36px;height:8px;border:1px solid white;border-radius:8px}.to-wizard-hero .done{background:#f8f7ed}.to-onboarding form{padding:24px 28px 32px;min-height:65vh}.to-onboarding h2{font:38px/1.1 'Libre Caslon Display',Georgia,serif;margin:0 0 12px}.to-onboarding h3{font:28px/1.2 'Libre Caslon Display',Georgia,serif;margin:30px 0 14px}.to-onboarding p{color:#62766e;line-height:1.5}.to-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.to-onboarding input,.to-onboarding select{min-width:0;border-radius:14px;padding:14px}.to-onboarding input[type=file]{font-size:12px;padding:10px;max-width:100%}.to-onboarding label{margin:20px 0}.to-design{border:1px solid var(--line);border-radius:16px;padding:16px;margin:22px 0}.to-design summary{cursor:pointer;font-weight:600}.to-design fieldset{min-width:0}.to-design .bnh-hero-editor{padding:0;border:0}.to-day-tabs{display:flex;gap:8px;overflow:auto;margin:28px 0}.to-day-tabs button{flex:1;min-width:84px;border:1px solid var(--line);background:#f0f3e8;border-radius:28px;padding:12px}.to-day-tabs .active{background:var(--ink);color:white}.to-presets{display:grid;gap:12px;margin:22px 0}.to-presets button{text-align:left;display:grid;gap:8px;padding:20px;border-radius:18px;border:1px solid var(--line);background:#fffef8}.to-presets span{font-size:14px;line-height:1.5}.to-presets [aria-pressed=true],.to-formats [aria-pressed=true]{background:var(--ink);color:white}.to-formats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.to-formats button{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:120px;padding:14px 6px;border-radius:17px;background:#fffef8;border:1px solid var(--line);font-size:14px;font-weight:600}.to-formats img,.to-formats svg{width:30px;height:30px;object-fit:contain}.to-formats [aria-pressed=true] img{filter:brightness(0) invert(1)}.to-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:48px}.to-actions button{width:100%;margin:0}.to-onboarding .ta-error{color:#9a301b}.to-onboarding .tournament-hero{overflow:hidden}.to-onboarding .ta-player-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.to-onboarding .card{min-width:0}.to-onboarding .hero-gallery img{height:100px!important}@media(max-width:440px){.to-onboarding form{padding:22px 16px}.to-onboarding h2{font-size:32px}.to-onboarding .hero-gallery img{height:70px!important}.to-formats{grid-template-columns:repeat(2,minmax(0,1fr))}.to-two{gap:8px}.to-design{padding:10px}.to-onboarding input{padding:12px 8px}}

body:has(.to-onboarding) #gamebook-bottom-nav{display:none}body:has(.to-onboarding) #content-view{padding-bottom:0}.to-onboarding .to-design .hero-device-stage{max-width:100%}


.tournament-logo-library{margin:24px 0}.tournament-logo-library>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tournament-logo-library button{border:2px solid #d7dfd5;border-radius:14px;padding:8px;background:#fffef8;min-width:0}.tournament-logo-library button[aria-pressed=true]{border-color:#0b4938;box-shadow:0 0 0 1px #0b4938}.tournament-logo-library button>span{display:flex;align-items:center;justify-content:center;height:88px;background:#174a39;border-radius:8px}.tournament-logo-library img{max-width:90%;height:70px;object-fit:contain}.tournament-logo-library small{display:block;padding-top:8px;font-size:12px}

/* v534: nollstallning av scorekort - en tydligt avvarjande knapp, samma
   form som ovriga adminknappar. */
.ta-danger{border:1px solid #f0c9c9;background:#fff5f5;color:#b3261e;border-radius:12px;
 padding:13px 18px;font-weight:600;width:auto}
.ta-danger:hover{background:#fdeaea}

/* v535: deltagarlistan - luft mellan knappraden och forsta kortet (fieldset-
   legenden lag tidigare tatt inpa knapparna), och en papperskorgsknapp i
   stallet for en kryssruta som kravde ett extra Spara. */
.ta-people-actions{margin-bottom:26px}
.ta-players fieldset.card{margin-top:22px}
.ta-players fieldset.card:first-of-type{margin-top:0}
.ta-player-foot{display:flex;justify-content:flex-end;margin-top:14px;
 border-top:1px solid var(--line);padding-top:12px}
.ta-remove{display:inline-flex;align-items:center;gap:8px;width:auto;
 border:1px solid #f0c9c9;background:#fff5f5;color:#b3261e;border-radius:11px;
 padding:10px 14px;font-weight:600;font-size:14px}
.ta-remove:hover{background:#fdeaea}

/* v561: en registrerad langd i sidotavlingarna - namn, ett falt att ratta i
   och en vag att ta bort den. Radar upp sig pa smala skarmar. */
.ta-side-rad{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;
 padding:10px 0;border-bottom:1px solid var(--line,#dedfd3)}
.ta-side-rad:last-of-type{border-bottom:0}
.ta-side-rad>b{flex:1 1 110px;min-width:0;font:600 14px Inter,sans-serif;overflow-wrap:anywhere}
.ta-side-rad label{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:13px;flex:0 0 auto}
.ta-side-rad input{width:88px;padding:8px 10px;text-align:right}
.ta-side-rad button{border:1px solid var(--line,#dedfd3);background:#fff;border-radius:10px;
 padding:8px 12px;font:600 13px Inter,sans-serif}
.ta-side-rad .ta-danger{border-color:#f0c9c9;color:#a32424}

/* Ball Optimizer */
.bo-spelare{padding:12px 0;border-bottom:1px solid #e6e3d9}
.bo-spelare:last-child{border-bottom:0}
.bo-spelare strong{font-size:15px}
.bo-spelare small{display:block;color:#6f7d74;font-size:12px;margin-top:2px}
.bo-saknar{margin:6px 0 0;font-size:13px;line-height:1.5;color:#405847}
.bo-klar{margin:6px 0 0;font-size:13px;color:#1f7a4d}
.bo-dag{padding:12px 0;border-bottom:1px solid #e6e3d9}
.bo-dag:last-child{border-bottom:0}
.bo-dag-last{opacity:.6}
.bo-dag .pill{margin-left:8px}
.bo-bollar{display:grid;gap:4px;margin-top:8px;font-size:13px;line-height:1.5}
.bo-bollar b{font-weight:600;margin-right:6px}

/* Keep checkbox controls beside their labels in Start & results. */
.ta-admin label.ta-start-check{display:flex;align-items:center;justify-content:flex-start;gap:10px;margin:16px 0}.ta-admin label.ta-start-check input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:0;padding:0;accent-color:#074653}.ta-admin label.ta-start-check span{flex:1;min-width:0}.ta-admin [data-start-draw]{display:grid;gap:8px;margin:16px 0}.ta-admin [data-shotgun][hidden]{display:none}
