:root{--green:#314326;--green-2:#526b3b;--orange:#e97824;--cream:#f2dfb7;--paper:#f7e8bf;--ink:#111;--red:#c94a31;--blue:#2f6799;--shadow:#00000059;--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html,#root{min-height:100%;overflow-x:hidden}body{min-height:100dvh;color:var(--cream);overscroll-behavior-x:none;background:radial-gradient(circle at 15% 15%,#ffffff14,#0000 20rem),linear-gradient(135deg,#1f281a,#405733 55%,#28351f);flex-direction:column;margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex;overflow-x:hidden}#root{flex-direction:column;flex:1;display:flex}button,input,textarea{font:inherit}.app-shell{flex-direction:column;flex:1;width:min(100%,480px);max-width:480px;min-height:0;margin:0 auto;display:flex;position:relative;overflow:hidden}.top-tabs{flex-shrink:0;gap:.35rem;padding:.5rem .5rem 0;display:flex}.top-tabs .tab{border:3px solid var(--ink);text-transform:uppercase;cursor:pointer;min-width:0;min-height:44px;color:var(--ink);background:var(--cream);box-shadow:0 5px 0 var(--ink);text-align:center;white-space:nowrap;border-radius:999px;flex:1;padding:.62rem .2rem;font-size:clamp(.72rem,3.4vw,.9rem);font-weight:900;transition:transform 80ms,box-shadow 80ms,filter .1s;overflow:hidden}.top-tabs .tab:hover{filter:brightness(1.04)}.top-tabs .tab:active{box-shadow:0 1px 0 var(--ink);transform:translateY(4px)}.top-tabs .tab.active{background:var(--orange)}.card-area{overscroll-behavior:contain;touch-action:pan-y;flex-direction:column;flex:1;justify-content:flex-start;align-items:stretch;padding:.45rem .5rem 7.25rem;display:flex;position:relative;overflow:hidden}.swipe-card{border:5px solid var(--ink);background:radial-gradient(circle at 20% 15%, #fff3, transparent 8rem), var(--green);width:100%;max-width:100%;height:100%;min-height:0;box-shadow:0 20px 35px var(--shadow);color:var(--ink);-webkit-user-select:none;user-select:none;will-change:transform, opacity;border-radius:24px;flex-direction:column;flex:auto;padding:.6rem;transition:none;display:flex;position:relative;overflow:hidden}.swipe-card.card-enter{animation:.28s cubic-bezier(.2,.8,.2,1) card-slide-in}@keyframes card-slide-in{0%{opacity:0;transform:translate(42px)rotate(2deg)}to{opacity:1;transform:translate(0)rotate(0)}}.swipe-card:before{content:"";pointer-events:none;border:3px dashed #00000038;border-radius:20px;position:absolute;inset:.65rem}.swipe-card .paper{z-index:1;background:radial-gradient(circle at 15% 20%, #ffffff59, transparent 10rem), var(--paper);border:4px solid var(--ink);border-radius:20px;flex-direction:column;flex:1;gap:.45rem;min-height:0;padding:.65rem;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #0000000f}.swipe-card .card-topbar{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.swipe-card .card-type{background:var(--orange);border:3px solid var(--ink);text-transform:uppercase;letter-spacing:.05em;max-width:calc(100% - 3rem);box-shadow:0 3px 0 var(--ink);border-radius:999px;align-self:flex-start;padding:.2rem .5rem;font-size:.72rem;font-weight:1000;line-height:1}.swipe-card .card-type-icon{background:var(--green-2);border:3px solid var(--cream);outline:3px solid var(--ink);color:#fff;width:2.15rem;height:2.15rem;text-shadow:2px 2px 0 var(--ink);border-radius:50%;flex-shrink:0;place-items:center;font-size:1.1rem;font-weight:1000;line-height:1;display:grid}.swipe-card .card-layout{flex:1;grid-template-rows:minmax(9rem,11rem) minmax(0,1fr);gap:.5rem;height:100%;min-height:0;display:grid}.swipe-card .card-layout--no-image{grid-template-rows:minmax(0,1fr)}.swipe-card .card-media{background:#ffffff52;border-radius:14px;place-items:center;height:clamp(9rem,24dvh,11rem);min-height:0;display:grid;overflow:hidden;box-shadow:inset 0 0 0 2px #00000014}.swipe-card .card-copy{overscroll-behavior:contain;scrollbar-width:thin;min-height:0;padding-right:.25rem;overflow-y:auto}.swipe-card .card-title{text-transform:uppercase;overflow-wrap:anywhere;margin:0 0 .4rem;font-size:clamp(.98rem,4.6vw,1.2rem);font-weight:1000;line-height:.98}.swipe-card .card-image{object-fit:cover;border-radius:10px;width:100%;max-width:none;height:100%;max-height:none;display:block}.swipe-card .card-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:clamp(.86rem,3.7vw,1rem);line-height:1.32}.swipe-card .card-scoring{white-space:pre-wrap;overflow-wrap:anywhere;border-top:2px solid #0000002e;margin-top:.65rem;padding-top:.55rem;font-size:clamp(.82rem,3.4vw,.95rem);line-height:1.28}.swipe-card .card-scoring strong{text-transform:uppercase;letter-spacing:.06em;opacity:.7;margin-bottom:.2rem;font-size:.75em;display:block}.swipe-card .fields{gap:.5rem;margin-top:1rem;display:grid}.swipe-card .field{white-space:pre-wrap;border-top:2px solid #0000002e;padding-top:.5rem;line-height:1.35}.swipe-card .field b{text-transform:uppercase;letter-spacing:.06em;opacity:.75;font-size:.8rem}.swipe-card .empty-card{color:#0000009e;text-align:center;text-transform:uppercase;letter-spacing:.05em;place-items:center;min-height:200px;font-weight:850;display:grid}.empty-swipe-card{flex:1;justify-content:center}.empty-swipe-card .empty-card{z-index:1;border:4px solid var(--ink);background:radial-gradient(circle at 15% 20%, #ffffff59, transparent 10rem), var(--paper);border-radius:20px;align-content:center;gap:.7rem;min-height:220px;padding:1.25rem;position:relative;box-shadow:inset 0 0 0 2px #0000000f}.empty-card span{color:#000000b8;text-transform:none;letter-spacing:0;max-width:24ch;font-size:.9rem;font-weight:750;line-height:1.35}.draw-card-button{left:.75rem;right:.75rem;bottom:calc(3.6rem + var(--safe-bottom));z-index:2;border:4px solid var(--ink);min-height:54px;color:var(--ink);background:var(--orange);box-shadow:0 6px 0 var(--ink);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:.75rem 1rem;font-weight:1000;transition:transform 80ms,box-shadow 80ms,filter .1s;position:absolute}.draw-card-button:hover{filter:brightness(1.04)}.draw-card-button:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(5px)}.draw-card-button:disabled{cursor:not-allowed;opacity:.55;filter:saturate(.5)}.drawer-overlay{z-index:8;opacity:0;pointer-events:none;background:#00000059;transition:opacity .25s;position:fixed;inset:0}.drawer-overlay.open{opacity:1;pointer-events:auto}.bottom-drawer{z-index:9;border-top:4px solid var(--ink);box-shadow:0 -10px 30px var(--shadow);max-height:70vh;padding-bottom:max(var(--safe-bottom), env(safe-area-inset-bottom));background:#283223f7;border-radius:22px 22px 0 0;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(calc(100% - 52px))}.bottom-drawer.open{transform:translateY(0)}.drawer-handle{width:100%;min-height:52px;color:var(--cream);cursor:grab;touch-action:pan-y;background:0 0;border:0;border-radius:18px 18px 0 0;flex-shrink:0;justify-items:center;gap:.3rem;margin:0;padding:.55rem .75rem .45rem;display:grid}.drawer-handle:active{cursor:grabbing}.drawer-grip{background:var(--cream);border-radius:3px;width:48px;height:6px}.drawer-peek{text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;max-width:100%;font-size:.8rem;font-weight:900;line-height:1.1;overflow:hidden}.drawer-content{-webkit-overflow-scrolling:touch;flex:1;max-height:min(58dvh,430px);padding:0 .75rem .75rem;overflow-y:auto}.drawer-content .stat-row{justify-content:center;gap:.5rem;margin-bottom:.75rem;display:flex}.drawer-content .stat{border:3px solid var(--ink);text-align:center;background:#ffffff17;border-radius:14px;flex:1;padding:.6rem .75rem;font-size:.85rem;font-weight:800}.drawer-content .stat strong{color:#fff;font-size:1.4rem;display:block}.drawer-content .drawer-buttons{gap:.5rem;margin-bottom:.75rem;display:flex}.drawer-content .drawer-buttons .button{flex:1}.button{border:3px solid var(--ink);cursor:pointer;min-height:44px;color:var(--ink);background:var(--cream);box-shadow:0 5px 0 var(--ink);text-align:center;border-radius:999px;padding:.7rem .75rem;font-size:.85rem;font-weight:900;transition:transform 80ms,box-shadow 80ms,filter .1s}.button:hover{filter:brightness(1.04)}.button:active{box-shadow:0 1px 0 var(--ink);transform:translateY(4px)}.button.primary{background:var(--green-2);color:#fff}.button.warning{background:var(--red);color:#fff}.drawer-content .history{gap:.4rem;max-height:200px;display:grid;overflow-y:auto}.drawer-content .history-item{border:3px solid var(--ink);background:#ffffff17;border-radius:14px;padding:.5rem .65rem;font-size:.85rem}.drawer-content .history-item small{opacity:.8;margin-bottom:.1rem;font-size:.75rem;display:block}.drawer-content .history-item strong{font-weight:800}.scoreboard-area{padding:.65rem .6rem calc(5.25rem + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;flex:1;overflow:hidden auto}.scoreboard-header{gap:.65rem;margin-bottom:.75rem;display:grid}.scoreboard-header .button{width:100%}.empty-note{opacity:.9;text-align:center;margin:0;font-size:.9rem}.team-grid{gap:.75rem;display:grid}.team-card{border:4px solid var(--ink);background:#ffffff1a;border-radius:20px;gap:.75rem;padding:.8rem;display:grid}.empty-team-state{border:4px solid var(--ink);text-align:center;text-transform:uppercase;letter-spacing:.05em;background:#ffffff1a;border-radius:18px;padding:2rem 1rem;font-weight:900}.input-label{text-transform:uppercase;letter-spacing:.04em;gap:.3rem;font-size:.8rem;font-weight:900;display:grid}.text-input,.score-input{border:3px solid var(--ink);background:var(--paper);width:100%;min-height:44px;color:var(--ink);border-radius:12px;padding:.6rem .65rem;font-size:.95rem;font-weight:800}.team-name{font-size:1rem}.notes-input{resize:vertical;text-transform:none;min-height:80px;font-weight:650;line-height:1.35}.score-row{text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.4rem;font-weight:1000;display:grid}.score-controls{grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:.45rem;display:grid}.score-button{border:3px solid var(--ink);background:var(--orange);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:50%;font-size:1.2rem;font-weight:1000}.score-input{text-align:center;width:100%}@media (height<=700px){.swipe-card .card-type-icon{width:54px;height:54px;font-size:2.1rem}}@media (width<=430px){.top-tabs{gap:.3rem;padding:.4rem .4rem 0}.top-tabs .tab{min-height:42px;padding:.55rem .15rem;font-size:clamp(.66rem,3.1vw,.84rem)}.card-area{padding:.4rem .4rem 7.75rem}.draw-card-button{left:.6rem;right:.6rem;bottom:calc(4.25rem + var(--safe-bottom))}.drawer-reset-game{margin-top:.5rem}}
