:root{--ink:#17231e;--paper:#fff;--canvas:#edf0ec;--rail:#17231e;--accent:#c7e86b;--muted:#718078;--line:#d5dcd6;--soft:#e7ece7;--danger:#a13d35;--success:#69a959;font-family:Inter,"Segoe UI",system-ui,sans-serif;color:var(--ink);background:var(--canvas)}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--canvas)}a{color:inherit}button,input,select,textarea{font:inherit}button,.button{border:0;border-radius:7px;padding:.75rem 1rem;background:var(--ink);color:#fff;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.45rem}button:hover,.button:hover{background:#26372f}button:focus-visible,.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.button.red,button.red{background:var(--ink)}.button.ghost,button.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.app-rail button.ghost{color:#bdc8c1;border-color:#405048;width:100%}.button.danger,button.danger{background:var(--danger)}button[disabled]{opacity:.45;cursor:not-allowed}
.app-shell{min-height:100vh;display:grid;grid-template-columns:220px minmax(0,1fr)}.app-rail{position:sticky;top:0;height:100vh;background:var(--rail);color:#f4f6ef;padding:28px 22px;display:flex;flex-direction:column}.brand-mark{display:grid;place-items:center;width:48px;height:48px;background:var(--accent);color:var(--ink);border-radius:14px;text-decoration:none;font-weight:900}.side-nav{display:grid;gap:6px;margin-top:48px}.side-nav a{padding:11px 12px;text-decoration:none;color:#9eaaa4;font-size:14px;border-radius:8px}.side-nav a:hover{color:#fff;background:#223129}.side-nav a.active{background:#2a3932;color:#fff}.profile{margin-top:auto;display:flex;gap:10px;align-items:center}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--ink);font-weight:900}.profile strong,.profile small{display:block;font-size:13px}.profile small{color:#9eaaa4;font-weight:400;text-transform:capitalize;margin-top:2px}.signout{margin-top:14px}
.page{width:min(1400px,100%);padding:48px clamp(24px,5vw,72px) 80px}.page-heading,.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.page-heading{align-items:flex-end;margin-bottom:30px}.eyebrow{color:var(--muted);font-size:.69rem;line-height:1.2;font-weight:800;letter-spacing:.14em;text-transform:uppercase}h1,h2,h3{margin:0;letter-spacing:-.035em}h1{font-size:clamp(2.45rem,5vw,4rem);line-height:1}h2{font-size:clamp(1.35rem,2vw,1.8rem)}h3{font-size:1.05rem}.page-heading h1{margin-top:6px}p{line-height:1.55}.lede{max-width:48ch;font-size:1rem;color:var(--muted)}.muted{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem}.card,.ticket{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1.35rem;grid-column:span 12}.span-8{grid-column:span 8}.span-7{grid-column:span 7}.span-6{grid-column:span 6}.span-5{grid-column:span 5}.span-4{grid-column:span 4}.card-head{margin-bottom:1rem}.metric{font-size:2.15rem;line-height:1;font-weight:750;letter-spacing:-.04em;margin-top:.55rem}.pill{display:inline-flex;align-items:center;padding:.45rem .7rem;border:1px solid var(--line);border-radius:9px;background:var(--paper);font-size:.75rem;font-weight:750;text-transform:capitalize}.pill:before{content:"";width:7px;height:7px;margin-right:7px;border-radius:50%;background:#8d9992}.pill.open:before,.pill.completed:before{background:var(--success)}.pill.awaiting:before,.pill.confirmed:before{background:#d5a72e}.pill.cancelled:before,.pill.aborted:before{background:var(--danger)}.stack{display:grid;gap:.8rem}.row{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.rule{border:0;border-top:1px solid var(--line);margin:1.1rem 0}.participants{list-style:none;padding:0;margin:0}.participants li{display:flex;justify-content:space-between;gap:1rem;padding:.8rem .2rem;border-bottom:1px solid var(--line)}
.round-summary{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #ccd4cd;margin-bottom:30px}.round-summary>div{padding:20px;border-right:1px solid #ccd4cd}.round-summary>div:first-child{padding-left:0}.round-summary>div:last-child{border-right:0}.round-summary span,.round-summary small{display:block;color:var(--muted);font-size:.75rem}.round-summary strong{display:block;font-size:1.6rem;margin:7px 0}.order-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;display:grid;grid-template-columns:1fr 110px 110px auto;gap:24px;align-items:center}.order-panel h2{margin-top:5px}.order-panel p{margin:4px 0 0;color:var(--muted);font-size:.82rem}.order-panel>strong{font-size:1.35rem}.quantity-field{display:grid;grid-template-columns:1fr;gap:5px;font-size:.7rem;color:var(--muted)}.quantity-field input{text-align:center;font-size:1rem;font-weight:750}.order-actions{display:flex;gap:7px}.payment-panel{margin-top:14px;background:#f8faf7;border:1px solid var(--line);border-radius:12px;padding:18px 22px;display:flex;align-items:center;justify-content:space-between}.payment-panel strong,.payment-panel span{display:block}.payment-panel strong{font-size:1.45rem;margin:5px 0}.payment-panel span{color:var(--muted);font-size:.8rem}.participant-table{margin-top:30px}.participant-table>header{display:flex;justify-content:space-between;align-items:flex-end}.participant-table>header span{color:var(--muted);font-size:.75rem}.participant-head,.participant-row{display:grid;grid-template-columns:1fr 120px 100px;align-items:center}.participant-head{margin-top:17px;padding:10px 14px;color:var(--muted);font-size:.63rem;text-transform:uppercase;letter-spacing:.1em}.participant-row{background:#fff;border-top:1px solid var(--line);padding:13px 14px}.participant-row:first-of-type{border-radius:10px 10px 0 0}.participant-row:last-child{border-radius:0 0 10px 10px}.participant-row>span{display:flex;align-items:center;gap:10px}.participant-row i{width:28px;height:28px;display:grid;place-items:center;border-radius:7px;background:var(--soft);font-style:normal;font-size:.75rem}.participant-row time{color:var(--muted);font-size:.8rem}.page-actions{margin-top:18px}.dashboard-lower{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:1rem;margin-top:30px}.empty-state{min-height:250px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
form{margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}label{display:grid;gap:.38rem;font-size:.78rem;font-weight:750;color:#4f5f57}input,select,textarea{width:100%;border:1px solid #c9d1ca;border-radius:7px;padding:.76rem .8rem;background:#fff;color:var(--ink)}.actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin-top:1rem}.flash{margin-bottom:1rem;padding:.85rem 1rem;border:1px solid #bcd8b6;border-radius:9px;background:#edf7e8;color:#31582b;font-weight:650}.flash.error{border-color:#e1b9b4;background:#f8e9e7;color:#7e2d26}.ledger{width:100%;border-collapse:collapse;font-size:.88rem}.ledger th{text-align:left;color:var(--muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.ledger th,.ledger td{padding:.78rem .45rem;border-bottom:1px solid var(--line);vertical-align:top}.ledger td:last-child,.ledger th:last-child{text-align:right}.empty{padding:2rem;text-align:center;border:1px dashed #bbc6bd;border-radius:10px;color:var(--muted)}
.login{min-height:100vh;display:grid;place-items:center;padding:1rem;background:var(--canvas)}.login-panel{width:min(900px,100%);display:grid;grid-template-columns:1fr 1fr;background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden}.login-copy{padding:clamp(2rem,6vw,4rem);background:var(--rail);color:#fff}.login-copy .eyebrow{color:var(--accent)}.login-copy h1{max-width:8ch;margin-top:1rem}.login-copy p{color:#b9c5be}.login-form{padding:clamp(2rem,6vw,4rem);align-self:center}.login-form h2{margin-top:.5rem}.dev-link{word-break:break-all;font-size:.8rem;padding:.75rem;border-radius:7px;background:var(--soft)}
@media(max-width:900px){.app-shell{display:block}.app-rail{position:static;height:auto;padding:12px 18px;flex-direction:row;align-items:center;gap:14px}.side-nav{display:flex;margin:0 0 0 auto;gap:2px}.side-nav a{padding:10px}.profile{display:none}.signout{margin:0}.app-rail .signout button{width:auto}.page{padding:30px 20px 70px}.span-8,.span-7,.span-6,.span-5,.span-4{grid-column:span 12}.order-panel{grid-template-columns:1fr auto}.order-panel>strong{justify-self:end}.order-actions{grid-column:1/-1}}
@media(max-width:620px){.app-rail{overflow-x:auto}.brand-mark{flex:0 0 44px;width:44px;height:44px}.side-nav a:not(.active){display:none}.signout{margin-left:auto}.page-heading{align-items:flex-start}.page-heading h1{font-size:2.15rem}.round-summary{grid-template-columns:1fr 1fr}.round-summary>div:nth-child(2){border-right:0}.round-summary>div:nth-child(-n+2){border-bottom:1px solid #ccd4cd}.round-summary>div:nth-child(3){padding-left:0}.order-panel{grid-template-columns:1fr auto;gap:18px}.quantity-field{width:85px}.order-panel>strong{font-size:1.15rem}.order-actions button{flex:1}.participant-head,.participant-row{grid-template-columns:1fr 55px 58px;padding-inline:8px}.participant-row time{font-size:.7rem}.dashboard-lower{grid-template-columns:1fr}.form-grid,.login-panel{grid-template-columns:1fr}.login-copy{padding:2rem}.login-copy h1{font-size:3rem}.ledger{display:block;overflow-x:auto}.row{align-items:flex-start}}
