*,:before,:after{box-sizing:border-box;margin:0;padding:0}input,select,textarea{font-size:16px}:root{--bg:#f1e9db;--sidebar-bg:#241610;--sidebar-hover:#342117;--sidebar-active:#4a2f1f;--card-bg:#faf6ec;--text:#2c2016;--text-secondary:#8a7663;--primary:#4a2f1f;--primary-light:#8b6b4f;--primary-dark:#33200f;--accent:#b0713a;--success:#4e8a5d;--danger:#c4554d;--warning:#d9a441;--border:#e3d6c3;--radius:14px;--radius-sm:10px;--shadow:0 2px 12px #3a261512;--shadow-lg:0 12px 40px #3a261529;--transition:.2s ease;--font-serif:var(--font-display),"Gowun Batang",Georgia,serif}body{background:radial-gradient(1100px 700px at 88% -10%,#f8f2e6 0%,transparent 55%),radial-gradient(900px 600px at -10% 100%,#ece1cd 0%,transparent 50%),var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;background-attachment:fixed;line-height:1.6}h1,h2,h3,.sidebar-logo,.auth-logo{font-family:var(--font-serif);letter-spacing:-.02em}.app-layout{min-height:100vh;display:flex}.sidebar{background:var(--sidebar-bg);color:#fff;z-index:100;flex-direction:column;width:240px;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-logo{letter-spacing:-.5px;border-bottom:1px solid #ffffff1a;align-items:center;gap:10px;padding:24px 20px;font-size:18px;font-weight:700;display:flex}.sidebar-logo span:first-child{font-size:28px}.nav-menu{flex:1;padding:12px 8px;list-style:none}.nav-item{border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);color:#fff;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;margin-bottom:2px;padding:12px 16px;font-size:14px;display:flex}.nav-item:hover{background:var(--sidebar-hover)}.nav-item.active{background:var(--sidebar-active);box-shadow:inset 3px 0 0 var(--accent);font-weight:600}.nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:24px;display:inline-flex}.nav-icon svg{display:block}.nav-label-mobile{display:none}.sidebar-footer{border-top:1px solid #ffffff1a;padding:16px}.main-content{flex:1;min-width:0;max-width:1200px;margin-left:240px;padding:32px;overflow-x:hidden}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px;display:flex}.page-header h1{letter-spacing:-.5px;font-size:28px;font-weight:700}.page-tabs{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;gap:4px;width:fit-content;margin-bottom:20px;padding:4px;display:flex}.page-tab{color:var(--text-secondary);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:7px;padding:8px 24px;font-size:14px;font-weight:600}.page-tab.active{background:var(--primary);color:#fff}@media (max-width:480px){.page-tabs{width:100%}.page-tab{flex:1;padding:8px 0}}.account-info{background:var(--card-bg);border-radius:var(--radius-sm);box-shadow:var(--shadow);align-items:center;gap:8px;padding:8px 16px;font-size:13px;display:flex}.account-label{color:var(--primary);font-weight:600}.account-copy-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;display:flex}.account-copy-btn:hover{background:var(--bg);color:var(--text)}.copy-icon{font-size:12px}.btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text);cursor:pointer;transition:var(--transition);align-items:center;gap:6px;padding:8px 18px;font-size:13px;font-weight:500;display:inline-flex}.btn:hover{background:var(--bg)}.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-primary:hover{background:var(--primary-dark)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover{opacity:.9}.btn-export{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;width:100%;transition:var(--transition);border:none;padding:12px;font-size:14px;font-weight:600}.btn-export:hover{opacity:.9}.btn-icon{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;width:36px;height:36px;transition:var(--transition);justify-content:center;align-items:center;font-size:16px;display:flex}.btn-icon:hover{background:var(--bg)}.btn-link{color:var(--primary-light);cursor:pointer;background:0 0;border:none;font-size:12px;text-decoration:underline}.balance-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px;display:grid}.card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.card-label{color:var(--text-secondary);margin-bottom:4px;font-size:13px;font-weight:500}.card-value{letter-spacing:-.5px;font-size:24px;font-weight:700}.card-total{border-left:4px solid var(--primary)}.card-orders{border-left:4px solid var(--accent)}.card-spent{border-left:4px solid var(--danger)}.calendar-section{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:32px;padding:24px}.calendar-header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.calendar-header h2{text-align:center;min-width:160px;font-size:20px;font-weight:600}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.calendar-day-header{text-align:center;color:var(--text-secondary);padding:8px 0;font-size:13px;font-weight:600}.calendar-day-header.weekend{color:var(--danger)}.calendar-cell{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;min-height:90px;transition:var(--transition);padding:6px 8px;position:relative}.calendar-cell:hover{border-color:var(--primary-light);background:#faf8f5}.calendar-cell.other-month{opacity:.3}.calendar-cell.today{border-color:var(--primary);background:#faf5f0}.calendar-cell.has-orders{background:#fef9f3}.cell-date{margin-bottom:4px;font-size:13px;font-weight:600}.calendar-cell.weekend .cell-date{color:var(--danger)}.cell-order-count{background:var(--primary);color:#fff;border-radius:10px;margin-top:2px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-block}.cell-total{color:var(--primary-dark);font-size:11px;font-weight:600;position:absolute;bottom:4px;right:6px}.quick-balances{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.quick-balances h3{margin-bottom:16px;font-size:16px;font-weight:600}.balance-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.balance-item{background:var(--bg);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:10px 14px;font-size:13px;display:flex}.balance-item .name{font-weight:500}.balance-item .amount{font-size:14px;font-weight:700}.balance-item .amount.negative{color:var(--danger)}.balance-item .amount.positive{color:var(--primary)}.members-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.member-card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.member-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.member-name{font-size:16px;font-weight:600}.member-actions{gap:4px;display:flex}.member-balance-label{color:var(--text-secondary);font-size:12px}.member-balance-row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.member-balance-value{font-size:22px;font-weight:700}.member-balance-value.negative{color:var(--danger)}.member-noti-btn{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:all .2s;display:flex}.member-noti-btn:hover{background:#fff3e0;border-color:#e67e22}.member-deposits{color:var(--text-secondary);border-top:1px solid var(--border);padding-top:10px;font-size:12px}.deposit-item{justify-content:space-between;align-items:center;padding:4px 0;font-size:12px;display:flex}.deposit-amount{color:var(--success);font-weight:600}.deposit-delete{color:var(--danger);cursor:pointer;background:0 0;border:none;font-size:12px}.member-deposit-btn{margin-top:10px}.shops-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.shop-card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;max-height:calc(100vh - 160px);display:flex;overflow:hidden}.shop-card-header{color:#fff;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.shop-card-header h3{font-size:16px}.shop-toggle-icon,.shop-menu-count{display:none}.shop-actions{gap:4px;display:flex}.shop-actions .btn-sm{background:var(--card-bg);border:1px solid var(--border);color:var(--text-secondary)}.shop-actions .btn-sm:hover{background:var(--bg);color:var(--text)}.shop-actions .btn-sm.text-danger{color:var(--danger)}.shop-actions .btn-sm.text-danger:hover{border-color:var(--danger);background:#c4554d14}.shop-menu-list{flex:1;min-height:0;padding:12px 20px;overflow-y:auto}.menu-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 0;font-size:14px;display:flex}.menu-item:last-of-type{border-bottom:none}.menu-item-name{font-weight:500}.menu-item-price{color:var(--primary);font-weight:600}.menu-item-actions{gap:4px;margin-left:8px;display:flex}.btn-add-menu{border:2px dashed var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;margin-top:8px;padding:10px;font-size:13px}.btn-add-menu:hover{border-color:var(--primary-light);color:var(--primary)}.shop-menu-add-actions{gap:8px;margin-top:8px;display:flex}.shop-menu-add-actions .btn-add-menu{margin-top:0}.btn-bulk-menu{white-space:nowrap;border-style:dashed;flex-shrink:0;width:auto;padding:10px 16px}.bulk-import-desc{color:var(--text-secondary);margin-bottom:12px;font-size:13px;line-height:1.6}.bulk-import-format{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;font-size:12px;display:flex}.bulk-import-format strong{color:var(--text-secondary);font-size:12px}.bulk-import-format code{background:var(--bg-secondary);color:var(--text-primary);border-radius:4px;padding:3px 8px;font-size:12px}.bulk-import-textarea{border:1px solid var(--border);border-radius:var(--radius-sm);resize:vertical;background:var(--bg-primary);width:100%;color:var(--text-primary);padding:12px;font-family:inherit;font-size:13px;line-height:1.6}.bulk-import-textarea:focus{border-color:var(--primary);outline:none}.bulk-import-preview{margin-top:12px}.bulk-import-preview>strong{margin-bottom:8px;font-size:13px;display:block}.bulk-import-list{border:1px solid var(--border);border-radius:var(--radius-sm);max-height:200px;overflow-y:auto}.bulk-import-item{border-bottom:1px solid var(--border);justify-content:space-between;padding:8px 12px;font-size:13px;display:flex}.bulk-import-item:last-child{border-bottom:none}.bulk-import-item.invalid{color:var(--danger);background:#e74c3c0d}.order-date-display{text-align:center;color:var(--primary);border-radius:var(--radius-sm);background:#faf5f0;margin-bottom:20px;padding:10px;font-size:16px;font-weight:600}.order-step h3{align-items:center;gap:8px;margin-bottom:12px;font-size:15px;font-weight:600;display:flex}.shop-selector{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.shop-select-btn{border:2px solid var(--border);border-radius:var(--radius);background:var(--card-bg);cursor:pointer;text-align:center;transition:var(--transition);padding:16px;font-size:14px;font-weight:600}.shop-select-btn:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.menu-search-input{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;transition:var(--transition);margin-bottom:12px;padding:10px 14px;font-size:16px}.menu-search-input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #5b4a3f1a}.menu-selector{grid-template-columns:repeat(3,1fr);gap:10px;max-height:330px;padding-right:4px;display:grid;overflow-y:auto}.menu-select-btn{border:2px solid var(--border);border-radius:var(--radius);background:var(--card-bg);cursor:pointer;text-align:center;transition:var(--transition);padding:14px}.menu-select-btn:hover{border-color:var(--primary-light);background:#faf5f0}.menu-btn-name{margin-bottom:4px;font-size:14px;font-weight:600}.menu-btn-price{color:var(--primary);font-size:13px;font-weight:500}.selected-menu-info{border-radius:var(--radius-sm);background:#faf5f0;justify-content:space-between;margin-bottom:12px;padding:10px 16px;font-size:14px;font-weight:500;display:flex}.member-selector{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.member-select-btn{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;text-align:center;transition:var(--transition);padding:12px;font-size:13px;font-weight:500}.member-select-btn:hover{border-color:var(--primary-light);background:#faf5f0}.member-btn-balance{color:var(--text-secondary);margin-top:2px;font-size:11px}.day-orders-section{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.day-orders-section h3{margin-bottom:12px;font-size:15px;font-weight:600}.day-order-item{background:var(--bg);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:6px;padding:8px 12px;font-size:13px;display:flex}.order-info{align-items:center;gap:12px;display:flex}.order-member{font-weight:600}.order-menu{color:var(--text-secondary)}.order-price{color:var(--primary);font-weight:600}.day-order-delete{color:var(--danger);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:16px}.order-member.clickable{cursor:pointer;text-underline-offset:2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.order-member.clickable:hover{color:var(--primary)}.extra-amount-row{background:var(--bg-secondary,#f5f5f5);border-radius:8px;flex-direction:column;gap:6px;margin:4px 0 8px;padding:8px 12px;display:flex}.extra-amount-label{color:var(--text-secondary);font-size:13px}.extra-amount-input-group{align-items:center;gap:6px;display:flex}.extra-amount-input{border:1px solid var(--border);border-radius:6px;flex:1;padding:6px 10px;font-size:16px}.btn-sm{padding:4px 12px;font-size:13px}.modal-overlay{z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--card-bg);border-radius:var(--radius);width:90%;max-width:480px;max-height:90vh;box-shadow:var(--shadow-lg);overflow-y:auto}.modal-large{max-width:640px}.modal-small{max-width:380px}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.modal-header h2{font-size:18px;font-weight:600}.btn-close{cursor:pointer;width:32px;height:32px;color:var(--text-secondary);transition:var(--transition);background:0 0;border:none;border-radius:50%;font-size:24px}.btn-close:hover{background:var(--bg)}.modal-body{padding:24px}.form-group{margin-bottom:16px}.form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-group input,.form-group select{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;transition:var(--transition);padding:10px 14px;font-size:16px}.form-group input:focus,.form-group select:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #5b4a3f1a}.form-group textarea{border:1px solid var(--border);border-radius:var(--radius-sm);resize:vertical;width:100%;transition:var(--transition);padding:10px 14px;font-family:inherit;font-size:16px}.form-group textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #5b4a3f1a}.member-email{color:var(--text-secondary);word-break:break-all;margin-top:2px;font-size:12px}.member-email-missing{opacity:.6}.btn-photo-extract{border:1px dashed var(--primary);border-radius:var(--radius-sm);background:var(--card-bg);width:100%;color:var(--primary);cursor:pointer;transition:var(--transition);margin-bottom:10px;padding:10px;font-size:14px;font-weight:600}.btn-photo-extract:hover{background:#5b4a3f0f}.btn-photo-extract:disabled{opacity:.6;cursor:default}.email-mode-options{flex-direction:column;gap:10px;display:flex}.email-option-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);text-align:left;cursor:pointer;transition:var(--transition);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.email-option-btn:hover{border-color:var(--primary);box-shadow:0 0 0 3px #5b4a3f1a}.email-option-btn strong{font-size:15px}.email-option-btn span{color:var(--text-secondary);font-size:13px}.form-group input[type=color]{cursor:pointer;height:42px;padding:4px}.form-group input[type=month],.form-group input[type=date]{appearance:none;width:100%;min-height:44px}.form-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.select-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;padding:8px 14px;font-size:16px}.table-wrap{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);overflow-x:auto}.table-wrap table{border-collapse:collapse;width:100%;font-size:13px}.table-wrap th{background:var(--bg);text-align:left;border-bottom:2px solid var(--border);white-space:nowrap;padding:10px 14px;font-weight:600}.table-wrap td{border-bottom:1px solid var(--border);padding:10px 14px}.summary-overview{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:24px;display:grid}.summary-member-card{background:var(--bg);border-radius:var(--radius-sm);padding:14px}.summary-member-name{margin-bottom:6px;font-size:14px;font-weight:600}.summary-member-detail{color:var(--text-secondary);font-size:12px;line-height:1.8}.summary-member-detail span{display:block}.summary-table-section{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:24px;padding:24px;overflow:hidden}.btn-download-report{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;padding:8px 14px;font-size:13px;font-weight:600;display:none}.summary-table-section h3{margin-bottom:16px;font-size:16px;font-weight:600}.summary-table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.summary-week-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:13px}.summary-week-table th{background:var(--bg);color:var(--primary);text-align:center;border:1px solid var(--border);padding:8px 12px;font-weight:600}.summary-week-table th:first-child{text-align:left;min-width:120px}.summary-week-table td{text-align:right;border:1px solid var(--border);padding:8px 12px}.summary-week-table td:first-child{text-align:left;font-weight:500}.toast{color:#fff;border-radius:var(--radius-sm);opacity:0;z-index:2000;pointer-events:none;background:#333;padding:12px 24px;font-size:14px;font-weight:500;transition:all .3s;position:fixed;bottom:32px;right:32px;transform:translateY(20px)}.toast.show{opacity:1;transform:translateY(0)}.hidden{display:none!important}.text-danger{color:var(--danger)}.empty-state{text-align:center;color:var(--text-secondary);padding:40px;font-size:14px}.history-filters{gap:8px;display:flex}.loading-screen{min-height:60vh;color:var(--text-secondary);justify-content:center;align-items:center;font-size:16px;display:flex}.auth-page{background:linear-gradient(#180e0747,#140c0673),#1f1309 url(/login-bg.jpg) 50%/cover no-repeat;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-page .coffee-loader p{color:#d9c9b5}.coffee-loader{flex-direction:column;align-items:center;gap:20px;display:flex}.coffee-loader p{color:var(--text-secondary);font-size:15px;font-weight:500}.coffee-cup{background:var(--primary);border:3px solid var(--primary-dark);border-radius:0 0 12px 12px;width:60px;height:50px;position:relative}.coffee-cup:after{content:"";border:3px solid var(--primary-dark);border-left:none;border-radius:0 8px 8px 0;width:12px;height:24px;position:absolute;top:8px;right:-16px}.coffee-liquid{background:#c67c4e;border-radius:0 0 9px 9px;animation:2s ease-in-out infinite coffeeFill;position:absolute;bottom:0;left:0;right:0}@keyframes coffeeFill{0%{height:0%}50%{height:85%}to{height:0%}}.coffee-steam{gap:6px;display:flex;position:absolute;top:-20px;left:50%;transform:translate(-50%)}.coffee-steam span{background:#96969666;border-radius:3px;width:3px;height:16px;animation:1.2s ease-in-out infinite steamRise;display:block}.coffee-steam span:nth-child(2){height:20px;animation-delay:.3s}.coffee-steam span:nth-child(3){animation-delay:.6s}@keyframes steamRise{0%{opacity:0;transform:translateY(0)scaleY(1)}50%{opacity:1;transform:translateY(-8px)scaleY(1.2)}to{opacity:0;transform:translateY(-18px)scaleY(.8)}}.auth-card{background:#f8f3e7;border:1px solid #fff0d624;border-radius:22px;width:100%;max-width:440px;padding:0;overflow:hidden;box-shadow:0 30px 80px #0a050280}.auth-card-body{padding:32px 40px 40px}.auth-banner{width:100%;position:relative}.auth-banner-slide{text-align:center;padding:32px 40px;animation:.5s bannerFadeIn}@keyframes bannerFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.auth-banner-text{color:#fff;letter-spacing:-.3px;font-size:17px;font-weight:700;line-height:1.4}.auth-banner-sub{color:#ffffffbf;margin-top:6px;font-size:13px}.auth-banner-dots{justify-content:center;gap:6px;padding:10px 0 0;display:flex;position:absolute;bottom:12px;left:0;right:0}.auth-banner-dot{cursor:pointer;background:#ffffff59;border:none;border-radius:50%;width:7px;height:7px;padding:0;transition:all .3s}.auth-banner-dot.active{background:#fff;transform:scale(1.3)}.auth-logo{text-align:center;color:var(--primary-dark);flex-direction:column;align-items:center;gap:14px;margin-bottom:20px;font-size:30px;font-weight:700;display:flex}.auth-logo-mark{border:2px solid var(--primary);outline-offset:5px;background:#fffdf6;border-radius:50%;outline:1px solid #4a2f1f59;justify-content:center;align-items:center;width:74px;height:74px;margin-top:6px;font-size:36px;display:flex}.auth-title{text-align:center;color:var(--primary);margin-bottom:24px;font-size:19px;font-weight:600}.auth-subtitle{text-align:center;color:var(--text-secondary);margin-top:-16px;margin-bottom:24px;font-size:13px}.auth-form .form-group{margin-bottom:16px}.auth-btn{letter-spacing:.02em;border-radius:12px;justify-content:center;width:100%;margin-top:8px;padding:14px;font-size:15px;font-weight:700}.auth-error{color:var(--danger);text-align:center;margin-bottom:8px;font-size:13px}.auth-forgot-btn{width:100%;color:var(--text-secondary);cursor:pointer;text-align:center;background:0 0;border:none;margin-top:12px;padding:4px;font-size:13px;display:block}.auth-forgot-btn:hover{color:var(--primary);text-decoration:underline}.otp-input{text-align:center;letter-spacing:8px;font-weight:700;padding:14px!important;font-size:24px!important}.auth-resend{text-align:center;margin-bottom:4px}.auth-resend-btn{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:13px}.auth-resend-btn:disabled{color:var(--text-secondary);cursor:default}.auth-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:16px;font-size:14px;line-height:1.5}.auth-switch{text-align:center;color:var(--text-secondary);flex-direction:column;align-items:stretch;gap:10px;margin-top:20px;font-size:13px;display:flex}.auth-switch button{border:1.5px solid var(--primary);width:100%;color:var(--primary);cursor:pointer;transition:var(--transition);background:0 0;border-radius:12px;padding:13px;font-size:15px;font-weight:700}.auth-switch button:hover{background:#4a2f1f0f}.auth-terms{background:var(--bg-secondary);border-radius:var(--radius-sm);flex-direction:column;gap:8px;margin-top:4px;padding:12px;display:flex}.auth-terms-item{color:var(--text-primary);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.auth-terms-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.auth-terms-item span{line-height:1.4}.auth-terms-all{border-top:1px solid var(--border);padding-top:8px;font-weight:600}.auth-terms-link{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;text-decoration:underline}.auth-terms-overlay{z-index:9999;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.auth-terms-modal{border-radius:var(--radius-md);z-index:10000;background:#fff;flex-direction:column;width:100%;max-width:500px;max-height:80vh;display:flex;position:relative;box-shadow:0 20px 60px #0000004d}.auth-terms-modal-header{border-radius:var(--radius-md)var(--radius-md)0 0;background:#fff;border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.auth-terms-modal-header h3{margin:0;font-size:16px;font-weight:700}.auth-terms-modal-header button{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;font-size:22px;line-height:1}.auth-terms-modal-body{color:#333;background:#fff;padding:20px;font-size:13px;line-height:1.7;overflow-y:auto}.auth-terms-modal-body h4{margin:16px 0 6px;font-size:14px;font-weight:700}.auth-terms-modal-body h4:first-child{margin-top:0}.auth-terms-modal-body p{color:var(--text-secondary);margin:0 0 8px}.auth-terms-modal-footer{border-radius:0 0 var(--radius-md)var(--radius-md);background:#fff;border-top:1px solid #e0e0e0;justify-content:flex-end;padding:12px 20px;display:flex}.auth-success{text-align:center;padding:20px 0}.auth-success h3{color:var(--primary);margin-bottom:8px;font-size:18px}.auth-success p{color:var(--text-secondary);margin-bottom:20px;font-size:14px}.auth-logout-btn{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;margin-top:16px;padding:10px;font-size:13px;display:block}.auth-logout-btn:hover{background:var(--bg);color:var(--danger)}.company-select-card{max-width:480px;padding:40px}.company-list{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.company-item{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;transition:var(--transition);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.company-item:hover{border-color:var(--primary);background:#faf5f0}.company-item-name{font-size:15px;font-weight:600}.company-item-role{color:var(--text-secondary);font-size:12px}.company-create-form{margin-top:12px}.sidebar-company{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:10px 16px;font-size:13px;display:flex}.company-name{color:#ffffffe6;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.company-code{color:#ffffff80;font-size:.85em;font-weight:400}.btn-switch-company{cursor:pointer;opacity:.6;transition:var(--transition);background:0 0;border:none;padding:2px;font-size:14px}.btn-switch-company:hover{opacity:1}.btn-logout{color:#ffffffb3;border-radius:var(--radius-sm);cursor:pointer;width:100%;transition:var(--transition);background:#ffffff1a;border:none;margin-top:8px;padding:10px;font-size:13px}.btn-logout:hover{color:#fff;background:#ffffff26}.nearby-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.nearby-container{background:var(--card-bg);border-radius:var(--radius);width:95%;max-width:800px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.nearby-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.nearby-header h2{font-size:18px;font-weight:600}.nearby-controls{border-bottom:1px solid var(--border);background:var(--bg);align-items:center;gap:12px;padding:10px 20px;display:flex}.nearby-count{color:var(--text-secondary);font-size:13px}.nearby-error{color:var(--danger);text-align:center;padding:12px 20px;font-size:13px}.nearby-body{flex:1;grid-template-columns:1fr 1fr;min-height:0;display:grid;overflow:hidden}.nearby-map{background:var(--bg);min-height:350px;position:relative}.nearby-map-loading{color:var(--text-secondary);justify-content:center;align-items:center;font-size:14px;display:flex;position:absolute;inset:0}.nearby-list{border-left:1px solid var(--border);max-height:350px;overflow-y:auto}.nearby-item{text-align:left;border:none;border-bottom:1px solid var(--border);background:var(--card-bg);cursor:pointer;width:100%;transition:var(--transition);padding:12px 16px;display:block}.nearby-item:hover{background:#faf8f5}.nearby-item.selected{border-left:3px solid var(--primary);background:#faf5f0}.nearby-item-name{margin-bottom:2px;font-size:14px;font-weight:600}.nearby-item-addr{color:var(--text-secondary);margin-bottom:2px;font-size:12px}.nearby-item-meta{color:var(--text-secondary);gap:8px;font-size:11px;display:flex}.nearby-footer{border-top:1px solid var(--border);background:var(--bg);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.nearby-selected-name{font-size:14px;font-weight:600}@media (max-width:640px){.nearby-container{border-radius:0;width:100%;height:100%;max-height:100vh}.nearby-body{grid-template-rows:200px 1fr;grid-template-columns:1fr}.nearby-map{min-height:200px}.nearby-list{border-left:none;border-top:1px solid var(--border);max-height:none}.nearby-footer{flex-direction:column;gap:8px}.nearby-footer .btn{width:100%}}@media (max-width:768px){.sidebar{width:60px}.sidebar .logo-text,.nav-item .nav-label{display:none}.sidebar-logo{justify-content:center;padding:16px 8px}.nav-item{justify-content:center;padding:12px}.sidebar-footer{padding:8px}.btn-export{display:none}.btn-download-report{display:inline-block}.main-content{margin-left:60px;padding:16px}.balance-cards{grid-template-columns:repeat(2,1fr)}.calendar-cell{min-height:60px;padding:4px}.cell-total{display:none}.calendar-header h2{min-width:130px;font-size:17px}}@media (max-width:480px){.sidebar{z-index:900;flex-direction:row;width:100%;height:56px;position:fixed;inset:auto 0 0;overflow:hidden}.sidebar-logo,.sidebar-footer,.sidebar-company{display:none}.nav-menu{flex-direction:row;justify-content:space-around;align-items:center;gap:0;width:100%;height:100%;padding:0;display:flex}.nav-menu li{flex:1}.nav-item{border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px 0}.nav-item .nav-label{display:none}.nav-item .nav-label-mobile{white-space:nowrap;font-size:9px;display:block}.nav-icon{width:auto;font-size:18px}.main-content{margin-left:0;padding:16px 12px 72px}.page-header{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:16px}.page-header h1{font-size:22px}.account-info{width:100%;font-size:12px}.balance-cards{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:16px}.card{padding:14px}.card-value{font-size:18px}.card-label{font-size:11px}.calendar-section{margin-bottom:16px;padding:12px}.calendar-header{gap:6px;margin-bottom:12px}.calendar-header h2{min-width:auto;font-size:16px}.btn-icon{width:30px;height:30px;font-size:14px}.calendar-day-header{padding:4px 0;font-size:11px}.calendar-cell{min-height:48px;padding:3px}.cell-date{margin-bottom:2px;font-size:11px}.cell-order-count{padding:0 4px;font-size:8px}.cell-total{display:none}.quick-balances{padding:16px}.balance-list{grid-template-columns:1fr;gap:6px}.balance-item{padding:8px 10px;font-size:12px}.members-grid{grid-template-columns:1fr;gap:12px}.member-card{padding:16px}.member-balance-value{font-size:18px}.shops-grid{grid-template-columns:1fr;gap:12px}.shop-collapsed .shop-menu-list{display:none}.shop-card-header{cursor:pointer}.shop-toggle-icon{opacity:.8;margin-left:6px;font-size:10px}.shop-menu-count{opacity:.8;margin-left:8px;font-size:11px;font-weight:400;display:inline-block}.shop-card{max-height:none}.menu-item{gap:4px;font-size:12px}.menu-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.menu-item-price{white-space:nowrap;font-size:12px}.menu-item-actions{margin-left:4px}.menu-item-actions .btn-sm{padding:2px 6px;font-size:11px}.history-filters{flex-wrap:wrap}.table-wrap{font-size:11px}.table-wrap th,.table-wrap td{white-space:nowrap;padding:6px}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.summary-table-section{padding:0;overflow:hidden}.summary-table-section h3{margin-bottom:0;padding:12px 12px 8px;font-size:14px}.summary-table-scroll{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.summary-week-table{width:max-content;min-width:0;font-size:11px}.summary-week-table th,.summary-week-table td{min-width:58px;padding:6px 8px}.summary-week-table th:first-child,.summary-week-table td:first-child{z-index:2;min-width:90px;font-size:11px;position:sticky;left:0}.summary-week-table th:first-child{background:#e8e2f0}.summary-week-table td:first-child{background:var(--card-bg);box-shadow:2px 0 4px #0000000d}.summary-week-table tr:hover td:first-child{background:#faf8f5}.modal-content{width:95%;max-height:85vh}.modal-header{padding:12px 16px}.modal-body{padding:16px}.shop-selector{grid-template-columns:repeat(2,1fr);gap:8px}.menu-selector{grid-template-columns:repeat(2,1fr);gap:8px;max-height:280px}.member-selector{grid-template-columns:repeat(2,1fr);gap:6px}.toast{text-align:center;font-size:13px;bottom:72px;left:12px;right:12px}}.notification-warning{color:#856404;border-radius:var(--radius-sm);background:#fff3cd;margin-bottom:16px;padding:12px 16px;font-size:14px}.notification-card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.notification-row{justify-content:space-between;align-items:center;padding:12px 0;display:flex}.notification-row p.notification-desc{color:var(--text-secondary);margin-top:4px;font-size:13px}.notification-divider{border:none;border-top:1px solid var(--border);margin:4px 0}.toggle-btn{cursor:pointer;width:48px;height:28px;transition:background var(--transition);background:#ccc;border:none;border-radius:14px;flex-shrink:0;margin-left:16px;position:relative}.toggle-btn.active{background:var(--primary)}.toggle-btn:disabled{opacity:.5;cursor:not-allowed}.toggle-knob{width:22px;height:22px;transition:transform var(--transition);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle-btn.active .toggle-knob{transform:translate(20px)}.threshold-row{padding-left:8px}.threshold-row label{color:var(--text-secondary);align-items:center;gap:8px;font-size:14px;display:flex}.threshold-input{border:1px solid var(--border);border-radius:var(--radius-sm);text-align:right;width:100px;padding:6px 10px;font-size:16px}.threshold-unit{color:var(--text-secondary);font-size:13px}.settings-page{flex-direction:column;height:100%;display:flex}.settings-tabs{background:var(--card-bg);border-bottom:1px solid var(--border);display:flex}.settings-tab{color:var(--text-secondary);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:12px 0;font-size:14px;font-weight:500}.settings-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.mobile-only-tab{display:none}@media (max-width:480px){.mobile-only-tab{display:block}}.settings-body{flex:1;padding:16px;overflow-y:auto}.settings-section{flex-direction:column;gap:12px;display:flex}.settings-desc{color:var(--text-secondary);margin-bottom:4px;font-size:14px}.btn-settings-action{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--card-bg);cursor:pointer;transition:background var(--transition);text-align:left;padding:12px 16px;font-size:14px;font-weight:500}.btn-settings-action:hover{background:var(--bg)}.btn-settings-action.danger{color:var(--danger);border-color:var(--danger)}.btn-settings-action.danger:hover{background:#fff5f5}.language-selector{gap:12px;display:flex}.language-btn{border-radius:var(--radius);border:2px solid var(--border);background:var(--card-bg);cursor:pointer;transition:all var(--transition);flex:1;align-items:center;gap:10px;padding:14px 24px;font-size:15px;font-weight:500;display:flex}.language-btn:hover{border-color:var(--primary-light);background:var(--bg)}.language-btn.active{border-color:var(--primary);background:var(--primary);color:#fff}.language-flag{font-size:22px}@media (max-width:480px){.language-selector{flex-direction:column}}.company-info-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:16px}.company-info-row{justify-content:space-between;align-items:center;padding:12px 0;display:flex}.company-info-row+.company-info-row{border-top:1px solid var(--border)}.company-info-label{color:var(--text-secondary);font-size:14px}.company-info-value{color:var(--text-primary);font-size:16px;font-weight:600}.company-info-code{letter-spacing:2px;font-family:monospace}.role-management-list{flex-direction:column;gap:8px;display:flex}.role-management-item{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.role-member-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.role-member-name-row{align-items:center;gap:6px;display:flex}.role-member-name{color:var(--text);font-size:14px;font-weight:600}.role-edit-name-btn{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.role-edit-name-btn:hover{text-decoration:underline}.role-name-edit{align-items:center;gap:6px;width:100%;display:flex}.role-name-input{border:1px solid var(--border);border-radius:var(--radius-sm);flex:1;padding:4px 8px;font-size:16px}.role-member-email{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.role-member-me{color:var(--primary);flex-shrink:0;font-size:11px}.role-member-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.role-select{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:#fff;padding:6px 10px;font-size:16px}.role-select:disabled{opacity:.5;cursor:not-allowed}.role-remove-btn{border:1px solid var(--danger);color:var(--danger);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:16px;line-height:1;transition:all .2s;display:flex}.role-remove-btn:hover{background:var(--danger);color:#fff}.manual-noti-form{flex-direction:column;gap:12px;display:flex}.manual-noti-form textarea{resize:vertical;border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:60px;padding:10px 12px;font-family:inherit;font-size:16px}.btn,.btn-primary,.btn-export,.btn-icon,.btn-photo-extract,.member-noti-btn,.page-tab{transition:transform .15s,box-shadow .15s,background .15s,border-color .15s,color .15s}.btn:hover,.btn-icon:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3a26151a}.btn:active,.btn-icon:active,.btn-primary:active,.btn-export:active{box-shadow:none;transform:translateY(0)scale(.98)}.btn-primary{background:linear-gradient(180deg,#5a3a24 0%,var(--primary)100%);border-color:#0000;box-shadow:0 2px 8px #33200f38}.btn-primary:hover{background:linear-gradient(180deg,#4f331f 0%,var(--primary-dark)100%);transform:translateY(-1px);box-shadow:0 6px 16px #33200f47}.btn-export{background:linear-gradient(180deg,#bd7f45 0%,var(--accent)100%);box-shadow:0 2px 8px #b0713a4d}.btn-export:hover{opacity:1;transform:translateY(-1px);box-shadow:0 6px 16px #b0713a59}.card,.member-card,.shop-card,.notification-card,.summary-member-card{border:1px solid var(--border);transition:transform .2s,box-shadow .2s}.card:hover,.member-card:hover,.shop-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-members{border-left:4px solid var(--primary-light)}.card-value{font-variant-numeric:tabular-nums}.modal-overlay{-webkit-backdrop-filter:blur(6px);background:#180e0773;animation:.18s overlayFadeIn}.modal-content{border:1px solid var(--border);border-radius:18px;animation:.28s cubic-bezier(.34,1.3,.64,1) modalSpringIn}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSpringIn{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.form-group input,.form-group select,.form-group textarea,.select-input,.threshold-input,.bulk-import-textarea{background:#fffdf7}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.select-input:focus,.threshold-input:focus,.bulk-import-textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #b0713a29}.table-wrap th{letter-spacing:.04em;color:var(--text-secondary);border-bottom:1px solid var(--border);background:#f2ead9;font-size:12px}.table-wrap tr:hover td{background:#f5efe2}.table-wrap tr:last-child td{border-bottom:none}.toast{-webkit-backdrop-filter:blur(8px);background:#29190deb;border:1px solid #ffecd21f;border-radius:999px;padding:12px 26px;box-shadow:0 12px 32px #180e0659}.nav-item{border-radius:10px;transition:background .15s,transform .15s}.nav-item:hover{transform:translate(2px)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{border:2px solid var(--bg);background:#d3c1a6;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#c1ab8b}::-webkit-scrollbar-track{background:0 0}::selection{background:#b0713a47}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.main-content>*{animation:.3s both pageFadeIn}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.auth-page{flex-direction:column;gap:22px}.auth-tagline{text-align:center;color:var(--primary-light);margin:-6px 0 26px;font-size:14px}.auth-input{align-items:center;margin-bottom:14px;display:flex;position:relative}.auth-input-icon{color:#a08a71;pointer-events:none;position:absolute;left:15px}.auth-input input{border:1px solid var(--border);width:100%;transition:var(--transition);background:#fffdf7;border-radius:12px;padding:13px 46px 13px 44px}.auth-input input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #b0713a29}.auth-eye{color:#a08a71;cursor:pointer;width:34px;height:34px;transition:var(--transition);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;right:8px}.auth-eye:hover{color:var(--primary);background:#4a2f1f0f}.auth-row{color:var(--text-secondary);justify-content:space-between;align-items:center;margin:4px 0 10px;font-size:13px;display:flex}.auth-remember{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:7px;display:flex}.auth-remember input{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.auth-find-pw{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:4px;font-size:13px}.auth-find-pw:hover{color:var(--primary);text-decoration:underline}.auth-divider{color:var(--text-secondary);align-items:center;gap:14px;margin:20px 0 16px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-outline-btn{border:1.5px solid var(--primary);width:100%;color:var(--primary);cursor:pointer;transition:var(--transition);background:0 0;border-radius:12px;padding:13px;font-size:15px;font-weight:700}.auth-outline-btn:hover{background:#4a2f1f0f}.auth-copyright{color:#e8d8c28c;text-align:center;font-size:12.5px}.auth-switch{display:block}.auth-switch button{width:auto;color:var(--primary);cursor:pointer;background:0 0;border:none;border-radius:0;padding:0 2px;font-size:13px;font-weight:700}.auth-switch button:hover{background:0 0;text-decoration:underline}.page-subtitle{color:var(--text-secondary);margin-top:2px;font-size:13.5px}.shop-card-top{align-items:center;gap:12px;padding:18px 18px 12px;display:flex}.shop-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:21px;display:flex;box-shadow:0 4px 10px #3a26152e}.shop-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:17px;font-weight:700;overflow:hidden}.shop-count-badge{background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;flex-shrink:0;padding:2px 10px;font-size:12px;font-weight:700}.shop-card-body{flex-direction:column;flex:1;min-height:0;padding:0 18px 18px;display:flex}.shop-card-body>*{flex-shrink:0}.shop-card-body .shop-menu-list{flex:auto;min-height:60px}.menu-search{margin-bottom:10px;position:relative}.menu-search input{border:1px solid var(--border);width:100%;transition:var(--transition);background:#fffdf7;border-radius:10px;padding:9px 38px 9px 14px;font-size:14px}.menu-search input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #b0713a24}.menu-search svg{color:#a08a71;pointer-events:none;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.menu-chips{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.menu-chip{border:1px solid var(--border);background:var(--card-bg);color:var(--text-secondary);cursor:pointer;transition:var(--transition);border-radius:999px;padding:5px 13px;font-size:12.5px;font-weight:600}.menu-chip:hover{border-color:var(--primary-light);color:var(--primary)}.menu-chip.active{color:#fff}.menu-row{border-bottom:1px solid #efe6d5;align-items:center;gap:12px;padding:9px 2px;display:flex}.menu-row:last-child{border-bottom:none}.menu-thumb{background:var(--bg);border:1px solid var(--border);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;display:flex}.menu-info{flex-direction:column;flex:1;min-width:0;line-height:1.35;display:flex}.menu-name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.menu-price{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:12.5px}.menu-row-actions{flex-shrink:0;gap:6px;display:flex}.menu-icon-btn{cursor:pointer;width:30px;height:30px;transition:var(--transition);border-radius:8px;justify-content:center;align-items:center;display:flex}.menu-icon-btn.edit{color:var(--primary);background:#4a2f1f0f;border:1px solid #4a2f1f2e}.menu-icon-btn.edit:hover{background:#4a2f1f1f}.menu-icon-btn.del{color:var(--danger);background:#c4554d12;border:1px solid #c4554d40}.menu-icon-btn.del:hover{background:#c4554d24}.shop-menu-add-actions{flex-direction:column;gap:8px;margin-top:14px;display:flex}.menu-add-dashed{cursor:pointer;width:100%;transition:var(--transition);background:0 0;border:1.5px dashed;border-radius:12px;padding:11px;font-size:14px;font-weight:700}.menu-add-dashed:hover{filter:brightness(.85);background:#00000008}.menu-bulk-outline{border:1px solid var(--border);background:var(--card-bg);width:100%;color:var(--text-secondary);cursor:pointer;transition:var(--transition);border-radius:12px;padding:11px;font-size:14px;font-weight:600}.menu-bulk-outline:hover{border-color:var(--primary-light);color:var(--primary)}.shops-stats{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:24px;display:grid}.stat-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.stat-label{color:var(--text-secondary);font-size:13px;font-weight:500}.stat-value{font-variant-numeric:tabular-nums;letter-spacing:-.5px;font-size:26px;font-weight:700}.stat-unit{color:var(--text-secondary);margin-left:3px;font-size:13px;font-weight:500}.stat-icon{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;font-size:20px;display:flex;box-shadow:0 4px 12px #3a26152e}.shop-collapsed .shop-card-body{display:none}.auth-logo-img{mix-blend-mode:multiply;width:82%;max-width:330px;margin:4px auto 20px;display:block}.shop-menu-list{overscroll-behavior:contain;max-height:340px;margin-right:-6px;padding-right:6px;overflow-y:auto}.shop-menu-list::-webkit-scrollbar{width:6px}.shop-menu-list::-webkit-scrollbar-thumb{background:#d9c9ae;border-radius:999px}@media (max-width:480px){.shop-menu-list{max-height:300px}}.member-card .member-name{font-size:17px;font-weight:700}.member-card .member-email{margin-top:1px}.member-balance-label{color:var(--text-secondary);margin-top:10px;font-size:12.5px}.member-balance-value{letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:28px;font-weight:700}.member-noti-btn{border:1px solid var(--border);background:var(--bg);cursor:pointer;width:36px;height:36px;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;margin-left:8px;font-size:15px;display:flex}.member-noti-btn:hover{border-color:var(--primary-light);transform:translateY(-1px);box-shadow:0 4px 10px #3a26151f}.member-noti-btn:disabled{opacity:.55;cursor:default}.member-deposits{border-top:1px solid #efe6d5;margin-top:14px;padding-top:12px}.member-deposits>strong{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.deposit-list{overscroll-behavior:contain;max-height:170px;margin-right:-6px;padding-right:6px;overflow-y:auto}.deposit-list::-webkit-scrollbar{width:6px}.deposit-list::-webkit-scrollbar-thumb{background:#d9c9ae;border-radius:999px}.deposit-item{border-bottom:1px solid #f2ead9;align-items:center;gap:8px;padding:7px 2px;font-size:13px;display:flex}.deposit-item:last-child{border-bottom:none}.deposit-item>span:first-child{color:var(--text-secondary);flex:1}.deposit-amount{color:var(--success);font-variant-numeric:tabular-nums;font-weight:700}.deposit-delete{color:#b8a68d;cursor:pointer;width:22px;height:22px;transition:var(--transition);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:15px;display:flex}.deposit-delete:hover{color:var(--danger);background:#c4554d14}.member-deposit-btn{width:100%;color:var(--success);box-shadow:none;background:#4e8a5d14;border:1px solid #4e8a5d59;border-radius:12px;justify-content:center;margin-top:12px;padding:11px;font-size:14px;font-weight:700}.member-deposit-btn:hover{border-color:var(--success);box-shadow:none;background:#4e8a5d26;transform:none}.page-header-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.role-embedded .settings-desc{margin-bottom:14px}.role-embedded .role-management-list{max-height:58vh;padding-right:2px;overflow-y:auto}.photo-hint{color:var(--text-secondary);margin:-4px 0 12px;font-size:12px;line-height:1.5}.charge-pending-section{background:var(--card-bg);border:1px solid var(--accent);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px;padding:16px 20px}.charge-pending-title{color:var(--accent);margin-bottom:10px;font-size:16px}.charge-pending-list{flex-direction:column;gap:8px;display:flex}.charge-pending-item{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.charge-pending-info{flex-wrap:wrap;align-items:baseline;gap:10px;min-width:0;display:flex}.charge-pending-amount{color:var(--primary);font-weight:700}.charge-pending-meta{color:var(--text-secondary);font-size:12px}.charge-pending-actions{flex-shrink:0;gap:6px;display:flex}.charge-reject-btn{color:var(--danger)}.charge-reject-btn:hover{border-color:var(--danger);background:#c4554d14}.charge-account-box{background:var(--bg);border:1px dashed var(--accent);border-radius:var(--radius-sm);align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;display:flex}.charge-account-label{color:var(--text-secondary);flex-shrink:0;font-size:12px}.charge-account-value{cursor:pointer;color:var(--primary);background:0 0;border:none;padding:0;font-size:14px;font-weight:600}.charge-fixed-member{background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;padding:10px 14px;font-size:14px;font-weight:600}.charge-status{border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:11px;font-weight:700}.charge-status-pending{color:var(--accent);background:#b0713a24}.charge-status-approved{color:var(--success);background:#4e8a5d24}.charge-status-rejected,.charge-status-canceled{color:var(--danger);background:#c4554d1f}.charge-no-account{border:1px dashed var(--danger);border-radius:var(--radius-sm);color:var(--danger);background:#c4554d14;margin-bottom:16px;padding:10px 14px;font-size:13px}.nav-badge{background:var(--danger);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.charge-toss-btn{text-align:center;border-radius:var(--radius-sm);color:#fff;background:#0064ff;width:100%;margin-bottom:16px;padding:11px;font-size:14px;font-weight:700;text-decoration:none;display:block}.bank-grid{grid-template-columns:repeat(4,1fr);gap:8px;max-height:46vh;display:grid;overflow-y:auto}.bank-option{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;transition:var(--transition);flex-direction:column;align-items:center;gap:6px;padding:10px 4px;display:flex}.bank-option:hover{background:var(--bg);border-color:var(--primary-light)}.bank-circle{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:12px;font-weight:700;display:inline-flex}.bank-circle-dark{color:#3d2b1f}.bank-name{color:var(--text-secondary);white-space:nowrap;font-size:11px}.bank-selected-row{align-items:center;gap:10px;margin-bottom:14px;display:flex}.bank-chip{background:var(--primary);color:#fff;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600}.bank-reselect{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;font-size:12px;text-decoration:underline}@media (max-width:600px){.bank-grid{grid-template-columns:repeat(3,1fr)}}.btn-export,.btn-logout,.btn-switch-company{justify-content:center;align-items:center;gap:7px;display:inline-flex}.member-noti-btn,.stat-icon,.shop-avatar,.copy-icon,.sidebar-logo-icon{justify-content:center;align-items:center;display:inline-flex}.btn-photo-extract{justify-content:center;align-items:center;gap:7px;display:inline-flex}.shop-avatar svg,.stat-icon svg{color:#fff}.deposit-note{color:var(--accent);background:#b0713a24;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:600}.deposit-amount.negative{color:var(--danger)}.deleted-members-section{margin-top:24px}.deleted-members-toggle{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:4px 0;font-size:13px}.deleted-members-list{flex-direction:column;gap:6px;margin-top:8px;display:flex}.deleted-member-item{background:var(--card-bg);border:1px dashed var(--border);border-radius:var(--radius-sm);opacity:.85;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.deleted-member-info{align-items:baseline;gap:10px;display:flex}.settle-desc{color:var(--text);margin-bottom:14px;font-size:14px;line-height:1.6}.settle-options{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.settle-option{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.settle-option.active{border-color:var(--accent);background:#b0713a0f}.settle-option input{margin-top:3px}.settle-option strong{margin-bottom:3px;font-size:14px;display:block}.settle-option span{color:var(--text-secondary);font-size:12px;line-height:1.5}.charge-reject-btn-solid{background:var(--danger);border-color:var(--danger)}.games-entry-card{border:1px solid var(--border);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);cursor:pointer;text-align:left;transition:var(--transition);background:linear-gradient(135deg,#fbf5e8,#f3e6d2);justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:14px 18px;display:flex}.games-entry-card:hover{transform:translateY(-1px);box-shadow:0 6px 18px #3a26151f}.games-entry-text{flex-direction:column;gap:3px;min-width:0;display:flex}.games-entry-text strong{font-family:var(--font-display),serif;color:var(--primary);font-size:17px}.games-entry-text span{color:var(--text-secondary);font-size:12px}.games-entry-icons{color:var(--accent);flex-shrink:0;gap:6px;display:flex}.games-entry-icons span{background:#b0713a1f;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.games-entry-icons svg{width:20px;height:20px}.games-setup{flex-direction:column;gap:18px;display:flex}.games-section{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px}.games-section-title{margin-bottom:12px;font-size:15px}.games-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.game-card{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;text-align:center;color:var(--text);transition:var(--transition);flex-direction:column;align-items:center;gap:6px;padding:14px 8px;display:flex}.game-card:hover{border-color:var(--primary-light)}.game-card.active{border-color:var(--accent);background:#b0713a14}.game-card-icon{background:var(--card-bg);width:48px;height:48px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.game-card-name{font-size:14px;font-weight:700}.game-card-desc{color:var(--text-secondary);font-size:11px;line-height:1.4}.games-options{flex-direction:column;gap:10px;display:flex}.games-options-row{flex-direction:row;justify-content:space-between;align-items:center}.games-segment{border:1px solid var(--border);border-radius:999px;display:inline-flex;overflow:hidden}.games-segment button{background:var(--card-bg);cursor:pointer;color:var(--text-secondary);border:none;padding:6px 16px;font-weight:600}.games-segment button.active{background:var(--primary);color:#fff}.games-note{color:var(--text-secondary);font-size:12px}.gl-outcomes-edit{flex-wrap:wrap;gap:6px;display:flex}.gl-outcomes-edit input{text-align:center;border:1px solid var(--border);border-radius:8px;width:92px;padding:6px 8px;font-size:13px}.gl-outcomes-edit input.is-win{border-color:var(--danger);color:var(--danger);font-weight:700}.games-start{justify-content:flex-end;align-items:center;gap:12px;display:flex}.games-start .games-note{text-align:right;flex:1;min-width:0}.games-start-btn{white-space:nowrap;flex-shrink:0;padding:12px 36px;font-size:15px}@media (max-width:600px){.games-start{flex-direction:column;align-items:stretch;gap:8px}.games-start .games-note{text-align:left}.games-start-btn{width:100%}}.gp-picker-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.gp-count{color:var(--text-secondary);font-size:13px;font-weight:600}.gp-picker-actions{gap:6px;display:flex}.gp-chips{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.gp-chip{cursor:pointer;border:1px solid var(--border);background:var(--card-bg);color:var(--text-secondary);transition:var(--transition);border-radius:999px;padding:6px 12px;font-size:13px}.gp-chip.active{background:var(--primary);border-color:var(--primary);color:#fff}.gp-chip.guest{background:var(--accent);border-color:var(--accent)}.gp-guest-row{gap:6px;display:flex}.gp-guest-row input{border:1px solid var(--border);border-radius:8px;flex:1;padding:7px 10px;font-size:13px}.games-play{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);justify-content:center;align-items:center;min-height:420px;padding:20px;display:flex}.gw-wrap{flex-direction:column;align-items:center;gap:18px;display:flex;position:relative}.gw-pointer{z-index:2;border-left:12px solid #0000;border-right:12px solid #0000;border-top:22px solid var(--primary-dark);filter:drop-shadow(0 2px 2px #00000040);width:0;height:0;margin-bottom:-14px}.gw-svg{border-radius:50%;width:min(320px,82vw);height:auto;box-shadow:0 8px 24px #3a26152e}.gw-spin{padding:12px 40px;font-size:16px}.gl-wrap{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.gl-hint{color:var(--text-secondary);font-size:12px}.gl-scroll{max-width:100%;overflow-x:auto}.gl-svg{display:block}.gl-path{stroke-dasharray:1;stroke-dashoffset:1px;animation:1.1s ease-out forwards gl-draw}@keyframes gl-draw{to{stroke-dashoffset:0}}.gl-actions{gap:8px;display:flex}.gb-wrap{flex-direction:column;align-items:center;gap:14px;width:100%;display:flex}.gb-turn{min-height:44px;font-size:20px;font-family:var(--font-display),serif;color:var(--primary);transition:var(--transition);align-items:center;gap:8px;display:flex}.gb-turn-label{color:var(--text-secondary);font-family:inherit;font-size:13px}.gb-turn.flash-safe{color:var(--success)}.gb-turn.flash-bomb{color:var(--danger);font-size:26px;animation:.5s gb-shake}@keyframes gb-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.gb-hint{color:var(--text-secondary);font-size:12px}.gb-grid{grid-template-columns:repeat(4,1fr);gap:10px;width:min(360px,100%);display:grid}.gb-cup{aspect-ratio:1;cursor:pointer;perspective:500px;background:0 0;border:none;padding:0}.gb-cup:disabled{cursor:default}.gb-cup-face{backface-visibility:hidden;border-radius:12px;justify-content:center;align-items:center;font-size:18px;font-weight:700;transition:transform .5s;display:flex;position:absolute;inset:0}.gb-cup{position:relative}.gb-cup-front{background:var(--primary);color:#fff;box-shadow:0 4px 10px #3a261533}.gb-cup-back{background:var(--bg);color:var(--success);border:2px solid var(--success);transform:rotateY(180deg)}.gb-cup.is-safe .gb-cup-front,.gb-cup.is-bomb .gb-cup-front{transform:rotateY(180deg)}.gb-cup.is-safe .gb-cup-back,.gb-cup.is-bomb .gb-cup-back{transform:rotateY(0)}.gb-cup.is-bomb .gb-cup-back{color:#fff;background:var(--danger);border-color:var(--danger);animation:.5s gb-shake}.gb-order{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.gb-order-item{background:var(--bg);color:var(--text-secondary);border-radius:999px;padding:3px 10px;font-size:12px}.gb-order-item.active{background:var(--primary);color:#fff;font-weight:700}.gb-order-item.hit{background:var(--danger);color:#fff;text-decoration:line-through}.gt-wrap{flex-direction:column;align-items:center;gap:14px;width:100%;display:flex}.gt-shuffle{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.gt-card{background:var(--primary);color:#fff;border-radius:10px;padding:8px 14px;font-weight:600;animation:.8s ease-in-out infinite alternate gt-bounce}@keyframes gt-bounce{0%{transform:translateY(-6px)rotate(-3deg)}to{transform:translateY(6px)rotate(3deg)}}.gt-land{animation:.5s ease-out both gt-landing}@keyframes gt-landing{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:none}}.gr-wrap{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;align-items:center;gap:14px;padding:32px 24px;animation:.4s ease-out gt-landing;display:flex}.gr-label{color:var(--text-secondary);letter-spacing:1px;font-size:13px}.gr-winners{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.gr-winner{font-family:var(--font-display),serif;color:var(--danger);border:2px solid var(--danger);background:#c4554d0f;border-radius:999px;padding:6px 22px;font-size:34px}.gr-detail{color:var(--text-secondary);text-align:center;font-size:12px;line-height:1.6}.gr-teams{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;width:100%;display:grid}.gr-team{border-radius:var(--radius-sm);background:var(--bg);border-top:4px solid var(--accent);padding:12px}.gr-team-0{border-top-color:#b0713a}.gr-team-1{border-top-color:#4e8a5d}.gr-team-2{border-top-color:#5b7fa6}.gr-team-3{border-top-color:#c4554d}.gr-team-name{margin-bottom:6px;font-weight:700}.gr-team-member{border-bottom:1px dashed var(--border);padding:3px 0;font-size:13px}.gr-team-member:last-child{border-bottom:none}.gr-actions{gap:8px;margin-top:6px;display:flex}.gr-order-btn{border-color:var(--accent);color:var(--accent)}.gr-fair{color:var(--text-secondary);opacity:.7;font-family:monospace;font-size:11px}@media (max-width:600px){.games-grid{grid-template-columns:repeat(2,1fr)}.games-play{min-height:380px;padding:14px}.gr-winner{font-size:26px}.games-entry-icons span{width:30px;height:30px}}.grx-wrap{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.grx-progress{color:var(--text-secondary);font-size:12px}.grx-pad{border-radius:var(--radius);cursor:pointer;color:#fff;-webkit-user-select:none;user-select:none;touch-action:manipulation;border:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;width:100%;min-height:300px;transition:background .15s;display:flex}.grx-pad.is-ready{background:var(--primary)}.grx-pad.is-waiting{background:var(--danger)}.grx-pad.is-go{background:var(--success)}.grx-pad.is-flash{background:var(--primary-light)}.grx-name{font-family:var(--font-display),serif;font-size:26px}.grx-text{opacity:.9;font-size:15px}.grx-go{font-family:var(--font-display),serif;letter-spacing:2px;font-size:44px}.grx-result{font-size:30px;font-weight:700}.games-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.games-stats-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.games-stats-head .games-section-title{margin-bottom:0}.games-ranking{flex-direction:column;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.games-ranking li{background:var(--bg);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:flex}.games-ranking li.top{background:#c4554d14;border:1px solid #c4554d4d}.games-rank{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.games-ranking li.top .games-rank{background:var(--danger)}.games-rank-name{flex:1;font-weight:600}.games-rank-count{color:var(--text-secondary);font-size:13px}.games-mode{grid-template-columns:1fr 1fr;gap:8px;display:grid}.games-mode-btn{text-align:left;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;color:var(--text);flex-direction:column;gap:3px;padding:12px 14px;display:flex}.games-mode-btn.active{border-color:var(--accent);background:#b0713a14}.games-mode-btn strong{font-size:14px}.games-mode-btn span{color:var(--text-secondary);font-size:11px}.room-banners{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.room-banner{text-align:left;border:1px solid var(--accent);border-radius:var(--radius);cursor:pointer;width:100%;color:var(--text);background:#b0713a14;align-items:center;gap:12px;padding:12px 16px;display:flex}.room-banner.playing{border-color:var(--success);background:#4e8a5d14}.room-banner:disabled{opacity:.7;cursor:default}.room-banner-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:1.4s ease-in-out infinite room-pulse}.room-banner.playing .room-banner-dot{background:var(--success)}@keyframes room-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}}.room-banner-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.room-banner-text strong{font-size:14px}.room-banner-text span{color:var(--text-secondary);font-size:12px}.room-banner-cta{color:var(--accent);flex-shrink:0;font-size:13px;font-weight:700}.room-banner.playing .room-banner-cta{color:var(--success)}.gp-chip-x{color:inherit;cursor:pointer;background:0 0;border:none;margin-left:6px;padding:0;font-size:14px}.gb-circle{max-width:100%;margin:6px auto;position:relative}.gb-seat{flex-direction:column;align-items:center;gap:4px;width:72px;display:flex;position:absolute;transform:translate(-50%,-50%)}.gb-avatar{color:#fff;border:3px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;font-size:14px;font-weight:700;transition:transform .2s,border-color .2s;display:inline-flex}.gb-seat.holder .gb-avatar{border-color:var(--danger);transform:scale(1.12);box-shadow:0 0 0 6px #c4554d2e}.gb-seat-name{color:var(--text-secondary);white-space:nowrap;font-size:11px}.gb-bomb{color:var(--primary-dark);animation:.6s ease-in-out infinite gb-wiggle;position:absolute;top:-26px}.gb-bomb svg{width:30px;height:30px}.gb-boom{font-size:34px;animation:.6s ease-out gb-pop}@keyframes gb-wiggle{0%,to{transform:rotate(-12deg)translateY(0)}50%{transform:rotate(12deg)translateY(-3px)}}@keyframes gb-pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1.3)}}.gb-arrow{color:var(--border);font-size:28px;position:absolute;transform:translate(-50%,-50%)}.gb-controls{flex-direction:column;align-items:center;gap:8px;display:flex}.gb-pass{background:var(--danger);border-color:var(--danger);padding:14px 44px;font-size:18px}.gb-wrap.exploded .gb-circle{animation:.5s gb-shake}@media (max-width:600px){.gb-circle{transform-origin:top;margin-bottom:-40px;transform:scale(.85)}}.games-entry-text strong{white-space:nowrap}.games-entry-card{padding:12px 18px}.gl-scroll{scroll-behavior:auto;-webkit-overflow-scrolling:touch}.gr-team-winner{flex-direction:column;align-items:center;gap:6px;display:flex}.gr-team-winner-members{color:var(--text);font-size:14px;font-weight:600}.gb-bomb{top:-42px}.gb-bomb-body{background:radial-gradient(circle at 32% 30%,#7a7a7a 0,#2b2b2b 30%,#0a0a0a 72%);border-radius:50%;width:38px;height:38px;display:block;position:relative;box-shadow:inset -4px -4px 8px #000000b3,0 3px 6px #00000059}.gb-bomb-cap{background:linear-gradient(#9a9a9a,#4a4a4a);border-radius:2px 2px 0 0;width:12px;height:8px;position:absolute;top:-5px;left:50%;transform:translate(-50%)}.gb-fuse{border-top:3px solid #c9a96a;border-right:3px solid #c9a96a;border-top-right-radius:14px;width:14px;height:15px;position:absolute;top:-18px;left:50%;transform:translate(-2px)}.gb-flame{transform-origin:50% 100%;filter:drop-shadow(0 0 4px #ff8c00e6);width:14px;height:20px;animation:.18s ease-in-out infinite alternate gb-flicker;position:absolute;top:-32px;left:50%;transform:translate(8px)}.gb-flame i{border-radius:0 60% 60%;position:absolute;bottom:0;left:50%;transform:translate(-50%)rotate(-45deg)}.gb-flame i:first-child{background:linear-gradient(135deg,#ff4d00,#ff9a1f);width:14px;height:14px}.gb-flame i:last-child{background:linear-gradient(135deg,#ffe45c,#fff5c2);width:7px;height:7px;bottom:2px}@keyframes gb-flicker{0%{transform:translate(8px)scale(1)skew(-4deg)}50%{transform:translate(8px,-1px)scale(.9,1.15)skew(5deg)}to{transform:translate(8px)scale(1.08,.92)skew(-2deg)}}.gb-spark{opacity:0;background:#ffd166;border-radius:50%;width:3px;height:3px;animation:.7s ease-out infinite gb-spark;position:absolute;top:-30px;left:50%;box-shadow:0 0 4px #ff9a1f}.gb-spark.s1{--dx:-8px;animation-delay:0s}.gb-spark.s2{--dx:9px;animation-delay:.25s}.gb-spark.s3{--dx:2px;animation-delay:.45s}@keyframes gb-spark{0%{opacity:1;transform:translate(8px)scale(1)}to{transform:translate(calc(8px + var(--dx)),-20px)scale(.3);opacity:0}}.gr-table-wrap{width:100%;max-width:420px;overflow-x:auto}.gr-table{border-collapse:collapse;background:var(--bg);border-radius:var(--radius-sm);width:100%;font-size:14px;overflow:hidden}.gr-table th{letter-spacing:.5px;color:var(--text-secondary);text-align:left;border-bottom:1px solid var(--border);padding:8px 12px;font-size:11px;font-weight:600}.gr-table td{border-bottom:1px solid var(--border);padding:8px 12px}.gr-table tr:last-child td{border-bottom:none}.gr-td-idx{width:28px;color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:12px}.gr-td-outcome{text-align:right;color:var(--text-secondary);white-space:nowrap}.gr-table tr.win td{background:#c4554d14;font-weight:700}.gr-outcome-win{color:var(--danger)}.auth-terms-details{font-size:12px;line-height:1.7}.auth-terms-details summary{cursor:pointer;color:var(--text-secondary);text-underline-offset:3px;text-decoration:underline;list-style:none}.auth-terms-details summary::-webkit-details-marker{display:none}.auth-terms-details summary:before{content:"▸ "}.auth-terms-details[open] summary:before{content:"▾ "}.auth-terms-details p{color:var(--text-secondary);margin:6px 0 2px}.gt-pad{border-radius:var(--radius);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;border:none;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;max-width:360px;min-height:240px;transition:background .2s;display:flex}.gt-pad.is-ready{background:var(--primary)}.gt-pad.is-running{background:#2f3e46}.gt-pad.is-flash,.gt-pad.is-sent{background:var(--primary-light)}.gt-pad.is-spectate{background:var(--border);color:var(--text-secondary)}.gt-pad:disabled{cursor:default}.gt-target{opacity:.85;letter-spacing:.5px;font-size:13px}.gt-clock{font-family:var(--font-display),serif;font-variant-numeric:tabular-nums;font-size:56px;line-height:1}.gt-clock.hidden{animation:1.2s ease-in-out infinite gt-blink}.gt-diff{font-size:18px;font-weight:700}@keyframes gt-blink{0%,to{opacity:.45}50%{opacity:.85}}.goe-wrap{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.goe-hand{flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:170px;display:flex}.goe-fist{background:radial-gradient(circle at 35% 30%,#f3d7bd,#d9a97f 70%,#c48f66);border-radius:48% 48% 42% 42%;justify-content:center;align-items:center;width:130px;height:110px;transition:transform .3s,border-radius .3s;display:flex;position:relative;box-shadow:inset -8px -8px 14px #78461e40,0 6px 14px #00000026}.goe-hand.open .goe-fist{background:radial-gradient(circle at 40% 35%,#f8e4d0,#e2b992 70%,#cf9b72);border-radius:40%;transform:scale(1.08)}.goe-q{font-family:var(--font-display),serif;color:#5a321499;font-size:44px}.goe-beans{flex-wrap:wrap;justify-content:center;gap:6px;max-width:100px;display:flex}.goe-bean{background:radial-gradient(circle at 35% 30%,#8b5a2b,#4a2a10);border-radius:50%;width:16px;height:16px;animation:.3s ease-out both goe-pop}@keyframes goe-pop{0%{transform:scale(0)}to{transform:scale(1)}}.goe-answer{font-family:var(--font-display),serif;font-size:28px;font-weight:700;animation:.4s ease-out gb-pop}.goe-answer.is-odd{color:var(--danger)}.goe-answer.is-even{color:var(--primary)}.goe-pick{flex-direction:column;align-items:center;gap:10px;display:flex}.goe-buttons{gap:12px;display:flex}.goe-btn{text-align:center;border-width:2px;justify-content:center;min-width:120px;padding:16px 0;font-size:22px;font-weight:700}.goe-btn.odd{border-color:var(--danger);color:var(--danger)}.goe-btn.even{border-color:var(--primary);color:var(--primary)}.goe-btn:active{transform:scale(.96)}.gn-wrap{flex-direction:column;align-items:center;gap:14px;width:100%;display:flex}.gn-stage{border-radius:var(--radius);background:var(--bg);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:100%;max-width:360px;min-height:180px;padding:16px;transition:background .3s;display:flex}.gn-stage.collided{background:var(--danger);color:#fff;animation:.5s gb-shake}.gn-stage.silent{background:var(--primary);color:#fff}.gn-label{opacity:.85;font-size:13px}.gn-big{font-family:var(--font-display),serif;font-size:72px;line-height:1;animation:.25s ease-out gn-in}.gn-last{opacity:.8;font-size:13px}@keyframes gn-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.gn-call{border-radius:999px;padding:18px 48px;font-size:22px}.gn-call.done{background:var(--border);border-color:var(--border);color:var(--text-secondary)}.games-tabs{gap:6px;margin-bottom:10px;display:flex}.games-tab{border:1px solid var(--border);background:var(--bg);color:var(--text-secondary);cursor:pointer;border-radius:999px;flex:1;padding:9px 10px;font-size:13px;font-weight:600}.games-tab.active{background:var(--primary);border-color:var(--primary);color:#fff}.gd-wrap{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.gd-stage{perspective:700px;cursor:pointer;justify-content:center;align-items:flex-end;width:100%;max-width:320px;height:210px;padding-bottom:28px;display:flex;position:relative}.gd-shadow{filter:blur(4px);background:#3c281447;border-radius:50%;width:110px;height:22px;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.gd-shadow.throwing{animation:1.7s ease-out both gd-shadow}.gd-stage-name{color:var(--text);font-size:13px;font-weight:700;animation:.3s ease-out gb-pop;position:absolute;bottom:0}.gd-cube-wrap{transform-style:preserve-3d;position:relative}.gd-cube-wrap.idle{animation:2.4s ease-in-out infinite gd-idle}.gd-cube-wrap.throwing{animation:1.7s cubic-bezier(.35,.55,.4,1) both gd-throw}.gd-cube{width:100%;height:100%;transform-style:preserve-3d;position:relative}.gd-face{box-sizing:border-box;backface-visibility:hidden;background:linear-gradient(135deg,#fffdf7,#f1ebdd);border:2px solid #3d362d;border-radius:16%;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);padding:15%;display:grid;position:absolute;inset:0;box-shadow:inset 0 0 12px #00000014}.gd-pip{aspect-ratio:1;background:radial-gradient(circle at 35% 35%,#5a5148,#2a251f);border-radius:50%;place-self:center;width:100%;max-width:68%}.gd-face.front{transform:translateZ(var(--half))}.gd-face.back{transform:rotateY(180deg)translateZ(var(--half))}.gd-face.right{transform:rotateY(90deg)translateZ(var(--half))}.gd-face.left{transform:rotateY(-90deg)translateZ(var(--half))}.gd-face.top{transform:rotateX(90deg)translateZ(var(--half))}.gd-face.bottom{transform:rotateX(-90deg)translateZ(var(--half))}@keyframes gd-idle{0%,to{transform:rotateX(-18deg)rotateY(-24deg)}50%{transform:rotateX(-14deg)rotateY(24deg)}}@keyframes gd-throw{0%{transform:translate3d(var(--dx,-120px),-120px,110px)rotateX(0)rotateY(0)rotateZ(0)scale(.5)}22%{transform:translate3d(calc(var(--dx,-120px)*.35),-95px,70px)rotateX(calc(280deg + var(--sx,0deg)*.4))rotateY(calc(200deg + var(--sy,0deg)*.4))rotateZ(90deg)scale(1.02)}42%{transform:translate3d(12px,-30px,30px)rotateX(calc(560deg + var(--sx,0deg)*.8))rotateY(calc(470deg + var(--sy,0deg)*.8))rotateZ(220deg)scale(1)}56%{transform:translate3d(0,0,0)rotateX(calc(720deg + var(--sx,0deg) + var(--tx,34deg)))rotateY(calc(720deg + var(--sy,0deg) + var(--ty,28deg)))rotateZ(330deg)scale(1)}68%{transform:translate3d(-6px,-30px,0)rotateX(calc(720deg + var(--sx,0deg) + var(--tx,34deg)*.55))rotateY(calc(720deg + var(--sy,0deg) + var(--ty,28deg)*.5))rotateZ(348deg)scale(1)}80%{transform:translate3d(2px,0,0)rotateX(calc(720deg + var(--sx,0deg) - var(--tx,34deg)*.22))rotateY(calc(720deg + var(--sy,0deg) - var(--ty,28deg)*.2))rotateZ(358deg)scale(1)}90%{transform:translate3d(0,-5px,0)rotateX(calc(720deg + var(--sx,0deg) + var(--tx,34deg)*.08))rotateY(calc(720deg + var(--sy,0deg) + var(--ty,28deg)*.07))rotateZ(360deg)scale(1)}to{transform:translate3d(0,0,0)rotateX(calc(720deg + var(--sx,0deg)))rotateY(calc(720deg + var(--sy,0deg)))rotateZ(360deg)scale(1)}}@keyframes gd-shadow{0%{opacity:.1;transform:translate(-50%)scale(.3)}42%{opacity:.3;transform:translate(-50%)scale(.6)}56%{opacity:1;transform:translate(-50%)scale(1)}68%{opacity:.6;transform:translate(-50%)scale(.75)}80%,to{opacity:1;transform:translate(-50%)scale(1)}}.gb-order-item.out{opacity:.4;text-decoration:line-through}.gl2-wrap{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.gl2-tray{flex-wrap:wrap;justify-content:center;gap:10px 14px;width:100%;min-height:44px;display:flex}.gl2-drawn{flex-direction:column;align-items:center;gap:3px;animation:.45s cubic-bezier(.2,.8,.3,1) gl2-drawn-in;display:flex}.gl2-drawn-stick{background:linear-gradient(#e6cc98,#c9a56b);border-radius:7px;justify-content:flex-end;align-items:center;width:88px;height:14px;display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 -2px #78501e40}.gl2-drawn-tip{color:#fff;justify-content:center;align-items:center;width:0;height:100%;font-size:10px;font-weight:800;transition:width .5s;display:inline-flex}.gl2-drawn.open .gl2-drawn-tip{background:#a99b89;width:40px}.gl2-drawn.open.win .gl2-drawn-tip{background:var(--danger)}.gl2-drawn.open.win .gl2-drawn-stick{animation:.6s ease-out gl2-win;box-shadow:0 0 0 3px #c4554d40}.gl2-drawn-name{color:var(--text-secondary);font-size:11px}@keyframes gl2-drawn-in{0%{opacity:0;transform:translateY(40px)scale(.8)}to{opacity:1;transform:none}}@keyframes gl2-win{0%{transform:scale(1)}50%{transform:scale(1.18)}to{transform:scale(1)}}.gl2-cup{transform-origin:50% 90%;width:220px;height:260px;margin-top:4px;position:relative}.gl2-cup.shaking{animation:1s ease-in-out gl2-shake}.gl2-rim{background:#d9d3c8;border-radius:50%;height:36px;position:absolute;top:96px;left:20px;right:20px;box-shadow:inset 0 3px 6px #0000002e}.gl2-body{pointer-events:none;background:repeating-linear-gradient(90deg,#f4f0e8 0 8px,#ddd6ca 8px 14px);border-radius:0 0 40px 40px/0 0 26px 26px;position:absolute;inset:114px 20px 0;box-shadow:inset -14px 0 18px #0000001f,inset 14px 0 18px #0000000f,0 8px 16px #0000001f}.gl2-body:before{content:"";background:#efeae0;border-radius:50%;height:4px;position:absolute;top:-2px;left:0;right:0}.gl2-sticks{height:200px;position:absolute;bottom:18px;left:0;right:0}.gl2-stick{cursor:default;transform-origin:50% 100%;background:linear-gradient(90deg,#d9b97f,#eed6a2 45%,#c9a56b);border:none;border-radius:9px 9px 4px 4px;width:18px;padding:0;transition:transform .25s,filter .2s;position:absolute;bottom:0;box-shadow:inset -2px 0 3px #78501e40}.gl2-stick.can{cursor:pointer}.gl2-stick.can:hover{filter:brightness(1.08)}.gl2-cup.ready .gl2-stick.can{animation:1.2s ease-in-out infinite gl2-invite;animation-delay:calc(var(--i)*80ms)}.gl2-cup.shaking .gl2-stick{animation:.25s ease-in-out 4 gl2-jitter;animation-delay:calc(var(--i)*30ms)}@keyframes gl2-shake{0%,to{transform:rotate(0)}15%{transform:rotate(-7deg)translate(-8px)}35%{transform:rotate(7deg)translate(8px)}55%{transform:rotate(-5deg)translate(-5px)}75%{transform:rotate(4deg)translate(4px)}90%{transform:rotate(-2deg)}}@keyframes gl2-jitter{0%,to{margin-bottom:0}50%{margin-bottom:14px}}@keyframes gl2-invite{0%,to{margin-bottom:0}50%{margin-bottom:6px}}.gl2-prompt{min-height:20px;transition:color .2s}.gl2-prompt.ready{color:var(--text);font-size:15px;font-weight:700;animation:.3s ease-out gb-pop}.gsc-wrap{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.gsc-card{border:2px solid var(--border);touch-action:none;background:#fff;border-radius:14px;width:100%;max-width:280px;position:relative;overflow:hidden;box-shadow:0 6px 18px #0000001f}.gsc-under{flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.gsc-card.win .gsc-under{color:var(--danger);background:radial-gradient(circle,#fff3e0,#f7d9a8)}.gsc-card.lose .gsc-under{color:var(--text-secondary);background:#f3efe8}.gsc-under-icon{font-size:44px}.gsc-under-text{font-family:var(--font-display),serif;letter-spacing:3px;font-size:22px}.gsc-canvas{cursor:crosshair;transition:opacity .4s;display:block;position:relative}.gsc-canvas.gone{opacity:0;pointer-events:none}.gsc-card.done.win{animation:.5s gb-shake}.gpk-wrap{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.gpk-board{background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border);width:100%;max-width:360px;height:auto}.gpk-peg{fill:#a99b89;transition:fill .15s}.gpk-peg.hit{fill:var(--danger)}.gpk-slot-text{fill:#fff;font-weight:700}.gpk-slot.win rect{stroke:var(--danger);stroke-width:3px}.gpk-ball{fill:#2b2b2b;stroke:#fff;stroke-width:1.5px}.gpk-ball.landed{animation:.4s ease-out gpk-bounce}@keyframes gpk-bounce{0%{transform:translateY(-6px)}to{transform:translateY(0)}}.gpk-result{color:var(--text);font-weight:700}
