:root{--green: #2e5f8a;--green-dark: #1a3a5c;--navy: #2e5f8a;--navy-dark: #1a3a5c;--bg: #f4f6f4;--card: #ffffff;--border: #d9e0d9;--text: #1c241c;--muted: #687068;--danger: #b23b3b;--warn: #c8861a;--accent: #d7f25a;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--card);border-radius:8px;padding:.45rem .8rem;transition:background .15s,border-color .15s}button:hover{border-color:var(--green)}button.primary{background:var(--green);color:#fff;border-color:var(--green)}button.primary:hover{background:var(--green-dark)}button.danger{color:var(--danger);border-color:var(--danger)}button.danger:hover{background:var(--danger);color:#fff}button.ghost{background:transparent;border-color:transparent}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font:inherit;padding:.4rem .55rem;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text)}a{color:var(--green)}.app-header{background:#fff;color:var(--text);padding:.6rem 1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.app-header h1{font-size:1.15rem;margin:0}.app-logo{height:48px;width:auto;display:block;border-radius:8px}.app-logo-link{display:flex;text-decoration:none}.app-header nav{display:flex;gap:.4rem}.app-header nav button{background:#0000000f;color:var(--text);border-color:transparent}.app-header nav button.active{background:var(--green);color:#fff}.app-header .spacer{flex:1}main{padding:1rem;max-width:1100px;margin:0 auto}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1rem;margin-bottom:1rem}.row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.grow{flex:1}.muted{color:var(--muted)}.small{font-size:.85rem}.hint-mark{color:var(--muted);vertical-align:-2px}label[title]{cursor:help}.hint{position:relative;display:inline-flex}.hint-btn{display:inline-flex;align-items:center;padding:0;border:none;background:none;border-radius:999px;color:var(--muted);line-height:0}.hint-btn:hover,.hint-btn[aria-expanded=true]{color:var(--navy)}.hint-bubble{position:absolute;top:calc(100% + .4rem);left:0;z-index:20;width:max-content;max-width:min(240px,70vw);padding:.45rem .55rem;border-radius:8px;background:var(--text);color:#fff;font-size:.75rem;line-height:1.35;text-transform:none;letter-spacing:0;white-space:normal;box-shadow:0 6px 18px #0000002e}.hint-bubble.flip{left:auto;right:0}h2{margin-top:0}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--border)}th{font-size:.8rem;text-transform:uppercase;color:var(--muted);letter-spacing:.03em}.scroll-list{max-height:22rem;overflow-y:auto;border:1px solid var(--border);border-radius:8px}.scroll-list table{border-collapse:separate;border-spacing:0}.scroll-list thead th{position:sticky;top:0;z-index:1;background:var(--card)}.scroll-list tr:last-child td{border-bottom:none}.badge{display:inline-block;font-size:.75rem;padding:.1rem .45rem;border-radius:999px;background:#eef2ee;color:var(--muted)}.badge.grade{background:#e3edff;color:#2d5bb8}.badge.f{background:#ffe6f0;color:#b23b7a}.badge.m{background:#e3f0ff;color:#2d6bb8}.badge.unconfirmed{background:#fff4e0;color:#96601a;border:1px dashed #d9a441}.settings-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem .9rem;padding:.6rem .7rem;margin-bottom:.8rem;border:1px solid var(--border);border-radius:10px;background:#f8faf8}.settings-bar .grow{min-width:0}.bar-actions{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:.2rem}.field-label{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);white-space:nowrap}.field select,.field input{padding:.35rem .5rem}.field select{cursor:pointer}.field input[type=number]{width:6.5rem;cursor:auto}.field select:disabled,.field input:disabled{opacity:.55;background:#f1f3f1;cursor:not-allowed}.courts{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.court{border:1px solid var(--border);border-radius:10px;padding:.6rem;background:#fbfdfb}.court h4{margin:0 0 .4rem;display:flex;justify-content:space-between;align-items:center}.side{padding:.25rem 0}.vs{text-align:center;color:var(--muted);font-size:.8rem;margin:.2rem 0}.chip{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .5rem;border-radius:8px;border:1px solid var(--border);background:#fff;cursor:pointer;margin:.12rem 0;width:100%}.chip:hover{border-color:var(--green)}.chip.selected{border-color:var(--green);background:var(--accent)}.chip .nm{flex:1;min-width:0;overflow-wrap:anywhere}.chip-x{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;border-radius:4px;color:var(--muted);font-size:1rem;line-height:1;cursor:pointer}.chip-x:hover{color:#fff;background:var(--danger)}.add-here{width:100%;margin:.12rem 0;padding:.3rem .5rem;border-radius:8px;border:1px dashed var(--green);background:var(--accent);color:var(--green);font-size:.8rem;cursor:pointer}.add-here:hover{background:var(--green);color:#fff}.gap-ok{color:var(--green)}.gap-warn{color:var(--warn)}.flag{color:var(--warn);font-size:.8rem}.tag{font-size:.7rem;text-transform:uppercase;color:var(--muted)}.round-toggle{padding:0;border:none;background:none;font:inherit;color:inherit;display:inline-flex;align-items:baseline;gap:.35rem}.round-toggle:hover{color:var(--green)}.round-toggle .caret{color:var(--muted);font-size:.75em}.round-summary{margin-left:.5rem;font-weight:400}.card.folded{padding:.55rem 1rem;margin-bottom:.5rem}.card.folded h3{margin:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:50}.modal{background:#fff;border-radius:12px;padding:1.2rem;max-width:640px;max-height:85vh;overflow:auto;width:100%}.modal h2{margin-top:0}.modal ol{padding-left:1.2rem}.modal li{margin:.35rem 0}.progress{height:8px;border-radius:999px;background:#e6ebe6;overflow:hidden}.progress>span{display:block;height:100%;background:var(--green);border-radius:inherit;transition:width .2s ease-out}.merge-table td{vertical-align:top}.merge-table td.kept{font-weight:600}.merge-table td.dropped{color:var(--muted);text-decoration:line-through}.merge-pick{display:inline-flex;align-items:baseline;gap:.35rem;cursor:pointer}.merge-pick input{margin:0}.errors{color:var(--danger);font-size:.85rem}.empty{color:var(--muted);padding:1rem 0;text-align:center}.print-only{display:none}@media print{@page{margin:.5cm}:root{--print-sheet: 24cm}.app-header,.no-print,button:not(.chip){display:none!important}.print-one .card:not(.print-target){display:none!important}main{max-width:none;padding:0}.card{border:none;padding:.75rem;margin-bottom:0}.card h3{margin:0 0 .5rem}.courts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.court{break-inside:avoid;min-height:calc(var(--print-sheet) / var(--print-rows, 5) - .5rem);display:flex;flex-direction:column;justify-content:space-around;border-top:1px solid var(--border);padding:.2rem .75rem}.court h4{font-size:.9rem;margin:0 0 .1rem}.court .side{padding:.05rem 0}.court .vs{font-size:.7rem;line-height:1.1;margin:.05rem 0}.court .flag{font-size:.7rem;line-height:1.2}.card:not(.no-print)~.card:not(.no-print){break-before:page;page-break-before:always}.print-one .print-target{break-before:auto!important;page-break-before:auto!important;break-after:auto!important;page-break-after:auto!important}.print-only{display:block}.print-only.inline{display:inline}.chip{border:none;background:transparent!important;font-size:.9rem;line-height:1.2;padding:.05rem 0;margin:.05rem 0;cursor:default}}
