@import url("https://fonts.googleapis.com/css2?family=Sarabun:wght@300;400;500;600;700&display=swap");:root{--bg-main:#faf8ff;--bg-card:#ffffff;--bg-card2:#f1ebff;--accent:#7c3aed;--accent-hover:#6d28d9;--blue:#a855f7;--green:#16a34a;--yellow:#d97706;--red:#dc2626;--text:#2a1f4d;--text-muted:#7a6e96;--border:#e4dafd;--input-bg:#fbf9ff;--shadow:0 1px 4px rgba(0,0,0,0.08);--shadow-md:0 4px 16px rgba(0,0,0,0.10)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Sarabun,sans-serif;background:var(--bg-main);color:var(--text);min-height:100vh;font-size:15px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-card2)}::-webkit-scrollbar-thumb{background:#d4c4f5;border-radius:3px}.navbar{background:#ffffff;border-bottom:2px solid var(--accent);padding:10px 20px;justify-content:space-between;position:-webkit-sticky;position:sticky;top:0;z-index:1000;box-shadow:var(--shadow)}.navbar,.navbar-brand{display:flex;align-items:center}.navbar-brand{font-size:1.3rem;font-weight:700;color:var(--accent);text-decoration:none;gap:8px}.navbar-brand span,.navbar-user{color:var(--text)}.navbar-user{display:flex;align-items:center;gap:12px;font-size:.9rem;flex-wrap:wrap}.btn-logout{background:transparent;border:1.5px solid var(--accent);color:var(--accent);padding:5px 14px;border-radius:8px;cursor:pointer;font-family:Sarabun,sans-serif;font-size:.85rem;font-weight:600;transition:all .2s}.btn-logout:hover{background:var(--accent);color:white}.btn-account{background:transparent;border:1.5px solid var(--border);color:var(--text);padding:5px 12px;border-radius:8px;cursor:pointer;font-family:Sarabun,sans-serif;font-size:.9rem;font-weight:600;display:inline-flex;align-items:center;gap:6px;transition:all .2s}.btn-account:hover{border-color:var(--accent);color:var(--accent)}.tab-bar{background:#ffffff;border-bottom:1px solid var(--border);display:flex;gap:0;padding:0 16px;overflow-x:auto;box-shadow:var(--shadow)}.tab-btn{background:none;border:none;border-bottom:3px solid transparent;color:var(--text-muted);padding:14px 18px;cursor:pointer;font-family:Sarabun,sans-serif;font-size:.95rem;font-weight:600;white-space:nowrap;transition:all .2s}.tab-btn:hover{color:var(--text)}.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.tab-content{display:none;padding:16px}.tab-content.active{display:block}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:18px;box-shadow:var(--shadow)}.card,.card-title{margin-bottom:14px}.card-title{font-size:1rem;font-weight:700;color:var(--text);padding-bottom:10px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px}.card-title .icon{color:var(--accent)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:18px;text-align:center;box-shadow:var(--shadow)}.stat-card .stat-num{font-size:1.9rem;font-weight:700;color:var(--accent);display:block}.stat-card .stat-label{font-size:.8rem;color:var(--text-muted);margin-top:4px}.stat-card.green .stat-num{color:var(--green)}.stat-card.yellow .stat-num{color:var(--yellow)}.stat-card.blue .stat-num{color:var(--blue)}.form-group{margin-bottom:14px}.form-label{display:block;color:var(--text-muted);font-size:.82rem;margin-bottom:8px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.form-control,.form-select{width:100%;background:var(--input-bg);border:1.5px solid var(--border);border-radius:10px;color:var(--text);padding:11px 14px;font-family:Sarabun,sans-serif;font-size:.95rem;transition:border-color .2s,box-shadow .2s;-moz-appearance:none;appearance:none;-webkit-appearance:none}.form-control:focus,.form-select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(168,85,247,.15)}.form-control::placeholder{color:#b0b8d0}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));grid-gap:12px;gap:12px;align-items:end}.btn-group-wrap{display:flex;flex-wrap:wrap;gap:8px}.btn-pick{padding:10px 16px;min-height:44px;border:1.5px solid var(--border);border-radius:10px;background:var(--input-bg);color:var(--text-muted);cursor:pointer;font-family:Sarabun,sans-serif;font-size:.9rem;font-weight:600;transition:all .15s;white-space:nowrap;-webkit-tap-highlight-color:transparent}.btn-pick:hover{border-color:var(--blue);color:var(--blue);background:#f3ecff}.btn-pick.active{border-color:var(--blue);background:var(--blue);color:#ffffff;box-shadow:0 2px 8px rgba(168,85,247,.28)}.btn-pick.active-red{border-color:var(--accent);background:var(--accent);color:#ffffff;box-shadow:0 2px 8px rgba(124,58,237,.28)}.btn{padding:11px 20px;border-radius:10px;border:none;cursor:pointer;font-family:Sarabun,sans-serif;font-size:.9rem;font-weight:700;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:6px;-webkit-tap-highlight-color:transparent}.btn-primary{background:var(--accent);color:white;box-shadow:0 2px 8px rgba(124,58,237,.32)}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--blue);color:white}.btn-secondary:hover{background:#9333ea}.btn-success{background:var(--green);color:white}.btn-success:hover{background:#15803d}.btn-danger{background:var(--red);color:white}.btn-danger:hover{background:#b91c1c}.btn-outline{background:transparent;border:1.5px solid var(--border);color:var(--text-muted)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-sm{padding:6px 12px;font-size:.82rem;border-radius:8px}.btn-full{width:100%}.btn:disabled{opacity:.35;cursor:not-allowed}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.88rem}thead tr{background:var(--bg-card2)}th{text-align:left;color:var(--text-muted);font-weight:700;border-bottom:1.5px solid var(--border);white-space:nowrap;font-size:.8rem;text-transform:uppercase;letter-spacing:.3px}td,th{padding:10px 12px}td{border-bottom:1px solid var(--border);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:#f7f2ff}.text-right{text-align:right}.text-center{text-align:center}.badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.78rem;font-weight:700}.badge-pending{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.badge-confirmed{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.badge-rejected{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.badge-closed{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.badge-override{background:#ffedd5;color:#9a3412;border:1px solid #fed7aa}tbody tr.row-closed{background:#fafafa;color:#9ca3af}tbody tr.row-closed:hover{background:#f3f4f6}tbody tr.row-override{background:#fffaf0}tbody tr.row-override:hover{background:#fff3e0}.chip-closed{background:#f3f4f6!important;color:#6b7280!important;border-color:#e5e7eb!important;text-decoration:line-through}.chip-override{background:#ffedd5!important;color:#9a3412!important;border-color:#fed7aa!important}.preview-box{background:var(--bg-card2);border:1.5px solid var(--border);border-radius:10px;padding:12px 14px;margin-top:12px;min-height:48px}.preview-label{font-size:.78rem;color:var(--text-muted);font-weight:600}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{background:#f3ecff;color:var(--blue);border:1px solid #d8c5f8;border-radius:8px;padding:4px 12px;font-family:monospace;font-size:.92rem;font-weight:700;letter-spacing:1px}.total-bar{position:fixed;bottom:0;left:0;right:0;background:#ffffff;border-top:2px solid var(--accent);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:999;box-shadow:0 -4px 16px rgba(0,0,0,.08)}.total-bar .total-label{color:var(--text-muted);font-size:.82rem;font-weight:600}.total-bar .total-amount{font-size:1.6rem;font-weight:700;color:var(--accent)}.total-bar .total-actions{display:flex;gap:8px}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:2000;padding:16px}.modal-box{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;width:100%;max-width:640px;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-md)}.modal-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--bg-card2)}.modal-title{font-size:1rem;font-weight:700;color:var(--accent)}.modal-close{background:none;border:none;color:var(--text-muted);font-size:1.3rem;cursor:pointer;padding:4px 8px;border-radius:6px}.modal-close:hover{background:var(--border)}.modal-body{padding:18px;overflow-y:auto;flex:1 1}.modal-footer{padding:12px 18px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;background:var(--bg-card2)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#efe4ff,#faf8ff)}.login-box{background:#ffffff;border:1px solid var(--border);border-radius:18px;padding:40px 36px;width:100%;max-width:380px;box-shadow:0 8px 40px rgba(124,58,237,.18)}.login-logo{text-align:center;margin-bottom:28px}.login-logo .logo-icon{font-size:3rem;display:block;margin-bottom:10px}.login-logo h1{font-size:1.6rem;font-weight:700;color:var(--accent)}.login-logo p{color:var(--text-muted);font-size:.85rem;margin-top:4px}.login-hint{background:var(--bg-card2);border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin-top:16px;font-size:.8rem;color:var(--text-muted);line-height:1.8}.login-hint b{color:var(--text)}.alert-danger{background:#fee2e2;border:1px solid #fecaca;color:var(--red);border-radius:8px;padding:10px 14px;font-size:.88rem;margin-bottom:14px;display:none}.period-badge{background:#f3ecff;color:var(--blue);border:1px solid #d8c5f8;border-radius:8px;padding:5px 12px;font-size:.82rem;font-weight:700;display:inline-flex;align-items:center;gap:6px}.empty-state{text-align:center;padding:40px 20px;color:var(--text-muted)}.empty-state .empty-icon{font-size:3rem;margin-bottom:10px}.empty-state p{font-size:.9rem}.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;align-items:center}.filter-bar .form-control,.filter-bar .form-select{width:auto;min-width:130px}.report-row-total td{font-weight:700;color:var(--accent);border-top:2px solid var(--border)}@media (max-width:640px){.navbar{padding:8px 12px}.navbar-brand{font-size:1.1rem}.tab-btn{padding:12px 14px;font-size:.88rem}.tab-content{padding:12px}.total-bar{flex-wrap:wrap;padding:10px 12px}.stats-grid{grid-template-columns:1fr 1fr}.btn-pick{font-size:.85rem;padding:9px 13px}}.mt-2{margin-top:8px}.mb-2{margin-bottom:8px}.gap-2{gap:8px}.d-flex{display:flex}.align-center{align-items:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-wrap{flex-wrap:wrap}.w-full{width:100%}.fw-bold{font-weight:700}.text-accent{color:var(--accent)}.text-muted{color:var(--text-muted)}.text-green{color:var(--green)}.text-yellow{color:var(--yellow)}.text-red{color:var(--red)}.text-blue{color:var(--blue)}.fs-sm{font-size:.82rem}.pb-80{padding-bottom:80px}.gap-1{gap:4px}.mt-3{margin-top:16px}.countdown{background:#f3ecff;color:var(--blue);border:1px solid #d8c5f8;border-radius:8px;padding:5px 12px;font-size:.85rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;gap:4px}.countdown-closed{background:#fee2e2;color:var(--red);border-color:#fecaca}.badge-win{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.badge-lose{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.chip-win{background:var(--green)!important;color:#ffffff!important;border-color:#16a34a!important;box-shadow:0 2px 8px rgba(22,163,74,.28)}.result-box{background:#fefce8;border:1.5px solid #fde68a;border-radius:10px;padding:10px 14px;color:#854d0e;font-size:.9rem}.result-box b{color:#713f12}.switch{position:relative;display:inline-block;width:44px;height:24px}.switch input{opacity:0;width:0;height:0}.switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#d4c4f5;border-radius:24px;transition:.2s}.switch .slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:white;border-radius:50%;transition:.2s}.switch input:checked+.slider{background:var(--green)}.switch input:checked+.slider:before{transform:translateX(20px)}.markets-layout{display:grid;grid-template-columns:320px 1fr;grid-gap:16px;gap:16px;align-items:flex-start}@media (max-width:880px){.markets-layout{grid-template-columns:1fr}}.markets-list-pane{padding:14px}.markets-editor-pane{padding:18px;min-height:360px}.market-list-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border:1.5px solid var(--border);border-radius:10px;margin-bottom:8px;cursor:pointer;transition:all .15s;background:var(--bg-card)}.market-list-item.active,.market-list-item:hover{border-color:var(--accent);background:var(--bg-card2)}.market-list-item.active{box-shadow:0 2px 8px rgba(124,58,237,.18)}.market-list-item .name{font-weight:600}.market-list-item .meta{font-size:.78rem;color:var(--text-muted)}.market-list-item.inactive .name{color:var(--text-muted);text-decoration:line-through}.sub-tab-bar{display:flex;gap:4px;border-bottom:2px solid var(--border);margin-bottom:14px;flex-wrap:wrap}.sub-tab-btn{background:transparent;padding:8px 14px;font-family:Sarabun,sans-serif;font-size:.88rem;font-weight:600;color:var(--text-muted);cursor:pointer;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s}.sub-tab-btn:hover{color:var(--accent)}.sub-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.rate-grid{display:grid;grid-template-columns:180px 1fr;grid-gap:8px 14px;gap:8px 14px;align-items:center}.rate-grid .rate-label{font-weight:600;font-size:.9rem}.chip-input-wrap{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1.5px solid var(--border);border-radius:8px;background:var(--input-bg);min-height:42px}.chip-input-wrap input{border:none;outline:none;background:transparent;flex:1 1;min-width:80px;font-family:Sarabun,sans-serif;font-size:.9rem}.chip-removable{display:inline-flex;align-items:center;gap:6px;background:var(--bg-card2);color:var(--accent);padding:3px 8px;border-radius:6px;font-size:.85rem;font-weight:600}.chip-removable button{background:none;border:none;color:var(--red);cursor:pointer;font-weight:700;padding:0 2px;font-size:.95rem;line-height:1}.weekday-row{display:flex;gap:6px;flex-wrap:wrap}.weekday-row label{display:inline-flex;align-items:center;gap:4px;border:1.5px solid var(--border);border-radius:6px;padding:4px 10px;cursor:pointer;font-size:.88rem}.weekday-row label:has(input:checked){background:var(--bg-card2);border-color:var(--accent);color:var(--accent);font-weight:600}.period-editor{padding-bottom:110px}.sub-tab-badges{display:inline-flex;gap:4px;margin-left:6px}.badge-num{background:#f3ecff;color:var(--blue);border:1px solid #d8c5f8;border-radius:999px;padding:1px 8px;font-size:.72rem;font-weight:700}.badge-num.override{background:#ffedd5;color:#9a3412;border-color:#fed7aa}.panel-wrap{margin-top:4px}.panel-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.panel-summary{display:flex;flex-wrap:wrap;gap:8px;flex:1 1}.panel-toolbar-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.view-toggle{display:inline-flex;background:var(--input-bg);border:1.5px solid var(--border);border-radius:10px;padding:3px;flex-shrink:0}.view-toggle-btn{background:transparent;border:none;color:var(--text-muted);font-family:Sarabun,sans-serif;font-size:.85rem;font-weight:700;padding:6px 14px;border-radius:7px;cursor:pointer;transition:all .15s}.view-toggle-btn:hover{color:var(--accent)}.view-toggle-btn.active{background:var(--accent);color:#fff;box-shadow:0 2px 6px rgba(124,58,237,.25)}.ps-chip{display:inline-flex;align-items:center;gap:6px;background:var(--bg-card2);border:1px solid var(--border);border-radius:999px;padding:4px 12px;font-size:.82rem}.ps-chip span{color:var(--text-muted)}.ps-chip b{color:var(--text);font-weight:700}.ps-chip-blue{background:#f3ecff;border-color:#d8c5f8}.ps-chip-blue b{color:var(--blue)}.ps-chip-orange{background:#ffedd5;border-color:#fed7aa}.ps-chip-orange b{color:#9a3412}.ps-chip-red{background:#fee2e2;border-color:#fecaca}.ps-chip-red b{color:var(--red)}.prefix-row{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px dashed var(--border)}.prefix-btn{position:relative;background:var(--input-bg);border:1.5px solid var(--border);border-radius:8px;padding:6px 10px;font-family:Sarabun,sans-serif;font-size:.85rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-muted);cursor:pointer;transition:all .15s}.prefix-btn:hover{border-color:var(--accent);color:var(--accent)}.prefix-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 2px 6px rgba(124,58,237,.28)}.prefix-btn.has-data{border-color:#c4b3ee}.prefix-dots{position:absolute;top:3px;right:4px;display:inline-flex;gap:2px}.prefix-dots .dot{width:5px;height:5px;border-radius:50%}.dot-blue{background:var(--blue)}.dot-orange{background:#f97316}.dot-red{background:var(--red)}.panel-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-gap:6px;gap:6px}.panel-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:68px;padding:6px 4px;border:1.5px solid var(--border);border-radius:10px;background:var(--input-bg);cursor:pointer;font-family:Sarabun,sans-serif;transition:all .12s;-webkit-tap-highlight-color:transparent}.panel-cell:hover{border-color:var(--accent);background:#faf5ff;transform:translateY(-1px);box-shadow:0 2px 6px rgba(124,58,237,.12)}.panel-cell .pc-num{font-weight:700;font-size:1.1rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.5px;color:var(--text);line-height:1.1}.panel-cell .pc-rate{font-size:.7rem;font-weight:700;color:#9a3412;background:#ffedd5;border-radius:999px;padding:1px 6px;line-height:1.2}.panel-cell .pc-rate-closed{background:#fee2e2;color:var(--red)}.panel-cell .pc-stat{display:flex;flex-direction:column;align-items:center;line-height:1.1;font-size:.65rem;font-weight:600}.panel-cell .pc-count{color:var(--blue)}.panel-cell .pc-amount{color:var(--text-muted);font-size:.6rem}.panel-cell.has-bets{background:#f3ecff;border-color:#c4b3ee}.panel-cell.is-override{background:#ffedd5;border-color:#fed7aa}.panel-cell.is-override .pc-num{color:#9a3412}.panel-cell.is-closed{background:#fee2e2;border-color:#fecaca}.panel-cell.is-closed .pc-num{color:var(--red);text-decoration:line-through}.panel-cell.is-selected{border-color:var(--accent);background:#ede4ff;box-shadow:0 0 0 3px rgba(124,58,237,.25);transform:translateY(-1px)}@media (max-width:720px){.panel-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.panel-cell{min-height:60px}.panel-cell .pc-num{font-size:1rem}}.rate-editor-bar{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:2px solid var(--accent);box-shadow:0 -4px 16px rgba(0,0,0,.1);padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:999;flex-wrap:wrap}.rate-editor-bar .reb-info{display:flex;flex-direction:column;gap:2px;min-width:200px}.rate-editor-bar .reb-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.rate-editor-bar .form-control{padding:8px 12px;font-size:.9rem}@media (max-width:640px){.rate-editor-bar{padding:8px 10px}.rate-editor-bar .reb-actions .form-control{width:100%!important}}.panel-table-wrap{margin-top:4px}.panel-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}.panel-filter-chip{background:var(--input-bg);border:1.5px solid var(--border);border-radius:999px;padding:5px 14px;font-family:Sarabun,sans-serif;font-size:.82rem;font-weight:700;color:var(--text-muted);cursor:pointer;transition:all .15s}.panel-filter-chip:hover{border-color:var(--accent);color:var(--accent)}.panel-filter-chip.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 2px 6px rgba(124,58,237,.22)}.panel-filter-chip.flt-blue.active{background:var(--blue);border-color:var(--blue)}.panel-filter-chip.flt-orange.active{background:#f97316;border-color:#f97316}.panel-filter-chip.flt-red.active{background:var(--red);border-color:var(--red)}.panel-table-scroll{max-height:60vh;overflow-y:auto}.panel-table{font-size:.92rem}.panel-table thead th{position:-webkit-sticky;position:sticky;top:0;background:var(--bg-card2);z-index:1}.panel-table tbody tr.panel-row{cursor:pointer;transition:background .12s}.panel-table tbody tr.panel-row:hover{background:#f3ecff}.panel-table tbody tr.panel-row td{padding:8px 12px}.panel-table .pr-num{font-family:Sarabun,sans-serif;font-weight:700;font-size:1.05rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:1px;color:var(--text);width:1%;white-space:nowrap}.panel-table .pr-rate-override{color:#9a3412;background:#ffedd5;border:1px solid #fed7aa;border-radius:999px}.panel-table .pr-rate-closed,.panel-table .pr-rate-override{display:inline-block;font-weight:700;padding:2px 10px;font-size:.85rem}.panel-table .pr-rate-closed{color:var(--red);background:#fee2e2;border:1px solid #fecaca;border-radius:999px}.panel-table .pr-count{color:var(--blue);font-weight:700}.panel-table .pr-amount{color:var(--text-muted);font-weight:600;font-size:.85rem}.panel-table tr.panel-row.has-bets{background:#faf6ff}.panel-table tr.panel-row.is-override{background:#fff7ed}.panel-table tr.panel-row.is-closed{background:#fef2f2}.panel-table tr.panel-row.is-closed .pr-num{color:var(--red);text-decoration:line-through}.panel-table tr.panel-row.is-selected{background:#ede4ff!important;box-shadow:inset 3px 0 0 var(--accent)}.panel-table .pr-rate-cell{width:280px}.panel-table .pr-rate-edit{display:inline-flex;align-items:center;gap:6px}.panel-table .pr-rate-input{width:90px;padding:6px 10px;border:1.5px solid var(--border);border-radius:8px;background:#fff;font-family:Sarabun,sans-serif;font-size:.92rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;text-align:center;outline:none;transition:all .15s}.panel-table .pr-rate-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(124,58,237,.18)}.panel-table .pr-rate-input::placeholder{color:#b8b1cc;font-weight:600}.panel-table .pr-rate-input.is-override{border-color:#fed7aa;background:#fff8ee;color:#9a3412}.panel-table .pr-rate-input.is-closed{background:#fee2e2;color:var(--red);border-color:#fecaca;cursor:not-allowed}.panel-table .pr-lock-btn{background:#fff;border:1.5px solid var(--border);border-radius:8px;padding:6px 10px;font-family:Sarabun,sans-serif;font-size:.82rem;font-weight:700;color:var(--text-muted);cursor:pointer;transition:all .15s;white-space:nowrap}.panel-table .pr-lock-btn:hover{border-color:var(--red);color:var(--red)}.panel-table .pr-lock-btn.is-on{background:var(--red);color:#fff;border-color:var(--red);box-shadow:0 2px 6px rgba(220,38,38,.25)}.panel-table .pr-reset-btn{background:transparent;border:1.5px solid var(--border);border-radius:8px;padding:6px 8px;font-size:.85rem;font-weight:700;color:var(--text-muted);cursor:pointer;transition:all .15s}.panel-table .pr-reset-btn:hover{border-color:var(--accent);color:var(--accent)}@media (max-width:720px){.panel-table .pr-rate-cell{width:auto}.panel-table .pr-rate-input{width:70px}}.advanced-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:transparent;border:none;padding:0;font-family:Sarabun,sans-serif;font-size:.95rem;font-weight:700;color:var(--text);cursor:pointer;text-align:left}.advanced-toggle:hover{color:var(--accent)}.advanced-toggle .advanced-caret{color:var(--text-muted);font-size:.85rem;margin-left:auto}.period-meta{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border);display:flex;flex-wrap:wrap;gap:4px}.announce-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;margin-bottom:12px;border-radius:8px;background:#fef3c7;border-left:4px solid #d97706;color:#78350f;font-weight:500;font-size:.95rem;box-shadow:var(--shadow)}.announce-banner .announce-icon{font-size:1.2rem}.announce-banner-warn{background:#fee2e2;border-left-color:var(--red);color:#7f1d1d}a.tab-btn{text-decoration:none;display:inline-block}.period-calendar{margin-top:8px}.period-calendar .cal-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.period-calendar .cal-title{font-weight:700;font-size:1.1rem;margin-left:8px}.period-calendar .cal-dow-row{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px;margin-bottom:4px}.period-calendar .cal-dow{text-align:center;font-size:.8rem;font-weight:700;color:var(--text-muted);padding:6px 0}.period-calendar .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.period-calendar .cal-cell{min-height:90px;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);padding:6px;display:flex;flex-direction:column;gap:4px;overflow:hidden}.period-calendar .cal-cell-empty{background:transparent;border-color:transparent}.period-calendar .cal-cell.is-today{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.period-calendar .cal-date{font-weight:700;font-size:.85rem;color:var(--text)}.period-calendar .cal-items{display:flex;flex-direction:column;gap:3px;overflow:hidden}.period-calendar .cal-item{background:#e0f2fe;border:1px solid #38bdf8;border-radius:6px;padding:3px 6px;font-size:.75rem;text-align:left;cursor:pointer;display:flex;flex-direction:column;line-height:1.2;color:#075985;font-family:Sarabun,sans-serif;transition:filter .15s}.period-calendar .cal-item:hover{filter:brightness(.95)}.period-calendar .cal-item .ci-market{font-weight:700}.period-calendar .cal-item .ci-status{font-size:.7rem;opacity:.85}.period-calendar .cal-item-open{background:#dcfce7;border-color:#22c55e;color:#14532d}.period-calendar .cal-item-closed{background:#fef3c7;border-color:#f59e0b;color:#78350f}.period-calendar .cal-item-drawn{background:#ede9fe;border-color:#8b5cf6;color:#4c1d95}@media (max-width:720px){.period-calendar .cal-cell{min-height:70px;padding:4px}.period-calendar .cal-item{font-size:.68rem;padding:2px 4px}}.btn-warning{background:var(--yellow);color:white;border:1px solid var(--yellow)}.btn-warning:hover{filter:brightness(.93)}