@font-face{font-family:Inter;src:url('/static/fonts/InterVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}*{box-sizing:border-box}body{margin:0;color:#192a49;background:#f2f4f8;font:14px/1.55 Inter,Arial,sans-serif}header{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap;background:#fff;border-top:5px solid #e3293b;border-bottom:1px solid #dce2eb;padding:21px 30px}.brand{display:flex;gap:20px;align-items:center;font-size:24px;font-weight:500}.brand>span{color:#e3293b;font-size:36px;letter-spacing:-2px}.brand small{display:block;letter-spacing:1px;font-size:11px;color:#78849b;font-weight:400}.top-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.shell{display:flex;min-height:560px}nav{background:#192e56;flex:0 0 218px;padding:24px 14px}.nav{display:block;color:#c9d3e6;text-decoration:none;padding:11px 15px;margin-bottom:5px;border-radius:5px}.nav.active{background:#e3293b;color:#fff}.nav:hover{background:#2a4066}main{flex:1;min-width:0;max-width:1350px;padding:28px 32px}h1{font-size:25px;font-weight:500;margin:0 0 18px}h2{font-size:19px;font-weight:500;margin-top:28px}.muted,small{color:#65738b}small{font-size:12px}a{color:#284a85}section{margin:22px 0;background:#fff;border:1px solid #dce2eb;border-radius:5px;overflow:hidden}.day{background:#192e56;color:#fff;padding:12px 18px;font-weight:500}.match{display:grid;grid-template-columns:64px 1fr 154px;gap:18px;padding:21px 18px;align-items:center;border-bottom:1px solid #e0e5ed}.match:last-child{border-bottom:0}.time{font-size:17px;font-weight:500;font-variant-numeric:tabular-nums}.teams{font-size:16px;font-weight:500}.teams span{color:#97a2b5}.actions{display:flex;flex-direction:column;gap:7px;text-align:center}button{font:inherit;background:#fff;color:#273d62;border:1px solid #cbd4e2;padding:9px 13px;min-height:40px;border-radius:5px;cursor:pointer}button:hover{background:#f1f4f8}.primary{background:#e3293b;border-color:#e3293b;color:#fff}.primary:hover{background:#c91c2d}.status{color:#297655;font-size:12px}.linkbox{background:#f4f6fa;border:1px solid #e0e5ef;border-radius:5px;padding:11px 13px;margin-top:12px}.linkrow{display:flex;align-items:center;gap:10px;margin:7px 0;flex-wrap:wrap}.linkrow input{flex:1;min-width:120px;font:12px monospace}details{font-size:12px;color:#63728a}summary{cursor:pointer}label{display:block;color:#53657e;font-size:12px}input,select,textarea{display:block;width:100%;font:14px Inter,Arial,sans-serif;color:#192a49;background:#fff;border:1px solid #cbd4e2;border-radius:5px;padding:10px;margin:5px 0 13px}textarea{resize:vertical}input[readonly]{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #77aaff;outline-offset:2px}.panel{background:#fff;border:1px solid #dce2eb;border-radius:6px;padding:20px;margin:20px 0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px}.grid button{align-self:end;margin-bottom:13px}.narrow{max-width:560px}.login{max-width:400px;margin:24px auto;background:#fff;padding:28px;border:1px solid #dce2eb;border-radius:7px}.login .primary{width:100%}.empty{background:#fff;padding:35px;text-align:center;color:#65738b;border:1px solid #dce2eb}.notice{background:#e7f0eb;color:#275c45;border-radius:5px;padding:13px 16px;margin:15px 0}.toolbar{display:flex;gap:16px;flex-wrap:wrap;margin:15px 0}.tablewrap{overflow-x:auto;border:1px solid #dce2eb;border-radius:5px;background:#fff}table{border-collapse:collapse;width:100%;text-align:left}th{background:#e8edf5;font-size:12px;font-weight:500}th,td{padding:13px 16px;border-bottom:1px solid #e0e5ed;vertical-align:top}td{font-size:13px}td form button{font-size:12px;white-space:nowrap}footer{padding:15px 30px;color:#77859b;font-size:11px;background:#fff;border-top:1px solid #dce2eb}@media(max-width:760px){.shell{display:block;min-height:0}nav{display:flex;flex-wrap:wrap;gap:4px;padding:10px}.nav{margin:0;padding:9px 12px}main{padding:20px 15px}header{padding:16px 18px}.brand{font-size:20px}.grid{grid-template-columns:1fr}.match{grid-template-columns:48px 1fr;gap:12px}.actions{grid-column:2;align-items:flex-start}.teams{font-size:14px}.time{font-size:14px}input,select,textarea{font-size:16px}.linkrow input{font-size:12px}.linkrow{gap:7px}th,td{padding:10px}.top-actions{font-size:12px}}

/* v0.1.1: viewport layout and Fixtures calendar */
html{min-height:100%}body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
header{flex-shrink:0}.shell{flex:1;min-height:0}main{max-width:none;padding:30px 36px}footer{flex-shrink:0}
.brand{color:#192e56;font-size:26px;gap:18px;line-height:1.25}.brand-logo{width:64px;height:64px;object-fit:contain}.brand small{margin-top:7px}
.calendar-scroll{overflow-x:auto}.calendar-table{min-width:790px}.calendar-table th{white-space:nowrap}.calendar-table td{vertical-align:middle;padding:17px 18px;font-size:14px}.calendar-table .game{font-size:15px;font-weight:450;min-width:260px}.game span{color:#8894a7;font-size:12px;padding:0 8px}.clock,.datecell{white-space:nowrap;font-variant-numeric:tabular-nums}.clock{font-size:16px!important;font-weight:500}.booking-cell{width:175px}.booking-cell .status{display:block;margin-top:5px}.calendar-table tr:last-child td{border-bottom:0}
@media(min-width:1920px){body{font-size:15px}nav{flex-basis:244px}.brand{font-size:28px}main{padding:34px 42px}h1{font-size:28px}.calendar-table td{padding:19px 22px;font-size:15px}.calendar-table .game{font-size:17px}.calendar-table th{font-size:13px}}
@media(max-width:760px){.shell{flex:1}main{padding:20px 15px}.brand{font-size:19px;gap:12px}.brand-logo{width:48px;height:48px}.brand small{font-size:9px;letter-spacing:.5px}header{gap:14px}.calendar-table td{padding:12px 14px}.calendar-table .game{font-size:14px}.brand>div{max-width:250px}}

/* v0.1.3: consistent calendar columns across all days */
.calendar-table{table-layout:fixed;min-width:1000px}
.calendar-table .col-round{width:6%}.calendar-table .col-game{width:44%}.calendar-table .col-date{width:14%}.calendar-table .col-clock{width:11%}.calendar-table .col-booking{width:14%}
.calendar-table .game{min-width:0;overflow-wrap:anywhere}.calendar-table th,.calendar-table td{padding:17px 18px}.calendar-table th:nth-child(4),.calendar-table th:nth-child(5),.calendar-table .clock{text-align:center}
.automatic-recipients{color:#65738b}.delete-panel{margin-top:28px;padding:18px;border:1px solid #e5c9cc;border-radius:5px}.delete-panel a{color:#aa2432}.danger{background:#b82335;border-color:#b82335;color:#fff}.danger:hover{background:#951c2a}
@media(min-width:1920px){.calendar-table th,.calendar-table td{padding:19px 22px}}
@media(max-width:760px){.calendar-table th,.calendar-table td{padding:12px 14px}}
