.pc-root { --pc-brand:var(--theme-primary,#007f7b); --pc-deep:var(--theme-primary-deep,#005a57); color:#193545; font-family:inherit; }
.pc-root,.pc-root * { box-sizing:border-box; }
.pc-dock { position:fixed; bottom:calc(154px + env(safe-area-inset-bottom,0px)); left:50%; transform:translateX(-50%); width:min(calc(100% - 20px),460px); z-index:140; pointer-events:none; display:flex; justify-content:flex-end; }
.pc-fab { display:grid; place-items:center; width:44px; height:44px; padding:9px; border:2px solid #fff; border-radius:15px; background:linear-gradient(145deg,color-mix(in srgb,var(--pc-brand),white 22%),var(--pc-deep)); color:#fff; box-shadow:0 4px 12px #002c3d45,inset 0 1px 2px #ffffff9c; cursor:pointer; pointer-events:auto; touch-action:manipulation; transition:transform .15s; }
.pc-fab svg,.pc-title-icon svg { display:block; width:24px; height:24px; }
.pc-fab:active { transform:scale(.92); }
.pc-fab:focus-visible,.pc-root button:focus-visible { outline:3px solid #ffc449; outline-offset:2px; }
body:has(.mp-confirm-overlay) .pc-dock { visibility:hidden; }
.pc-overlay { position:fixed; inset:0; z-index:10050; background:#00172585; display:flex; justify-content:center; align-items:flex-end; padding:12px 8px max(8px,env(safe-area-inset-bottom,0px)); overscroll-behavior:contain; }
.pc-sheet { width:100%; max-width:460px; max-height:calc(100dvh - 24px); min-height:310px; border:1px solid #ffffffbb; border-radius:22px; overflow:auto; overscroll-behavior:contain; background:#f7fbfd; box-shadow:0 -8px 40px #0018254d; outline:none; animation:pc-enter .18s ease-out; }
.pc-header { display:flex; gap:10px; align-items:center; padding:14px; color:#fff; background:linear-gradient(125deg,var(--pc-brand),var(--pc-deep)); border-radius:21px 21px 0 0; }
.pc-header h2 { margin:0; font-size:18px; line-height:1.3; color:#fff; }
.pc-header small { color:#ffffffdf; font-size:11px; }
.pc-title-icon { display:grid; place-items:center; width:38px; height:38px; border:1px solid #ffffff70; background:#ffffff20; border-radius:12px; }
.pc-close { width:38px; height:38px; margin-left:auto; padding:0; border:1px solid #ffffff60; border-radius:12px; background:#ffffff1a; color:#fff; font-size:28px; cursor:pointer; }
.pc-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:10px 10px 0; gap:5px; }
.pc-tabs.has-typebet { grid-template-columns:repeat(4,minmax(0,1fr)); }
.pc-tabs button { border:1px solid #d0dfe5; background:#fff; color:#3d5260; font:inherit; font-size:12px; font-weight:750; padding:10px 2px; border-radius:11px; min-height:42px; cursor:pointer; }
.pc-tabs button.active { color:#fff; background:var(--pc-deep); border-color:var(--pc-deep); box-shadow:0 3px 8px #153c4224; }
.pc-body { padding:14px; }
.pc-label { display:block; font-size:12px; font-weight:750; margin-bottom:6px; }
.pc-input-row { display:flex; gap:8px; }
.pc-input-row input { min-width:0; width:100%; height:48px; border:1px solid #b9d0db; border-radius:12px; background:#fff; color:#193545; font:inherit; font-size:22px; font-weight:750; letter-spacing:3px; padding:8px 12px; }
.pc-input-row input::placeholder { font-size:15px; letter-spacing:0; color:#738a96; font-weight:400; }
.pc-input-row input:focus { outline:2px solid var(--pc-brand); outline-offset:1px; }
.pc-input-row input[aria-invalid=true] { border-color:#d3294c; }
.pc-clear { border:1px solid #c7dbe4; background:#eaf2f6; color:#254657; border-radius:12px; padding:8px 12px; font:inherit; font-size:12px; font-weight:700; cursor:pointer; }
.pc-results { padding-top:12px; }
.pc-hint { font-size:12px; line-height:1.6; color:#5d7482; margin:6px 0; }
.pc-error { font-size:12px; color:#be1d40; background:#fff0f3; padding:10px; border-radius:10px; }
.pc-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
.pc-summary span { text-align:center; background:#e8f2f4; border:1px solid #d0e2e7; border-radius:12px; padding:8px; font-size:11px; color:#526d79; }
.pc-summary strong { display:block; font-size:26px; line-height:1.4; color:var(--pc-deep); }
.pc-results h3 { display:flex; justify-content:space-between; font-size:13px; margin:14px 0 8px; color:#193545; }
.pc-results h3 small { font-size:11px; color:#617d8c; font-weight:400; }
.pc-chips { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:6px; }
.pc-chips span { border:1px solid #cadfe5; background:linear-gradient(#fff,#eaf3f7); border-radius:9px; text-align:center; padding:8px 0; font-size:14px; font-weight:750; font-variant-numeric:tabular-nums; }
.pc-ank-group + .pc-ank-group { margin-top:16px; border-top:1px solid #dce8ed; }
.tb-panel textarea { width:100%; min-height:96px; resize:vertical; border:1px solid #b9d0db; border-radius:13px; padding:11px; background:#fff; color:#193545; font:600 15px/1.45 inherit; }
.tb-panel textarea:focus,.tb-session select:focus { outline:2px solid var(--pc-brand); outline-offset:1px; }
.tb-market { display:flex; justify-content:space-between; align-items:center; gap:10px; margin:-2px 0 12px; padding:9px 10px; border-radius:11px; background:#e8f2f4; }
.tb-market strong { font-size:13px; }
.tb-market span,.tb-example { color:#5d7482; font-size:11px; }
.tb-example { margin:6px 2px 10px; line-height:1.45; }
.tb-primary,.tb-submit { min-height:44px; border:0; border-radius:12px; background:linear-gradient(135deg,var(--pc-brand),var(--pc-deep)); color:#fff; padding:9px 14px; font:800 13px inherit; cursor:pointer; }
.tb-primary { width:100%; }
.tb-primary:disabled,.tb-submit:disabled { opacity:.5; cursor:not-allowed; }
.tb-group { margin-top:10px; padding:9px; border:1px solid #d4e4e9; border-radius:12px; background:#fff; }
.tb-group header,.tb-total { display:flex; justify-content:space-between; align-items:center; gap:8px; }
.tb-group header { margin-bottom:7px; font-size:12px; }
.tb-group header span { color:#5d7482; }
.tb-numbers { display:flex; flex-wrap:wrap; gap:5px; max-height:100px; overflow:auto; }
.tb-numbers span { min-width:34px; padding:5px 7px; border-radius:8px; text-align:center; background:#e8f2f4; color:var(--pc-deep); font-weight:800; font-size:12px; }
.tb-total { margin:10px 0; padding:10px 12px; border-radius:12px; background:var(--pc-deep); color:#fff; }
.tb-total strong { font-size:17px; }
.tb-session { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:10px; margin:10px 0; font-size:12px; font-weight:800; }
.tb-session select { height:42px; min-width:0; border:1px solid #b9d0db; border-radius:11px; background:#fff; padding:0 9px; font:700 13px inherit; }
.tb-actions { display:grid; grid-template-columns:auto minmax(0,1fr); gap:8px; margin-top:10px; }
.tb-confirm { margin-top:12px; padding:12px; border:2px solid color-mix(in srgb,var(--pc-brand),white 40%); border-radius:14px; background:#f0f8f9; }
.tb-confirm h3 { margin:0 0 6px; color:var(--pc-deep); font-size:15px; }
.tb-confirm p { margin:5px 0; color:#405d69; font-size:12px; line-height:1.45; }
.tb-success { padding:10px; border-radius:10px; color:#08763d; background:#e8faef; font-size:12px; font-weight:700; }
@media(max-width:350px) { .pc-tabs.has-typebet { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@keyframes pc-enter { from { opacity:0; transform:translateY(15px); } to { opacity:1; transform:translateY(0); } }
@media(prefers-reduced-motion:reduce) { .pc-root * { animation:none!important; transition:none!important; } }
