.board-outer{position:relative;display:inline-block;touch-action:none}.board-inner{position:relative;transform-origin:0 0;transition:transform .3s ease}.board-inner,.layer{width:var(--board-w);height:var(--board-h)}.layer{position:absolute;top:0;left:0;pointer-events:none}.layer-board{z-index:0;pointer-events:auto;background:var(--board-bg);border-radius:16px}.board-center{position:absolute;background:var(--center-bg);border-radius:8px}.layer-tiles{z-index:auto}.tile{position:absolute;width:var(--tile-w);height:var(--tile-h);cursor:default}.tile svg{width:100%;height:100%;overflow:visible}.tile polygon{fill:var(--tile-bg);stroke:var(--tile-stroke);stroke-width:1.5}.tile.tile-start polygon{fill:var(--tile-start)}.tile.tile-special polygon{fill:var(--tile-special)}.tile.tile-reward polygon{fill:var(--tile-reward)}.tile{transition:transform .25s ease;transform-origin:center}.tile.tile-current{transform:scale(1.2);z-index:10}.tile-icon{font-size:var(--font-tile-icon);line-height:1}.tile-label{font-size:var(--font-tile-label);color:#ccc;white-space:pre-line;word-break:keep-all;text-align:center;line-height:1.2}.tile-number{font-size:var(--font-tile-number);color:#666}.tile-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;pointer-events:none}.layer-token{z-index:999}.piece{position:absolute;width:var(--token-size);height:var(--token-size);color:var(--token-color);font-size:var(--token-size);line-height:1;transform:translate(-50%,-50%);transition:left .3s ease,top .3s ease;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6))}.layer-dice{z-index:9999;pointer-events:none}.layer-overlay{z-index:9999;pointer-events:auto}.overlay-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6);animation:reward-backdrop-in .25s ease both}.overlay-reward-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#1a1a1a;border:1px solid var(--tile-stroke);border-radius:16px;padding:32px 24px;display:flex;flex-direction:column;align-items:center;gap:12px;min-width:200px;z-index:1;animation:reward-card-pop .5s cubic-bezier(.34,1.56,.64,1) both;will-change:transform}.overlay-reward-icon{font-size:40px}.overlay-reward-label{font-size:16px;color:#fff;font-weight:600}.overlay-reward-amount{font-size:20px;color:#FFD700;font-weight:700}.overlay-confirm-btn{margin-top:8px;padding:10px 32px;background:var(--tile-stroke);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer}@keyframes reward-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes reward-card-pop{0%{transform:translate(-50%,-50%) scale(.3);opacity:0}55%{transform:translate(-50%,-50%) scale(1.12);opacity:1}75%{transform:translate(-50%,-50%) scale(.96)}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes reward-glow-expand{0%{transform:translate(-50%,-50%) scale(.2);opacity:.85}to{transform:translate(-50%,-50%) scale(3.5);opacity:0}}@keyframes reward-particle-fly{0%{transform:translate(-50%,-50%) rotate(var(--particle-angle)) translateX(0) scale(1);opacity:1}80%{opacity:.7}to{transform:translate(-50%,-50%) rotate(var(--particle-angle)) translateX(100px) scale(0);opacity:0}}.overlay-glow-ring{width:200px;height:200px;background:radial-gradient(circle,rgba(209,17,19,.5) 0,rgba(255,215,0,.2) 50%,transparent 70%);z-index:0;animation:reward-glow-expand .65s ease-out both}.overlay-glow-ring,.overlay-particle{position:absolute;top:50%;left:50%;border-radius:50%;pointer-events:none}.overlay-particle{z-index:2;will-change:transform,opacity;animation:reward-particle-fly .75s ease-out both;animation-delay:var(--particle-delay,0s)}.attendance-hud{display:flex;align-items:center;gap:12px;padding:8px 16px;font-size:13px;color:#ccc}.hud-days strong{color:#fff}.hud-checked{color:#4caf50;font-weight:600}.zoom-controls{position:absolute;bottom:12px;right:12px;z-index:10000;display:flex;flex-direction:column;gap:4px;pointer-events:auto}.zoom-btn{width:30px;height:30px;background:rgba(20,20,20,.92);border:1px solid rgba(209,17,19,.45);border-radius:6px;color:#fff;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,opacity .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.zoom-btn:hover:not(:disabled){background:rgba(209,17,19,.45)}.zoom-btn:disabled{opacity:.3;cursor:default}.zoom-btn-home{font-size:14px}.ca-board{--ca-cell-size:102px;--ca-cell-gap:10px;--ca-cell-radius:10px;--ca-cell-bg:#1f1f1f;--ca-cell-stroke:#333;--ca-today-border:#d11113;--ca-special-bg:#1a1a2e;--ca-special-border:#ffd700;--ca-missed-overlay:rgba(0,0,0,0.5);--ca-stamp-fall-duration:250ms;--ca-stamp-easing:cubic-bezier(0.22,0.9,0.3,1.15);--ca-stamp-color:#d11113;--ca-stamp-rotation:-12deg;--ca-cell-shake-duration:150ms;padding:24px;max-width:960px;margin:0 auto;width:100%;overflow-x:auto}.ca-board--loading{min-height:400px}.ca-board--ended{display:flex;align-items:center;justify-content:center;min-height:300px}.ca-board__ended-msg{color:#666;font-size:15px}.ca-grid{display:grid;grid-template-columns:repeat(7,var(--ca-cell-size));gap:var(--ca-cell-gap);width:-moz-max-content;width:max-content}.ca-cell{position:relative;background:var(--ca-cell-bg);border:1px solid var(--ca-cell-stroke);border-radius:var(--ca-cell-radius);width:var(--ca-cell-size);height:var(--ca-cell-size);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:border-color .15s,box-shadow .15s,transform .15s}.ca-cell[data-status=today]{border-color:var(--ca-today-border);box-shadow:0 0 0 1px var(--ca-today-border);cursor:pointer}.ca-cell[data-status=today]:hover{transform:scale(1.05);box-shadow:0 0 0 2px var(--ca-today-border),0 4px 12px rgba(209,17,19,.3)}.ca-cell[data-status=locked]{opacity:.35}.ca-cell[data-status=missed]:after{content:"";position:absolute;inset:0;background:var(--ca-missed-overlay);border-radius:var(--ca-cell-radius)}.ca-cell[data-special=true]{background:var(--ca-special-bg);border-color:var(--ca-special-border)}.ca-cell__day{font-size:11px;color:#666;line-height:1}.ca-cell[data-status=today] .ca-cell__day{color:var(--ca-today-border);font-weight:700}.ca-cell__reward{display:flex;flex-direction:column;align-items:center;gap:2px}.ca-cell__reward-image{width:40px;height:40px;position:relative}.ca-cell__reward-label{font-size:9px;color:#aaa;text-align:center;line-height:1.2;word-break:keep-all}.ca-cell[data-special=true] .ca-cell__reward-label{color:var(--ca-special-border);font-weight:600}.ca-stamp{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.ca-stamp--animate .ca-stamp__image{animation:ca-stamp-fall var(--ca-stamp-fall-duration) var(--ca-stamp-easing) forwards,ca-stamp-settle .2s ease forwards var(--ca-stamp-fall-duration)}.ca-stamp--animate{animation:ca-cell-shake var(--ca-cell-shake-duration) ease var(--ca-stamp-fall-duration)}.ca-stamp__image{width:70%;height:70%;border-radius:50%;opacity:.92;transform:translateY(-200%) scale(1.3) rotate(var(--ca-stamp-rotation));display:flex;align-items:center;justify-content:center;color:var(--ca-stamp-color)}.ca-stamp__image svg{width:100%;height:100%}.ca-stamp__image--settled{transform:translateY(0) scale(1) rotate(var(--ca-stamp-rotation))}.ca-stamp__ripple{position:absolute;inset:0;border-radius:50%;background:rgba(209,17,19,.3);transform:scale(0);opacity:0;animation:ca-ripple .4s ease var(--ca-stamp-fall-duration) forwards}@keyframes ca-stamp-fall{0%{transform:translateY(-200%) scale(1.3) rotate(var(--ca-stamp-rotation));opacity:0}to{transform:translateY(0) scale(1.1) rotate(var(--ca-stamp-rotation));opacity:1}}@keyframes ca-stamp-settle{0%{transform:translateY(0) scale(1.1) rotate(var(--ca-stamp-rotation))}50%{transform:translateY(0) scale(.95) rotate(var(--ca-stamp-rotation))}to{transform:translateY(0) scale(1) rotate(var(--ca-stamp-rotation))}}@keyframes ca-cell-shake{0%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}to{transform:translateX(0)}}@keyframes ca-ripple{0%{transform:scale(0);opacity:.6}to{transform:scale(2.5);opacity:0}}.ca-reward-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:9999;animation:ca-backdrop-in .2s ease}.ca-reward-modal{background:#1a1a1a;border:1px solid #333;border-radius:16px;padding:40px 32px;display:flex;flex-direction:column;align-items:center;gap:16px;min-width:280px;animation:ca-modal-pop .4s cubic-bezier(.34,1.56,.64,1)}.ca-reward-modal__title{font-size:18px;font-weight:700;color:#fff}.ca-reward-modal__image{width:100px;height:100px;position:relative}.ca-reward-modal__label{font-size:22px;font-weight:700;color:#ffd700}.ca-reward-modal__btn{margin-top:8px;padding:12px 40px;background:#d11113;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background .15s}.ca-reward-modal__btn:hover{background:#b00e10}@keyframes ca-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes ca-modal-pop{0%{transform:scale(.3);opacity:0}60%{transform:scale(1.05);opacity:1}to{transform:scale(1)}}.caw{margin-top:32px;padding-top:28px;border-top:1px solid #262626}.caw__head{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.caw__title{font-size:16px;font-weight:800;color:#ececec;margin:0;letter-spacing:-.01em}.caw__sub{font-size:12px;color:#8a8a8a;margin:0}.caw__scroll{overflow:visible}.caw__list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;list-style:none;padding:0;margin:0}.caw__card{background:#171717;border:1px solid #262626;border-radius:12px;padding:16px 16px 14px;display:flex;flex-direction:column;gap:10px;min-height:190px;transition:border-color .15s ease,transform .15s ease}.caw__card[data-status=available]{border-color:#d11113}.caw__card[data-status=available]:hover{transform:translateY(-2px)}.caw__card[data-status=missed]{opacity:.55}.caw__card[data-status=locked]{opacity:.6}.caw__card-head{display:flex;align-items:baseline;justify-content:space-between}.caw__card-week{font-size:13px;font-weight:700;color:#ececec}.caw__card-days{font-size:12px;color:#8a8a8a;font-variant-numeric:tabular-nums}.caw__card[data-status=available] .caw__card-days,.caw__card[data-status=claimed] .caw__card-days{color:#d11113;font-weight:700}.caw__card-days-sep{color:#555;margin:0 1px}.caw__progress{height:4px;background:#222;border-radius:2px;overflow:hidden}.caw__progress-fill{display:block;height:100%;background:#d11113;transition:width .5s ease}.caw__card-reward{flex:1;display:flex;flex-direction:column;gap:4px;padding-top:4px}.caw__reward-label{font-size:13px;color:#ececec;line-height:1.4;word-break:keep-all}.caw__reward-points{font-size:16px;font-weight:800;color:#caa85a;font-variant-numeric:tabular-nums}.caw__reward-unit{font-size:11px;margin-left:2px;color:#caa85a;font-weight:600}.caw__cta{height:36px;border:none;border-radius:6px;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease,opacity .15s ease}.caw__cta[data-status=available]{background:#d11113;color:#fff}.caw__cta[data-status=available]:not(:disabled):hover{background:#e61418}.caw__cta[data-status=claimed]{background:transparent;color:#caa85a;border:1px solid rgba(202,168,90,.4);cursor:default}.caw__cta[data-status=in-progress]{background:transparent;color:#8a8a8a;border:1px solid #262626;cursor:default}.caw__cta[data-status=locked],.caw__cta[data-status=missed]{background:transparent;color:#555;border:1px solid #262626;cursor:default}.caw__cta:disabled{cursor:default}@media (max-width:700px){.caw__list{grid-template-columns:repeat(2,1fr)}}.ll-panel{--ll-bg:#101010;--ll-surface:#171717;--ll-stroke:#262626;--ll-stroke-strong:#363636;--ll-text:#ececec;--ll-text-sub:#8a8a8a;--ll-text-dim:#555;--ll-primary:#d11113;--ll-bonus:#caa85a;padding:40px 24px;max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:28px;box-sizing:border-box}.ll-brand{text-align:center;padding:4px 0 8px}.ll-brand__kicker{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--ll-bonus);padding:4px 10px;background:rgba(202,168,90,.08);border:1px solid rgba(202,168,90,.25);border-radius:999px}.ll-brand__title{margin:12px 0 4px;font-size:28px;font-weight:800;letter-spacing:-.02em;color:var(--ll-text)}.ll-brand__desc{margin:0;font-size:13px;color:var(--ll-text-sub)}.ll-prizes{background:var(--ll-surface);border:1px solid var(--ll-stroke);border-radius:12px;padding:16px 20px 14px}.ll-prizes__headline{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.ll-prizes__heading{display:flex;flex-direction:column;gap:4px}.ll-prizes__head{letter-spacing:.06em;text-transform:uppercase}.ll-prizes__entry,.ll-prizes__head{font-size:12px;color:var(--ll-text-sub)}.ll-prizes__entry strong{color:var(--ll-text);font-weight:700;font-variant-numeric:tabular-nums}.ll-prizes__history{background:transparent;border:none;padding:2px 0;font-size:13px;color:var(--ll-text-sub);cursor:pointer;font-weight:500;letter-spacing:-.01em;transition:color .15s ease}.ll-prizes__history:not(:disabled):hover{color:var(--ll-text)}.ll-prizes__history:disabled{opacity:.4;cursor:default}.ll-prizes__list{list-style:none;padding:0;margin:0;border-top:1px solid var(--ll-stroke)}.ll-prizes__item{display:grid;grid-template-columns:48px 1fr auto;align-items:baseline;gap:16px;padding:12px 0;border-bottom:1px solid var(--ll-stroke)}.ll-prizes__item:last-child{border-bottom:none}.ll-prizes__rank{font-weight:700}.ll-prizes__match,.ll-prizes__rank{font-size:13px;color:var(--ll-text-sub)}.ll-prizes__match,.ll-prizes__points{letter-spacing:-.01em}.ll-prizes__points{font-size:18px;font-weight:800;color:var(--ll-text);font-variant-numeric:tabular-nums;text-align:right}.ll-prizes__unit{font-size:12px;color:var(--ll-text-sub);margin-left:2px;font-weight:600}.ll-prizes__label{grid-column:1/-1;font-size:11px;color:var(--ll-text-dim);margin-top:2px}.ll-draw-slot{width:100%;max-width:400px;margin:0 auto;aspect-ratio:1;background:var(--ll-surface);border:1px dashed var(--ll-stroke-strong);border-radius:14px;display:flex;align-items:center;justify-content:center;overflow:hidden}.ll-draw-slot>iframe,.ll-draw-slot>img,.ll-draw-slot>video{width:100%;height:100%;border:none;display:block}.ll-draw-slot .ll-disk{display:block;width:100%;height:100%;padding:6%;box-sizing:border-box}.ll-disk__balls{transform-box:view-box;animation:ll-disk-spin 3.5s linear infinite;will-change:transform}@keyframes ll-disk-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.ll-disk__balls{animation:none}}.ll-picks{gap:14px}.ll-pick,.ll-picks{display:flex;align-items:center;justify-content:center}.ll-pick{width:56px;height:56px;border-radius:50%;background:transparent;border:2px dashed var(--ll-stroke-strong);font-size:20px;font-weight:800;color:var(--ll-text-dim);font-variant-numeric:tabular-nums;transition:background .2s ease,border-color .2s ease,color .2s ease;flex-shrink:0}.ll-picks__plus{color:var(--ll-text-dim);font-size:18px;font-weight:600;margin:0 4px}.ll-pick[data-kind=regular][data-filled=true]{background:var(--ll-primary);border:2px solid var(--ll-primary);color:#fff}.ll-pick[data-kind=bonus][data-filled=true]{background:var(--ll-bonus);border:2px solid var(--ll-bonus);color:#1a1305}.ll-select{gap:20px;width:100%}.ll-group,.ll-select{display:flex;flex-direction:column}.ll-group{gap:12px}.ll-group__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.ll-group__title{font-size:15px;font-weight:700;color:var(--ll-text);display:inline-flex;align-items:center;gap:8px}.ll-group__tag{font-size:10px;font-weight:800;letter-spacing:.08em;color:var(--ll-bonus);padding:2px 6px;background:rgba(202,168,90,.12);border-radius:3px}.ll-group__count{font-size:18px;font-weight:700;color:var(--ll-text-dim);font-variant-numeric:tabular-nums}.ll-group__count[data-complete=true]{color:var(--ll-primary)}.ll-group--bonus .ll-group__count[data-complete=true]{color:var(--ll-bonus)}.ll-group__count-sep{color:var(--ll-text-dim);font-weight:500;margin:0 2px}.ll-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:8px}.ll-num{aspect-ratio:1;background:var(--ll-surface);border:1px solid var(--ll-stroke);border-radius:50%;color:var(--ll-text-sub);font-size:16px;font-weight:700;cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease,color .15s ease}.ll-num:not(:disabled):hover{transform:translateY(-2px);border-color:var(--ll-stroke-strong)}.ll-num:not(:disabled):active{transform:translateY(0)}.ll-num[data-on=true]{background:var(--ll-primary);border-color:var(--ll-primary);color:#fff;box-shadow:0 4px 18px -6px rgba(209,17,19,.65)}.ll-num:disabled{opacity:.35;cursor:default}.ll-num[data-on=true]:disabled{opacity:1}.ll-num--bonus[data-on=true]{background:var(--ll-bonus);border-color:var(--ll-bonus);color:#1a1305;box-shadow:0 4px 18px -6px rgba(202,168,90,.65)}.ll-submit{margin-top:4px;height:48px;background:var(--ll-primary);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s ease,transform .1s ease}.ll-submit:not(:disabled):hover{background:#e61418}.ll-submit:not(:disabled):active{transform:translateY(1px)}.ll-submit:disabled{background:var(--ll-bg);color:var(--ll-text-dim);border:1px solid var(--ll-stroke);cursor:default}@media (max-width:760px){.ll-grid{grid-template-columns:repeat(5,1fr)}}