*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{min-height:100vh;overflow-x:hidden}#theme-switcher{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:#1a1a1a;border-bottom:2px solid #333;font-family:system-ui,-apple-system,sans-serif}.switcher-label{color:#888;font-size:13px;margin-right:8px}.theme-btn{background:#2a2a2a;border:1px solid #444;color:#aaa;padding:6px 14px;font-size:12px;font-weight:500;border-radius:4px;cursor:pointer;transition:all .15s}.theme-btn:hover{background:#3a3a3a;color:#fff}.theme-btn.active{background:#fff;color:#000;border-color:#fff}#theme-switcher+#app,#theme-switcher~#app{padding-top:60px}#app{min-height:100vh}#game-board{display:flex;justify-content:center;align-items:center}#preview-canvas{image-rendering:pixelated;image-rendering:crisp-edges}.legend-icon-canvas{image-rendering:pixelated;image-rendering:crisp-edges;width:24px;height:24px}body:not([data-theme]) #app,body[data-theme] #app{min-height:100vh;display:flex;flex-direction:column}#canvas-container{display:flex;align-items:center;justify-content:center}#game-canvas{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;display:block;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;cursor:pointer}.emoji-grid{display:grid;gap:1px;background-color:#00000026;line-height:1;touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer}.emoji-grid span{display:flex;align-items:center;justify-content:center;background-color:#0c8c44}.hidden{display:none!important}.grid-locked{pointer-events:none!important}.legend-icon canvas{image-rendering:pixelated;image-rendering:crisp-edges;display:block;width:24px;height:24px}.modal{background:#111;color:#fff;border:none;border-radius:16px;padding:0;max-width:400px;width:90vw;max-height:85vh;font-family:SF Mono,Monaco,Inconsolata,Fira Mono,monospace;margin:auto;position:relative;overflow:visible}.modal[open]{display:flex;flex-direction:column}.modal-body{padding:44px 28px 28px;overflow-y:auto;flex:1 1 auto;scrollbar-width:none;-ms-overflow-style:none}.modal-body::-webkit-scrollbar{display:none}.modal:before{content:"";position:absolute;inset:-1px;border-radius:17px;background:conic-gradient(from var(--border-angle, 0deg),#ff0000,#ff8000,#ffff00,#00ff00,#00ffff,#0080ff,#8000ff,#ff00ff,#ff0000);animation:rotate-border 4s linear infinite;z-index:-1}.modal:after{content:"";position:absolute;inset:0;background:#111;border-radius:16px;z-index:-1}.modal::backdrop{background:#000000bf;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.modal-close-x{position:absolute;top:10px;right:10px;z-index:10;background:#ff6b6b;border:2px solid #e65555;color:transparent;font-size:16px;width:28px;height:28px;padding:0;cursor:pointer;font-family:inherit;border-radius:50%;transition:all .1s}.modal-close-x:before{content:"×";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:16px}.modal-close-x:hover{background:#ff8080;transform:scale(1.05)}.modal-heading{font-size:18px;font-weight:700;margin-bottom:14px;text-align:center;text-transform:uppercase;letter-spacing:2px}.modal-intro{font-size:14px;color:#ffffffb3;text-align:center;margin-bottom:16px;line-height:1.5}.modal-done-btn{display:block;width:100%;background:#70ff70;border:3px solid #50dd50;color:#111;font-family:inherit;font-size:14px;font-weight:700;padding:12px 20px;border-radius:8px;cursor:pointer;transition:all .1s;text-transform:uppercase;letter-spacing:1px}.modal-done-btn:hover{background:#90ff90}@keyframes rotate-border{0%{--border-angle: 0deg}to{--border-angle: 360deg}}@property --border-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.tutorial-heading{font-size:18px;margin-bottom:14px;text-align:center;font-weight:600;letter-spacing:1px}.tutorial-intro{font-size:14px;color:#ffffffb3;text-align:center;margin-bottom:12px;line-height:1.6}.tutorial-terrain-guide{display:flex;flex-direction:column;gap:4px;margin-bottom:16px;padding:10px 12px;background:#ffffff1a;border-radius:8px}.tutorial-terrain-row{display:flex;align-items:baseline;gap:8px;font-size:12px;line-height:1.5}.tutorial-terrain-name{font-weight:600;min-width:42px;flex-shrink:0}.tutorial-terrain-desc{color:#fff9}.tutorial-terrain-desc strong{color:#fc0;font-weight:600}.tutorial-status{font-size:13px;color:#fc0;text-align:center;margin:14px 0;min-height:1.5em;font-weight:500}.tutorial-mini-grid{display:grid;gap:2px;padding:2px;margin:0 auto;width:fit-content;touch-action:none;cursor:pointer;border-radius:4px}.tutorial-mini-grid canvas{display:block;width:48px;height:48px;image-rendering:pixelated;transition:transform .1s ease}.tutorial-mini-grid canvas:active{transform:scale(.92)}.tutorial-mini-grid canvas.tutorial-highlight{box-shadow:0 0 0 3px #fc0,0 0 12px 4px #fc09;animation:pulse-highlight 1s ease-in-out infinite;z-index:1;position:relative}@keyframes pulse-highlight{0%,to{box-shadow:0 0 0 3px #fc0,0 0 12px 4px #fc09}50%{box-shadow:0 0 0 4px #fc0,0 0 20px 8px #fc0c}}.about-heading{font-size:18px;margin-bottom:16px;text-align:center;font-weight:600;letter-spacing:1px}.about-message{font-size:14px;color:#ffffffe6;text-align:center;margin-bottom:20px;line-height:1.6}.about-links{display:flex;flex-direction:column;gap:10px;margin-bottom:0}.about-link{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff1a;border-radius:8px;text-decoration:none;transition:all .15s}.about-link:hover{background:#fff3;transform:translate(4px)}.about-link-label{font-size:13px;font-weight:600;color:#fff}.about-link-url{font-size:12px;color:#5c9eff}.legend-heading{font-size:18px;font-weight:700;margin-bottom:12px;text-transform:uppercase;letter-spacing:2px}.legend-intro{font-size:13px;color:#ffffffb3;margin-bottom:16px;line-height:1.5}#legend-content{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}dialog#legend-modal .legend-group-header{font-size:10px;font-weight:700;color:#ffffff80;text-transform:uppercase;letter-spacing:1px;margin-top:10px;margin-bottom:2px;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.15)}dialog#legend-modal .legend-group-header:first-child{margin-top:0}dialog#legend-modal .legend-item{display:flex;align-items:flex-start;gap:10px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.1)}dialog#legend-modal .legend-item:last-child{border-bottom:none}dialog#legend-modal .legend-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}dialog#legend-modal .legend-icon canvas{image-rendering:pixelated;display:block;width:24px;height:24px}dialog#legend-modal .legend-text{flex:1;min-width:0}dialog#legend-modal .legend-top-row{display:flex;align-items:baseline;gap:8px}dialog#legend-modal .legend-label{font-size:13px;font-weight:600;color:#fff}dialog#legend-modal .legend-points{margin-left:auto;font-size:11px;font-weight:600;color:#fc0}dialog#legend-modal .legend-description{font-size:11px;color:#fff9;line-height:1.3;margin-top:2px}.page-hint{font-size:11px;color:#fff6;text-align:center;padding:16px;line-height:1.4}.page-hint.made-by{padding-top:0;font-size:10px}.page-hint.made-by a{color:#ffffff80;text-decoration:none}.page-hint.made-by a:hover{color:#ffffffb3;text-decoration:underline}#score-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#000000bf;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}#score-overlay.hidden{display:none!important}#score-display{background:#111;color:#fff;border:none;border-radius:16px;padding:28px;max-width:380px;width:90vw;font-family:SF Mono,Monaco,Inconsolata,Fira Mono,monospace;text-align:center;position:relative;overflow:visible}#score-display:before{content:"";position:absolute;inset:-1px;border-radius:17px;background:conic-gradient(from var(--border-angle, 0deg),#ff0000,#ff8000,#ffff00,#00ff00,#00ffff,#0080ff,#8000ff,#ff00ff,#ff0000);animation:rotate-border 4s linear infinite;z-index:-1}#score-display:after{content:"";position:absolute;inset:0;background:#111;border-radius:16px;z-index:-1}#score-close{position:absolute;top:10px;right:10px;background:#ff6b6b;border:2px solid #e65555;color:transparent;font-size:16px;width:28px;height:28px;padding:0;cursor:pointer;font-family:inherit;border-radius:50%;transition:all .1s}#score-close:before{content:"×";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:16px}#score-close:hover{background:#ff8080;transform:scale(1.05)}.score-headline{display:flex;align-items:baseline;justify-content:center;gap:10px}#score-percentage{font-size:22px;font-weight:700;color:#fff}#score-tier{font-size:11px;color:#fc0;letter-spacing:3px;text-transform:uppercase;font-weight:700}.tier-perfect{color:gold}.tier-excellent{color:#7fff7f}.tier-great{color:#00bcd4}.tier-good{color:#fff}.tier-poor{color:#fff9}.score-detail-row{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px;font-size:12px;color:#ffffff80}#score-value-saved{color:#ffffffb3}.value-highlight{color:#fff;font-weight:700}.score-detail-sep{color:#ffffff40}.streak-label{color:#ffffff80}.streak-value{color:#fc0;font-weight:700}.streak-separator{color:#fff3}.share-buttons{display:flex;gap:12px;margin-top:20px;justify-content:center}.share-button{background:#5c9eff;border:2px solid #4488ee;color:#fff;font-family:inherit;font-size:12px;font-weight:600;padding:8px 18px;border-radius:8px;box-shadow:2px 2px #00000026;cursor:pointer;transition:all .1s}.share-button:hover{background:#70aaff;transform:scale(1.03)}.score-tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.15);margin-top:16px;margin-bottom:0;gap:0}.score-tab{flex:1;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;color:#ffffff80;font-family:inherit;font-size:11px;font-weight:600;padding:8px 0;cursor:pointer;transition:all .15s;text-transform:uppercase;letter-spacing:1px}.score-tab:hover{color:#fffc}.score-tab.active{color:#5c9eff;border-bottom-color:#5c9eff}.score-tab-panel{min-height:80px;max-height:260px;overflow-y:auto}.leaderboard-table{width:100%;border-collapse:collapse;font-size:12px;margin-top:12px;text-align:left}.leaderboard-table th{font-size:10px;font-weight:700;color:#fff6;text-transform:uppercase;letter-spacing:.5px;padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.1)}.leaderboard-table td{padding:6px 8px;color:#fffc;border-bottom:1px solid rgba(255,255,255,.05)}.leaderboard-table tr:last-child td{border-bottom:none}.leaderboard-table .leaderboard-gold{color:gold;font-weight:700}.leaderboard-table .leaderboard-you{background:#5c9eff26}.leaderboard-table .leaderboard-you td{color:#5c9eff;font-weight:600}.leaderboard-loading,.leaderboard-empty,.graph-loading,.graph-empty{color:#fff6;font-size:12px;text-align:center;padding:24px 0}.histogram-chart{margin-top:12px}.histogram-bars{display:flex;align-items:flex-end;gap:2px;height:100px;padding:0 2px}.histogram-bar{flex:1;min-height:2px;background:#fff3;border-radius:1px 1px 0 0;transition:height .3s ease}.histogram-bar.histogram-bar-has-data{min-height:3px}.histogram-bar-user{background:#5c9eff}.histogram-labels{display:flex;justify-content:space-between;padding:4px 0 0;font-size:9px;color:#ffffff59}.histogram-total{text-align:center;font-size:10px;color:#fff6;margin-top:8px}@media(max-width:768px){#theme-switcher{padding:8px 12px;gap:4px;flex-wrap:wrap}.theme-btn{padding:4px 10px;font-size:11px}.modal{max-width:90vw;border-radius:12px}.modal-body{padding:36px 20px 20px}.modal-close-x{width:24px;height:24px;top:8px;right:8px}.modal-close-x:before{font-size:14px}.modal-heading{font-size:14px;letter-spacing:1px;margin-bottom:10px}.modal-intro{font-size:11px;margin-bottom:12px}.modal-done-btn{font-size:11px;padding:10px 16px;border-width:2px}.tutorial-heading{font-size:14px}.tutorial-intro{font-size:11px}.tutorial-terrain-guide{gap:6px;margin-bottom:12px}.tutorial-terrain-row{font-size:11px;padding:6px 10px}.tutorial-terrain-name{font-size:11px}.tutorial-terrain-desc{font-size:10px}.tutorial-status{font-size:11px}.tutorial-mini-grid{gap:1px!important;padding:1px!important;grid-template-columns:repeat(5,32px)!important;grid-template-rows:repeat(4,32px)!important}.tutorial-mini-grid canvas{width:32px!important;height:32px!important}.tutorial-mini-grid canvas.tutorial-highlight{box-shadow:0 0 0 2px #fc0,0 0 8px 2px #fc09}.about-heading{font-size:14px}.about-message{font-size:11px}.about-links{gap:8px}.about-link{padding:10px}.about-link-label{font-size:12px}.about-link-url{font-size:10px}.legend-heading{font-size:14px}.legend-intro{font-size:11px}dialog#legend-modal .legend-group-header{font-size:9px;margin-top:8px;margin-bottom:1px;padding-bottom:3px}dialog#legend-modal .legend-item{gap:6px;padding:3px 0}dialog#legend-modal .legend-icon{width:20px;height:20px}dialog#legend-modal .legend-icon canvas{width:20px;height:20px}dialog#legend-modal .legend-label{font-size:11px}dialog#legend-modal .legend-points{font-size:9px}dialog#legend-modal .legend-description{font-size:9px;line-height:1.2}#score-display{max-height:85vh;overflow:visible;display:flex;flex-direction:column}.score-tab-panel{max-height:50vh;overflow-y:auto}.modal{max-height:90vh}#game-area,body[data-theme=original] #game-area{padding-left:24px!important;padding-right:24px!important}#legend,body[data-theme=original] #legend{position:fixed!important;inset:auto 0 50% auto!important;transform:translateY(50%) translate(calc(100% - 12px))!important;z-index:50;flex-direction:column;min-width:160px;gap:6px;padding:12px 14px 12px 16px;border-radius:12px 0 0 12px;cursor:pointer;max-height:60vh;overflow-y:auto;transition:transform .25s ease}#legend:before,body[data-theme=original] #legend:before{content:"◀";position:absolute;left:2px;top:50%;transform:translateY(-50%);font-size:10px;color:#fff9;transition:transform .25s ease}#legend.legend-expanded,body[data-theme=original] #legend.legend-expanded{transform:translateY(50%) translate(0)!important;right:16px!important;border-radius:12px}#legend.legend-expanded:before,body[data-theme=original] #legend.legend-expanded:before{content:"▶"}#legend h2,body[data-theme=original] #legend h2{padding-left:20px}#legend.legend-expanded h2,body[data-theme=original] #legend.legend-expanded h2{padding-left:0}#legend .legend-item,body[data-theme=original] #legend .legend-item{opacity:0;transition:opacity .15s ease}#legend.legend-expanded .legend-item,body[data-theme=original] #legend.legend-expanded .legend-item{opacity:1}}#admin-container{min-height:100vh;background:#111;color:#fff;font-family:SF Mono,Monaco,Inconsolata,Fira Mono,monospace;padding:24px}.admin-card{max-width:400px;margin:80px auto 0;background:#1a1a1a;border:1px solid #333;border-radius:12px;padding:40px 32px;text-align:center}.admin-title{font-size:20px;font-weight:700;letter-spacing:3px;text-transform:uppercase;margin-bottom:8px}.admin-subtitle{font-size:13px;color:#ffffff80;margin-bottom:24px}.admin-btn{background:#2a2a2a;border:2px solid #444;color:#fff;font-family:inherit;font-size:13px;font-weight:600;padding:10px 20px;border-radius:8px;cursor:pointer;transition:all .1s}.admin-btn:hover{background:#3a3a3a;border-color:#555}.admin-btn-primary{background:#5c9eff;border-color:#48e}.admin-btn-primary:hover{background:#70aaff}.admin-btn-small{font-size:11px;padding:5px 12px}.admin-btn-danger{background:#e65555;border-color:#c44}.admin-btn-danger:hover{background:#ff6b6b}.admin-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid #333;margin-bottom:16px}.admin-user-info{display:flex;align-items:center;gap:12px}.admin-user-email{font-size:12px;color:#ffffff80}.admin-toolbar{display:flex;gap:10px;margin-bottom:20px}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th{text-align:left;padding:10px 12px;font-size:10px;font-weight:700;color:#ffffff80;text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid #333}.admin-table td{padding:10px 12px;border-bottom:1px solid #222}.admin-table tr:hover{background:#ffffff08}.admin-td-date{font-weight:600}.admin-td-actions{display:flex;gap:6px}.admin-status{font-size:10px;font-weight:700;padding:3px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.5px}.admin-status-today{background:#7fff7f33;color:#7fff7f}.admin-status-future{background:#5c9eff33;color:#5c9eff}.admin-status-past{background:#ffffff1a;color:#ffffff80}.admin-form{background:#1a1a1a;border:1px solid #333;border-radius:10px;padding:20px 24px;margin-bottom:20px}.admin-form h3{font-size:14px;font-weight:700;margin-bottom:16px}.admin-form-danger{border-color:#e65555}.admin-form-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.admin-form-row label{font-size:12px;font-weight:600;min-width:50px;color:#ffffffb3}.admin-form-row input{flex:1;background:#222;border:1px solid #444;color:#fff;font-family:inherit;font-size:13px;padding:8px 12px;border-radius:6px}.admin-form-row input:focus{outline:none;border-color:#5c9eff}.admin-form-actions{display:flex;gap:10px;margin-top:16px}.admin-form-message{font-size:12px;margin-top:12px}.admin-error{color:#ff6b6b}.admin-success{color:#7fff7f}.admin-warning{color:#fc0;font-size:13px;margin-bottom:16px}.admin-loading,.admin-empty{color:#ffffff80;font-size:13px;padding:24px;text-align:center}.admin-tabs{display:flex;gap:0;border-bottom:2px solid #333;margin-bottom:16px}.admin-tab{background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;color:#ffffff80;font-family:inherit;font-size:13px;font-weight:600;padding:10px 20px;cursor:pointer;transition:all .15s}.admin-tab:hover{color:#fffc}.admin-tab.active{color:#5c9eff;border-bottom-color:#5c9eff}.admin-count{font-size:11px;color:#fff6;text-align:right;margin-top:8px}.admin-preview{margin:16px 0;display:flex;justify-content:center}.admin-preview canvas{image-rendering:pixelated;image-rendering:crisp-edges;border-radius:8px;border:1px solid #333}@media(max-width:600px){#admin-container{padding:16px}.admin-card{margin-top:40px;padding:28px 20px}.admin-header{flex-direction:column;gap:12px;text-align:center}.admin-toolbar{flex-wrap:wrap}.admin-table{font-size:11px}.admin-table th,.admin-table td{padding:8px 6px}.admin-form-row{flex-direction:column;align-items:stretch;gap:4px}.admin-form-row label{min-width:auto}}body[data-theme=original]{background:#0c8c44;font-family:SF Mono,Monaco,Inconsolata,Fira Mono,monospace;color:#fff}body[data-theme=original] .date-not-found,body[data-theme=original] .date-not-found h2,body[data-theme=original] .date-not-found p,body[data-theme=original] .date-not-found strong{color:#fff}body[data-theme=original] #app{background:#0c8c44;min-height:100vh}body[data-theme=original] header{background:#00000026;padding:20px 24px;text-align:center;border-bottom:2px solid rgba(255,255,255,.15);position:relative}body[data-theme=original] .title{font-size:24px;font-weight:700;color:#fff;text-shadow:2px 2px 0 rgba(0,0,0,.2);letter-spacing:6px;text-transform:uppercase}body[data-theme=original] #help-button{position:absolute;left:20px;top:50%;transform:translateY(-50%);background:#fc0;border:3px solid #e6b800;color:#333;width:40px;height:40px;font-size:16px;font-family:inherit;font-weight:700;padding:0;border-radius:50%;box-shadow:2px 2px #0003;cursor:pointer;transition:all .1s}body[data-theme=original] #help-button:hover{background:#ffe033;transform:translateY(-50%) scale(1.05)}body[data-theme=original] #help-button:active{box-shadow:inset 1px 1px 2px #0003;transform:translateY(-50%) translate(1px,1px)}body[data-theme=original] #legend-button{position:absolute;left:70px;top:50%;transform:translateY(-50%);background:#9acd32;border:3px solid #7cb32b;color:#333;width:40px;height:40px;font-size:16px;font-family:inherit;font-weight:700;padding:0;border-radius:50%;box-shadow:2px 2px #0003;cursor:pointer;transition:all .1s}body[data-theme=original] #legend-button:hover{background:#a8d94a;transform:translateY(-50%) scale(1.05)}body[data-theme=original] #legend-button:active{box-shadow:inset 1px 1px 2px #0003;transform:translateY(-50%) translate(1px,1px)}body[data-theme=original] #account-menu-container{position:absolute;right:20px;top:50%;transform:translateY(-50%);z-index:50}body[data-theme=original] #account-menu-btn{background:#ff6b6b;border:3px solid #e65555;color:#fff;width:40px;height:40px;font-size:16px;font-family:inherit;font-weight:700;padding:0;border-radius:50%;box-shadow:2px 2px #0003;cursor:pointer;transition:all .1s;display:flex;align-items:center;justify-content:center}body[data-theme=original] .menu-icon{display:flex;flex-direction:column;gap:4px;width:18px}body[data-theme=original] .menu-icon span{display:block;height:2px;background:#fff;border-radius:1px}body[data-theme=original] #account-menu-btn:hover{background:#ff8080;transform:scale(1.05)}body[data-theme=original] #account-menu-btn:active{box-shadow:inset 1px 1px 2px #0003;transform:translate(1px,1px)}#account-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#111;border:2px solid #333;border-radius:12px;min-width:160px;box-shadow:4px 4px 12px #0006;z-index:100;padding:8px 0}#account-dropdown.hidden{display:none}.account-menu-item{display:block;width:100%;padding:10px 16px;font-size:13px;font-family:inherit;font-weight:500;color:#fff;background:none;border:none;cursor:pointer;text-align:left;transition:background .1s}.account-menu-item:hover{background:#ffffff1a}.account-menu-item.active{color:#f0c040}.account-menu-item.active:before{content:"✓ ";color:#f0c040}.menu-email{display:block;font-size:11px;font-weight:400;color:#fff6;margin-top:2px}.account-menu-divider{height:1px;background:#ffffff26;margin:6px 0}.account-message{font-size:14px;color:#ffffffb3;text-align:center;margin-bottom:20px;line-height:1.5}.account-sign-in-btn{display:block;width:100%;background:#4285f4;border:2px solid #3367d6;color:#fff;font-family:inherit;font-size:14px;font-weight:600;padding:12px 20px;border-radius:8px;cursor:pointer;transition:all .1s}.account-sign-in-btn:hover{background:#5a9bf4}.account-detail{font-size:13px;color:#fff9;margin-bottom:6px}.account-name-section{margin-top:20px}.account-name-label{display:block;font-size:12px;font-weight:600;color:#ffffffb3;margin-bottom:8px;text-transform:uppercase;letter-spacing:1px}.account-name-display-row{display:flex;align-items:center;gap:8px}.account-name-text{flex:1;color:#fff;font-size:14px}.account-edit-btn{background:none;border:none;color:#5c9eff;cursor:pointer;font-family:inherit;font-size:13px;padding:4px 8px}.account-edit-btn:hover{text-decoration:underline}.account-name-row{display:flex;gap:8px}.account-name-input{flex:1;background:#222;border:1px solid #444;color:#fff;font-family:inherit;font-size:14px;padding:8px 12px;border-radius:6px}.account-name-input:focus{outline:none;border-color:#5c9eff}.account-save-btn{background:#70ff70;border:2px solid #50dd50;color:#111;font-family:inherit;font-size:13px;font-weight:700;padding:8px 16px;border-radius:6px;cursor:pointer;transition:all .1s}.account-save-btn:hover{background:#90ff90}.account-status{font-size:12px;margin-top:8px;min-height:1.5em}.account-status.success{color:#7fff7f}.account-status.error{color:#ff6b6b}.account-sign-out-btn{display:block;width:100%;background:none;border:1px solid rgba(255,255,255,.2);color:#fff9;font-family:inherit;font-size:13px;font-weight:500;padding:10px 20px;border-radius:6px;cursor:pointer;margin-top:20px;transition:all .1s}.account-sign-out-btn:hover{border-color:#ff6b6b;color:#ff6b6b}body[data-theme=original] #game-controls{background:#0000001a;padding:16px 24px;display:flex;flex-wrap:wrap;gap:16px;justify-content:center;align-items:center;border-bottom:2px solid rgba(255,255,255,.1)}body[data-theme=original] #game-controls>div{background:#fff3;border:none;padding:8px 16px;display:flex;gap:8px;font-size:13px;border-radius:8px}body[data-theme=original] .label{color:#ffffffb3;font-weight:500}body[data-theme=original] .value{color:#fff;font-weight:700}body[data-theme=original] .unit{color:#fff9}body[data-theme=original] .phase-status{background:#5c9eff;border:2px solid #4488ee;padding:8px 20px;font-size:12px;font-weight:700;color:#fff;border-radius:20px;text-transform:uppercase;letter-spacing:1px;box-shadow:2px 2px #00000026}body[data-theme=original] .status-player-turn{background:#7fff7f;border-color:#66e666;color:#1a5c1a}body[data-theme=original] .action-buttons{display:flex;gap:10px}body[data-theme=original] .action-buttons button{background:#ffffff40;border:2px solid rgba(255,255,255,.35);color:#fff;font-family:inherit;font-size:12px;font-weight:600;padding:8px 16px;border-radius:8px;box-shadow:2px 2px #00000026;cursor:pointer;transition:all .1s}body[data-theme=original] .action-buttons button:hover{background:#ffffff59;transform:scale(1.03)}body[data-theme=original] .action-buttons button:active{box-shadow:inset 1px 1px 2px #0003;transform:translate(1px,1px)}body[data-theme=original] #game-area{padding:32px;display:flex;justify-content:center;align-items:center;flex:1;position:relative}body[data-theme=original] .preview-grid{display:grid;grid-template-columns:repeat(5,56px);gap:0;background:transparent;padding:0;border-radius:0}body[data-theme=original] .cell{width:56px;height:56px;display:flex;align-items:center;justify-content:center;font-size:28px;background:transparent;cursor:pointer;border-radius:0;transition:all .1s}body[data-theme=original] .cell:hover{background:#fff3}body[data-theme=original] .cell.fire,body[data-theme=original] .cell.burning{background:#ff783266;animation:orig-fire .4s ease-in-out infinite alternate}@keyframes orig-fire{0%{background:#ff783259}to{background:#ff963280}}body[data-theme=original] #legend{position:absolute;right:32px;top:50%;transform:translateY(-50%);background:#ffffff26;border:none;padding:16px 20px;min-width:180px;border-radius:12px}body[data-theme=original] #legend h2{font-size:11px;font-weight:600;color:#fff;margin-bottom:12px;text-align:center;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.2);text-transform:uppercase;letter-spacing:2px}body[data-theme=original] .legend-item{display:flex;align-items:center;gap:12px;padding:6px 0;font-size:13px}body[data-theme=original] .legend-icon{font-size:18px}body[data-theme=original] .legend-label{color:#fff;flex:1;font-weight:500}body[data-theme=original] .legend-points{color:#fc0;font-weight:700}body[data-theme=original] #game-over-actions{display:flex;gap:16px;justify-content:center;padding:24px;background:#0000001a;border-top:1px solid rgba(255,255,255,.1)}body[data-theme=original] #game-over-actions button{background:#ffffff40;border:3px solid rgba(255,255,255,.35);color:#fff;font-family:inherit;font-size:14px;font-weight:600;padding:12px 28px;border-radius:12px;box-shadow:2px 2px #00000026;cursor:pointer;transition:all .1s}body[data-theme=original] #results-btn{background:#fc0;border-color:#e6b800;color:#333}body[data-theme=original] #game-over-actions button:hover{transform:scale(1.03)}body[data-theme=original] #game-over-actions button:active{box-shadow:inset 2px 2px 4px #0003;transform:translate(2px,2px)}body[data-theme=original] #score-close{position:absolute;top:10px;right:10px;background:#ff6b6b;border:2px solid #e65555;color:#fff;font-size:16px;width:28px;height:28px;padding:0;cursor:pointer;font-family:inherit;border-radius:50%}body[data-theme=original] #score-close:active{background:#e65555}body[data-theme=original] .tier-great{color:#7fff7f}body[data-theme=original] .share-buttons{display:flex;gap:12px;margin-top:20px;justify-content:center}body[data-theme=original] .share-button{background:#5c9eff;border:2px solid #4488ee;color:#fff;font-family:inherit;font-size:12px;font-weight:600;padding:8px 18px;border-radius:8px;box-shadow:2px 2px #00000026;cursor:pointer;transition:all .1s}body[data-theme=original] .share-button:hover{background:#70aaff;transform:scale(1.03)}#day-nav-container{position:absolute;right:70px;top:50%;transform:translateY(-50%);z-index:50}#day-nav-button{background:#5c9eff;border:3px solid #4488ee;color:#fff;font-size:12px;font-family:inherit;font-weight:700;padding:8px 14px;border-radius:20px;box-shadow:2px 2px #0003;cursor:pointer;transition:all .1s;display:flex;align-items:center;gap:6px}#day-nav-button:hover{background:#70aaff;transform:scale(1.05)}#day-nav-button:active{box-shadow:inset 1px 1px 2px #0003;transform:translate(1px,1px)}.day-nav-arrow{font-size:10px;transition:transform .2s}#day-nav-container.open .day-nav-arrow{transform:rotate(180deg)}#day-nav-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#111;border:2px solid #333;border-radius:12px;min-width:220px;max-height:300px;overflow-y:auto;box-shadow:4px 4px 12px #0006;z-index:100}#day-nav-dropdown.hidden{display:none}#day-nav-list{padding:8px 0}.day-nav-item{padding:10px 16px;font-size:13px;color:#fff;cursor:pointer;transition:background .1s;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.day-nav-item:hover{background:#ffffff1a}.day-nav-item.active{background:#5c9eff4d;color:#5c9eff;font-weight:700}.day-nav-left{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;min-width:0}.day-nav-top-row{display:flex;align-items:center;gap:5px;font-size:13px}.day-nav-tick{font-weight:700;font-size:12px;flex-shrink:0;color:#f0c040}.day-nav-item.completed .day-nav-top-row{color:#f0c040;text-decoration:line-through;text-decoration-color:#f0c04080}.day-nav-subtitle{font-size:10px}.day-nav-subtitle.tier-excellent{color:#4caf50}.day-nav-subtitle.tier-great{color:#8bc34a}.day-nav-subtitle.tier-good{color:#fc0}.day-nav-subtitle.tier-poor{color:#ff6b6b}.day-nav-date{font-size:11px;color:#ffffff80;display:flex;flex-direction:column;align-items:flex-end;text-align:right;flex-shrink:0}.day-nav-item.current .day-nav-date:after{content:"today";font-size:10px;color:#fc0}#day-nav-dropdown::-webkit-scrollbar{width:6px}#day-nav-dropdown::-webkit-scrollbar-track{background:transparent}#day-nav-dropdown::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}#day-nav-dropdown::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.viewing-past-day #day-nav-button{background:#fc0;border-color:#e6b800;color:#333}.viewing-past-day #day-nav-button:hover{background:#ffe033}body[data-theme=original] #day-nav-container{right:70px}body[data-theme=original] #day-nav-dropdown{background:#111}@media(max-width:600px){body[data-theme=original] header{display:flex;flex-wrap:wrap;align-items:center;padding:14px 16px;gap:10px;position:relative}body[data-theme=original] .title{width:100%;text-align:center;font-size:18px;letter-spacing:3px;margin-top:6px;order:10}body[data-theme=original] #help-button,body[data-theme=original] #legend-button{position:static;transform:none}body[data-theme=original] #account-menu-container{position:relative;transform:none;right:auto;top:auto;order:6}body[data-theme=original] #account-menu-btn,body[data-theme=original] #help-button,body[data-theme=original] #legend-button{width:28px;height:28px;font-size:12px;border-width:2px}body[data-theme=original] #help-button:hover,body[data-theme=original] #legend-button:hover{transform:scale(1.05)}body[data-theme=original] #help-button:active,body[data-theme=original] #legend-button:active{transform:translate(1px,1px)}body[data-theme=original] #day-nav-container{position:relative;transform:none;right:auto;top:auto;z-index:auto;margin-left:auto;order:5}body[data-theme=original] #day-nav-dropdown{right:0}body[data-theme=original] #day-nav-button{font-size:10px;padding:4px 8px;border-width:2px}body[data-theme=original] #game-controls{padding:10px 14px;gap:8px}body[data-theme=original] #game-controls>div{padding:5px 10px;font-size:11px;gap:5px}body[data-theme=original] .phase-status{padding:5px 12px;font-size:10px}body[data-theme=original] .action-buttons{gap:6px}body[data-theme=original] .action-buttons button{font-size:10px;padding:5px 10px}}#seed-preview{min-height:100vh;background:#0c8c44;font-family:SF Mono,Monaco,Inconsolata,Fira Mono,monospace;color:#fff;display:flex;flex-direction:column}.seed-preview-topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#0003;border-bottom:1px solid rgba(255,255,255,.15)}.seed-preview-back{color:#5c9eff;text-decoration:none;font-size:13px;font-weight:600;transition:color .1s}.seed-preview-back:hover{color:#70aaff}.seed-preview-info{display:flex;align-items:center;gap:8px;font-size:12px}.seed-preview-label{color:#fff9}.seed-preview-value{color:#fff;font-weight:700}.seed-preview-sep{color:#ffffff4d}.seed-preview-controls{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center;padding:12px 20px;background:#0000001a;border-bottom:1px solid rgba(255,255,255,.1)}.seed-preview-stat{background:#fff3;padding:6px 14px;border-radius:8px;display:flex;gap:8px;font-size:13px}#seed-preview .phase-status{background:#5c9eff;border:2px solid #4488ee;padding:6px 16px;font-size:11px;font-weight:700;color:#fff;border-radius:20px;text-transform:uppercase;letter-spacing:1px}#seed-preview .status-player-turn{background:#7fff7f;border-color:#66e666;color:#1a5c1a}.seed-preview-actions{display:flex;gap:8px}.seed-preview-btn{background:#ffffff40;border:2px solid rgba(255,255,255,.35);color:#fff;font-family:inherit;font-size:12px;font-weight:600;padding:6px 14px;border-radius:8px;cursor:pointer;transition:all .1s}.seed-preview-btn:hover{background:#ffffff59}.seed-preview-btn:disabled{opacity:.4;cursor:default}.seed-preview-game-area{flex:1;display:flex;justify-content:center;align-items:center;padding:24px;position:relative}#seed-preview #game-over-actions{display:flex;gap:12px;justify-content:center;padding:16px;background:#0000001a;border-top:1px solid rgba(255,255,255,.1)}#seed-preview #game-canvas{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;display:block;touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer}#seed-preview #canvas-container{display:flex;align-items:center;justify-content:center}#seed-preview #game-area{padding:24px;display:flex;justify-content:center;align-items:center;flex:1;position:relative}.admin-play-link{text-align:center;margin-bottom:12px}.admin-btn-play{display:inline-block;text-decoration:none;background:#7fff7f;border-color:#66e666;color:#111}.admin-btn-play:hover{background:#90ff90;color:#111}@media(max-width:600px){.seed-preview-topbar{flex-direction:column;gap:8px;padding:10px 14px}.seed-preview-controls{padding:8px 14px;gap:8px}.seed-preview-stat{font-size:11px;padding:4px 10px}.seed-preview-btn{font-size:10px;padding:4px 10px}.seed-preview-game-area{padding:16px}}
