@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--color-bg:#f8fafc;--color-surface:#fff;--color-text:#1e293b;--color-text-light:#64748b;--color-border:#e2e8f0;--skyjo-blue:#0ea5e9;--skyjo-blue-muted:#e0f2fe;--skyjo-light-blue:#38bdf8;--skyjo-green:#22c55e;--skyjo-yellow:#f59e0b;--skyjo-red:#ef4444;--skyjo-purple:#a855f7;--skyjo-orange:#f97316;--skyjo-teal:#14b8a6;--skyjo-pink:#ec4899;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #0000000d, 0 4px 6px -4px #0000000d;--shadow-float:0 -4px 20px -5px #0000001a;--radius-sm:.5rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-full:9999px;--transition:all .2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{color:var(--color-text);-webkit-font-smoothing:antialiased;background:linear-gradient(135deg,#f0f4f8 0%,#e2e8f0 100%) fixed;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}#root{flex-direction:column;width:100%;min-height:100vh;display:flex}h1,h2,h3,h4{font-weight:700;line-height:1.2}.text-muted{color:var(--color-text-light)}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.font-semibold{font-weight:600}.card{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:var(--transition);padding:1.5rem}.card:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1}.btn{border-radius:var(--radius-full);cursor:pointer;transition:var(--transition);background:var(--skyjo-blue);color:#fff;box-shadow:var(--shadow-sm);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){box-shadow:var(--shadow-md);filter:brightness(1.05);transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn--outline{color:var(--skyjo-blue);border-color:var(--skyjo-blue);box-shadow:none;background:0 0}.btn--outline:hover:not(:disabled){background:var(--skyjo-blue-muted)}.btn--ghost{color:var(--color-text-light);box-shadow:none;background:0 0}.btn--ghost:hover:not(:disabled){background:var(--color-border);color:var(--color-text)}.btn--danger{background:var(--skyjo-red)}.btn--icon{border-radius:var(--radius-full);padding:.6rem}.input{border:1px solid var(--color-border);border-radius:var(--radius-md);transition:var(--transition);background:var(--color-bg);width:100%;padding:.75rem 1rem;font-family:inherit;font-size:1rem}.input:focus{border-color:var(--skyjo-blue);background:var(--color-surface);box-shadow:0 0 0 3px var(--skyjo-blue-muted);outline:none}.container{flex-direction:column;flex:1;width:100%;max-width:768px;margin:0 auto;padding:1rem;display:flex}@media (width>=640px){.container{padding:2rem}}.app-bar{z-index:100;-webkit-backdrop-filter:blur(12px);background:#ffffffd9;border-bottom:1px solid #e2e8f0cc;width:100%;position:sticky;top:0;box-shadow:0 4px 10px #00000008}.app-bar-inner{justify-content:center;align-items:center;width:100%;max-width:768px;min-height:56px;margin:0 auto;padding:.75rem 1rem;display:flex;position:relative}.app-bar-title{background:linear-gradient(135deg, var(--skyjo-blue), var(--skyjo-purple));-webkit-text-fill-color:transparent;transition:var(--transition);-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.5rem;font-weight:800;line-height:1.2}.app-bar-title.is-active{font-size:1.15rem}.app-bar-subtitle{color:var(--color-text-light);white-space:nowrap;text-overflow:ellipsis;max-width:60vw;margin-top:.1rem;margin-left:auto;margin-right:auto;font-size:.75rem;font-weight:600;overflow:hidden}@media (width>=640px){.app-bar-inner{min-height:70px;padding:1rem 1.5rem}.app-bar-title{font-size:1.75rem}.app-bar-title.is-active{font-size:1.4rem}.app-bar-subtitle{max-width:100%;font-size:.85rem}}.main-content{flex-direction:column;flex:1;display:flex}.player-tag{border-radius:var(--radius-full);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:var(--transition);align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;display:inline-flex}.floating-bar{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);border:1px solid var(--color-border);z-index:50;margin:1.5rem 0 0;padding:1rem;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;position:sticky;bottom:1rem}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.4s fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.table-wrapper{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);-webkit-overflow-scrolling:touch;overflow-x:auto}.score-table{border-collapse:separate;border-spacing:0;width:100%}.score-table th,.score-table td{border-bottom:1px solid var(--color-border);text-align:center;white-space:nowrap;padding:1rem}.score-table tbody tr:last-child td{border-bottom:none}.score-table th:first-child,.score-table td:first-child{z-index:10;text-align:left;border-right:1px solid var(--color-border);position:sticky;left:0}.score-table th:first-child{background:var(--color-bg);z-index:12}.score-table td:first-child{background:var(--color-surface)}.score-table tr.totals-row td:first-child{background:#f1f5f9}.score-table th{background:var(--color-bg);z-index:11;border-bottom:2px solid var(--color-border);font-weight:600;position:sticky;top:0}.totals-row{background:#f1f5f9;font-weight:700}.totals-row td{border-top:2px solid var(--color-border)}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;display:grid}.stat-box{background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);flex-direction:column;justify-content:space-between;padding:1rem;display:flex}.stat-val{font-size:1.5rem;font-weight:800;line-height:1.2}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}
