.tidtoka-root{--paper:#f4f0e8;--ink:#18231d;--muted:#68716b;--lime:#c8f34a;--line:#d4d2c9;--card:#fffdf8;--dark:#15221b;--red:#ff715f;--shadow:0 12px 40px #18231d12}.tidtoka-root *{box-sizing:border-box}.tidtoka-root{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.tidtoka-root .topbar{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,72px);position:sticky;top:0;background:#f4f0e8ed;backdrop-filter:blur(14px);z-index:20}.tidtoka-root .brand{border:0;background:none;display:flex;align-items:center;gap:11px;font-weight:900;letter-spacing:.13em;color:var(--ink);cursor:pointer}.tidtoka-root .brand-mark{width:30px;height:30px;background:var(--ink);color:var(--lime);display:grid;place-items:center;border-radius:50%;font-family:Georgia;font-style:italic;font-size:20px}.tidtoka-root .icon-btn{border:0;background:transparent;font-size:24px;color:inherit;cursor:pointer}.tidtoka-root .view{display:none;max-width:1240px;margin:auto;padding:68px clamp(20px,5vw,72px) 100px}.tidtoka-root .view.active{display:block}.tidtoka-root .hero{display:grid;grid-template-columns:1fr 1fr;align-items:end;margin-bottom:56px}.tidtoka-root .eyebrow{font-size:12px;font-weight:900;letter-spacing:.16em;margin:0 0 15px;color:#486052}.tidtoka-root .hero h1,.tidtoka-root .page-head h1{font-family:Georgia,serif;font-size:clamp(52px,7vw,94px);line-height:.9;letter-spacing:-.055em;margin:0}.tidtoka-root .hero .lede{max-width:430px;font-size:18px;line-height:1.6;color:var(--muted);justify-self:end}.tidtoka-root .panel{background:var(--card);border:1px solid var(--line);border-radius:3px;box-shadow:var(--shadow)}.tidtoka-root .import-panel{display:grid;grid-template-columns:56px 1fr 1.4fr;gap:25px;align-items:center;padding:34px}.tidtoka-root .step-num{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-weight:800}.tidtoka-root .panel h2{margin:0 0 7px;font-family:Georgia,serif;font-size:27px}.tidtoka-root .panel p{margin:0;color:var(--muted)}.tidtoka-root .url-form{display:flex;gap:8px}.tidtoka-root .url-form input,.tidtoka-root .search input,.tidtoka-root .share-box input{border:1px solid var(--line);background:var(--paper);padding:16px 18px;font:inherit;min-width:0;flex:1;outline:none}.tidtoka-root .url-form input:focus,.tidtoka-root .search:focus-within{border-color:var(--ink)}.tidtoka-root .btn{border:0;padding:16px 22px;font:inherit;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:space-between;gap:22px}.tidtoka-root .btn.primary{background:var(--ink);color:white}.tidtoka-root .btn.primary:hover{background:#2a3d32}.tidtoka-root .btn.secondary{background:var(--card);border:1px solid var(--line);color:var(--ink)}.tidtoka-root .status{grid-column:3;font-size:13px;color:var(--muted);min-height:0}.tidtoka-root .status.error{color:#a9362a}.tidtoka-root .or{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.15em;margin:26px 0}.tidtoka-root .or:before,.tidtoka-root .or:after{content:"";height:1px;background:var(--line);flex:1}.tidtoka-root .quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tidtoka-root .action-card{border:1px solid var(--line);background:transparent;padding:22px;display:flex;align-items:center;text-align:left;gap:18px;color:inherit;cursor:pointer}.tidtoka-root .action-card:hover{background:var(--card)}.tidtoka-root .action-card>span:nth-child(2){display:flex;flex-direction:column;flex:1;gap:5px}.tidtoka-root .action-card small{color:var(--muted)}.tidtoka-root .action-icon{width:44px;height:44px;background:#e4e8dc;border-radius:50%;display:grid;place-items:center;font-size:20px}.tidtoka-root .page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:50px}.tidtoka-root .page-head h1{font-size:clamp(48px,6vw,76px)}.tidtoka-root .toolbar,.tidtoka-root .timing-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.tidtoka-root .search{border:1px solid var(--line);background:var(--card);display:flex;align-items:center;padding-left:15px;max-width:390px;flex:1}.tidtoka-root .search input{border:0;background:transparent}.tidtoka-root .count{color:var(--muted);font-size:14px}.tidtoka-root .table-wrap{overflow:auto;border-top:2px solid var(--ink)}.tidtoka-root table{border-collapse:collapse;width:100%;background:var(--card)}.tidtoka-root th,.tidtoka-root td{text-align:left;padding:17px 15px;border-bottom:1px solid var(--line);white-space:nowrap}.tidtoka-root th{font-size:11px;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}.tidtoka-root td:first-child{font-weight:900}.tidtoka-root .delete-btn{border:0;background:none;color:#a2554c;cursor:pointer}.tidtoka-root .add-row{width:100%;padding:18px;border:1px dashed #aaa;background:transparent;color:var(--ink);font-weight:800;cursor:pointer;margin-top:12px}.tidtoka-root .timing-view{max-width:none;background:var(--dark);color:white;min-height:calc(100vh - 72px);padding-left:clamp(20px,5vw,72px);padding-right:clamp(20px,5vw,72px)}.tidtoka-root .timing-head{display:grid;grid-template-columns:1fr auto auto;gap:32px;align-items:center;border-bottom:1px solid #ffffff29;padding-bottom:34px}.tidtoka-root .timing-head h1{font-family:Georgia,serif;font-size:42px;margin:0}.tidtoka-root .clock-box{display:flex;flex-direction:column;align-items:flex-end}.tidtoka-root .clock-box span{font-size:10px;letter-spacing:.18em;color:#aeb8b1}.tidtoka-root .clock-box strong{font-variant-numeric:tabular-nums;font-size:clamp(34px,5vw,66px);letter-spacing:-.04em}.tidtoka-root .btn.start{background:var(--lime);color:var(--ink);height:62px}.tidtoka-root .btn.finish{background:var(--red);color:#211;height:62px}.tidtoka-root .timing-toolbar{margin-top:30px;gap:16px;justify-content:flex-start}.tidtoka-root .search.dark{background:#ffffff0c;border-color:#ffffff2b;max-width:none}.tidtoka-root .search.dark input{color:white}.tidtoka-root .search.dark input::placeholder{color:#9da9a1}.tidtoka-root .stat{border-left:1px solid #ffffff30;padding-left:20px;display:flex;flex-direction:column;min-width:90px}.tidtoka-root .stat b{font-size:24px}.tidtoka-root .stat span{font-size:11px;color:#aeb8b1}.tidtoka-root .runner-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:11px}.tidtoka-root .runner-card{border:1px solid #ffffff29;background:#ffffff0a;color:white;padding:0;display:grid;grid-template-columns:68px 1fr;min-height:92px;text-align:left;cursor:pointer;position:relative}.tidtoka-root .runner-card:hover:not(:disabled){border-color:var(--lime);background:#ffffff13}.tidtoka-root .runner-card .bib{font:700 30px Georgia;border-right:1px solid #ffffff20;display:grid;place-items:center;color:var(--lime)}.tidtoka-root .runner-card .person{padding:16px;display:flex;flex-direction:column;gap:5px}.tidtoka-root .runner-card small{color:#a8b1ab}.tidtoka-root .runner-card.finished{background:var(--lime);color:var(--ink);border-color:var(--lime)}.tidtoka-root .runner-card.finished .bib{color:var(--ink);border-color:#1b281f33}.tidtoka-root .runner-card.finished small{color:#34442e}.tidtoka-root .runner-card.status-card{opacity:.55}.tidtoka-root .card-menu{position:absolute;right:7px;top:5px;border:0;background:transparent;color:inherit;cursor:pointer;font-size:18px}.tidtoka-root .status-menu{position:absolute;right:6px;top:32px;background:white;color:var(--ink);padding:5px;z-index:2;box-shadow:var(--shadow);display:flex;gap:4px}.tidtoka-root .status-menu button{border:0;padding:7px 9px;font-weight:800;cursor:pointer}.tidtoka-root .timing-hint{text-align:center;color:#93a198;font-size:13px;margin-top:30px}.tidtoka-root .race-pill{background:var(--dark);color:white;padding:8px 12px;border-radius:30px;font-variant-numeric:tabular-nums;font-size:13px}.tidtoka-root .pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--lime);margin-right:8px}.tidtoka-root .tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:30px;overflow:auto}.tidtoka-root .tabs button{border:0;background:none;padding:14px 18px;font-weight:800;color:var(--muted);white-space:nowrap;cursor:pointer}.tidtoka-root .tabs button.active{color:var(--ink);box-shadow:inset 0 -3px var(--ink)}.tidtoka-root .result-section{margin:34px 0}.tidtoka-root .result-section h2{font:36px Georgia;margin:0 0 12px}.tidtoka-root .place{font:700 20px Georgia}.tidtoka-root .result-time{font-variant-numeric:tabular-nums;font-weight:800}.tidtoka-root .result-actions{display:flex;gap:8px}.tidtoka-root .share-box{display:flex;margin:-25px 0 30px}.tidtoka-root .share-box input{background:white}.tidtoka-root .muted{color:var(--muted)}.tidtoka-root .text-btn{padding-left:0;background:none;color:var(--ink)}.tidtoka-root dialog{border:0;padding:0;background:var(--card);color:var(--ink);max-width:680px;width:calc(100% - 30px);box-shadow:0 25px 90px #0005}.tidtoka-root dialog::backdrop{background:#101a15aa;backdrop-filter:blur(3px)}.tidtoka-root dialog form{padding:30px}.tidtoka-root .dialog-head{display:flex;justify-content:space-between}.tidtoka-root .dialog-head h2{font:36px Georgia;margin:0 0 25px}.tidtoka-root .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.tidtoka-root .form-grid label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:800}.tidtoka-root .form-grid input,.tidtoka-root .form-grid select{padding:13px;border:1px solid var(--line);background:var(--paper);font:inherit}.tidtoka-root .wide{width:100%;margin-top:22px}.tidtoka-root .toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:white;padding:13px 20px;opacity:0;pointer-events:none;transition:.2s;z-index:99}.tidtoka-root .toast.show{opacity:1;transform:translate(-50%,0)}.tidtoka-root .hidden{display:none!important}.tidtoka-root .sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}@media(max-width:800px){.tidtoka-root .view{padding-top:38px}.tidtoka-root .hero{grid-template-columns:1fr}.tidtoka-root .hero .lede{justify-self:start}.tidtoka-root .import-panel{grid-template-columns:48px 1fr}.tidtoka-root .url-form,.tidtoka-root .status{grid-column:1/-1}.tidtoka-root .quick-actions{grid-template-columns:1fr}.tidtoka-root .page-head{align-items:flex-start;gap:25px;flex-direction:column}.tidtoka-root .timing-head{grid-template-columns:1fr auto}.tidtoka-root .timing-head .btn{grid-column:1/-1}.tidtoka-root .clock-box strong{font-size:34px}.tidtoka-root .result-actions{width:100%;flex-wrap:wrap}.tidtoka-root .form-grid{grid-template-columns:1fr}.tidtoka-root .runner-grid{grid-template-columns:1fr 1fr}.tidtoka-root .runner-card{grid-template-columns:52px 1fr;min-height:78px}.tidtoka-root .runner-card .bib{font-size:23px}.tidtoka-root .runner-card .person{padding:12px}.tidtoka-root .timing-toolbar{flex-wrap:wrap}.tidtoka-root .search.dark{flex-basis:100%}}@media(max-width:520px){.tidtoka-root .runner-grid{grid-template-columns:1fr}.tidtoka-root .topbar{height:62px}.tidtoka-root .hero h1{font-size:55px}.tidtoka-root .url-form{flex-direction:column}.tidtoka-root .btn{width:100%}.tidtoka-root .clock-box strong{font-size:28px}.tidtoka-root .results-head{margin-bottom:25px}}
/* Keep primary-button hover states within the FÍF blue palette. */
.tidtoka-root .btn.primary:hover{background:#17336f}
/* Prevent WordPress theme heading colours from leaking into the dark timing view. */
.tidtoka-root .timing-view .timing-head h1{color:#fff!important;-webkit-text-fill-color:#fff}
/* Keep long race names clear of the result date and status line. */
.tidtoka-root .results-head>div:first-child{min-width:0}.tidtoka-root .results-head h1{line-height:1.05;margin-bottom:18px;overflow-wrap:anywhere}.tidtoka-root .results-head #resultsDate{margin:0;line-height:1.45}
/* Softer touch targets in the timekeeping view. */
.tidtoka-root .timing-view .btn,.tidtoka-root .timing-view .status-mode-btn{border-radius:10px}.tidtoka-root .timing-view .runner-card{border-radius:10px;overflow:hidden}.tidtoka-root .timing-view .card-menu{border-radius:0 9px 0 0}.tidtoka-root .timing-view .status-menu,.tidtoka-root .timing-view .status-menu button{border-radius:6px}

/* Make the primary race actions unmistakable at a glance. */
.tidtoka-root .timing-view .btn.start{background:#2e9f5b;color:#fff}.tidtoka-root .timing-view .btn.start:hover{background:#247f49}.tidtoka-root .timing-view .btn.finish{background:#d64045;color:#fff}.tidtoka-root .timing-view .btn.finish:hover{background:#b72f34}

/* Full-screen and home-screen app controls. */
.tidtoka-root .topbar-actions{display:flex;align-items:center;gap:8px}.tidtoka-root .topbar-actions .icon-btn{width:44px;height:44px;display:grid;place-items:center;border-radius:50%}.tidtoka-root .topbar-actions .icon-btn:hover{background:#294a8f12}.tidtoka-root .install-dialog{max-width:560px;border-radius:14px}.tidtoka-root .install-dialog form{padding:28px}.tidtoka-root .install-dialog .dialog-head{gap:20px}.tidtoka-root .install-dialog .dialog-head h2{margin-bottom:8px}.tidtoka-root .install-dialog .dialog-head p{margin:0;line-height:1.45;color:var(--muted)}.tidtoka-root .install-steps{margin-top:22px;padding:20px;border-radius:10px;background:var(--paper);line-height:1.6}.tidtoka-root .install-steps p{margin:8px 0}.tidtoka-root .install-steps small{display:block;color:var(--muted)}body.tidtoka-standalone{margin:0;background:#f5f7fb}body.tidtoka-standalone .tidtoka-root{min-height:100vh;min-height:100dvh;left:0;width:100%;margin-left:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}body.tidtoka-standalone .tidtoka-root .topbar{top:env(safe-area-inset-top)}@media(max-width:520px){.tidtoka-root .install-dialog form{padding:22px}.tidtoka-root .install-dialog .dialog-actions{flex-direction:column-reverse}.tidtoka-root .install-dialog .dialog-actions .btn{width:100%}}
