@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Barlow:wght@400;500;600;700&display=swap');

:root{--ink:#171918;--muted:#6d716d;--paper:#f4f3ef;--surface:#fff;--line:#dcdcd5;--red:#d92d26;--red-dark:#af211b;--green:#17754b;--amber:#9b5b00;--sidebar:#1c1e1d;--radius:8px;--shadow:0 10px 30px rgba(20,22,20,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Barlow",Arial,sans-serif;min-height:100vh}.topbar{height:72px;background:#101211;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20;border-bottom:3px solid var(--red)}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none}.brand-mark{font:800 24px/1 "Barlow Condensed",sans-serif;letter-spacing:.06em;background:var(--red);padding:10px 9px;transform:skew(-5deg)}.brand>span:last-child{display:flex;flex-direction:column;font-family:"Barlow Condensed",sans-serif;line-height:1}.brand strong{font-size:22px;letter-spacing:.08em}.brand small{font:500 11px "Barlow",sans-serif;color:#aeb2ae;letter-spacing:.18em;text-transform:uppercase;margin-top:5px}.event-state{font-size:12px;color:#b8bbb8;display:flex;align-items:center;gap:8px}.event-state b{color:#fff;margin-left:12px}.live-dot{width:7px;height:7px;border-radius:50%;background:#48c78e;box-shadow:0 0 0 4px rgba(72,199,142,.13)}
.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:calc(100vh - 72px)}.sidebar{background:var(--sidebar);color:#fff;padding:28px 18px;display:flex;flex-direction:column}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:700;color:var(--red);margin:0 0 11px}.sidebar>.eyebrow{color:#878c87;margin-left:11px}.workflow{display:grid;gap:4px}.nav-item{width:100%;border:0;background:transparent;color:#aeb2ae;text-align:left;display:grid;grid-template-columns:30px 1fr;column-gap:9px;padding:12px;border-radius:6px;cursor:pointer;font:inherit;transition:.18s ease}.nav-item:hover{background:#272a28;color:#fff}.nav-item.active{background:#fff;color:var(--ink)}.nav-item>span{grid-row:1/3;font:700 13px "Barlow Condensed",sans-serif;color:#737873;padding-top:2px}.nav-item.active>span{color:var(--red)}.nav-item b{font-size:14px}.nav-item small{font-size:11px;color:#7f847f;margin-top:3px}.sidebar-actions{margin-top:auto;padding-top:28px;display:grid;gap:8px}.file-button{position:relative}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.text-button{border:0;background:none;font:600 12px "Barlow",sans-serif;cursor:pointer;padding:10px}.text-button.danger{color:#e7837e}
main{padding:36px clamp(24px,4vw,64px) 70px;min-width:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:26px}.page-head h1{font:800 clamp(34px,4vw,52px)/.95 "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:-.02em;margin:0}.page-head>div>p:last-child{margin:10px 0 0;color:var(--muted)}.summary-strip{display:flex;background:#e8e7e1;border:1px solid #d7d6cf;border-radius:7px;overflow:hidden;flex-shrink:0}.summary-strip div{padding:12px 18px;min-width:80px;border-right:1px solid #d1d0ca}.summary-strip div:last-child{border:0}.summary-strip strong{display:block;font:800 23px "Barlow Condensed",sans-serif}.summary-strip span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.view{display:none}.view.active{display:block}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.form-panel,.compact-form{padding:26px}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}.panel-heading h2,.grid-generator h2{font:700 23px "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.025em;margin:0}.panel-heading p,.grid-generator p{font-size:13px;color:var(--muted);margin:5px 0 0}.required-note{font-size:11px;color:var(--red);font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.form-grid label,.inline-fields label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#454944}.autocomplete-field{position:relative}.suggestion-menu{display:none;position:absolute;z-index:40;top:68px;left:0;right:0;max-height:220px;overflow-y:auto;margin:0;padding:6px;background:#fff;border:1px solid #c8cac4;border-radius:6px;box-shadow:0 14px 30px rgba(20,22,20,.16);list-style:none}.suggestion-menu.show{display:block}.suggestion-menu li{padding:10px 11px;border-radius:4px;color:var(--ink);font-size:13px;font-weight:600;cursor:pointer}.suggestion-menu li:hover,.suggestion-menu li.active{background:#f6e4e2;color:#9f211b}.suggestion-menu .suggestion-empty{color:var(--muted);cursor:default;font-weight:500}.suggestion-menu .suggestion-empty:hover{background:transparent;color:var(--muted)}.span-2{grid-column:span 2}input,select{width:100%;height:44px;border:1px solid #cfd0c9;border-radius:5px;background:#fff;color:var(--ink);padding:0 12px;font:500 14px "Barlow",sans-serif;outline:none;transition:.15s}input:focus,select:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(217,45,38,.11)}input.field-invalid{border-color:var(--red);box-shadow:0 0 0 3px rgba(217,45,38,.11)}.field-error{display:none;color:var(--red);font-size:11px;font-weight:700;line-height:1.3}.field-error.show{display:block}.input-prefix{display:flex}.input-prefix b{height:44px;display:grid;place-items:center;background:#efeee9;border:1px solid #cfd0c9;border-right:0;border-radius:5px 0 0 5px;width:40px;font:700 16px "Barlow Condensed",sans-serif}.input-prefix input{border-radius:0 5px 5px 0}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px;padding-top:20px;border-top:1px solid #e4e4df}.button{height:42px;border:1px solid transparent;border-radius:5px;padding:0 16px;font:700 12px "Barlow",sans-serif;letter-spacing:.015em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:14px;text-decoration:none;transition:.15s}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--red);color:#fff}.button.primary:hover{background:var(--red-dark)}.button.secondary{background:#fff;color:var(--ink);border-color:#cfd0c9}.button.ghost{background:transparent;color:#d5d8d5;border-color:#484c49}.button.full{width:100%}.hidden{display:none!important}
.table-panel{overflow:hidden}.table-panel .panel-heading{padding:22px 24px 0}.table-tools{align-items:center}.search{max-width:310px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{background:#f0efe9;color:#666b66;font-size:10px;text-transform:uppercase;letter-spacing:.09em;text-align:left;padding:11px 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:14px;border-bottom:1px solid #ecece7;font-size:13px}#results-view table{table-layout:fixed;white-space:normal}#results-view th,#results-view td{padding:10px 7px;font-size:11px;overflow-wrap:anywhere}#results-view th{font-size:8px;line-height:1.25;letter-spacing:.065em}#results-view th:nth-child(1){width:9%}#results-view th:nth-child(2){width:9%}#results-view th:nth-child(3){width:9%}#results-view th:nth-child(4){width:10%}#results-view th:nth-child(5){width:12%}#results-view th:nth-child(6){width:11%}#results-view th:nth-child(7){width:9%}#results-view th:nth-child(8){width:12%}#results-view th:nth-child(9){width:10%}#results-view th:nth-child(10){width:9%}tbody tr:hover{background:#fafaf7}tbody tr:last-child td{border-bottom:0}.number-cell{font:800 17px "Barlow Condensed",sans-serif}.position{font:800 15px "Barlow Condensed",sans-serif}.muted-cell{color:var(--muted)}.badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:3px;background:#ecece6;font-size:11px;font-weight:700}.badge.red{background:#f9dfdd;color:#9f211b}.badge.green{background:#dff1e8;color:var(--green)}.badge.amber{background:#f7ead5;color:var(--amber)}.badge.gray{background:#e8e9e7;color:#5e635e}.row-actions{display:flex;gap:5px}.icon-button{border:1px solid #d8d9d3;background:white;border-radius:4px;min-width:32px;height:30px;font:600 11px "Barlow",sans-serif;cursor:pointer}.icon-button:hover{border-color:#9a9e98}.icon-button.delete:hover{color:var(--red);border-color:#e5aaa7}.actions-col{text-align:right}.actions-col .row-actions{justify-content:flex-end}.empty-state{text-align:center;padding:48px 20px;color:var(--muted);display:none}.empty-state.show{display:flex;flex-direction:column;gap:7px}.empty-state strong{font:700 19px "Barlow Condensed",sans-serif;text-transform:uppercase;color:#414541}
.compact-form{margin-bottom:18px}.inline-fields{display:grid;grid-template-columns:1fr 1.35fr 1fr auto;align-items:end;gap:14px}.bracket-fields{grid-template-columns:1.6fr 1fr auto;max-width:850px}.results-fields{grid-template-columns:1.5fr .65fr 1fr .7fr auto}.grid-generator{padding:22px 24px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:center;gap:25px}.grid-controls{display:flex;gap:10px}.grid-controls select{min-width:180px}.toast{position:fixed;right:24px;bottom:24px;background:#171918;color:#fff;padding:13px 17px;border-radius:5px;font-size:13px;box-shadow:0 10px 30px rgba(0,0,0,.22);opacity:0;transform:translateY(14px);pointer-events:none;transition:.2s;z-index:50}.toast.show{opacity:1;transform:none}.toast.error{background:#8f1f1a}.admin-only{display:none!important}body.admin-authenticated .public-only{display:none!important}body.admin-authenticated .nav-item.admin-only{display:grid!important}body.admin-authenticated button.admin-only{display:inline-flex!important}body.admin-authenticated label.admin-only{display:inline-flex!important}body.admin-authenticated th.admin-only,body.admin-authenticated td.admin-only{display:table-cell!important}body.admin-authenticated .text-button.admin-only{display:block!important}.payment-select{height:34px;min-width:92px;padding:0 7px;font-size:11px}.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:100;background:rgba(11,13,12,.72);display:grid;place-items:center;padding:20px}.modal-card{position:relative;width:min(420px,100%);background:#fff;border-radius:8px;padding:30px;box-shadow:0 24px 70px rgba(0,0,0,.3)}.modal-card h2{font:800 30px "Barlow Condensed",sans-serif;text-transform:uppercase;margin:0}.modal-card>p:not(.eyebrow){color:var(--muted);font-size:13px;margin:8px 0 22px}.modal-card label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;margin-bottom:16px}.modal-close{position:absolute;right:14px;top:12px;border:0;background:none;font-size:25px;cursor:pointer;color:var(--muted)}
@media(max-width:1050px){.app-shell{grid-template-columns:88px minmax(0,1fr)}.sidebar{padding:24px 10px}.sidebar>.eyebrow,.nav-item b,.nav-item small,.sidebar-actions{display:none}.nav-item{grid-template-columns:1fr;text-align:center;padding:15px 8px}.nav-item>span{grid-row:auto}.page-head{align-items:flex-start;flex-direction:column}.inline-fields,.results-fields{grid-template-columns:repeat(2,1fr)}.inline-fields .button{align-self:end}.grid-generator{align-items:flex-start;flex-direction:column}}
@media(max-width:680px){.topbar{padding:0 16px}.event-state{display:none}.app-shell{display:block}.sidebar{padding:8px;background:#1c1e1d;position:sticky;top:72px;z-index:15;overflow-x:auto}.workflow{display:flex}.nav-item{min-width:54px}.nav-item>span{font-size:14px}.nav-item.active{background:var(--red);color:#fff}.nav-item.active>span{color:#fff}main{padding:25px 14px 50px}.summary-strip{width:100%}.summary-strip div{padding:10px;min-width:0;flex:1}.form-grid,.inline-fields,.bracket-fields,.results-fields{grid-template-columns:1fr}.span-2{grid-column:auto}.grid-controls{width:100%;flex-direction:column}.grid-controls select{min-width:0}.grid-controls .button{width:100%}.panel-heading{flex-direction:column}.table-tools .search{max-width:none}.form-panel,.compact-form{padding:20px}.page-head h1{font-size:38px}}
@media print{.topbar,.sidebar,.page-head,.grid-generator,.compact-form,.button,.actions-col{display:none!important}.app-shell{display:block}.view{display:none!important}.view.active{display:block!important}main{padding:0}.panel{box-shadow:none;border:0}.panel-heading{padding:0!important}th{background:#eee!important;color:#000}body{background:#fff}.table-wrap{overflow:visible}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
