@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--color-bg-primary:#0c0d12;--color-bg-secondary:#14161e;--color-bg-tertiary:#1c1f2a;--color-bg-elevated:#22252f;--color-bg-card:linear-gradient(145deg, #1a1d26, #14161e);--color-bg-card-solid:#181b23;--color-bg-input:#0f1015;--color-bg-hover:hsla(0,0%,100%,.04);--glass-bg:rgba(20,22,30,.8);--glass-border:hsla(0,0%,100%,.08);--glass-blur:blur(20px);--color-text-primary:#f4f4f5;--color-text-secondary:#a1a1aa;--color-text-tertiary:#71717a;--color-text-muted:#52525b;--color-text-inverse:#09090b;--color-accent:#10b981;--color-accent-hover:#059669;--color-accent-subtle:rgba(16,185,129,.12);--color-accent-glow:0 0 20px rgba(16,185,129,.3);--color-accent-gradient:linear-gradient(135deg, #10b981, #059669);--color-gold:#f59e0b;--color-gold-subtle:rgba(245,158,11,.12);--color-gold-gradient:linear-gradient(135deg, #fbbf24, #f59e0b);--color-felt:#065f46;--color-felt-gradient:linear-gradient(145deg, #065f46, #064e3b);--color-chip-gold:linear-gradient(145deg, #fcd34d, #f59e0b);--color-chip-red:linear-gradient(145deg, #f87171, #dc2626);--color-chip-blue:linear-gradient(145deg, #60a5fa, #2563eb);--color-chip-black:linear-gradient(145deg, #374151, #1f2937);--color-chip-white:linear-gradient(145deg, #fff, #e5e7eb);--color-suit-spade:#18181b;--color-suit-club:#065f46;--color-suit-heart:#dc2626;--color-suit-diamond:#2563eb;--color-profit:#22c55e;--color-profit-subtle:rgba(34,197,94,.12);--color-profit-bg:linear-gradient(145deg, rgba(34,197,94,.15), rgba(34,197,94,.05));--color-profit-glow:0 0 20px rgba(34,197,94,.25);--color-loss:#ef4444;--color-loss-subtle:rgba(239,68,68,.12);--color-loss-bg:linear-gradient(145deg, rgba(239,68,68,.15), rgba(239,68,68,.05));--color-loss-glow:0 0 20px rgba(239,68,68,.25);--color-warning:#f59e0b;--color-warning-subtle:rgba(245,158,11,.12);--color-warning-bg:linear-gradient(145deg, rgba(245,158,11,.15), rgba(245,158,11,.05));--color-info:#3b82f6;--color-info-subtle:rgba(59,130,246,.12);--color-info-bg:linear-gradient(145deg, rgba(59,130,246,.15), rgba(59,130,246,.05));--color-border:hsla(0,0%,100%,.08);--color-border-light:hsla(0,0%,100%,.12);--color-border-focus:var(--color-accent);--color-border-subtle:hsla(0,0%,100%,.04);--shadow-xs:0 1px 2px rgba(0,0,0,.2);--shadow-sm:0 2px 4px rgba(0,0,0,.25), 0 1px 2px rgba(0,0,0,.2);--shadow-md:0 4px 12px rgba(0,0,0,.3), 0 2px 4px rgba(0,0,0,.2);--shadow-lg:0 8px 24px rgba(0,0,0,.35), 0 4px 8px rgba(0,0,0,.25);--shadow-xl:0 16px 48px rgba(0,0,0,.4), 0 8px 16px rgba(0,0,0,.3);--shadow-2xl:0 24px 64px rgba(0,0,0,.5);--shadow-accent:0 4px 20px rgba(16,185,129,.25);--shadow-profit:0 4px 20px rgba(34,197,94,.2);--shadow-loss:0 4px 20px rgba(239,68,68,.2);--shadow-inner-glow:inset 0 1px 0 hsla(0,0%,100%,.05);--space-0:0;--space-px:1px;--space-0-5:.125rem;--space-1:.25rem;--space-1-5:.375rem;--space-2:.5rem;--space-2-5:.625rem;--space-3:.75rem;--space-3-5:.875rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-11:2.75rem;--space-12:3rem;--space-14:3.5rem;--space-16:4rem;--space-20:5rem;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", Monaco, "Cascadia Code", "Consolas", monospace;--font-size-2xs:.625rem;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-base:.875rem;--font-size-md:.9375rem;--font-size-lg:1rem;--font-size-xl:1.125rem;--font-size-2xl:1.25rem;--font-size-3xl:1.5rem;--font-size-4xl:1.875rem;--font-size-5xl:2.25rem;--font-size-6xl:3rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-none:1;--line-height-tight:1.2;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--letter-spacing-tighter:-.05em;--letter-spacing-tight:-.025em;--letter-spacing-normal:0;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--letter-spacing-widest:.1em;--radius-none:0;--radius-sm:.25rem;--radius-md:.375rem;--radius-DEFAULT:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.25rem;--radius-3xl:1.5rem;--radius-full:9999px;--duration-75:75ms;--duration-100:.1s;--duration-150:.15s;--duration-200:.2s;--duration-300:.3s;--duration-500:.5s;--duration-700:.7s;--duration-1000:1s;--ease-linear:linear;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-bounce:cubic-bezier(.68, -.55, .265, 1.55);--ease-smooth:cubic-bezier(.25, .1, .25, 1);--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--transition-fast:var(--duration-150) var(--ease-out);--transition-normal:var(--duration-200) var(--ease-out);--transition-slow:var(--duration-300) var(--ease-out);--transition-smooth:var(--duration-300) var(--ease-smooth);--transition-bounce:var(--duration-500) var(--ease-bounce);--z-negative:-1;--z-0:0;--z-10:10;--z-20:20;--z-30:30;--z-40:40;--z-50:50;--z-dropdown:100;--z-sticky:150;--z-modal-backdrop:200;--z-modal:210;--z-popover:250;--z-toast:300;--z-tooltip:400;--z-max:9999;--header-height:60px;--nav-height:72px;--safe-area-bottom:env(safe-area-inset-bottom, 0px);--content-max-width:480px;--content-padding:var(--space-4)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(0)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:translateY(-25%)}}@keyframes glow{0%,to{box-shadow:var(--color-accent-glow)}50%{box-shadow:0 0 30px rgba(16,185,129,.5)}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);min-height:100vh;min-height:100dvh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{background:radial-gradient(ellipse at top,rgba(16,185,129,.03) 0,transparent 50%),radial-gradient(ellipse at bottom right,rgba(59,130,246,.02) 0,transparent 50%);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:fixed;z-index:-1}.app-container{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.app-header{backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);background:var(--glass-bg);border-bottom:1px solid var(--glass-border);height:var(--header-height);justify-content:space-between;left:0;padding:0 var(--space-5);position:fixed;right:0;top:0;z-index:var(--z-sticky)}.app-header,.header-left{align-items:center;display:flex}.header-left{gap:var(--space-3)}.header-logo{color:var(--color-accent);filter:drop-shadow(0 0 8px rgba(16,185,129,.4));font-size:var(--font-size-2xl)}.header-title{color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight)}.header-right{gap:var(--space-3)}.header-right,.user-avatar-btn{align-items:center;display:flex}.user-avatar-btn{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;font-size:var(--font-size-lg);height:40px;justify-content:center;overflow:hidden;position:relative;transition:all var(--transition-fast);width:40px}.user-avatar-btn:before{background:linear-gradient(135deg,hsla(0,0%,100%,.1),transparent 50%);content:"";top:0;right:0;bottom:0;left:0;opacity:0;position:absolute;transition:opacity var(--transition-fast)}.user-avatar-btn:hover{border-color:var(--color-border-light);transform:scale(1.05)}.user-avatar-btn:hover:before{opacity:1}.main-content{flex:1;overflow-y:auto;padding-bottom:calc(var(--nav-height) + var(--safe-area-bottom));padding-top:var(--header-height)}.loading-state{align-items:center;color:var(--color-text-secondary);display:flex;flex-direction:column;gap:var(--space-4);justify-content:center;min-height:50vh}.loading-spinner{animation:spin .8s linear infinite;border:3px solid var(--color-border);border-radius:50%;border-top-color:var(--color-accent);height:44px;width:44px}.bottom-nav{align-items:stretch;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);background:var(--glass-bg);border-top:1px solid var(--glass-border);bottom:0;display:flex;height:calc(var(--nav-height) + var(--safe-area-bottom));justify-content:space-around;left:0;padding-bottom:var(--safe-area-bottom);position:fixed;right:0;z-index:var(--z-sticky)}.nav-btn{align-items:center;background:none;border:none;color:var(--color-text-muted);cursor:pointer;display:flex;flex:1;flex-direction:column;gap:var(--space-1);justify-content:center;padding:var(--space-2) 0;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;position:relative}.nav-btn:before{background:var(--color-accent-gradient);border-radius:0 0 var(--radius-full) var(--radius-full);content:"";height:3px;left:50%;position:absolute;top:0;transform:translate(-50%) scaleX(0);transition:transform var(--transition-fast);width:32px}.nav-btn:hover{color:var(--color-text-secondary)}.nav-btn.active{color:var(--color-accent)}.nav-btn.active:before{transform:translate(-50%) scaleX(1)}.nav-icon{font-size:1.375rem;transition:transform var(--transition-bounce)}.nav-btn:active .nav-icon{transform:scale(.9)}.nav-btn.active .nav-icon{filter:drop-shadow(0 0 6px rgba(16,185,129,.5))}.nav-label{font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.section{animation:fadeInUp .3s var(--ease-out);display:none;padding:var(--space-5)}.section.active{display:block}.card{background:var(--color-bg-card-solid);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm),var(--shadow-inner-glow);margin-bottom:var(--space-4);overflow:hidden;padding:var(--space-5);position:relative;transition:all var(--transition-normal)}.card:before{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.1) 50%,transparent);content:"";height:1px;left:0;position:absolute;right:0;top:0}.card:hover{border-color:var(--color-border-light);box-shadow:var(--shadow-md),var(--shadow-inner-glow)}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-4)}.card-title{color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight)}.card-subtitle{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.card.featured{background:linear-gradient(145deg,rgba(16,185,129,.08) 0,var(--color-bg-card-solid) 50%);border-color:rgba(16,185,129,.2)}.card.featured:before{background:linear-gradient(90deg,transparent,rgba(16,185,129,.3) 50%,transparent)}.stat-display{padding:var(--space-6) var(--space-4);text-align:center}.stat-label{color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-widest);margin-bottom:var(--space-2);text-transform:uppercase}.stat-value{animation:countUp .4s var(--ease-out);font-family:var(--font-mono);font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-none)}.stat-value.profit{color:var(--color-profit);text-shadow:0 0 30px rgba(34,197,94,.3)}.stat-value.loss{color:var(--color-loss);text-shadow:0 0 30px rgba(239,68,68,.3)}.session-timer,.stat-value.neutral{color:var(--color-text-primary)}.session-timer{font-family:var(--font-mono);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);letter-spacing:.1em;padding:var(--space-3) 0;position:relative;text-align:center}.session-timer:after{background:var(--color-accent-gradient);border-radius:var(--radius-full);bottom:0;content:"";height:2px;left:50%;opacity:.5;position:absolute;transform:translate(-50%);width:60px}.btn{align-items:center;border:none;border-radius:var(--radius-lg);cursor:pointer;display:inline-flex;font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);gap:var(--space-2);justify-content:center;padding:var(--space-3) var(--space-5);transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;min-height:48px;overflow:hidden;position:relative}.btn:before{background:linear-gradient(135deg,hsla(0,0%,100%,.15),transparent 50%);content:"";top:0;right:0;bottom:0;left:0;opacity:0;position:absolute;transition:opacity var(--transition-fast)}.btn:hover:before{opacity:1}.btn:active{transform:scale(.98)}.btn-primary{background:var(--color-accent-gradient);box-shadow:var(--shadow-sm),var(--shadow-accent);color:#fff}.btn-primary:hover{box-shadow:var(--shadow-md),0 0 25px rgba(16,185,129,.4);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0) scale(.98)}.btn-secondary{background:var(--color-bg-tertiary);border:1px solid var(--color-border);color:var(--color-text-primary)}.btn-secondary:hover{background:var(--color-bg-elevated);border-color:var(--color-border-light)}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:var(--shadow-sm),var(--shadow-loss);color:#fff}.btn-danger:hover{box-shadow:var(--shadow-md),0 0 25px rgba(239,68,68,.4)}.btn-outline{background:transparent;border:1px solid var(--color-border);color:var(--color-text-primary)}.btn-outline:hover{background:var(--color-bg-hover);border-color:var(--color-border-light)}.btn-ghost{background:transparent;border:none;color:var(--color-text-secondary);min-height:auto;padding:var(--space-2) var(--space-3)}.btn-ghost:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.btn-lg{border-radius:var(--radius-xl);font-size:var(--font-size-lg);min-height:56px;padding:var(--space-4) var(--space-6)}.btn-block{width:100%}.btn-icon{font-size:1.25rem}.btn-action{background:var(--color-bg-card-solid);border:1px solid var(--color-border);border-radius:var(--radius-xl);color:var(--color-text-primary);flex-direction:column;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--space-1);min-height:72px;padding:var(--space-4)}.btn-action .btn-icon{font-size:1.5rem;margin-bottom:var(--space-1)}.btn-action:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-buttons{display:grid;gap:var(--space-3);grid-template-columns:repeat(2,1fr);margin-left:auto;margin-right:auto;margin-top:var(--space-4)}.form-group{margin-bottom:var(--space-5)}.form-label{color:var(--color-text-secondary);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2)}.form-input,.form-select,.form-textarea{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-base);min-height:48px;padding:var(--space-3-5) var(--space-4);transition:all var(--transition-fast);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle);outline:none}.form-input::-moz-placeholder{color:var(--color-text-muted)}.form-input::placeholder{color:var(--color-text-muted)}.form-input-lg{font-family:var(--font-mono);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);padding:var(--space-5);text-align:center}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%2371717a' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right var(--space-3) center;background-repeat:no-repeat;background-size:18px;padding-right:var(--space-10)}.form-textarea{min-height:100px;resize:vertical}.money-input-wrapper{align-items:center;display:flex;position:relative}.money-input-prefix{color:var(--color-text-tertiary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);left:var(--space-4);pointer-events:none;position:absolute;z-index:1}.money-input{font-family:var(--font-mono);font-weight:var(--font-weight-semibold);overflow:hidden;padding-left:var(--space-10)}.money-input.form-input-lg{padding-left:var(--space-12);text-align:left}.money-input-wrapper:has(.form-input-lg) .money-input-prefix{font-size:var(--font-size-2xl);left:var(--space-5)}.money-input::-webkit-inner-spin-button,.money-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.money-input[type=number]{-moz-appearance:textfield}.toggle-group{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;gap:var(--space-2);padding:var(--space-1)}.toggle-btn{background:transparent;border:none;border-radius:var(--radius-md);color:var(--color-text-tertiary);cursor:pointer;flex:1;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--space-2-5) var(--space-4);transition:all var(--transition-fast)}.toggle-btn:hover{color:var(--color-text-secondary)}.toggle-btn.active{background:var(--color-accent-gradient);box-shadow:var(--shadow-sm);color:#fff}.tag{align-items:center;background:var(--color-bg-tertiary);border:1px solid transparent;border-radius:var(--radius-full);color:var(--color-text-secondary);display:inline-flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);gap:var(--space-1);padding:var(--space-1) var(--space-2-5);transition:all var(--transition-fast)}.tag.active,.tag.selected{background:var(--color-accent-subtle);border-color:rgba(16,185,129,.3);color:var(--color-accent)}.tag-group{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tag-btn{background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-3-5);transition:all var(--transition-fast)}.tag-btn:hover{background:var(--color-bg-hover);border-color:var(--color-border-light)}.tag-btn.active{background:var(--color-accent-gradient);border-color:transparent;box-shadow:var(--shadow-accent);color:#fff}.position-selector{display:grid;gap:var(--space-2);grid-template-columns:repeat(3,1fr)}.position-btn{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-secondary);cursor:pointer;font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--space-2-5);transition:all var(--transition-fast)}.position-btn:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-light)}.position-btn.active{background:var(--color-accent-gradient);border-color:transparent;box-shadow:var(--shadow-accent);color:#fff}.card-picker-container{padding:var(--space-4)}.card-picker-selected{gap:var(--space-4);margin-bottom:var(--space-5)}.card-picker-selected,.card-slot{display:flex;justify-content:center}.card-slot{align-items:center;background:var(--color-bg-tertiary);border:2px dashed var(--color-border-light);border-radius:var(--radius-lg);font-size:var(--font-size-2xl);height:88px;transition:all var(--transition-fast);width:64px}.card-slot.filled{background:#fff;border-color:var(--color-border);border-style:solid;box-shadow:var(--shadow-md);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}.card-placeholder{color:var(--color-text-muted);font-size:var(--font-size-3xl)}.card-picker-grid{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.card-rank-row{gap:var(--space-1-5)}.card-pick-btn,.card-rank-row{display:flex;justify-content:center}.card-pick-btn{align-items:center;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);height:44px;transition:all var(--transition-fast);width:44px}.card-pick-btn:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-light);transform:scale(1.05)}.card-pick-btn.selected{background:var(--color-bg-elevated);border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-subtle);transform:scale(1.05)}.timeline{list-style:none}.timeline-item{animation:fadeInUp .3s var(--ease-out);border-bottom:1px solid var(--color-border-subtle);display:flex;gap:var(--space-3);padding:var(--space-3-5) 0}.timeline-item:last-child{border-bottom:none}.timeline-icon{align-items:center;background:var(--color-bg-tertiary);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);display:flex;flex-shrink:0;font-size:var(--font-size-base);height:36px;justify-content:center;width:36px}.timeline-content{flex:1;min-width:0}.timeline-title{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-snug)}.timeline-detail{color:var(--color-text-tertiary);font-size:var(--font-size-xs);margin-top:var(--space-0-5)}.timeline-item-clickable{border-radius:var(--radius-md);cursor:pointer;margin:0 calc(var(--space-3)*-1);padding-left:var(--space-3);padding-right:var(--space-3);transition:background-color var(--transition-fast)}.timeline-item-clickable:hover{background:var(--color-bg-hover)}.timeline-arrow{align-items:center;color:var(--color-text-muted);display:flex;font-size:var(--font-size-lg);padding-left:var(--space-2)}.modal-backdrop{backdrop-filter:blur(4px);background:rgba(0,0,0,.6);top:0;right:0;bottom:0;left:0;opacity:0;position:fixed;transition:all var(--transition-normal);visibility:hidden;z-index:var(--z-modal-backdrop)}.modal-backdrop.active{opacity:1;visibility:visible}.modal{background:var(--color-bg-secondary);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;bottom:0;box-shadow:var(--shadow-2xl);left:0;max-height:92vh;overflow-y:auto;padding-bottom:var(--safe-area-bottom);position:fixed;right:0;transform:translateY(100%);transition:transform var(--transition-smooth);z-index:var(--z-modal)}.modal:before{background:var(--color-border-light);border-radius:var(--radius-full);content:"";height:4px;left:50%;position:absolute;top:var(--space-2);transform:translate(-50%);width:36px}.modal.active{transform:translateY(0)}.modal-header{align-items:center;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;padding:var(--space-5) var(--space-5) var(--space-4);position:sticky;top:0;z-index:1}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight)}.modal-close{align-items:center;background:var(--color-bg-tertiary);border:none;border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:var(--font-size-lg);height:36px;justify-content:center;transition:all var(--transition-fast);width:36px}.modal-close:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.modal-body{padding:var(--space-5)}.modal-footer{background:var(--color-bg-secondary);border-top:1px solid var(--color-border-subtle);bottom:0;display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);position:sticky}.toast-container{display:flex;flex-direction:column;gap:var(--space-2);left:var(--space-4);pointer-events:none;position:fixed;right:var(--space-4);top:calc(var(--header-height) + var(--space-4));z-index:var(--z-toast)}.toast{animation:fadeInDown .3s var(--ease-out);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);font-weight:var(--font-weight-medium);padding:var(--space-4) var(--space-5);pointer-events:auto}.toast.success{background:linear-gradient(90deg,rgba(34,197,94,.08) 0,var(--color-bg-elevated) 50%);border-left:4px solid var(--color-profit)}.toast.error{background:linear-gradient(90deg,rgba(239,68,68,.08) 0,var(--color-bg-elevated) 50%);border-left:4px solid var(--color-loss)}.toast.info{background:linear-gradient(90deg,rgba(59,130,246,.08) 0,var(--color-bg-elevated) 50%);border-left:4px solid var(--color-info)}.empty-state{color:var(--color-text-tertiary);padding:var(--space-12) var(--space-6);text-align:center}.empty-state-icon{filter:grayscale(.5);font-size:4rem;margin-bottom:var(--space-5);opacity:.4}.empty-state-title{color:var(--color-text-secondary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.empty-state-text{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin-bottom:var(--space-6);margin-left:auto;margin-right:auto;max-width:280px}.session-list{list-style:none}.session-list-item{align-items:center;background:var(--color-bg-card-solid);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-inner-glow);cursor:pointer;display:flex;justify-content:space-between;margin-bottom:var(--space-3);padding:var(--space-4);transition:all var(--transition-fast)}.session-list-item:hover{background:var(--color-bg-tertiary);border-color:var(--color-border);transform:translate(4px)}.session-info{flex:1;min-width:0}.session-location{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-meta{color:var(--color-text-tertiary);display:flex;flex-wrap:wrap;font-size:var(--font-size-xs);gap:var(--space-2)}.session-meta span{align-items:center;display:inline-flex;gap:var(--space-1)}.session-result{padding-left:var(--space-4);text-align:right}.session-profit{font-family:var(--font-mono);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.session-month-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-3);padding:var(--space-3) var(--space-1)}.session-month-header h3{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase}.session-month-header span{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.stats-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(2,1fr);margin:var(--space-4) 0}.stat-card{background:var(--color-bg-card-solid);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-inner-glow);padding:var(--space-4);text-align:center;transition:all var(--transition-fast)}.stat-card:hover{border-color:var(--color-border)}.stat-card-value{color:var(--color-text-primary);font-family:var(--font-mono);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-none);margin-bottom:var(--space-1)}.stat-card-label{color:var(--color-text-tertiary);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase}.stat-card.profit-bg{background:var(--color-profit-bg);border-color:rgba(34,197,94,.15)}.stat-card.loss-bg{background:var(--color-loss-bg);border-color:rgba(239,68,68,.15)}.session-header-card{background:linear-gradient(145deg,var(--color-bg-tertiary) 0,var(--color-bg-secondary) 100%);border:1px solid var(--color-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md),var(--shadow-inner-glow);margin-bottom:var(--space-4);padding:var(--space-5)}.session-venue{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-4)}.session-venue-info h2{color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-0-5)}.session-venue-info .stakes{color:var(--color-accent);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.session-venue-badge{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:var(--space-1-5) var(--space-3)}.session-stats-row{display:grid;gap:var(--space-3);grid-template-columns:repeat(3,1fr);text-align:center}.session-stat{padding:var(--space-2) 0}.session-stat-label{color:var(--color-text-muted);font-size:var(--font-size-2xs);letter-spacing:var(--letter-spacing-wider);margin-bottom:var(--space-1);text-transform:uppercase}.session-stat-value{color:var(--color-text-primary);font-family:var(--font-mono);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.btn-cashout{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:var(--shadow-sm),0 4px 20px rgba(245,158,11,.25);color:#fff;font-size:var(--font-size-lg);padding:var(--space-4) var(--space-6)}.btn-cashout:hover{box-shadow:var(--shadow-md),0 0 30px rgba(245,158,11,.4);transform:translateY(-2px)}.divider{background:var(--color-border-subtle);height:1px;margin:var(--space-5) 0}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-profit{color:var(--color-profit)}.text-loss{color:var(--color-loss)}.text-muted{color:var(--color-text-tertiary)}.font-mono{font-family:var(--font-mono)}.font-bold{font-weight:var(--font-weight-bold)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.hidden{display:none!important}.chart-container{padding-bottom:var(--space-8);position:relative}.chart-container svg{display:block;height:160px;width:100%}.chart-labels{color:var(--color-text-tertiary);display:flex;font-size:var(--font-size-xs);justify-content:space-between;margin-top:var(--space-2)}@media(min-width:768px){.main-content{padding-left:var(--space-6);padding-right:var(--space-6)}.section{padding:var(--space-6)}.header-title{font-size:var(--font-size-xl)}.modal{border-radius:var(--radius-2xl);bottom:auto;left:50%;max-height:85vh;max-width:480px;opacity:0;right:auto;top:50%;transform:translate(-50%,-50%) scale(.95);width:90%}.modal:before{display:none}.modal.active{opacity:1;transform:translate(-50%,-50%) scale(1)}.stats-grid{grid-template-columns:repeat(4,1fr)}.stat-value{font-size:var(--font-size-6xl)}.session-list-item{padding:var(--space-5)}.session-profit{font-size:var(--font-size-2xl)}.chart-container svg{height:200px}.card{padding:var(--space-6)}.action-buttons{grid-template-columns:repeat(4,1fr);max-width:600px}}@media(min-width:1024px){:root{--header-height:72px}.app-header{padding:0 var(--space-8)}.header-logo{font-size:var(--font-size-3xl)}.header-title{font-size:var(--font-size-2xl)}.main-content{padding-left:var(--space-8);padding-right:var(--space-8)}.section{padding:var(--space-8)}.nav-btn{padding:var(--space-3) 0}.nav-icon{font-size:1.5rem}.nav-label{font-size:var(--font-size-xs)}.modal{max-width:560px}.chart-container svg{height:240px}.stat-display{padding:var(--space-8) var(--space-6)}.session-header-card{padding:var(--space-6)}.session-venue-info h2{font-size:var(--font-size-xl)}.session-stat-value{font-size:var(--font-size-2xl)}.session-stats-row{gap:var(--space-4)}.form-input,.form-select,.form-textarea{min-height:52px;padding:var(--space-4) var(--space-5)}.form-input-lg{font-size:var(--font-size-3xl);padding:var(--space-6)}.btn{min-height:52px}.btn-lg{font-size:var(--font-size-xl);min-height:60px}}@media(min-width:1280px){.stats-layout{align-items:start;display:grid;gap:var(--space-6);grid-template-columns:1fr 1fr}.stats-layout .card:first-child{grid-column:1 / -1}.chart-container svg{height:280px}.stat-card-value{font-size:var(--font-size-3xl)}}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-light)}*{scrollbar-color:var(--color-border) transparent;scrollbar-width:thin}::-moz-selection{background:var(--color-accent-subtle);color:var(--color-text-primary)}::selection{background:var(--color-accent-subtle);color:var(--color-text-primary)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn:focus-visible,button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}[title]{position:relative}@media(min-width:768px){.nav-btn[title],.position-btn[title]{position:relative}.nav-btn[title]:after,.position-btn[title]:after{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);bottom:calc(100% + 8px);box-shadow:var(--shadow-md);color:var(--color-text-primary);content:attr(title);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);max-width:250px;padding:var(--space-2) var(--space-3);pointer-events:none;text-align:center;white-space:nowrap;white-space:normal}.nav-btn[title]:after,.nav-btn[title]:before,.position-btn[title]:after,.position-btn[title]:before{left:50%;opacity:0;position:absolute;transform:translate(-50%);transition:opacity var(--transition-fast),visibility var(--transition-fast);visibility:hidden;z-index:var(--z-tooltip)}.nav-btn[title]:before,.position-btn[title]:before{border:6px solid transparent;border-top:6px solid var(--color-border);bottom:calc(100% + 2px);content:""}.nav-btn[title]:hover:after,.nav-btn[title]:hover:before,.position-btn[title]:hover:after,.position-btn[title]:hover:before{opacity:1;visibility:visible}.nav-btn[title]:after{bottom:calc(100% + 12px)}.nav-btn[title]:before{bottom:calc(100% + 6px)}}.tcp-container{flex-direction:column}.tcp-container,.tcp-slots{display:flex;gap:var(--space-4)}.tcp-slot,.tcp-slots{justify-content:center}.tcp-slot{align-items:center;background:var(--color-bg-tertiary);border:2px dashed var(--color-border-light);border-radius:var(--radius-lg);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:var(--font-size-2xl);height:88px;transition:all var(--transition-fast);width:64px}.tcp-slot.filled{background:#fff;border:2px solid var(--color-border);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}.tcp-slot-placeholder{opacity:.4}.tcp-ranks{display:grid;gap:var(--space-2);grid-template-columns:repeat(5,1fr)}.tcp-rank-btn{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);height:56px;transition:all var(--transition-fast)}.tcp-rank-btn:hover:not(:disabled){background:var(--color-bg-tertiary);border-color:var(--color-border-light)}.tcp-rank-btn:active:not(:disabled){transform:scale(.95)}.tcp-rank-btn:disabled{cursor:not-allowed;opacity:.3}.tcp-clear-btn{background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);padding:var(--space-2) var(--space-4);transition:all var(--transition-fast)}.tcp-clear-btn:hover{background:var(--color-bg-hover)}.tcp-popup{pointer-events:none;position:fixed;z-index:var(--z-tooltip)}.tcp-popup[hidden]{display:none}.tcp-popup-content{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);display:grid;gap:6px;grid-template-areas:".     north  ." "west  center east" ".     south  .";grid-template-columns:52px 52px 52px;grid-template-rows:52px 52px 52px;padding:var(--space-2);pointer-events:auto}.tcp-suit-btn{background:var(--color-bg-tertiary);border:2px solid var(--color-border);border-radius:var(--radius-lg);color:var(--suit-color);cursor:pointer;font-size:1.75rem;height:52px;transition:all var(--transition-fast);width:52px}.tcp-suit-n{grid-area:north}.tcp-suit-w{grid-area:west}.tcp-suit-e{grid-area:east}.tcp-suit-s{grid-area:south}.tcp-suit-btn:hover:not(:disabled){background:#fff;border-color:var(--suit-color);transform:scale(1.1)}.tcp-suit-btn:disabled{cursor:not-allowed;opacity:.25}.tcp-popup-rank{align-items:center;background:var(--color-bg-tertiary);border-radius:var(--radius-md);color:var(--color-text-primary);display:flex;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);grid-area:center;justify-content:center}.hw-wizard{display:flex;flex-direction:column;gap:var(--space-5)}.hw-progress{justify-content:center;padding:0 var(--space-4)}.hw-progress,.hw-progress-step{align-items:center;display:flex}.hw-progress-step{flex-direction:column;gap:var(--space-1)}.hw-step-dot{background:var(--color-border);border-radius:50%;height:12px;transition:all var(--transition-fast);width:12px}.hw-progress-step.active .hw-step-dot{background:var(--color-accent)}.hw-progress-step.current .hw-step-dot{box-shadow:0 0 0 4px rgba(16,185,129,.2)}.hw-step-label{color:var(--color-text-muted);font-size:var(--font-size-2xs);letter-spacing:.05em;text-transform:uppercase}.hw-progress-step.active .hw-step-label{color:var(--color-text-secondary)}.hw-progress-line{background:var(--color-border);flex:1;height:2px;margin:0 var(--space-2);margin-bottom:var(--space-4)}.hw-step{animation:fadeIn .2s ease-out}.hw-step[hidden]{display:none}.hw-title{color:var(--color-text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-5);text-align:center}.hw-summary{font-size:var(--font-size-lg);margin-bottom:var(--space-4);text-align:center}.hw-summary-cards{display:inline;font-family:var(--font-mono);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold)}.hw-summary-position{color:var(--color-text-secondary);margin-left:var(--space-2)}.hw-positions{display:grid;gap:var(--space-2);grid-template-columns:repeat(3,1fr);margin-bottom:var(--space-4)}.hw-position-btn{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);padding:var(--space-4);transition:all var(--transition-fast)}.hw-position-btn:hover{background:var(--color-bg-elevated);border-color:var(--color-accent)}.hw-position-btn:active{transform:scale(.97)}.hw-result-section{margin-bottom:var(--space-5)}.hw-label{color:var(--color-text-secondary);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2)}.hw-optional{font-weight:var(--font-weight-normal)}.hw-hint,.hw-optional{color:var(--color-text-muted)}.hw-hint{font-size:var(--font-size-xs);margin-top:var(--space-1)}.hw-board-section{margin-bottom:var(--space-4)}.hw-board{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--space-3)}.hw-board-group{align-items:center;display:flex;flex-direction:column;gap:var(--space-1)}.hw-board-flop{flex-direction:row;flex-wrap:wrap;justify-content:center}.hw-board-flop .hw-board-label{text-align:center;width:100%}.hw-board-slot{align-items:center;background:var(--color-bg-tertiary);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:var(--font-size-lg);height:56px;justify-content:center;transition:all var(--transition-fast);width:40px}.hw-board-slot:hover{background:var(--color-bg-hover);border-color:var(--color-border-light)}.hw-board-slot.filled{background:#fff;border:1px solid var(--color-border);font-weight:var(--font-weight-bold)}.hw-board-label{color:var(--color-text-muted);font-size:var(--font-size-2xs);text-transform:uppercase}.hw-board-picker-popup{align-items:center;background:rgba(0,0,0,.6);display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:var(--z-modal)}.hw-board-picker-popup[hidden]{display:none}.hw-board-picker-inner{background:var(--color-bg-card-solid);border-radius:var(--radius-xl);max-width:350px;padding:var(--space-5);width:100%}.hw-tags-section{margin-bottom:var(--space-4)}.hw-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.hw-notes-section{margin-bottom:var(--space-5)}.hw-edit-cards-section{margin-bottom:var(--space-4)}.hw-edit-cards-row{align-items:flex-start;display:flex;gap:var(--space-3)}.hw-edit-hole-cards{flex:1}.hw-edit-hole-cards .tcp-container,.hw-edit-hole-cards .tcp-slots{gap:var(--space-2)}.hw-edit-hole-cards .tcp-slot{font-size:var(--font-size-lg);height:64px;width:48px}.hw-edit-hole-cards .tcp-slot.filled{font-size:var(--font-size-xl)}.hw-edit-hole-cards .tcp-ranks{gap:var(--space-1);grid-template-columns:repeat(7,1fr)}.hw-edit-hole-cards .tcp-rank-btn{font-size:var(--font-size-base);height:40px}.hw-edit-hole-cards .tcp-clear-btn{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2)}.hw-edit-position{flex-shrink:0;margin-top:var(--space-2);width:90px}.hw-villains-section{margin-bottom:var(--space-4)}.hw-villains-list{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-3)}.hw-villain-entry{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3)}.hw-villain-header{align-items:center;display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.hw-villain-position{flex:1;min-width:0}.hw-villain-remove{background:transparent;border:none;border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-lg);height:32px;min-height:auto;padding:0;transition:all var(--transition-fast);width:32px}.hw-villain-remove:hover{background:var(--color-bg-hover);color:var(--color-loss)}.hw-villain-cards .tcp-container,.hw-villain-cards .tcp-slots{gap:var(--space-2)}.hw-villain-cards .tcp-slot{font-size:var(--font-size-lg);height:64px;width:48px}.hw-villain-cards .tcp-slot.filled{font-size:var(--font-size-xl)}.hw-villain-cards .tcp-ranks{gap:var(--space-1);grid-template-columns:repeat(7,1fr)}.hw-villain-cards .tcp-rank-btn{font-size:var(--font-size-base);height:40px}.hw-villain-cards .tcp-clear-btn{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2)}.hw-add-villain-btn{justify-content:center;width:100%}.hw-actions{display:flex;gap:var(--space-3);justify-content:center}.hw-actions-split{justify-content:space-between}.hw-step-done{padding:var(--space-6) 0;text-align:center}.hw-done-icon{color:var(--color-profit);font-size:3rem;margin-bottom:var(--space-3)}.hw-done-summary{margin-bottom:var(--space-6)}.hw-done-cards{color:var(--color-text-secondary);font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.hw-done-result{font-family:var(--font-mono);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hw-progress-mini{display:flex;gap:var(--space-2);justify-content:center;padding:var(--space-3) 0}.hw-progress-dot{background:var(--color-border);border-radius:50%;height:8px;transition:all .2s ease;width:8px}.hw-progress-dot.active{background:var(--color-accent)}.hw-progress-dot.current{box-shadow:0 0 8px rgba(16,185,129,.5);height:12px;width:12px}.hw-stack-section{display:flex;flex-direction:column;gap:var(--space-3)}.hw-quick-amounts{display:grid;gap:var(--space-2);grid-template-columns:repeat(4,1fr)}.hw-amount-btn{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);padding:var(--space-3) var(--space-2);transition:all .15s ease}.hw-amount-btn:hover{background:var(--color-bg-tertiary);border-color:var(--color-accent)}.hw-amount-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.hw-custom-amount{align-items:center;display:flex;gap:var(--space-2)}.hw-amount-prefix{color:var(--color-text-secondary);font-size:var(--font-size-lg)}.hw-street-info{align-items:center;background:var(--color-bg-secondary);border-radius:var(--radius-md);display:flex;justify-content:space-between;margin-bottom:var(--space-4);padding:var(--space-3)}.hw-pot-display{color:var(--color-accent);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.hw-pot-value{font-family:var(--font-mono)}.hw-action-section{margin-bottom:var(--space-4)}.hw-action-buttons{display:grid;gap:var(--space-2);grid-template-columns:repeat(3,1fr);margin-top:var(--space-2)}.hw-action-btn{align-items:center;background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:var(--space-3);transition:all .15s ease}.hw-action-btn:hover{background:var(--color-bg-tertiary);border-color:var(--color-text-muted)}.hw-action-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.hw-action-btn[data-action=fold]{border-color:var(--color-loss)}.hw-action-btn[data-action=fold].active,.hw-action-btn[data-action=fold]:hover{background:var(--color-loss);border-color:var(--color-loss)}.hw-action-btn[data-action=allin]{border-color:var(--color-gold)}.hw-action-btn[data-action=allin].active,.hw-action-btn[data-action=allin]:hover{background:var(--color-gold);border-color:var(--color-gold);color:#000}.hw-action-icon{font-size:var(--font-size-xl);margin-bottom:var(--space-1)}.hw-action-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.hw-amount-input-row{align-items:center;background:var(--color-bg-tertiary);border-radius:var(--radius-md);display:flex;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3)}.hw-amount-input-row[hidden]{display:none}.hw-amount-input-row .hw-action-amount{flex:1}.hw-amount-input-row .hw-confirm-amount{flex-shrink:0}.hw-villains-in-section{animation:fadeIn .2s ease}.hw-positions-toggle{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4);margin-top:var(--space-2)}.hw-position-toggle{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3);transition:all .15s ease}.hw-position-toggle:hover:not(.disabled){border-color:var(--color-accent);color:var(--color-text-primary)}.hw-position-toggle.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.hw-position-toggle.disabled{cursor:not-allowed;opacity:.3}.hw-action-flow{display:flex;flex-direction:column;gap:var(--space-3)}.hw-action-who{align-items:center;display:flex;gap:var(--space-2);justify-content:center}.hw-who-btn{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-4);transition:all .15s ease}.hw-who-btn.active,.hw-who-btn:hover{border-color:var(--color-accent)}.hw-who-btn.active{background:var(--color-accent);color:#fff}.hw-who-separator{color:var(--color-text-muted);font-size:var(--font-size-sm)}.hw-board-display{background:var(--color-bg-tertiary);border-radius:var(--radius-md);display:flex;gap:var(--space-2);justify-content:center;padding:var(--space-2)}.hw-board-final{padding:var(--space-3)}.hw-board-entry,.hw-board-final,.hw-card-entry{margin-bottom:var(--space-4)}.hw-flop-picker .tcp-container,.hw-river-picker .tcp-container,.hw-turn-picker .tcp-container{gap:var(--space-2)}.hw-flop-picker .tcp-slots,.hw-river-picker .tcp-slots,.hw-turn-picker .tcp-slots{gap:var(--space-2);margin-bottom:var(--space-2)}.hw-flop-picker .tcp-slot,.hw-river-picker .tcp-slot,.hw-turn-picker .tcp-slot{height:64px;width:48px}.hw-flop-picker .tcp-ranks,.hw-river-picker .tcp-ranks,.hw-turn-picker .tcp-ranks{gap:4px}.hw-flop-picker .tcp-rank-btn,.hw-river-picker .tcp-rank-btn,.hw-turn-picker .tcp-rank-btn{font-size:var(--font-size-sm);height:38px;width:38px}.hw-flop-picker .tcp-clear-btn,.hw-river-picker .tcp-clear-btn,.hw-turn-picker .tcp-clear-btn{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2)}.hw-result-quick{display:grid;gap:var(--space-3);grid-template-columns:1fr 1fr;margin-bottom:var(--space-3)}.hw-result-btn{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);padding:var(--space-4);transition:all .15s ease}.hw-result-win{border-color:var(--color-profit);color:var(--color-profit)}.hw-result-win.active,.hw-result-win:hover{background:var(--color-profit);color:#fff}.hw-result-lose{border-color:var(--color-loss);color:var(--color-loss)}.hw-result-lose.active,.hw-result-lose:hover{background:var(--color-loss);color:#fff}.hw-showdown-section{margin-bottom:var(--space-4)}.hw-villain-showdown{display:flex;flex-direction:column;gap:var(--space-3)}.hw-villain-entry-row{display:grid;gap:var(--space-2);grid-template-columns:1fr 1fr}.hw-villain-label-select,.hw-villain-pos-select{font-size:var(--font-size-sm);padding:var(--space-2)}.hw-villain-cards-picker .tcp-container{gap:var(--space-2)}.hw-villain-cards-picker .tcp-slots{gap:var(--space-2);margin-bottom:var(--space-2)}.hw-villain-cards-picker .tcp-slot{height:58px;width:44px}.hw-villain-cards-picker .tcp-ranks{gap:4px}.hw-villain-cards-picker .tcp-rank-btn{font-size:var(--font-size-sm);height:36px;width:36px}.hw-villain-cards-picker .tcp-clear-btn{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2)}.hw-summary-stack{background:var(--color-bg-tertiary);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--font-size-sm);margin-left:var(--space-2);padding:var(--space-1) var(--space-2)}.hw-positions-grid{display:grid;gap:var(--space-2);grid-template-columns:repeat(3,1fr)}.hw-wizard [hidden]{display:none!important}@media(max-width:400px){.hw-action-buttons,.hw-quick-amounts{grid-template-columns:repeat(2,1fr)}.hw-result-quick,.hw-villain-entry-row{grid-template-columns:1fr}}.auth-modal-backdrop{backdrop-filter:blur(4px);background:rgba(0,0,0,.5);bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:1000}.auth-modal-backdrop.active{display:block}.auth-modal{background:var(--card-background);border-radius:var(--border-radius);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);display:none;left:50%;max-height:90vh;max-width:400px;overflow-y:auto;padding:2rem;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1001}.auth-modal.active{display:block}.auth-modal-header{margin-bottom:1.5rem;text-align:center}.auth-modal-title{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.auth-modal-subtitle{color:var(--text-secondary);font-size:.875rem;margin:0}.auth-modal-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.5rem;line-height:1;padding:.25rem;position:absolute;right:1rem;top:1rem;transition:color .2s ease}.auth-modal-close:hover{color:var(--text-primary)}.auth-form{gap:1rem}.auth-form,.auth-form-group{display:flex;flex-direction:column}.auth-form-group{gap:.5rem}.auth-form-label{color:var(--text-primary);font-size:.875rem;font-weight:500}.auth-form-input{background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-small);color:var(--text-primary);font-size:1rem;padding:.75rem;transition:all .2s ease}.auth-form-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.auth-form-input::-moz-placeholder{color:var(--text-tertiary)}.auth-form-input::placeholder{color:var(--text-tertiary)}.auth-message{border-radius:var(--border-radius-small);font-size:.875rem;margin-bottom:1rem;padding:.75rem}.auth-message.error{background:#fee;border:1px solid #fcc;color:#c00}.auth-message.success{background:#efe;border:1px solid #cfc;color:#070}.auth-message.info{background:#eff;border:1px solid #cff;color:#007}.auth-btn{border:none;border-radius:var(--border-radius-small);cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.auth-btn-primary{background:var(--accent-color);color:var(--white)}.auth-btn-primary:hover{background:var(--accent-hover)}.auth-btn-primary:disabled{background:var(--gray-400);cursor:not-allowed}.auth-btn-secondary{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.auth-btn-secondary:hover{background:var(--background-secondary);color:var(--text-primary)}.auth-link{color:var(--accent-color);cursor:pointer;font-size:.875rem;text-decoration:none;transition:color .2s ease}.auth-link:hover{color:var(--accent-hover);text-decoration:underline}.auth-form-footer{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.875rem;margin-top:1rem;padding-top:1rem;text-align:center}.auth-customization-section{background:var(--background-secondary);border-radius:var(--border-radius-small);margin-top:1rem;padding:1rem}.auth-customization-title{color:var(--text-primary);font-size:.875rem;font-weight:600;margin:0 0 .75rem}.emoji-picker-grid{background:var(--card-background);border-radius:var(--border-radius-small);display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));margin-bottom:1rem;max-height:200px;overflow-y:auto;padding:.5rem}.emoji-option{align-items:center;background:transparent;border:2px solid transparent;border-radius:var(--border-radius-small);cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;transition:all .2s ease;width:40px}.emoji-option:hover{background:var(--background-secondary);transform:scale(1.1)}.emoji-option.selected{background:rgba(59,130,246,.1);border-color:var(--accent-color)}.auth-color-picker{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));margin-top:.5rem}.auth-color-option{border:3px solid transparent;border-radius:50%;cursor:pointer;height:48px;transition:all .2s ease;width:48px}.auth-color-option:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:scale(1.1)}.auth-color-option.selected{border-color:var(--accent-color);box-shadow:0 0 0 3px rgba(59,130,246,.3)}.auth-color-option.selected:after{color:#fff;content:"✓";font-size:1.25rem;font-weight:700;left:50%;position:absolute;text-shadow:0 1px 2px rgba(0,0,0,.5);top:50%;transform:translate(-50%,-50%)}.auth-loading{animation:spin .6s linear infinite;border:2px solid var(--white);border-radius:50%;border-top:2px solid transparent;display:inline-block;height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}@media(max-width:640px){.auth-modal{max-height:95vh;padding:1.5rem;width:95%}.emoji-picker-grid{max-height:150px}.auth-customization-section{padding:.75rem}}[data-theme=dark] .auth-message.error{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3);color:#fca5a5}[data-theme=dark] .auth-message.success{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.3);color:#6ee7b7}[data-theme=dark] .auth-message.info{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.3);color:#93c5fd}@media(prefers-color-scheme:dark){.auth-message.error{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3);color:#fca5a5}.auth-message.success{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.3);color:#6ee7b7}.auth-message.info{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.3);color:#93c5fd}}
