.player-setup{padding:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom));max-width:400px;margin:0 auto;min-height:calc(100dvh - 49px);display:flex;flex-direction:column;justify-content:center}.title{text-align:center;font-size:2rem;margin-bottom:16px;font-weight:800;letter-spacing:-.5px;display:flex;align-items:center;justify-content:center;gap:6px}.title-logo{width:100%;max-width:170px;height:auto}.setup-main{margin:0}.buttons{display:flex;flex-direction:column;gap:12px;margin-top:28px}.start-buttons{display:flex;flex-direction:column;gap:8px;max-width:400px;margin:0 auto}.start-button{display:block;width:100%;padding:0;border:none;background:none;cursor:pointer;transition:transform .15s;-webkit-tap-highlight-color:transparent}.start-button img{display:block;width:100%;height:auto}.start-button:active{transform:scale(.98)}.setup-login-cta{display:flex;align-items:center;gap:5px;margin:24px auto 0;padding:8px 20px;font-size:.78rem;font-weight:600;background:#c41230;color:#fff;border:none;border-radius:20px;cursor:pointer;transition:all .2s}.setup-login-cta:hover{background:#a80e28}.setup-footer{margin-top:40px;display:flex;flex-direction:column;align-items:center;gap:8px}.setup-footer .developer-contact{margin-top:0}.privacy-link{background:none;border:none;color:#888;font-size:.85rem;cursor:pointer;text-decoration:underline;padding:8px}.privacy-link:hover{color:#555}.developer-contact{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:56px;font-size:.8rem}.developer-contact .privacy-link{margin:0;padding:0;font-size:.8rem}.contact-divider{color:#999}.developer-contact a{color:#888;text-decoration:none}.developer-contact a:hover{color:#555;text-decoration:underline}.setup-logout-link{padding:8px 16px;background:none;border:none;font-size:.78rem;color:#ccc;cursor:pointer;transition:color .2s}.setup-logout-link:hover{color:#999}.setup-account-links{display:flex;align-items:center;justify-content:center;gap:2px}.setup-delete-link{padding:8px 16px;background:none;border:none;font-size:.78rem;color:#ccc;cursor:pointer;transition:color .2s}.setup-delete-link:hover{color:#c41230}.setting-item{display:flex;flex-direction:column;gap:8px}.setting-label-row{display:flex;align-items:center;justify-content:space-between}.setting-label{font-size:.9rem;font-weight:600;color:#555}.setting-label.sub{font-size:.85rem;color:#777}.setting-hint{margin:0;font-size:.78rem;color:#aaa}.setting-toggle{width:52px;padding:5px 0;font-size:.8rem;font-weight:600;text-align:center;border:1px solid #ddd;border-radius:20px;cursor:pointer;transition:all .2s;box-sizing:border-box}.setting-toggle.on{background:#444;color:#fff;border-color:#444}.setting-toggle.off{background:#f5f5f5;color:#999}.setting-toggle:hover{opacity:.85}.setting-sub-item{padding:8px 12px;background:#f8f8f8;border-radius:8px}.time-limit-options{display:flex;gap:6px;margin-bottom:10px}.time-option{flex:1;padding:7px;font-size:.82rem;font-weight:500;border:1px solid #ddd;border-radius:8px;background:#fff;color:#666;cursor:pointer;transition:all .2s;text-align:center}.time-option.active{background:#444;color:#fff;border-color:#444}.time-option:hover:not(.active){border-color:#444;color:#444}.options-divider{height:1px;background:#eee;margin:4px 0}@keyframes slideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.slide-in{animation:slideIn .2s ease-out}.player-stats-screen{display:flex;flex-direction:column;min-height:100dvh}.player-count-selector{display:flex;justify-content:center;gap:8px;margin:12px 16px 16px}.count-btn{padding:6px 20px;font-size:.85rem;font-weight:500;border:1px solid #ddd;background:#fff;color:#666;border-radius:8px;cursor:pointer;transition:all .2s}.count-btn.active{border-color:#444;background:#444;color:#fff;font-weight:600}.count-btn:hover:not(.active){border-color:#444;color:#444}.stats-container{margin:12px 16px 0;border:none;outline:none}.stats-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;border:none;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px #0000000a;border:1px solid #eee}.stats-table th,.stats-table td{padding:12px 8px;text-align:center}.stats-table th:first-child,.stats-table td:first-child{width:80px}.stat-header-label{background:#f8f8f8;min-width:80px;width:80px;text-align:left!important;padding-left:12px!important;padding-right:4px!important;color:#888;font-size:.8rem;white-space:nowrap}.order-row{border-bottom:1px solid #e0e0e0}.order-row .stat-header-label{background:#f5f5f5;color:#888}.stat-header-order{background:#f5f5f5;color:#333;font-size:.85rem;font-weight:500;padding:6px 8px!important;width:auto}.order-with-arrows{display:flex;align-items:center;gap:8px;justify-content:center}.order-number{font-size:.95rem;font-weight:600;min-width:20px;text-align:center}.player-row .stat-header-label{border-top:none}.stat-header-player{background:#f5f5f5;color:#333;font-weight:600;font-size:.95rem;width:auto;position:relative;padding:10px 6px!important;overflow:hidden;text-overflow:ellipsis}.player-name{font-size:.95rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;max-width:100%}.player-name.editable{cursor:pointer;display:inline-flex;align-items:center;gap:3px;max-width:100%}.player-name-edit-icon{opacity:.5;flex-shrink:0}.player-name.editable:hover .player-name-edit-icon{opacity:.9}.player-name-input{font-size:.95rem;font-weight:600;color:#333;border:1px solid #444;border-radius:4px;padding:2px 4px;width:100%;max-width:100%;text-align:center;outline:none;background:#fff;box-sizing:border-box}.reorder-btn{width:28px;height:28px;padding:0;background:#00000014;border:1.5px solid rgba(0,0,0,.15);color:#555;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;border-radius:6px}.reorder-btn svg{display:block}.reorder-btn:hover:not(:disabled){transform:scale(1.15);background:#00000026;border-color:#0000004d}.reorder-btn:active:not(:disabled){transform:scale(1.05);background:#0000001f}.reorder-btn:disabled{opacity:.2;cursor:not-allowed;background:transparent;border-color:transparent}.stat-row{border-bottom:1px solid #f0f0f0}.stat-row:hover{background:#fafafa}.stat-label{text-align:left!important;font-weight:500;color:#777;font-size:.8rem;background:#f8f8f8;padding-left:12px!important;padding-right:4px!important;white-space:nowrap}.stat-value{font-weight:600;color:#333;font-size:1rem}.handicap-row{background:#4444440a;border-top:1px solid rgba(68,68,68,.1)}.player-stats-screen .handicap-label{color:#555!important;font-weight:600!important;background:transparent!important}.handicap-cell{padding:8px!important}.player-stats-screen .handicap-input{width:70px;padding:8px 12px;font-size:1rem;text-align:center;background:#fff;color:#222;border:1px solid #ddd;border-radius:8px;outline:none;transition:border-color .2s}.player-stats-screen .handicap-input:focus{border-color:#c41230}.player-stats-screen .handicap-input::placeholder{color:#bbb;font-weight:400}.options-card{display:flex;flex-direction:column;gap:12px;margin:12px 16px 0;padding:16px;background:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 2px 12px #0000000a}.start-card{margin:16px}.confirm-button{width:100%;padding:14px;font-size:1.1rem;font-weight:600;color:#fff;background:#c41230;border:none;border-radius:12px;cursor:pointer;transition:transform .1s,box-shadow .2s;letter-spacing:.3px}.confirm-button:hover{box-shadow:0 4px 16px #c412304d}.confirm-button:active{transform:scale(.98)}@media(max-width:400px){.stats-table th,.stats-table td{padding:10px 6px}.stats-table th:first-child,.stats-table td:first-child{width:70px}.stat-header-label{min-width:70px;width:70px;padding-left:10px!important;font-size:.73rem}.stat-header-player{font-size:.85rem;padding:8px 4px!important}.player-name{font-size:.85rem}.stat-label{font-size:.73rem;min-width:70px;padding-left:10px!important}.stat-value{font-size:.9rem}.player-stats-screen .handicap-input{width:56px;padding:6px 8px;font-size:.9rem}}.login-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.login-modal{background:#fff;border:1px solid #eee;border-radius:12px;padding:24px;width:100%;max-width:360px;position:relative;box-shadow:0 20px 60px #00000026}.login-modal-close{position:absolute;top:12px;right:12px;background:none;border:none;font-size:24px;color:#888;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s}.login-modal-close:hover{color:#222}.login-modal-title{text-align:center;font-size:1.4rem;margin-bottom:24px;color:#222}.login-modal-field{margin-bottom:16px}.login-modal-field label{display:block;font-size:.85rem;color:#888;margin-bottom:6px}.login-modal-field input{width:100%;padding:12px;font-size:1rem;background:#f8f8f8;color:#222;border:1px solid #ddd;border-radius:8px;outline:none;transition:border-color .2s;box-sizing:border-box}.login-modal-field input::placeholder{color:#bbb}.login-modal-field input:focus{border-color:#c41230}.login-modal-field input:disabled{background:#f0f0f0;opacity:.6}.login-modal-error{color:#e84060;font-size:.9rem;margin-bottom:16px;text-align:center}.login-modal-button{width:100%;padding:14px;font-size:1rem;font-weight:700;background:#c41230;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.login-modal-button:hover:not(:disabled){background:#a00e28}.login-modal-button:disabled{background:#ddd;color:#999;cursor:not-allowed}.login-modal-switch{margin-top:20px;text-align:center;font-size:.9rem;color:#999}.login-modal-switch button{background:none;border:none;color:#c41230;cursor:pointer;font-size:.9rem;text-decoration:underline}.login-modal-switch button:hover{color:#e84060}.login-modal-info{margin-top:20px;padding-top:16px;border-top:1px solid #eee;text-align:center;font-size:.8rem;color:#888;word-break:keep-all}.signup-success{text-align:center}.signup-success p{font-size:1rem;color:#27ae60;margin-bottom:12px}.signup-success-note{font-size:.9rem;color:#888!important;margin-bottom:20px!important}.google-login-button{width:100%;padding:12px;font-size:1rem;background:#f8f8f8;color:#333;border:1px solid #ddd;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:10px}.google-login-button:hover:not(:disabled){border-color:#4285f4;background:#eee}.google-login-button:disabled{opacity:.5;cursor:not-allowed}.apple-login-button{width:100%;padding:12px;font-size:1rem;background:#000;color:#fff;border:1px solid #000;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}.apple-login-button:hover:not(:disabled){background:#1a1a1a;border-color:#1a1a1a}.apple-login-button:disabled{opacity:.5;cursor:not-allowed}.kakao-login-button{width:100%;padding:12px;font-size:1rem;background:#fee500;color:#191919;border:1px solid #FEE500;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px}.kakao-login-button:hover:not(:disabled){background:#f2d900;border-color:#f2d900}.kakao-login-button:disabled{opacity:.5;cursor:not-allowed}.login-divider{display:flex;align-items:center;margin:20px 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:#eee}.login-divider span{padding:0 12px;color:#888;font-size:.85rem}.dice-tray{margin:8px}.dice-tray-frame{background:var(--board-frame-bg, #1a1a1a);border:3px solid var(--board-frame-border, #2a2a2a);border-radius:12px;padding:4px;box-shadow:var(--board-frame-shadow, inset 0 0 20px rgba(0,0,0,.8), 0 4px 12px rgba(0,0,0,.5))}.dice-tray-3d-container{position:relative;min-height:155px;border-radius:8px;overflow:hidden}.dice-tray-felt-bg{position:absolute;top:0;left:0;right:0;height:65%;background:var(--board-felt-color, #8b1a1a);background-image:radial-gradient(circle at 20% 30%,var(--board-felt-g1, rgba(139, 26, 26, .9)) 0%,transparent 50%),radial-gradient(circle at 80% 70%,var(--board-felt-g2, rgba(120, 20, 20, .9)) 0%,transparent 50%),radial-gradient(circle at 50% 50%,var(--board-felt-g3, rgba(100, 15, 15, .6)) 0%,transparent 70%);border-radius:8px 8px 0 0}.dice-tray-felt-bg:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 4 4' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='1' cy='1' r='0.4' fill='rgba(0,0,0,0.05)'/%3E%3Ccircle cx='3' cy='3' r='0.3' fill='rgba(0,0,0,0.03)'/%3E%3C/svg%3E");background-size:4px 4px;pointer-events:none}.dice-tray-kept-bg{position:absolute;bottom:0;left:0;right:0;height:35%;background:var(--board-kept-bg, #141414);border-radius:0 0 8px 8px;border-top:2px solid var(--board-kept-border, #2a2a2a);display:flex;align-items:center;justify-content:center}.dice-kept-slots-overlay{display:flex;gap:4px;justify-content:center}.dice-kept-slot{width:42px;height:42px;border:1px dashed var(--board-slot-border, rgba(255, 255, 255, .15));border-radius:6px;transition:border-color .3s}.dice-kept-slot.filled{border-color:transparent;background:transparent}.dice-scene-loading{position:absolute;top:0;left:0;right:0;height:65%;display:flex;align-items:center;justify-content:center;gap:8px;z-index:1}.loading-dot{display:block;width:10px;height:10px;border-radius:50%;background:#ffffff80;animation:loading-wave 1.2s ease-in-out infinite}.loading-dot:nth-child(1){animation-delay:0s}.loading-dot:nth-child(2){animation-delay:.2s}.loading-dot:nth-child(3){animation-delay:.4s}@keyframes loading-wave{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-10px);opacity:1}}.dice-controls{display:flex;justify-content:space-between;align-items:center;padding:8px 4px;gap:8px}.dice-controls-left,.dice-controls-right{display:flex;align-items:center;gap:8px}.roll-dots-overlay{position:absolute;top:6px;left:8px;display:flex;gap:5px;z-index:2}.roll-dot{width:10px;height:10px;border-radius:50%;background:var(--board-dot-color, #fff);box-shadow:0 1px 3px #0006;transition:background .3s,opacity .3s}.roll-dot.used{background:var(--board-dot-used, rgba(255, 255, 255, .2));box-shadow:none}.dice-timer{display:inline-flex;align-items:center;gap:4px;font-size:14px;font-weight:600;color:#333;font-variant-numeric:tabular-nums;transform:translateZ(0);-webkit-font-smoothing:antialiased}.dice-timer-value{color:inherit}.dice-timer-label{font-size:10px;font-weight:600;color:#c41230;font-variant-numeric:normal}.dice-timer.warning{color:#f39c12}.dice-timer.critical{color:#c41230;animation:diceTimerPulse .5s ease-in-out infinite}@keyframes diceTimerPulse{0%,to{opacity:1}50%{opacity:.5}}.dice-pause-btn{width:28px;height:28px;border:1px solid #ddd;border-radius:6px;background:#f5f5f5;color:#666;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;-webkit-tap-highlight-color:transparent}.dice-pause-btn.paused{background:#c41230;color:#fff;border-color:#c41230}.roll-button{background:linear-gradient(135deg,#c41230,#8b0000);color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s,transform .1s;-webkit-tap-highlight-color:transparent}.roll-button:active:not(.disabled){transform:scale(.97)}.roll-button.disabled{opacity:.4;cursor:default}@media(max-width:400px){.dice-tray{margin:4px}.dice-tray-3d-container{min-height:130px}.dice-kept-slot{width:36px;height:36px}.dice-kept-slots-overlay{gap:3px}.roll-button{padding:8px 14px;font-size:13px}}.toast-container{position:fixed;top:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:10000;pointer-events:none;width:max-content;max-width:90vw}.toast-item{padding:10px 22px;border-radius:22px;font-size:.85rem;font-weight:500;white-space:pre-line;text-align:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 16px #0000001f;animation:toast-slide-in .3s ease-out forwards}.toast-item.exiting{animation:toast-slide-out .4s ease-in forwards}.toast-info{background:#222222d1;color:#fff}.toast-success{background:#27ae60e0;color:#fff}.toast-warning{background:#f39c12e6;color:#fff}.toast-error{background:#c41230e0;color:#fff}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-slide-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.95)}}.anchor-ad-container{position:fixed;bottom:0;left:0;width:100%;z-index:9999;text-align:center;pointer-events:none;padding-bottom:env(safe-area-inset-bottom,0px)}.anchor-ad-container.ad-loaded{background:#fff;box-shadow:0 -1px 4px #0000001a;pointer-events:auto}.app.has-anchor-ad{padding-bottom:calc(60px + env(safe-area-inset-bottom,0px))}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.page-header{padding:12px 16px;background:#fff;border-bottom:1px solid #e0e0e0;position:sticky;top:0;z-index:10}.page-header h1{font-size:1.1rem;margin:0;color:#222}.dice-game,.online-lobby,.player-setup,.player-stats-screen{-webkit-user-select:none;user-select:none}input,textarea{-webkit-user-select:auto;user-select:auto}html,body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:#fff;color:#222;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;min-height:100dvh;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:none}#root{max-width:480px;margin:0 auto;min-height:100vh;min-height:100dvh}.app{min-height:100vh;min-height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.app:has(.dice-game){display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:0;overflow:hidden;padding-bottom:0}.app:has(.dice-game) .global-user-header{flex-shrink:0}input{font-family:inherit;-webkit-appearance:none;appearance:none}button{font-family:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:active{transform:scale(.98)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#999}@media screen and (max-width:768px){input,select,textarea{font-size:16px}}@supports (padding: max(0px)){.app{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right));padding-bottom:max(0px,env(safe-area-inset-bottom))}}.global-user-header{position:sticky;top:0;z-index:200;display:flex;align-items:center;gap:8px;padding:8px 16px;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #eee}.global-home-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:1px solid #ddd;border-radius:8px;color:#666;cursor:pointer;flex-shrink:0;transition:all .15s}.global-home-button:active{background:#f0f0f0;transform:scale(.95)}.global-history-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:1px solid #ddd;border-radius:8px;color:#666;cursor:pointer;flex-shrink:0;transition:all .15s}.global-history-button:active{background:#f0f0f0;transform:scale(.95)}.global-admin-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:1px solid #ddd;border-radius:8px;color:#666;cursor:pointer;flex-shrink:0;transition:all .15s}.global-admin-button:active{background:#271212;transform:scale(.95)}.global-guide-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:1px solid #ddd;border-radius:8px;color:#666;cursor:pointer;flex-shrink:0;transition:all .15s}.global-guide-button:active{background:#f0f0f0;transform:scale(.95)}.global-user-profile{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.global-user-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.global-user-avatar-placeholder{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#c41230,#8b0000);display:flex;align-items:center;justify-content:center;flex-shrink:0}.global-user-name{font-size:.85rem;font-weight:600;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-user-name.clickable{cursor:pointer;display:flex;align-items:center;gap:4px}.global-user-name.clickable:hover{color:#c41230}.nickname-edit-icon{opacity:.4;flex-shrink:0}.global-user-name.clickable:hover .nickname-edit-icon{opacity:.8}.global-nickname-input{font-size:.85rem;font-weight:600;color:#333;border:1px solid #c41230;border-radius:6px;padding:2px 8px;outline:none;width:120px;background:#fff}.global-logout-button{padding:5px 12px;font-size:.78rem;background:transparent;color:#999;border:1px solid #ddd;border-radius:6px;cursor:pointer;transition:all .2s;flex-shrink:0}.global-logout-button:hover{color:#c41230;border-color:#c41230}.global-login-multiline{display:flex;flex-direction:column;align-items:center;line-height:1.3;padding:4px 12px}.global-clear-history-button{padding:5px 12px;font-size:.78rem;background:transparent;color:#c41230;border:1px solid #c41230;border-radius:6px;cursor:pointer;transition:all .2s;flex-shrink:0}.global-clear-history-button:hover{background:#c41230;color:#fff}.global-login-button{padding:5px 14px;font-size:.78rem;font-weight:600;background:#c41230;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .2s;flex-shrink:0}.global-login-button:hover{background:#a00e28}.global-avatar-wrapper{cursor:pointer;flex-shrink:0}.global-user-avatar.clickable,.global-user-avatar-placeholder.clickable{cursor:pointer;transition:opacity .2s}.global-user-avatar.clickable:hover,.global-user-avatar-placeholder.clickable:hover{opacity:.8}.profile-popup{position:absolute;top:calc(100% + 8px);left:0;width:240px;background:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 8px 32px #0000001f;z-index:300;animation:profilePopupIn .15s ease-out;overflow:hidden}@keyframes profilePopupIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.profile-popup-hero{display:flex;flex-direction:column;align-items:center;padding:20px 16px 14px;border-bottom:1px solid #f0f0f0}.profile-popup-avatar-wrap{margin-bottom:10px}.profile-popup-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover}.profile-popup-avatar-placeholder{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#c41230,#8b0000);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.1rem;font-weight:600}.profile-popup-nickname{margin-bottom:2px}.profile-popup-name{display:inline-flex;align-items:center;gap:4px;font-size:.95rem;font-weight:700;color:#333;cursor:pointer;position:relative;padding-left:16px;padding-right:16px}.profile-popup-name .nickname-edit-icon{position:absolute;right:0;top:50%;transform:translateY(-50%)}.profile-popup-name:hover{color:#c41230}.profile-popup-name:hover .nickname-edit-icon{opacity:.8}.profile-popup-sub{display:flex;align-items:center;justify-content:center;gap:4px;font-size:.7rem;color:#999}.profile-popup-sub span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.profile-popup-stats{padding:12px 16px}.profile-stat-row{display:grid;grid-template-columns:repeat(3,1fr)}.profile-stat-item{display:flex;flex-direction:column;align-items:center;gap:2px}.profile-stat-value{font-size:1.1rem;font-weight:700;color:#333}.profile-stat-label{font-size:.65rem;color:#999}.profile-stat-empty{text-align:center;font-size:.8rem;color:#bbb;padding:4px 0}.global-user-avatar-placeholder.guest{background:#bbb}.global-user-avatar-placeholder.guest.clickable{cursor:pointer;transition:background .2s}.global-user-avatar-placeholder.guest.clickable:hover{background:#999}.guide-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;animation:guideModalFadeIn .2s ease-out}@keyframes guideModalFadeIn{0%{opacity:0}to{opacity:1}}.guide-modal-content{position:relative;width:90%;max-width:500px;max-height:85vh;background:#fff;border-radius:16px;overflow-y:auto;animation:guideModalSlideUp .3s ease-out}@keyframes guideModalSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.guide-modal-content .game-guide{height:85vh;max-height:85vh}.logout-confirm-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;animation:guideModalFadeIn .2s ease-out}.logout-confirm-modal{background:#fff;border-radius:14px;padding:28px 24px 20px;width:280px;text-align:center;animation:guideModalSlideUp .3s ease-out}.logout-confirm-message{margin:0 0 24px;font-size:15px;color:#333;font-weight:500}.logout-confirm-buttons{display:flex;gap:10px}.logout-confirm-buttons button{flex:1;padding:10px 0;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.logout-confirm-cancel{background:#f0eeeb;color:#333}.logout-confirm-ok{background:#c41230;color:#fff}.delete-account-danger:disabled,.logout-confirm-cancel:disabled{opacity:.6;cursor:not-allowed}.delete-account-error{color:#c41230;font-size:12px;text-align:center;margin:0 0 8px}.guide-modal-content .game-guide-header{position:sticky;top:0;z-index:10}.guide-modal-content .game-guide-header .back-button{display:none}.guide-modal-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;background:#0000000d;border-radius:50%;font-size:16px;color:#666;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:20;transition:background .2s}.guide-modal-close:hover{background:#0000001a}.global-dice-skin-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:1px solid #ddd;border-radius:8px;color:#666;cursor:pointer;flex-shrink:0;transition:all .15s}.global-dice-skin-button:active{background:#f0f0f0;transform:scale(.95)}.dice-skin-sheet-overlay{position:fixed;inset:0;background:#0006;z-index:1000;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dice-skin-sheet{width:100%;max-width:480px;background:#fff;border-radius:16px 16px 0 0;padding:20px 20px calc(20px + env(safe-area-inset-bottom));animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.dice-skin-sheet-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.dice-skin-sheet-title{font-size:1rem;font-weight:700;color:#333}.dice-skin-sheet-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;font-size:16px;color:#999;cursor:pointer;border-radius:50%;transition:background .15s}.dice-skin-sheet-close:hover{background:#f0f0f0}.dice-skin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;justify-items:center}.dice-skin-item{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:6px;border-radius:12px;transition:background .15s}.dice-skin-item:active{background:#f5f0eb}.dice-skin-canvas{width:52px;height:52px;border-radius:10px;border:2.5px solid transparent;transition:border-color .15s}.dice-skin-item.selected .dice-skin-canvas{border-color:#c41230}.dice-skin-name{font-size:.72rem;color:#999;transition:color .15s}.dice-skin-item.selected .dice-skin-name{color:#333;font-weight:600}.dice-skin-section-label{font-size:.75rem;font-weight:600;color:#999;margin-bottom:8px}.dice-skin-tabs{display:flex;gap:0;margin-bottom:12px;border-bottom:1.5px solid #eee}.dice-skin-tab{flex:1;padding:8px 0;border:none;background:none;font-size:.85rem;font-weight:500;color:#999;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1.5px;transition:color .15s,border-color .15s}.dice-skin-tab.active{color:#333;font-weight:600;border-bottom-color:#444}.board-theme-preview{width:52px;height:52px;border-radius:10px;border:2.5px solid transparent;position:relative;overflow:hidden;transition:border-color .15s}.board-theme-preview-kept{position:absolute;bottom:0;left:0;right:0;height:35%;border-top:1px solid}.dice-skin-login-notice{display:flex;align-items:center;justify-content:space-between;background:#f5f0eb;border-radius:8px;padding:10px 12px;margin-bottom:14px;font-size:.78rem;color:#666}.dice-skin-login-btn{background:#c41230;color:#fff;border:none;border-radius:6px;padding:5px 12px;font-size:.75rem;font-weight:600;cursor:pointer;flex-shrink:0;margin-left:8px}.dice-skin-item.locked{position:relative;opacity:.45;cursor:default}.dice-skin-lock{position:absolute;top:50%;left:50%;transform:translate(-50%,-70%);font-size:16px;pointer-events:none}.dice-skin-item.premium{position:relative}.dice-skin-item.premium .dice-skin-canvas,.dice-skin-item.premium .board-theme-preview{border-color:#c4123059}.dice-skin-premium{position:absolute;top:2px;right:-2px;font-size:8px;font-weight:800;color:#fff;background:linear-gradient(135deg,#c41230,#e85060);padding:2px 5px;border-radius:4px;pointer-events:none;letter-spacing:.5px;z-index:1;box-shadow:0 1px 3px #c412304d}.dice-skin-save-btn{display:block;width:calc(100% - 32px);margin:12px 16px 4px;padding:12px;border:none;border-radius:10px;background:#c41230;color:#fff;font-size:15px;font-weight:600;cursor:pointer}.dice-skin-save-btn:active{opacity:.85}.dice-skin-save-btn.disabled{background:#999}.dice-skin-premium-notice{margin:12px 16px 0;padding:10px 14px;background:#f5f0eb;border-radius:8px;font-size:13px;color:#666;text-align:center;line-height:1.5}
