:root{
  --font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bg: #f7efe1;
  --app: #fff7ef;
  --surface: #fff8f2;
  --surface-muted: #f7eee1;
  --text: #3b2a1f;
  --muted: #6d5a49;
  --accent: #7b4f2f;
  --accent-strong: #4f2f1f;
  --gold: #b48b5d;
  --success: #3c5936;
  --danger: #9d2f33;
  --warning: #b38038;
  --info: #4d7fae;
  --border: rgba(120, 84, 57, 0.2);
}
html,body{min-height:100%;background:var(--bg);color:var(--text);}
body{margin:0;font-family:var(--font-sans);background-image:linear-gradient(180deg, rgba(255,255,255,0.8), rgba(247,239,225,0.9));}
*{box-sizing:border-box;}
.pk-app{font-family:inherit;background:var(--app);border-radius:18px;overflow:hidden;border:1px solid var(--border);margin:0 auto;width:min(96%,1200px);max-width:1200px;box-shadow:0 24px 60px rgba(96, 60, 30, 0.12);}
.pk-header{background:var(--surface);padding:20px 22px 14px;border-bottom:1px solid var(--border);text-align:center;}
.pk-header-suits{font-size:16px;letter-spacing:6px;margin-bottom:4px;opacity:0.75;color:var(--muted);}
.pk-title{font-size:24px;font-weight:700;color:var(--accent-strong);letter-spacing:1px;}
.pk-subtitle{font-size:12px;color:var(--muted);margin-top:4px;letter-spacing:0.6px;}
.suit-red{color:#b55b5b;}
.pk-step-bar{display:flex;background:transparent;border-bottom:1px solid rgba(120,84,57,0.12);}
.pk-step{flex:1;padding:11px 6px;text-align:center;font-size:11px;color:var(--muted);letter-spacing:0.5px;border-bottom:2px solid transparent;}
.pk-step.done{color:var(--gold);}
.pk-step.active{color:var(--accent);border-bottom-color:var(--gold);}
.pk-step.disabled{cursor:not-allowed;opacity:0.55;}
.pk-body{padding:18px;background:transparent;}
.screen{display:none;}
.screen.active{display:block;}
.felt-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px 18px 16px;margin-bottom:14px;box-shadow:0 10px 24px rgba(120, 84, 57, 0.06);}
.felt-card-title{font-size:12px;color:var(--accent-strong);letter-spacing:1px;text-transform:uppercase;margin-bottom:10px;}
.gold-label{font-size:11px;color:var(--accent-strong);letter-spacing:0.5px;margin-bottom:5px;}
.required-marker{color:#b22222;font-size:10px;font-weight:600;}
.pk-input{width:100%;padding:11px 13px;border:1px solid rgba(120,84,57,0.22);border-radius:12px;background:var(--surface-muted);color:var(--text);font-size:14px;outline:none;transition:border-color 0.15s, box-shadow 0.15s;}
.pk-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(180,139,94,0.14);}
.pk-input::placeholder{color:rgba(109,90,73,0.55);}
.pk-input.invalid{border-color:rgba(157,47,51,0.8)!important;box-shadow:0 0 0 3px rgba(157,47,51,0.14);}
.pk-input.valid{border-color:rgba(123,79,46,0.7)!important;}
input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(0.1) sepia(1) saturate(3) hue-rotate(15deg);cursor:pointer;opacity:0.8;}
input[type="date"]{color-scheme:light;}
.pk-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:12px;border:1px solid rgba(120,84,57,0.2);background:transparent;cursor:pointer;font-size:12px;font-weight:600;color:var(--accent-strong);transition:all 0.14s ease;letter-spacing:0.3px;}
.pk-btn:hover{background:rgba(180,139,94,0.12);border-color:rgba(180,139,94,0.35);}
.pk-btn:active{transform:translateY(1px);}
.pk-btn-primary{background:var(--gold);color:#fff;border-color:var(--gold);}
.pk-btn-primary:hover{background:#d3a56f;border-color:#d3a56f;color:#2f1f12;}
.pk-btn-danger{color:var(--danger);border-color:rgba(157,47,51,0.35);}
.pk-btn-danger:hover{background:rgba(157,47,51,0.12);}
.pk-btn-success{color:var(--success);border-color:rgba(60,89,54,0.32);}
.pk-btn-success:hover{background:rgba(60,89,54,0.12);}
.pk-btn-warn{color:var(--warning);border-color:rgba(179,128,56,0.35);}
.pk-btn-warn:hover{background:rgba(179,128,56,0.12);}
.pk-btn-info{color:var(--info);border-color:rgba(77,127,174,0.32);}
.pk-btn-info:hover{background:rgba(77,127,174,0.12);}
.pk-btn-sm{padding:6px 12px;font-size:11px;}
.row{display:flex;gap:10px;align-items:center;}
.flex-1{flex:1;}
.flex-between{display:flex;justify-content:space-between;align-items:center;}
.mt-8{margin-top:8px;}
.mt-10{margin-top:10px;}
.mb-8{margin-bottom:8px;}
.divider{border:none;border-top:1px solid rgba(120,84,57,0.16);margin:12px 0;}
.player-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid rgba(92,68,50,0.12);}
.player-avatar{width:38px;height:38px;border-radius:50%;background:var(--gold);color:#3b2310;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;border:1px solid rgba(120,84,57,0.24);}
.pk-badge{display:inline-flex;align-items:center;padding:4px 11px;border-radius:20px;font-size:11px;font-weight:600;}
.pk-badge-gold{background:rgba(180,139,94,0.16);color:var(--accent-strong);border:1px solid rgba(180,139,94,0.28);}
.pk-alert{padding:12px 14px;border-radius:12px;font-size:13px;margin-bottom:10px;display:none;line-height:1.5;}
.pk-alert.show{display:block;}
.pk-alert-danger{background:#fde8e8;border:1px solid rgba(157,47,51,0.25);color:#7f2428;}
.pk-alert-warning{background:#fff5df;border:1px solid rgba(179,128,56,0.28);color:#6f4f2c;}
.pk-alert-success{background:#e9f1e8;border:1px solid rgba(60,89,54,0.25);color:#2f5638;}
.field-err{font-size:11px;color:var(--danger);margin-top:3px;display:none;padding-left:2px;}
.field-err.show{display:block;}
.chip-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px;}
.chip-btn{padding:7px 12px;font-size:11px;border-radius:999px;border:2px solid;cursor:pointer;font-weight:700;transition:all 0.12s;background:transparent;}
.chip-5{border-color:#c76b66;color:#a63d38;}.chip-5:hover{background:#a63d38;color:#fff;border-color:#a63d38;}
.chip-10{border-color:#4d7ea5;color:#4d7ea5;}.chip-10:hover{background:#3b6584;color:#fff;border-color:#3b6584;}
.chip-20{border-color:#7b4f2f;color:#7b4f2f;}.chip-20:hover{background:#6d4428;color:#fff;border-color:#6d4428;}
.chip-50{border-color:var(--gold);color:var(--gold);}.chip-50:hover{background:#a77d55;color:#fff;border-color:#a77d55;}
.chip-100{border-color:#8f8f8f;color:#8f8f8f;}.chip-100:hover{background:#5b5b5b;color:#fff;border-color:#5b5b5b;}
.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;}
.metric-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:12px;}
.metric-box{background:var(--surface);border:1px solid rgba(120,84,57,0.18);border-radius:14px;padding:14px;text-align:center;box-shadow:0 10px 20px rgba(120,84,57,0.04);}
.metric-val{font-size:19px;font-weight:700;color:var(--accent-strong);}
.metric-lbl{font-size:10px;color:var(--muted);margin-top:4px;letter-spacing:0.5px;}
.nav-footer{display:flex;justify-content:space-between;align-items:center;padding-top:14px;}
.tag-in{display:inline-block;background:rgba(123,79,46,0.12);color:var(--accent);border:1px solid rgba(123,79,46,0.22);font-size:10px;padding:3px 9px;border-radius:20px;}
.tag-out{background:rgba(157,47,51,0.12);color:var(--danger);border:1px solid rgba(157,47,51,0.25);}
.tag-waiting{background:rgba(179,128,56,0.12);color:var(--warning);border:1px solid rgba(179,128,56,0.2);}
.settle-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid rgba(92,68,50,0.12);}
.amount-pos{color:var(--accent-strong);font-weight:700;}
.amount-neg{color:var(--danger);font-weight:700;}
.pk-textarea{width:100%;padding:12px 14px;font-size:12px;border:1px solid rgba(120,84,57,0.22);border-radius:12px;background:var(--surface-muted);color:var(--text);font-family:var(--font-mono);line-height:1.7;resize:none;}
.pk-name{font-size:13px;color:var(--text);}
.pk-sub{font-size:11px;color:var(--muted);margin-top:2px;}
.result-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid rgba(92,68,50,0.12);}
.buyin-history-item{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:rgba(180,139,94,0.08);border-radius:10px;margin-bottom:4px;font-size:11px;color:var(--muted);}
.bi-val{color:var(--accent-strong);font-weight:700;}
.bi-del{background:none;border:none;color:var(--danger);cursor:pointer;font-size:12px;padding:0 4px;}
.add-player-section{background:rgba(180,139,94,0.07);border:1px dashed rgba(120,84,57,0.3);border-radius:14px;padding:14px;margin-bottom:12px;}
.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(57,40,24,0.65);display:flex;align-items:center;justify-content:center;z-index:100;padding:16px;}
.modal-box{background:var(--surface);border:1px solid rgba(120,84,57,0.17);border-radius:18px;padding:22px;width:100%;max-width:380px;box-shadow:0 25px 60px rgba(120,84,57,0.14);}
.modal-title{font-size:15px;font-weight:700;color:var(--accent-strong);margin-bottom:6px;}
.modal-subtitle{font-size:12px;color:var(--muted);margin-bottom:14px;}
.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;}
.no-buyin-notice{display:flex;align-items:center;gap:8px;padding:9px 12px;background:rgba(179,128,56,0.1);border:1px solid rgba(179,128,56,0.2);border-radius:12px;font-size:11px;color:var(--warning);margin-top:5px;}
.action-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.bi-hist-inline{margin-top:10px;}
.validation-list{list-style:none;padding:0;margin:0;}
.validation-list li{padding:4px 0;font-size:11px;display:flex;align-items:flex-start;gap:8px;color:var(--muted);}
.validation-list li:before{content:'•';flex-shrink:0;margin-top:1px;color:var(--warning);}
.warning-box{background:rgba(255,244,236,0.95);border:1px solid rgba(179,128,56,0.22);border-radius:14px;padding:10px 12px;margin-bottom:12px;font-size:11px;color:var(--text);}
.info-chip{display:inline-block;background:rgba(180,139,94,0.12);color:var(--accent-strong);border:1px solid rgba(180,139,94,0.2);font-size:10px;padding:2px 8px;border-radius:20px;margin-left:5px;}
.persist-bar{background:rgba(255,255,255,0.85);border-bottom:1px solid rgba(120,84,57,0.14);padding:8px 14px;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--muted);gap:8px;}
.persist-dot{width:7px;height:7px;border-radius:50%;background:rgba(120,84,57,0.32);flex-shrink:0;}
.persist-dot.saved{background:var(--gold);}
.persist-dot.saving{background:var(--warning);}
.persist-dot.error{background:var(--danger);}
.persist-status{display:flex;align-items:center;gap:6px;}
.backup-list{max-height:180px;overflow-y:auto;}
.backup-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(92,68,50,0.1);gap:10px;}
.backup-item:last-child{border-bottom:none;}
.backup-meta{font-size:11px;color:var(--muted);}
.backup-meta b{color:var(--text);display:block;}
.reset-step{padding:12px;background:rgba(157,47,51,0.08);border:1px solid rgba(157,47,51,0.18);border-radius:14px;margin-bottom:10px;}
.reset-step-title{font-size:12px;font-weight:700;color:var(--danger);margin-bottom:6px;}
.reset-step-desc{font-size:11px;color:var(--muted);line-height:1.5;}
.download-status{font-size:11px;color:var(--warning);display:none;margin-top:6px;}
.download-status.show{display:block;}
@media (max-width: 600px) {
  .pk-app { border-radius: 0; max-width: none; }
  .pk-header { padding: 14px 16px 10px; }
  .pk-title { font-size: 20px; }
  .pk-body { padding: 14px; }
  .felt-card { padding: 14px 14px 12px; }
  .metric-val { font-size: 16px; }
  .modal-box { width: 100%; max-width: none; }
  .action-row { gap: 6px; }
  .chip-row { gap: 4px; }
}
