@import url(https://fonts.googleapis.com/css2?family=VT323&display=swap);*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;outline:0;-ms-overflow-style:none;scrollbar-width:none}::-webkit-scrollbar{display:none}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}a{text-decoration:none}.country-gst-helper{display:flex;flex-direction:column;gap:8px;margin-top:8px}.country-gst-helper .helper-text{margin:0;line-height:130%}.CountryDisplayCon{display:flex;align-items:center;gap:8px;padding-top:5px}#currentCountryDisplay{font-size:18px;font-weight:600;color:var(--body-desc)}.change-country-btn{width:30px;height:30px;border-radius:20px;background-color:var(--card-bg);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.1)}.change-country-btn:hover{background:linear-gradient(135deg,#6b7a6f,var(--accent-color));transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.change-country-btn:hover img{filter:invert(1)}.change-country-btn:active{transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,.1)}.country-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;z-index:1000;opacity:0;transition:opacity .3s ease}.country-modal.show{display:flex;opacity:1}.country-modal-content{background:var(--card-bg);border-radius:16px;padding:24px;min-width:300px;max-width:90vw;position:relative;transform:scale(.9);transition:transform .3s ease;box-shadow:0 8px 32px rgba(0,0,0,.2)}.country-modal.show .country-modal-content{transform:scale(1)}.country-modal-header{text-align:center;margin-bottom:20px}.country-modal-title{font-size:18px;font-weight:600;color:var(--text-color);margin-bottom:8px}.country-modal-subtitle{font-size:14px;color:var(--body-desc)}.country-options{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.country-option{display:flex;align-items:center;justify-content:space-between;padding:16px;border:2px solid var(--border-color,#e0e0e0);border-radius:12px;cursor:pointer;transition:all .2s ease;background:var(--card-bg)}.country-option:hover{border-color:var(--accent-color);background:var(--card-bg-hover)}.country-option.selected{border-color:#4caf50;box-shadow:0 4px 8px rgba(0,0,0,.1);transform:translateY(-2px)}.country-info{display:flex;flex-direction:column;gap:4px}.country-name{font-weight:600;color:var(--text-color)}.country-gst-rate{font-size:12px;color:var(--body-desc)}.country-flag{font-size:24px}.country-modal-footer{display:flex;gap:12px}.country-modal-btn{flex:1;padding:12px 16px;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease}.country-modal-btn.primary{background:linear-gradient(135deg,var(--accent-color),#6b7a6f);color:#fff}.country-modal-btn.secondary{background:var(--card-bg-hover);color:var(--text-color);border:1px solid var(--border-color,#e0e0e0)}.country-modal-btn:hover{transform:translateY(-1px)}.country-modal-btn:active{transform:translateY(0)}:root{--loader-bg:#ffffff;--body-bg:#fefae0;--main-bg:#ccd5ae;--history-bg:#e9edc9;--settings-bg:#faedcd;--navbar-bg:#ffffff;--body-text:#212529;--body-desc:#4f4f4f;--body-desc-2:#666;--accent-color:#839788;--accent-color-opacity:rgba(131, 151, 136, 0.5);--card-bg:#ffffff;--card-bg-hover:#f0f0f0;--text-color:#212529;--light-text:#4f4f4f;--divider-color:#c6c6c6;--group-card-bg:#d1e7c0;--drag-bg:#f2e8d5;--settle-btn-bg:#111;--item-card-bg:#c0c9ae;--bill-summary-item-bg:#f2f6c3;--toast-bg:#2c2c2c;--border-radius:12px;--card-shadow:0 4px 8px rgba(0, 0, 0, 0.1);--transition-speed:0.3s;--white-text:#fff;--black-btn:#000000;--danger-color:#ff6b6b;--danger-hover-color:#ff5252;--birthday-color:#e4d822;--filter-dark:invert(0);--bubble-shadow:0 1px 3px 3px rgba(0, 0, 0, 0.12),0 1px 2px 2px rgba(0, 0, 0, 0.24)}:root .dark-mode{--body-bg:#161719;--loader-bg:#161719;--main-bg:#161719;--history-bg:#161719;--settings-bg:#161719;--text-color:#bcd4eb;--navbar-bg:#25282e;--card-bg:#25282e;--card-bg-hover:#31343c;--light-text:#bcd4eb;--body-desc:#bcd4eb;--body-desc-2:#bcd4eb;--body-text:#bcd4eb;--drag-bg:#36393f;--settle-btn-bg:#26303b;--item-card-bg:#25282e;--bill-summary-item-bg:#36393f;--accent-color:#5f614e;--accent-color-opacity:#5f614e;--group-card-bg:#5f614e;--toast-bg:#26303b;--birthday-color:#e4d822;--filter-dark:invert(1);--bubble-shadow:0 1px 3px 3px rgba(255, 255, 255, 0.12),0 1px 2px 2px rgba(255, 255, 255, 0.24)}body,html{overscroll-behavior:none;touch-action:none}html{height:100%}body{background:var(--navbar-bg);width:100vw;height:100%;display:flex;justify-content:center;align-items:center;margin:0;overflow:hidden;color:#212529;font-family:"SF Pro",-apple-system,BlinkMacSystemFont,"Segoe UI","Open Sans","Helvetica Neue",sans-serif;font-size:18px;font-style:normal;line-height:34px;letter-spacing:.3px;padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.theme-history{background-color:var(--history-bg)}.theme-history #menu1 .nav-icon{opacity:0}.theme-home{background-color:var(--main-bg)}.theme-home #menu2 .nav-icon{opacity:0}.theme-settings{background-color:var(--settings-bg)}.theme-settings #menu3 .nav-icon{opacity:0}#navbarContainer{width:100%;min-width:400px;height:100%;border-radius:0;display:flex;justify-content:flex-end;flex-direction:column;overflow:hidden;position:relative;z-index:2;box-shadow:none;transition:background-color var(--transition-speed) ease-in-out}#navbar{width:100%;height:60px;background-color:var(--navbar-bg);position:absolute;bottom:0;z-index:10;border-top:1px solid rgba(0,0,0,.05);box-shadow:0 -8px 10px rgba(0,0,0,.05)}#bubbleWrapper{position:absolute;display:flex;justify-content:space-around;width:100%;bottom:25px}.bubble{background-color:var(--navbar-bg);opacity:.8;width:60px;height:60px;bottom:85px;border-radius:50%;z-index:1;transform:translateY(120%);display:flex;justify-content:center;align-items:center;transition:transform var(--transition-speed) cubic-bezier(.175, .885, .32, 1.275)}.icon{display:flex;justify-content:center;align-items:center;opacity:0;width:80%;transition:opacity .2s ease}#bubble2 .icon{filter:var(--filter-dark)}.bubble-home{background-color:var(--accent-color);opacity:0}.bubble-bounce{animation:bubbleBounce .5s forwards;box-shadow:var(--bubble-shadow,0 1px 3px 3px rgba(0,0,0,.12),0 1px 2px 2px rgba(0,0,0,.24));opacity:1}.nav-icon{width:30px;height:30px;filter:var(--filter-dark, invert(0))}.bubble .nav-icon{width:85%;height:85%}.active-bubble{transform:translateY(0)!important;box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24)}.active-bubble>span{opacity:.7}#navbgWrapper{width:100%;height:100px;position:absolute;bottom:60px}#navbg{width:100%;height:100%;background-color:transparent;transition:background-color var(--transition-speed) ease-in-out}#navbgBubble{display:none}#menuWrapper{position:absolute;width:100%;display:flex;justify-content:space-around;top:-10px}.menuElement{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;outline:0;opacity:.4;transform:translateY(60%);cursor:pointer;transition:opacity var(--transition-speed) ease,transform var(--transition-speed) ease}.menuElement:hover{opacity:.5}.menuElement.active{opacity:0;transform:translateY(100%)}.card-widget{opacity:0;transform:translateY(20px);transition:none;width:100%;transition:transform .1s ease-in-out;cursor:pointer}.card-widget:active{transform:scale(.98)}.card-widget .settle-item{padding:0;box-shadow:none}.active .card-widget:first-child.animated{opacity:0;animation:fadeInUp .5s ease forwards;transition-delay:0.1s}.active .card-widget:nth-child(2).animated{opacity:0;animation:fadeInUp .5s .2s ease forwards;transition-delay:0.2s}.active .card-widget:nth-child(3).animated{opacity:0;transition-delay:var(--transition-speed);animation:fadeInUp .5s var(--transition-speed) ease forwards}.active .card-widget:nth-child(4).animated{opacity:0;transition-delay:0.4s;animation:fadeInUp .5s .4s ease forwards}.active .card-widget:nth-child(5).animated{opacity:0;transition-delay:0.5s;animation:fadeInUp .5s .5s ease forwards}.welcome-section{margin-top:20px;margin-bottom:10px}.welcome-section h1{font-size:24px;color:var(--text-color);font-weight:600;margin:0;opacity:0;text-align:left;transform:translateY(10px);animation:fadeInUp .5s ease forwards}.weather-card{background-color:#483078;color:#fff;border-radius:var(--border-radius);padding:15px 20px;display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;box-shadow:var(--card-shadow);opacity:0;transform:translateY(10px)}.weather-location h2{margin:0;font-size:18px;font-weight:600}.weather-location p{margin:0;font-size:14px;opacity:.8}.weather-temp h1{font-size:42px;margin:0;font-weight:500}.settle-card{background-color:var(--accent-color);border-radius:var(--border-radius);padding:15px;color:#fff;margin-bottom:10px;box-shadow:var(--card-shadow);opacity:0;transform:translateY(10px)}.settle-header h3{margin:0;font-size:14px;font-weight:600;letter-spacing:1px}.settle-content{display:flex;justify-content:space-between;align-items:center}.cat-image{position:relative;width:120px;height:135px}.start-cat-image{width:100%;height:100%;position:absolute;left:-15px;bottom:-15px;object-fit:cover;object-position:top}.settle-message{width:70%;display:flex;flex-direction:column;justify-content:center;align-items:flex-end}.settle-message p{color:#fff;font-size:1.3rem;font-weight:590;line-height:27px;letter-spacing:.1px;margin-bottom:15px}.settle-now-btn{background-color:#fff;border:none;color:#212529;padding:6px 12px;border-radius:25px;font-weight:500;cursor:pointer;display:flex;align-items:center;transition:all var(--transition-speed)}.settle-now-btn:hover{transform:translateX(3px);box-shadow:0 2px 5px rgba(0,0,0,.2)}.settle-arrow img{filter:var(--filter-dark)}.arrow{margin-left:5px}.arrow img{filter:invert(1)}.group-card{background-color:var(--card-bg);border-radius:var(--border-radius);padding:15px 20px;margin-bottom:10px;box-shadow:var(--card-shadow);opacity:0;transform:translateY(10px)}.active .group-card.animated{opacity:0;transition-delay:0.1s;animation:fadeInUp .5s ease forwards}.group-card:nth-child(5){animation-delay:.6s}.card-header{display:flex;justify-content:space-between;align-items:flex-start;position:relative;margin-bottom:10px}.card-header h3{margin:0;font-size:18px;color:var(--text-color)}.card-header p{margin:0;font-size:14px;color:var(--light-text)}.arrow-icon{color:var(--light-text);font-weight:700;font-size:18px}.avatar-group{display:flex;align-items:center;gap:5px;color:var(--body-text)}.avatar{width:40px;height:40px;border-radius:50%;background-color:#ddd;margin-left:-12px}#lastCreatedGroup .avatar{width:100%;height:100%;max-width:90px;max-height:90px;display:flex;align-items:center;justify-content:center}.avatar:first-child{margin-left:0}.avatar-img{width:100%;height:100%;object-fit:cover}.settle-item{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:var(--card-bg);border-radius:var(--border-radius);padding:20px;margin-bottom:10px;box-shadow:var(--card-shadow);transition:all var(--transition-speed) ease;transform-origin:center;opacity:0;transform:translateY(15px);animation:fadeInHistory .5s forwards}.settle-top{display:flex;justify-content:space-between;align-items:flex-start;width:100%;padding-bottom:8px}.settle-bottom{display:flex;justify-content:space-between;align-items:center;width:100%;padding-top:8px;border-top:1px solid var(--divider-color)}.settle-avatar{width:auto;height:30px}.settle-avatar .avatar{width:30px;height:30px}.settle-info{flex:1}.settle-info-amount{font-size:1.8rem;font-style:normal;font-weight:700;color:var(--text-color)}.settle-info-matter{font-size:1.3rem;font-style:normal;font-weight:500;color:var(--text-color)}.settle-info-group{font-size:.9rem;font-weight:400;line-height:25.5px;color:var(--text-color)}.settle-info-date{font-size:.8rem;font-weight:400;color:var(--text-color);font-style:normal;line-height:normal}.settle-amount p{margin:0}.loading-screen.active #loadingReceipt.received{animation:receipt 3s 1s ease both}.loading-screen.active #loadingReceipt.finished{animation:slideOut 1.5s ease both}.success-screen.active #successReceipt{animation:slideIn 1s .6s ease both}.history-list{display:flex;flex-direction:column;gap:15px;margin-top:10px}.history-list .loading-placeholder{background-color:var(--card-bg);border-radius:12px;height:100px;overflow:hidden;position:relative;animation:pulse-bg 1.5s infinite;box-shadow:0 2px 4px rgba(0,0,0,.05)}.history-list .loading-placeholder:before{content:"";position:absolute;left:15px;top:15px;width:100px;height:24px;background-color:#e0e0e0;border-radius:4px}.history-list .loading-placeholder:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);animation:shimmer 1.5s infinite;transform:translateX(-100%)}.settle-item:first-child{animation-delay:.1s}.settle-item:nth-child(2){animation-delay:.2s}.settle-item:nth-child(3){animation-delay:var(--transition-speed)}.settle-item:nth-child(4){animation-delay:.4s}.settle-item:nth-child(5){animation-delay:.5s}.settle-item:nth-child(n+6){animation-delay:.6s}.settle-item:hover{transform:translateY(-2px) scale(1.01);background-color:var(--card-bg-hover);transition:all .2s ease}.settle-item:active{transform:translateY(0) scale(.98);transition:all .1s ease}.settle-delete{position:relative;margin-left:10px}.delete-history-btn{background-color:var(--danger-color,#ff6b6b);border:none;border-radius:6px;padding:6px;cursor:pointer;opacity:.9;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px;box-shadow:0 1px 3px rgba(0,0,0,.2)}.delete-history-btn:hover{background-color:var(--danger-hover-color,#ff5252);opacity:1;transform:scale(1.05)}.delete-history-btn:active{transform:scale(.95)}.delete-history-btn img{width:16px;height:16px;filter:invert(1)}.no-history{text-align:center;color:#888;margin:30px 0;opacity:0;transform:translateY(10px);animation:fadeInNoHistory .5s var(--transition-speed) forwards}.clear-history-button-container{display:flex;justify-content:center;margin-top:10px;margin-bottom:10px}.clear-history-btn{width:35px;height:35px;background-color:var(--danger-color,#ff6b6b);color:#fff;border:none;border-radius:8px;padding:10px;font-size:14px;font-weight:500;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.12);transition:all var(--transition-speed) ease}.clear-history-btn:hover{background-color:var(--danger-hover-color,#ff5252);transform:translateY(-1px)}.clear-history-btn:active{transform:translateY(1px)}.clear-history-btn img{filter:invert(1)}.toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s}.slider:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;transition:.4s}input:checked+.slider{background-color:var(--accent-color)}input:focus+.slider{box-shadow:0 0 1px var(--accent-color)}input:checked+.slider:before{transform:translateX(26px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.page-container .group-card:nth-child(2){animation-delay:.2s}.page-container .group-card:nth-child(3){animation-delay:var(--transition-speed)}.page-container .group-card:nth-child(4){animation-delay:.4s}.active .animated .settings-item,.active .animated .settle-item{opacity:0;transform:translateY(10px);animation:fadeInUp .4s .2s ease forwards}.active .animated .settings-item:first-child,.active .animated .settle-item:first-child{opacity:0;transform:translateY(10px);animation:fadeInUp .4s var(--transition-speed) ease forwards}.active .animated .settings-item:nth-child(2),.active .animated .settle-item:nth-child(2){opacity:0;transform:translateY(10px);animation:fadeInUp .4s .4s ease forwards}.active .animated .settings-item:nth-child(3),.active .animated .settle-item:nth-child(3){opacity:0;transform:translateY(10px);animation:fadeInUp .4s .5s ease forwards}.active .animated .settings-item:nth-child(4),.active .animated .settle-item:nth-child(4){opacity:0;transform:translateY(10px);animation:fadeInUp .4s .6s ease forwards}.active .animated .settings-item:nth-child(5),.active .animated .settle-item:nth-child(5){opacity:0;transform:translateY(10px);animation:fadeInUp .4s .7s ease forwards}#settleNowScreen{background-color:var(--body-bg);height:100%;display:flex;flex-direction:column;padding:0;gap:0}.settle-now-header{display:flex;align-items:center;padding:20px 15px 15px 15px;position:relative}.back-button{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;outline:0;background:0 0;border:none;font-size:24px;color:var(--text-color);cursor:pointer;padding:8px 12px;display:flex;align-items:center;justify-content:center;position:absolute;left:15px;border-radius:50%;transition:background-color .2s ease,transform .2s ease;width:40px;height:40px}.back-button:hover{background-color:rgba(0,0,0,.05);transform:translateX(-3px);border-radius:50%}.back-button:active{background-color:rgba(0,0,0,.1);transform:translateX(0);border-radius:50%}.back-button img{filter:var(--filter-dark)}.settle-now-header h1{flex:1;text-align:center;font-size:1.4rem;margin:0;font-weight:700;line-height:120%;color:var(--text-color)}.white-slide-container{width:100%;height:calc(100% - 50px);border-radius:30px 30px 0 0;background:var(--card-bg);box-shadow:0 -3px 10px rgba(0,0,0,.1);overflow:hidden;position:relative;transition:transform var(--transition-speed) ease-out}.white-slide-container.hidden{display:none}#settleChoiceView{padding:20px}#settleChoiceView h2{text-align:center;font-weight:500;font-size:1.2rem;color:var(--text-color)}.cat-avatars-container{display:flex;position:relative;width:100%;height:150px;justify-content:center;align-items:center}.saved-group-avatar{width:100%;height:100%}.cat-avatar{width:60px;height:60px;border-radius:50%;position:absolute;border:3px solid #fff;box-shadow:0 2px 5px rgba(0,0,0,.1)}.group-label{background-color:var(--card-bg);color:var(--body-text);border-radius:20px;padding:5px 15px;font-weight:500;margin-top:15px;box-shadow:0 2px 5px rgba(0,0,0,.05);transition:background-color var(--transition-speed) ease;z-index:1}.or-divider{display:flex;align-items:center;margin:10px 0;justify-content:center;animation:fadeIn .5s ease forwards var(--transition-speed);opacity:0}.divider-line{flex:1;height:1px;background-color:var(--divider-color);margin:0 15px;max-width:100%}.divider-text{color:var(--light-text);text-align:center;font-size:20px;font-weight:600}.new-group-content{position:relative;width:100%;height:150px;display:flex;justify-content:center}.new-group-content .lightbulb-icon{top:40%;left:40%}.get-started-btn{background-color:#d8a278;color:#fff;border:none;border-radius:10px;padding:15px;font-size:18px;font-weight:600;width:100%;margin:20px auto;cursor:pointer;transition:background-color .2s ease;animation:fadeInUp .5s ease forwards .5s;opacity:0}.get-started-btn:hover{background-color:#c89268}.get-started-btn:active{background-color:#b8855f}.navbar-hidden #bubbleWrapper,.navbar-hidden #navbar,.navbar-hidden #navbgWrapper{opacity:0;pointer-events:none;transition:all var(--transition-speed) ease;transform:translateY(20px)}#bubbleWrapper,#navbar,#navbgWrapper{transition:all var(--transition-speed) ease;transform:translateY(0)}.new-group-members-container h2{text-align:center;font-size:20px;margin-bottom:10px;font-weight:500;color:var(--text-color)}.add-member-button{width:100%;background-color:var(--accent-color);border-radius:12px;padding:10px 15px;display:flex;align-items:center;margin-bottom:20px;cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.05);transition:transform .2s ease,box-shadow .2s ease;animation:fadeInUp .4s ease forwards}.add-member-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.add-member-button:active{transform:translateY(0)}.add-member-icon{display:flex;align-items:center;justify-content:center;position:relative;margin-right:15px}.add-member-icon-img{width:50px;height:50.625px;flex-shrink:0}.add-member-label{width:100%;text-align:center;color:var(--white-text);font-size:18px;font-weight:700;line-height:23px;letter-spacing:.5px}.save-group-section{width:100%;margin-bottom:15px}.save-group-btn{width:100%;background-color:var(--secondary-color);border-radius:12px;padding:10px 15px;display:flex;align-items:center;cursor:pointer;border:none;box-shadow:0 2px 5px rgba(0,0,0,.05);transition:transform .2s ease,box-shadow .2s ease;animation:fadeInUp .4s ease forwards}.save-group-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.save-group-btn:active{transform:translateY(0)}.save-group-icon{display:flex;align-items:center;justify-content:center;margin-right:15px}.save-group-icon-img{width:30px;height:30px;flex-shrink:0}.save-group-label{width:100%;text-align:center;color:var(--text-color);font-size:16px;font-weight:600;line-height:20px;letter-spacing:.3px}.edit-group-name-container{width:100%;display:flex;justify-content:flex-start;align-items:center}.member-list{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px;justify-content:flex-start;width:100%}.member-item{display:flex;flex-direction:column;align-items:center;gap:8px;width:auto;animation:fadeInUp .4s ease forwards;opacity:0;cursor:pointer;transition:transform .2s ease}.member-avatar{width:70px;height:70px;border-radius:50%;background-color:#f0f0f0;box-shadow:0 2px 5px rgba(0,0,0,.1);position:relative;overflow:visible}.member-avatar .cat-avatar-img,.member-avatar .saved-group-avatar-img{width:100%;height:100%;user-select:none;pointer-events:none}.next-btn{background-color:#d8a278;color:#fff;border:none;border-radius:10px;padding:15px;font-size:18px;font-weight:600;width:100%;margin:10px auto;margin-top:auto;cursor:pointer;transition:background-color .2s ease;animation:fadeInUp .5s ease forwards;opacity:0}.next-btn:hover{background-color:#c89268}.next-btn:active{background-color:#b8855f}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:101;overflow:auto;animation:fadeIn var(--transition-speed);align-items:center;justify-content:center}.modal.active{display:flex}.modal.closing{animation:fadeOut var(--transition-speed) forwards}.modal-content{background-color:var(--card-bg);padding:30px;width:85%;max-width:500px;border-radius:15px;animation:fadeInUp var(--transition-speed);box-shadow:0 5px 15px rgba(0,0,0,.2);max-height:90vh;overflow-y:auto;position:relative}.modal-content.closing{animation:fadeOutDown var(--transition-speed) forwards}.bill-summary-modal-content{display:flex;flex-direction:column;margin:0;width:100%;max-width:100%;padding:0;height:100%;box-shadow:none;overflow:hidden}.bill-summary-modal.peeking .bill-summary-modal-content{display:none}e{display:none}.bill-summary-modal-content .modal-header{padding:0 20px}.modal-header{padding-bottom:10px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f0f0f0;position:sticky;top:0;z-index:1;background:var(--card-bg)}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-color)}.close-modal,.summary-close-modal{background:0 0;border:none;font-size:24px;color:#aaa;cursor:pointer;padding:0;margin:0;line-height:1}.modal-body{padding-top:10px}.input-field{margin-bottom:20px}.input-field label{display:flex;align-items:center;font-size:1rem;margin-bottom:8px;color:var(--text-color)}.input-field input{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:1rem;outline:0;transition:border .2s ease}.input-field input:focus{border-color:var(--accent-color)}.error-message{color:#e74c3c;font-size:14px;margin-top:5px;display:none}.error-message.visible{display:block}.input-field.error input{border-color:#e74c3c}.add-member-submit{width:100%;padding:12px;background-color:#000;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease}.add-member-submit:hover{background-color:#222}.add-member-submit:active{background-color:var(--body-desc)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0);opacity:0;transition:opacity var(--transition-speed) ease;z-index:15;pointer-events:none;will-change:opacity}.modal-overlay.active{background-color:rgba(0,0,0,.5);opacity:1;pointer-events:all}.member-avatar-container{display:flex;justify-content:center;margin-bottom:20px}.edit-member-avatar{width:80px;height:80px;border-radius:50%;background-color:#a9b7c6;box-shadow:0 2px 8px rgba(0,0,0,.2);border:2px solid #fff}.edit-member-avatar .cat-avatar-img{width:100%;height:100%}.remove-member-btn{width:100%;padding:12px;background-color:#e74c3c;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease;margin-bottom:10px}.delete-confirm-btn{width:100%;background-color:#e74c3c;color:#fff;border:none}.remove-member-btn:hover{background-color:#c0392b}.save-member-btn{width:100%;padding:12px;background-color:#000;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease}.save-member-btn:hover{background-color:#222}.member-item:hover{transform:translateY(-2px)}.saved-groups-list{display:flex;flex-direction:column;gap:12px;max-height:300px;overflow-y:auto}.group-item{display:flex;align-items:center;background-color:#f8f8f8;border-radius:12px;padding:15px;cursor:pointer;transition:all .2s ease}.group-item:hover{background-color:#f0f0f0;transform:translateY(-2px)}.group-item-name{font-weight:500;font-size:1rem;flex:1}.group-item-count{background-color:#e0e0e0;border-radius:20px;padding:3px 10px;font-size:14px;color:var(--body-desc-2)}#addSettleItemView{display:none;position:relative;top:0;left:0;width:100%;height:calc(100% - 60px);background-color:var(--body-bg);z-index:5;overflow-y:auto;transform:translateY(100%);transition:transform var(--transition-speed) ease-in-out;will-change:transform;backface-visibility:hidden}#addSettleItemView.active{transform:translateY(0);display:block}.add-settle-item-container{height:100%;padding:0 20px 20px 20px;margin-top:10px;display:flex;flex-direction:column;gap:20px;overflow:auto;background-color:var(--body-bg)}.favourite-group-section{position:sticky;top:0;z-index:10;box-shadow:var(--card-shadow);background-color:var(--item-card-bg);border-radius:16px;padding:15px;display:flex;flex-direction:column;gap:5px;opacity:1;visibility:hidden;transition:transform .2s ease;animation:fadeInUpbot .5s ease forwards}.new-favourite-group-btn{background-color:#111;color:#fff;border:none;border-radius:8px;padding:12px 16px;font-size:1rem;font-weight:600;display:flex;justify-content:space-between;align-items:center;width:100%;cursor:pointer}.group-members{display:flex;flex-wrap:wrap}.drag-instructions{color:var(--body-desc-2);font-size:14px;text-align:center;line-height:normal}.scan-item-btn{background-color:#111;color:#fff;border:none;border-radius:8px;padding:12px 16px;font-size:1rem;font-weight:600;display:flex;justify-content:space-between;align-items:center;width:100%;cursor:pointer}.item-details-section{background-color:var(--item-card-bg);border-radius:16px;padding:15px;display:flex;flex-direction:column;gap:8px;transition:transform .2s ease;animation:fadeInUp .5s ease .2s forwards;opacity:0}.item-details-section .input-field{margin-bottom:0}.item-details-section .input-field label{color:var(--body-desc);display:block;margin-bottom:6px;font-weight:500}.item-details-section .input-field input{width:100%;padding:14px;border-radius:8px;border:1px solid #e1e1e1;background:var(--card-bg);color:var(--body-text);font-size:1rem;will-change:transform;transform:translateZ(0);backface-visibility:hidden;-webkit-font-smoothing:subpixel-antialiased}.item-details-section .error-message{line-height:20px;color:#ff3b30;font-size:12px;margin-top:4px;display:none}.item-details-section .error-message.visible{display:block}.split-section{background-color:var(--drag-bg);border-radius:16px;padding:15px;display:flex;flex-direction:column;gap:5px;opacity:0;transition:transform .2s ease;animation:fadeInUp .5s ease .4s forwards}.split-header{text-align:center;color:var(--body-desc);font-weight:600;position:relative;line-height:normal;margin-bottom:2px}.split-header:after,.split-header:before{content:"";height:1px;background-color:#ddd;position:absolute;top:50%;width:20%}.split-header:before{left:20px}.split-header:after{right:20px}.split-members{display:flex;flex-direction:column;gap:10px}.split-option{display:flex;justify-content:center;align-items:center;gap:8px}.split-option input[type=checkbox]{width:20px;height:20px;border:2px solid #999;border-radius:4px}.split-option label{font-size:1rem;color:var(--body-desc)}.assigned-members{min-height:40px;display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:5px;padding:5px 0 0 0}.remove-instructions{color:var(--body-desc-2);font-size:14px;text-align:center;line-height:normal}.member-required-message{display:none;color:#ff3b30;font-size:14px;text-align:center;line-height:100%}.add-item-btn{background-color:var(--settle-btn-bg);color:#fff;border:none;border-radius:8px;padding:15px;font-size:1rem;font-weight:600;margin-top:10px;cursor:pointer;opacity:0;animation:fadeInUp .5s ease .6s forwards}.swipe-instructions{color:var(--body-desc-2);font-size:14px;text-align:center;margin-top:auto;line-height:normal;margin-bottom:10px}.create-group-modal{max-width:350px;border-radius:20px;background-color:var(--card-bg);box-shadow:0 8px 24px rgba(0,0,0,.15)}.modal-close-button{position:relative;z-index:10}.modal-close-button .close-modal{background:0 0;border:none;font-size:24px;cursor:pointer;color:var(--body-desc)}.no-border{border-bottom:none}.modal-header.no-border h2{margin-bottom:0;text-align:center;font-size:20px;font-weight:600}.group-save-message{text-align:left;color:var(--body-desc);margin:20px 0 20px;font-size:1rem;line-height:1.5}.modal-actions{display:flex;gap:10px;margin-top:24px}.modal-action-btn{flex:1;padding:12px;border-radius:10px;border:none;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.cancel-btn{background-color:#111;color:#fff}.confirm-btn{background-color:#deb887;color:#111}.cancel-btn:hover{background-color:var(--body-desc)}.confirm-btn:hover{background-color:#cea676}.group-success-message{display:none;background-color:rgba(77,170,87,.15);border-radius:8px;padding:5px 10px;text-align:center;align-items:center;justify-content:center;gap:8px;color:#4caf50;font-weight:500;animation:fadeIn .5s ease}.group-success-message.visible{display:flex}.group-name-display{font-weight:600}#savedGroupsView{display:none;width:100%;height:100%;background-color:transparent;overflow-y:auto;padding:20px}#savedGroupsView.active{display:block}.saved-groups-loading{display:none;position:absolute;top:0;left:0;width:100%;height:100%;flex-direction:column;justify-content:center;align-items:center;gap:10px;background:var(--card-bg);z-index:1}.saved-groups-loading.active{display:flex}.saved-groups-container{height:100%;display:flex;flex-direction:column;gap:20px}.new-group-error-message,.saved-group-error{width:100%;display:none;text-align:center;color:#ff3b30;font-size:1rem}#groupMembers.group-members{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:5px;padding:5px 0 0 0}.saved-groups-container h2{text-align:center;font-size:20px;font-weight:600;margin-bottom:10px;color:var(--body-text)}.saved-groups-list-container{display:flex;flex-direction:column;gap:16px;overflow:auto}.saved-group-card{background-color:var(--group-card-bg);border-radius:16px;padding:15px;position:relative;transition:all .2s ease;border:2px solid transparent;cursor:pointer;animation:fadeInUp .4s ease forwards;opacity:0;width:100%;display:flex;flex-direction:column}.saved-group-card.selected{border-color:#4caf50;box-shadow:0 4px 8px rgba(0,0,0,.1);transform:translateY(-2px)}.saved-group-title{font-size:18px;font-weight:600;color:var(--body-desc);margin-bottom:12px}.saved-group-members::-webkit-scrollbar{display:none}.member-name{line-height:normal;font-size:14px;font-weight:500;color:var(--text-color);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70px}.saved-group-members{display:flex;align-items:center;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;margin:0 -15px;padding:0 15px 10px 15px;white-space:nowrap}.member-avatar-wrapper{display:inline-flex;flex-direction:column;align-items:center;gap:4px;margin:3px;opacity:0;animation:fadeInUp .4s ease forwards;flex:0 0 auto;cursor:grab;touch-action:none;user-select:none}.member-avatar-wrapper.sortable-item{opacity:1;visibility:hidden;animation:fadeInUpbot .4s ease forwards}.member-avatar-wrapper:active{cursor:grabbing}.member-avatar-wrapper.sortable-chosen{cursor:grabbing;opacity:1;z-index:10}.member-avatar-wrapper.sortable-drag{opacity:.8;transform:scale(1.05)}.member-avatar-wrapper.sortable-ghost{opacity:.4;background-color:rgba(216,162,120,.1);border-radius:10px}.member-avatar-wrapper:first-child{margin-left:0}.member-avatar-wrapper:last-child{margin-right:0}.saved-group-members::-webkit-scrollbar{display:none}.saved-groups-container{height:100%;display:flex;flex-direction:column}.page-container{width:100%;max-width:500px;margin:0 auto;padding:20px 20px 90px 20px;height:100%;overflow-y:auto;display:flex;flex-direction:column;gap:15px;position:absolute;top:0;left:0;right:0;z-index:1}#historyContainer,#settingsContainer,#settleNowScreen{display:none;opacity:0;transform:translateY(20px);transition:all var(--transition-speed) ease-in-out;padding-top:env(safe-area-inset-top)}#historyContainer.active,#settingsContainer.active{display:flex;opacity:1;transform:translateY(0)}#settleNowScreen.active{display:flex;opacity:1;transform:translateY(0);z-index:10}#finaliseSettleBillScreen.inactive,#homeContainer.inactive,#settleNowScreen.inactive{display:none}.settings-list{display:flex;flex-direction:column;gap:15px;margin-top:15px}.settings-item{display:flex;align-items:center;padding:2px 0;border-bottom:1px solid rgba(0,0,0,.05)}.settings-item:last-child{border-bottom:none}.settings-icon{width:30px;height:30px;border-radius:50%;background-color:#f0f0f0;margin-right:15px}.settings-footer{color:var(--body-text);font-size:14px;font-weight:400;line-height:25.914px;letter-spacing:.095px}.active .settings-footer{opacity:0;animation:fadeInUp .5s .8s ease forwards}.settings-info{flex:1}.settings-info p{margin:0;font-weight:500;color:var(--text-color)}.settings-action{display:flex;align-items:center}.tax-profile-container{border-bottom:none!important;margin-bottom:8px}.tax-profile-description{font-size:14px;color:var(--light-text);font-weight:400;margin-top:4px;display:block}.tax-profile-selector{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.tax-profile-option{display:flex;align-items:center;padding:16px;background-color:var(--card-bg);border:2px solid var(--divider-color);border-radius:var(--border-radius);cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.tax-profile-option:hover{background-color:var(--card-bg-hover);border-color:var(--accent-color);transform:translateY(-2px);box-shadow:var(--card-shadow)}.tax-profile-option.selected{border-color:var(--accent-color);background-color:var(--accent-color-opacity);box-shadow:0 4px 12px rgba(131,151,136,.2)}.country-flag-container{width:48px;height:48px;border-radius:50%;background-color:var(--body-bg);display:flex;align-items:center;justify-content:center;margin-right:16px;border:2px solid var(--divider-color);flex-shrink:0}.tax-profile-option.selected .country-flag-container{border-color:var(--accent-color);background-color:var(--accent-color)}.country-flag{font-size:24px;line-height:1}.country-info{flex:1;display:flex;flex-direction:column;gap:4px}.country-name{font-size:18px;font-weight:600;color:var(--text-color);margin:0;line-height:1.2}.tax-details{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--light-text)}.tax-rate{font-weight:500}.tax-separator{color:var(--divider-color);font-weight:600}.selection-indicator{width:24px;height:24px;border-radius:50%;border:2px solid var(--divider-color);display:flex;align-items:center;justify-content:center;background-color:transparent;transition:all .3s ease;flex-shrink:0}.tax-profile-option.selected .selection-indicator{background-color:var(--accent-color);border-color:var(--accent-color)}.selection-checkmark{color:#fff;font-size:14px;font-weight:700;opacity:0;transition:opacity .3s ease}.tax-profile-option.selected .selection-checkmark{opacity:1}.tax-profile-option{animation:none}.tax-profile-option.selected{animation:selectPulse .4s ease}@keyframes selectPulse{0%{transform:scale(1)}50%{transform:scale(1.02)}100%{transform:scale(1)}}:root .dark-mode .tax-profile-option{border-color:#444}:root .dark-mode .tax-profile-option:hover{border-color:var(--accent-color)}:root .dark-mode .country-flag-container{border-color:#444}:root .dark-mode .tax-profile-option.selected .country-flag-container{border-color:var(--accent-color)}:root .dark-mode .selection-indicator{border-color:#444}.page-container.active{animation:fadeIn var(--transition-speed) ease forwards}.settings-select{padding:6px 12px;border-radius:8px;border:1px solid rgba(0,0,0,.1);background-color:var(--accent-color);font-size:14px;color:#fff;outline:0;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23131313%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:10px;padding-right:28px;transition:border .2s ease;min-width:120px}.settings-select:focus,.settings-select:hover{border-color:var(--accent-color)}.tax-info{padding-left:45px;border-top:none!important;padding-top:0;padding-bottom:10px}.tax-rates{background-color:rgba(0,0,0,.03);border-radius:8px;padding:10px;font-size:14px}.tax-rate-item{display:flex;justify-content:space-between;margin-bottom:5px}.tax-rate-item:last-child{margin-bottom:0}.tax-label{color:var(--light-text)}.tax-value{font-weight:500;color:var(--accent-color)}.settle-choice-container{height:83%;display:flex;flex-direction:column;justify-content:center;padding:10px}.settle-choice-container h2{text-align:center;font-size:20px;margin-bottom:auto;font-weight:500}.settle-choice-error{width:100%;display:none;text-align:center;color:#ff3b30;font-size:1rem}.new-group-option,.saved-group-option{width:100%;height:45%;aspect-ratio:367/240;object-fit:cover;background-color:#fff;border-radius:20px;padding:20px;box-shadow:var(--card-shadow);display:flex;flex-direction:column;justify-content:flex-end;align-items:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border .2s ease;animation:fadeInUp .5s ease forwards}.saved-group-option{background-color:#e9f5d8;animation-delay:.2s;opacity:0}.new-group-option .new-group-bg,.saved-group-option .saved-group-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;z-index:0;border-radius:inherit}.no-groups-message{text-align:center;display:none}.new-group-option{background-color:#f0f5e0;animation-delay:.4s;opacity:0}#newGroupMembersView .member-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:10px}.new-group-option:hover,.saved-group-option:hover{transform:translateY(-3px);box-shadow:0 4px 15px rgba(0,0,0,.1)}.new-group-option:active,.saved-group-option:active{transform:translateY(0)}.new-group-option.selected,.saved-group-option.selected{transform:scale(1.02);box-shadow:0 5px 20px rgba(0,0,0,.15);border:2px solid var(--accent-color)}.new-group-option.selected .group-label,.saved-group-option.selected .group-label{background-color:var(--accent-color);color:#fff}.btn-container{width:100%;margin-top:auto}#settleChoiceView .btn-container{margin-top:0}.settle-view{display:none;flex-direction:column;justify-content:space-between;opacity:0;transform:translateX(20px);transition:all var(--transition-speed) ease;position:absolute;width:100%;height:100%;top:0;left:0;overflow:auto}.settle-view.active{display:flex;opacity:1;transform:translateX(0)}.new-group-members-container{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px}.member-count{color:var(--body-desc-2);font-size:14px}.action-buttons{position:absolute;top:16px;right:16px;display:flex;gap:8px}.share-action-buttons{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:auto;width:100%}.back-home-btn-container{margin-top:10px!important}.group-action-btn{width:32px;height:32px;border-radius:50%;border:none;background-color:var(--card-bg);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 4px rgba(0,0,0,.1)}.group-action-btn-img{filter:var(--filter-dark)}.group-action-btn.edit-btn{color:var(--body-desc)}.group-action-btn.delete-btn{color:#ff3b30}.group-action-btn:hover{transform:scale(1.05)}.no-saved-groups{display:none;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:30px 0;color:var(--body-desc-2);text-align:center}.no-saved-groups p:first-child{font-weight:500;font-size:1rem}.no-saved-groups p:last-child{font-size:14px}.bill-summary-modal{max-width:100%;width:100%;border-radius:25px 25px 0 0;margin:0;position:fixed;bottom:-90%;top:auto;height:90vh;max-height:90%;overflow:hidden;transition:bottom .2s ease;box-shadow:0 -5px 20px rgba(0,0,0,.1);background-color:var(--card-bg);transform:translateZ(0);z-index:100}.bill-summary-modal.peeking{bottom:-86.6%;pointer-events:all;position:absolute}.bill-summary-modal.half-open{bottom:-17vh}.bill-summary-modal.fully-open{bottom:0}.bill-summary-modal.is-finalise-bill .add-more-items-btn,.bill-summary-modal.is-finalise-bill .bill-summary-footer,.bill-summary-modal.is-finalise-bill .confirm-bill-btn,.bill-summary-modal.is-finalise-bill .dish-actions{display:none!important}.bill-summary-drag-handle{display:flex;width:100%;height:30px;cursor:grab;justify-content:center;align-items:center}.drag-handle-line{width:40px;height:5px;background-color:#ddd;border-radius:3px;margin:10px auto}.bill-summary-body{padding:0;margin-top:10px;display:flex;flex-direction:column;position:relative;overflow:hidden;height:calc(100% - 70px)}.pwa-mode .bill-summary-body{height:calc(100% - 45px)}.bill-summary-error-message{padding:0 20px;text-align:left;line-height:100%;margin-bottom:5px;flex-shrink:0}.bill-summary-error-message .error{color:#ff3b30;font-size:14px;text-align:center;line-height:100%}#dishSummaryContainer{padding:0 20px;overflow-y:auto;overflow-x:hidden;flex:1;-webkit-overflow-scrolling:touch;max-height:calc(100% - 170px)}.half-open #dishSummaryContainer{min-height:220px;max-height:calc(100% - 325px)}.is-finalise-bill #dishSummaryContainer{max-height:100%}.dish-summary-item{background-color:var(--bill-summary-item-bg);border-radius:15px;padding:13px 15px;margin-bottom:12px;position:relative;animation:fadeInUp .3s ease forwards}.dish-header{position:relative;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.dish-name{font-size:1.3rem;font-weight:700;margin:0 0 5px 0;color:var(--body-desc);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:100%}.dish-price{font-size:1.5rem;font-weight:700;margin:0;color:var(--body-desc);line-height:120%}.dish-members-divider{display:flex;align-items:center;margin:10px 0;color:var(--body-desc-2)}.dish-members-divider:after,.dish-members-divider:before{content:"";flex:1;border-bottom:1px solid #ccc}.dish-members-divider span{font-size:1rem;margin:0 10px;font-weight:500;line-height:110%}.dish-members{display:flex;flex-wrap:wrap;gap:5px;margin-top:0}.dish-member-pill{background-color:var(--accent-color-opacity);border-radius:20px;padding:5px 12px;font-size:.9rem;font-weight:400;color:var(--body-desc);line-height:100%}.dish-actions{position:absolute;bottom:0;right:0;display:flex;gap:10px}.dish-action-btn{width:30px;height:30px;border-radius:20px;background-color:var(--card-bg);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.1)}.dish-action-btn:hover{background-color:#f0f0f0}.confirm-bill-btn{width:100%;padding:13px 15px;background-color:#dca77e;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:500;line-height:100%;cursor:pointer;transition:background-color .2s;box-shadow:0 2px 5px rgba(0,0,0,.2)}.confirm-bill-btn:disabled,.confirm-bill-btn:disabled:hover{background-color:#ccc;cursor:not-allowed}.confirm-bill-btn:hover{background-color:#c99066}.bill-summary-footer{padding:13px 20px 15px 20px;display:flex;flex-direction:column;gap:8px;border-top:1px solid #eee;position:relative;flex-shrink:0;z-index:1;margin-bottom:0;min-height:105px}.pwa-mode .bill-summary-footer{margin-bottom:30px}.bill-summary-subtotal{padding:8px 20px;border-top:1px solid #eee;box-shadow:0 -4px 8px rgba(0,0,0,.1);position:relative;flex-shrink:0;z-index:1}.subtotal-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0}.subtotal-label{font-size:1.3rem;font-weight:600;color:var(--body-text);line-height:110%}.subtotal-value{font-size:1.3rem;font-weight:700;color:var(--body-text);line-height:110%}.total-row{margin-top:5px;padding-top:10px!important;border-top:1px solid #eee}.total-row .subtotal-label,.total-row .subtotal-value{font-size:1.8rem;font-weight:800;color:var(--primary)}.add-more-items-btn{width:100%;padding:13px 15px;background-color:var(--black-btn);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:500;line-height:100%;opacity:1;cursor:pointer;transition:background-color .2s;box-shadow:0 2px 5px rgba(0,0,0,.2)}#finaliseSettleBillScreen{position:relative;top:0;left:0;width:100%;height:calc(100% - 60px);margin-top:10px;padding-top:0;padding-bottom:0;z-index:20;display:flex;flex-direction:column;background-color:var(--body-bg);transform:translateY(100%);transition:transform var(--transition-speed) ease-out}#finaliseSettleBillScreen.active{transform:translateY(0)}#scanReceiptModal .scan-receipt-helper-text{font-size:1rem;line-height:130%;text-align:left;margin-bottom:10px}#scanReceiptModal .helper-text{font-size:14px;line-height:100%;text-align:left}#scanReceiptModal .scan-receipt-error-message{display:none;font-size:14px;line-height:100%;text-align:left;color:#ff3b30;margin-top:10px}.finalise-bill-container{height:80vh;display:flex;flex-direction:column;padding:15px 20px;background-color:var(--item-card-bg);border-radius:20px;overflow-y:auto;opacity:0;transition:transform .2s ease;animation:fadeInUp .5s ease forwards}.input-section{flex:1;display:flex;flex-direction:column;gap:6px}#finaliseSettleBillScreen .input-field{margin-bottom:0}#finaliseSettleBillScreen .input-field label{display:block;font-weight:600;font-size:1rem;line-height:25.914px;color:var(--body-desc);margin-bottom:8px}#finaliseSettleBillScreen .input-field input{width:100%;padding:13px;border-radius:10px;border:1px solid #ddd;font-size:1rem;background-color:var(--card-bg);color:var(--body-text);box-sizing:border-box;margin-bottom:10px}#finaliseSettleBillScreen .input-field input:focus{border-color:var(--accent-color)}#finaliseSettleBillScreen .input-field input.error{border-color:#e74c3c;animation:shake .5s ease-in-out}#finaliseSettleBillScreen .error-message{color:#e74c3c;font-size:14px;margin-top:5px;display:none;line-height:120%;padding-bottom:5px}#finaliseSettleBillScreen .helper-text{font-size:14px;color:var(--body-desc-2);line-height:14px}@keyframes shake{0%,100%{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}#finaliseSettleBillScreen .checkbox-field{display:flex;align-items:center;background-color:var(--card-bg);padding:10px 15px;border-radius:10px;margin-bottom:5px;border:1px solid #ddd;color:var(--body-text)}#finaliseSettleBillScreen .checkbox-field:last-child{margin-bottom:0}#finaliseSettleBillScreen .checkbox-field input[type=checkbox]{width:20px;height:20px;margin-right:10px;accent-color:#007aff}#finaliseSettleBillScreen .checkbox-field label{font-size:1rem;font-weight:600;color:var(--body-desc)}.settle-lah-btn{background-color:var(--settle-btn-bg);color:#fff;border:none;border-radius:5px;padding:15px;font-size:17px;font-weight:500;margin-top:5px;margin-bottom:5px;cursor:pointer;transition:background-color .2s;letter-spacing:.5px;opacity:0;animation:fadeInUp .5s ease .2s forwards}.settle-lah-btn:hover{background-color:var(--body-desc)}.divider{border:none;height:1px;background-color:var(--divider-color);margin:10px 0}#finaliseSettleBillScreen .divider{border:none;height:1px;background-color:#bcd4eb;margin:10px 0}#finaliseSettleBillScreen .swipe-instructions{color:var(--body-desc-2);font-size:14px;text-align:center;margin-top:0;margin-bottom:25px}.loading-screen{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--accent-color);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:18;opacity:0;visibility:hidden;transition:opacity var(--transition-speed) ease}.loading-screen.active{opacity:1;visibility:visible}.loading-screen h1{color:#fff;font-size:28px;text-align:center;max-width:280px;line-height:1.4;margin-bottom:60px;font-weight:600;opacity:0;transform:translateY(20px);animation:fadeInUp .6s ease forwards var(--transition-speed)}.loading-bar-container{width:100%;height:8px;background-color:rgba(255,255,255,.3);border-radius:4px;overflow:hidden;position:relative;box-shadow:0 2px 4px rgba(0,0,0,.1)}.loading-bar{height:100%;width:0;background-color:var(--body-text);border-radius:4px;box-shadow:0 0 8px rgba(255,255,255,.6)}.loading-screen.active .loading-bar{width:100%;transition:width 2s ease-in-out}.loading-top{width:100%;height:70vh;display:flex;justify-content:center;align-items:center;padding:20px;overflow:auto;position:relative;z-index:1}.loading-footer{width:100%;height:30vh;display:flex;flex-direction:column;justify-content:space-evenly;align-items:center;text-align:center;color:var(--body-desc-2);font-size:1rem;padding:20px;border-radius:0 0 20px 20px;background:var(--card-bg);box-shadow:var(--card-shadow);position:relative;z-index:2}.loading-footer p{color:var(--body-text);text-align:center;font-size:1.6rem;font-style:normal;font-weight:700;line-height:120%;letter-spacing:.3px}.success-screen{position:relative;top:0;left:0;width:100%;height:100%;background-color:var(--body-bg);display:none;flex-direction:column;justify-content:flex-start;align-items:center;overflow-y:auto;z-index:20;padding-top:env(safe-area-inset-top)}.success-screen.active{display:flex;animation:fadeInUp .5s ease forwards}.success-content{width:100%;max-width:500px;height:65vh;padding:20px;display:flex;flex-direction:column;align-items:center;overflow:auto}.success-icon-container{margin:30px 0 20px;display:flex;justify-content:center;align-items:center}.success-icon{width:20px;height:20px;border-radius:50%;background-color:#deedde;display:inline-flex;justify-content:center;align-items:center}.checkmark{color:#25a244;font-size:24px;font-weight:700}.success-details{font-family:VT323,monospace;width:100%;max-width:500px;height:auto;background-color:var(--card-bg);color:var(--body-text);border-radius:16px;box-shadow:var(--card-shadow);position:relative;opacity:0;transition:transform .2s ease,box-shadow .2s ease;margin:20px 0}#successReceipt{transform:translateY(-110%)}.success-details.loading-receipt{background-color:var(--card-bg);color:var(--body-text);border-radius:16px;box-shadow:var(--card-shadow);position:relative;transition:transform .2s ease,box-shadow .2s ease}.success-details.loading-receipt .notch-left,.success-details.loading-receipt .notch-right{background-color:var(--accent-color)}.success-title{font-size:24px;font-weight:700;margin-bottom:16px;color:var(--body-desc);text-align:center}.success-details.loading-receipt .success-title{font-size:24px;width:100%;text-align:center;color:var(--body-text);max-width:100%;margin-bottom:0}.success-details-liner{position:relative;width:100%;height:20px;display:flex;align-items:center;justify-content:center;margin:10px 0}.success-details .notch-left{position:absolute;left:-10px;top:50%;width:20px;height:20px;background:var(--body-bg);border-radius:50%;z-index:1;transform:translateY(-50%)}.success-details .notch-right{position:absolute;right:-10px;top:50%;width:20px;height:20px;background:var(--body-bg);border-radius:50%;z-index:1;transform:translateY(-50%)}.success-details-liner-line{top:0;left:0;right:0;height:1px;width:90%;border-style:dashed;border-width:1px;border-color:#f0f0f0;background:0 0}.detail-row-container{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0 20px 20px 20px}.detail-row{width:100%;display:flex;justify-content:space-between;padding:7px 0}.detail-row:last-child{border-bottom:none}.amount-row{margin-top:10px;border-top:1px dashed #ccc;padding-top:15px;font-weight:700;font-size:18px}.detail-label,.detail-value{font-size:1.3rem;line-height:19.4px}.detail-label{width:60%;color:var(--light-text);font-weight:400}.detail-value{width:40%;color:var(--body-desc);font-weight:700;text-align:right}.amount-row .detail-value{font-size:24px;font-weight:700}.success-footer{width:100%;height:auto;background-color:var(--card-bg);border-radius:30px 30px 0 0;padding:25px 20px 20px 20px;display:flex;flex-direction:column;align-items:center;box-shadow:0 -6px 10px 5px rgb(0 0 0 / 10%);z-index:1;opacity:0;transition:transform .2s ease,box-shadow .4s ease;animation:fadeInUp .5s var(--transition-speed) ease forwards}.success-footer h2{font-size:24px;font-weight:700;margin-bottom:10px;color:var(--body-desc);text-align:center}.success-footer p{text-align:center;color:var(--body-desc-2);font-size:1rem;margin-bottom:10px;line-height:1.4}.success-footer .avatar-group{display:flex;margin:12px 0;justify-content:center}.success-footer .avatar-group .avatar{width:55px;height:55px}.group-action-buttons{display:flex;gap:10px;margin-top:20px;justify-content:center}.share-bill-btn{flex:1;padding:13px;border-radius:10px;font-size:1rem;font-weight:500;color:var(--body-text);cursor:pointer;transition:background-color .2s ease,transform .2s ease;width:100%;text-align:center}.reveal-bill-btn{flex:1;padding:13px;border-radius:10px;font-size:1rem;font-weight:500;color:#fff;cursor:pointer;transition:background-color .2s ease,transform .2s ease;width:100%;text-align:center}.back-home-btn{flex:1;padding:13px;border-radius:10px;font-size:1rem;font-weight:500;color:var(--text-color);cursor:pointer;transition:background-color .2s ease,transform .2s ease;width:100%;text-align:center;background-color:var(--card-bg)}.share-bill-btn{background-color:tan;color:#000;border:none}.reveal-bill-btn{background-color:#000;border:none}.reveal-bill-btn:hover,.share-bill-btn:hover{transform:translateY(-2px)}.reveal-bill-btn:active,.share-bill-btn:active{transform:translateY(0)}.share-bill-modal{position:fixed;bottom:-100%;left:0;width:100%;height:auto;max-height:80vh;border-radius:40px 40px 0 0;background:var(--card-bg);color:var(--body-text);box-shadow:0 -5px 20px rgba(0,0,0,.1);overflow:hidden;z-index:20;transition:bottom var(--transition-speed) ease}.share-bill-modal.active{bottom:0}.share-bill-modal-content{padding:0;width:100%;box-shadow:none;margin:0;padding:0 25px}.share-bill-modal .modal-header{display:flex;justify-content:space-between;align-items:center;border-radius:25px 25px 0 0;padding:25px 0 10px 0;text-align:center;position:relative}.share-close-modal{background:0 0;border:none;font-size:24px;cursor:pointer;color:var(--body-desc-2);padding:0;margin:0}.share-bill-modal-body{padding:10px 0 25px 0;min-height:200px}.share-option-list{width:100%;height:100%}.share-buttons-container{width:100%;height:100%}.share-buttons{width:100%;height:100%;display:flex;flex-direction:column;gap:8px;overflow:auto}a.share-btn,button.share-btn{background:var(--card-bg);display:flex;justify-content:center;align-items:center;text-decoration:none;outline:0;border:none}a.share-btn img,button.share-btn img{width:40px;height:40px;padding-right:10px;filter:var(--filter-dark)}a.share-btn .share-btn-span,button.share-btn .share-btn-span{width:100%;color:var(--body-text);font-size:1rem;font-weight:400;line-height:normal;letter-spacing:.016px;text-decoration:none;text-align:left}.share-bill-modal .modal-header h2{font-size:18px;font-weight:500;margin:0;color:var(--body-desc)}.share-close-modal{font-size:24px;background:0 0;border:none;cursor:pointer;color:var(--body-desc-2)}.share-close-modal:hover{color:var(--body-desc)}.inline-input{width:40px;margin:0 5px;padding:2px 5px;border:1px solid #ccc;border-radius:4px;font-size:inherit;display:inline-block;text-align:center}.hidden-file-input{width:.1px;height:.1px;opacity:0;overflow:hidden;position:absolute;z-index:-1}.file-upload-button{display:flex;align-items:center;padding:12px 20px;background-color:#000;color:#fff;border-radius:10px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s ease;width:100%;margin-bottom:10px}.add-item-btn:hover,.file-upload-button:hover,.scan-item-btn:hover{background-color:var(--body-desc)}.upload-icon{margin-right:10px;font-size:20px;flex-shrink:0}.upload-text{font-size:1rem;font-weight:500;color:var(--white-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80%}.file-upload-container{display:flex;flex-direction:column}.scan-receipt-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.85);backdrop-filter:blur(4px);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:10;border-radius:15px;opacity:0;visibility:hidden;transition:opacity var(--transition-speed) ease}.scan-receipt-overlay.active{opacity:1;visibility:visible}.scanning-animation{width:120px;height:160px;background-color:rgba(255,255,255,.1);border:2px solid rgba(255,255,255,.3);border-radius:10px;position:relative;overflow:hidden;margin-bottom:20px;box-shadow:0 0 20px rgba(0,128,255,.3)}.receipt-icon{width:100%;height:100%;object-fit:contain;opacity:.7}.scanner-line{position:absolute;top:0;left:0;width:100%;height:4px;background-color:rgba(0,191,255,.8);box-shadow:0 0 15px rgba(0,191,255,.8),0 0 5px rgba(0,191,255,.8);animation:scan 2s ease-in-out infinite}.scanning-text{color:#fff;font-size:18px;font-weight:500;text-align:center;animation:scanpulse 1.5s ease-in-out infinite}.error-toast,.success-toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background-color:var(--toast-bg);color:#fff;padding:15px;border-radius:12px;width:90%;max-width:380px;box-shadow:0 4px 12px rgba(0,0,0,.2);display:flex;align-items:center;z-index:1000;opacity:0;visibility:hidden;transition:all var(--transition-speed) ease}.error-toast.show,.success-toast.show{opacity:1;visibility:visible;animation:slideUpFade var(--transition-speed) ease forwards}.success-toast .toast-icon{background-color:#4caf50}.error-toast .toast-icon{background-color:#f44336;font-weight:700}.toast-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;margin-right:12px;flex-shrink:0}.toast-content{display:flex;align-items:center;justify-content:flex-start}.toast-message{flex:1}.toast-title{font-weight:600;font-size:1rem;margin:0 0 4px 0}.toast-count,.toast-error-message{font-size:14px;margin:0;opacity:.8}.try-again-btn,.view-items-btn{background-color:#424242;color:#fff;border:none;padding:8px 12px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;margin-left:12px;transition:background-color .2s ease}.try-again-btn:hover,.view-items-btn:hover{background-color:#545454}.history-container{position:relative}.history-loading{display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10}.history-loading.active{display:flex;flex-direction:column;align-items:center;justify-content:center;animation:fadeIn var(--transition-speed) ease}.loading-spinner{width:40px;height:40px;border-radius:50%;position:relative;margin-bottom:15px}.loading-spinner:after,.loading-spinner:before{content:"";position:absolute;border-radius:50%}.loading-spinner:before{width:100%;height:100%;background:linear-gradient(90deg,var(--accent-color) 0,#faedcd 100%);animation:spin 1s linear infinite}.loading-spinner:after{width:75%;height:75%;background:var(--history-bg);top:12.5%;left:12.5%;animation:spin .5s linear infinite reverse}.loading-text{font-size:1rem;color:var(--text-color);font-weight:500}.history-list .loading-placeholder{background-color:var(--card-bg);border-radius:12px;height:100px;overflow:hidden;position:relative;animation:pulse-bg 1.5s infinite;box-shadow:0 2px 4px rgba(0,0,0,.05)}.history-list .loading-placeholder:before{content:"";position:absolute;left:15px;top:15px;width:100px;height:24px;background-color:#e0e0e0;border-radius:4px}.history-list .loading-placeholder:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);animation:shimmer 1.5s infinite;transform:translateX(-100%)}#historyContainer .welcome-section{display:flex;justify-content:space-between;gap:10px}.group-card.loading{position:relative;overflow:hidden}.group-card.loading::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 1.5s infinite;transform:translateX(-100%);z-index:1}.group-card.loading .card-header h3{background-color:#e0e0e0;color:transparent;border-radius:4px;animation:pulse-bg 1.5s infinite}.group-card.loading .card-header p{background-color:#e0e0e0;color:transparent;width:70%;border-radius:4px;animation:pulse-bg 1.5s infinite}.group-card.loading .avatar-group{opacity:.5}.group-card.loading .avatar{background-color:#e0e0e0;border-radius:50%;animation:pulse-bg 1.5s infinite}.group-card.loading .avatar-img{opacity:0}.group-card.loading .settle-info-amount,.group-card.loading .settle-info-date span,.group-card.loading .settle-info-group,.group-card.loading .settle-info-matter{background-color:#e0e0e0;color:transparent;border-radius:4px;width:100%;display:block;animation:pulse-bg 1.5s infinite;z-index:5}.group-card.loading .settle-info-amount{width:80px;height:24px;color:transparent!important}.group-card.loading .settle-info-matter{width:120px;height:18px;margin-top:8px;color:transparent!important}.group-card.loading .settle-info-group{width:100px;height:16px;margin-top:8px;color:transparent!important}.group-card.loading .settle-info-date span{width:140px;height:16px}.group-card .card-content{animation:fadeInCard var(--transition-speed) ease forwards}.empty-state-message{color:#888;font-size:14px;text-align:center;margin:15px 0;font-style:italic}.group-card .settle-info-amount:empty,.group-card .settle-info-date span:empty,.group-card .settle-info-group:empty,.group-card .settle-info-matter:empty{display:none}.group-card .settle-info-amount:first-child:not(:empty){font-weight:600;color:var(--accent-color);font-size:18px}.group-card#lastSettle .settle-info-amount:not(:empty){font-size:30px;font-style:normal;font-weight:700;color:var(--text-color)}.group-card#lastSettle .settle-info-matter:not(:empty){font-size:1rem;font-weight:400;line-height:25.5px;color:var(--text-color)}.group-card#lastSettle .settle-info-group:not(:empty){font-size:13px;color:#888}.empty-state-message,.group-card .settle-info-amount,.group-card .settle-info-group,.group-card .settle-info-matter{animation:fadeInCard .5s ease forwards}.logout-item{border-top:1px solid var(--border-color)}.logout-button{background-color:#ef4444;color:#fff;border:none;padding:10px 15px;border-radius:8px;font-weight:500;display:flex;align-items:center;justify-content:center;width:100%;cursor:pointer;transition:all .2s ease}.logout-button:hover{background-color:#dc2626;transform:translateY(-1px);box-shadow:0 2px 10px rgba(220,38,38,.15)}.logout-button:active{background-color:#b91c1c;transform:translateY(1px);box-shadow:none}.logout-toast{position:fixed;bottom:90px;left:50%;transform:translate(-50%,100%);background-color:rgba(0,0,0,.8);color:#fff;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:500;z-index:10000;animation:fadeInUpLogout var(--transition-speed) ease-out forwards}@keyframes fadeInUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUpLogout{from{opacity:0;transform:translate(-50%,100%)}to{opacity:1;transform:translate(-50%,0)}}@-webkit-keyframes fadeInUp{from{opacity:0;-webkit-transform:translateY(10px)}to{opacity:1;-webkit-transform:translateY(0)}}@keyframes fadeInUpbot{from{visibility:hidden;margin-top:50px}to{visibility:visible;margin-top:0}}@keyframes identifier{from{opacity:0;transform:translate(-50%,50%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes receipt{0%{opacity:0;transform:translateY(-130%)}20%{opacity:1;transform:translateY(-90%)}30%{opacity:1;transform:translateY(-80%)}40%{opacity:1;transform:translateY(-70%)}60%{opacity:1;transform:translateY(-60%)}70%{opacity:1;transform:translateY(-40%)}100%{opacity:1;transform:translateY(0)}}@keyframes slideOut{0%{opacity:1;transform:translateY(0)}100%{opacity:1;transform:translateY(150%)}}@keyframes slideIn{0%{opacity:1;transform:translateY(-150%)}100%{opacity:1;transform:translateY(0)}}@keyframes fadeOut{from{opacity:1}to{opacity:0}}@keyframes fadeOutDown{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}@keyframes pulse-bg{0%,100%{opacity:.5}50%{opacity:.8}}@keyframes fadeInHistory{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInNoHistory{to{opacity:1;transform:translateY(0)}}@keyframes bubbleBounce{0%{transform:translateY(120%)}70%{transform:translateY(-10%)}85%{transform:translateY(5%)}100%{transform:translateY(0)}}@keyframes bubbleBounceDesktop{0%{transform:translateX(-120%)}70%{transform:translateX(10%)}85%{transform:translateX(-5%)}100%{transform:translateX(0)}}@keyframes scan{0%{top:0}50%{top:calc(100% - 4px)}100%{top:0}}@keyframes scanpulse{0%{opacity:.7}50%{opacity:1}100%{opacity:.7}}@keyframes slideUpFade{from{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%,0)}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeInCard{from{opacity:0}to{opacity:1}}.card-widget,.group-card,.item-card,.settle-now-btn,.tab-item,.user-action-btn,button,input[type=button]{-webkit-tap-highlight-color:transparent;transition:transform .15s ease,opacity .15s ease,background-color .15s ease}.tab-item:active,.user-action-btn:active,button:active,input[type=button]:active{transform:scale(.96)}.card-widget:active,.group-card:active,.item-card:active,.settle-now-btn:active{transform:scale(.98);opacity:.9}body,html{scroll-behavior:smooth;overscroll-behavior-y:contain}.card-widget:focus-within,.tab-item:focus,button:focus,input:focus,select:focus,textarea:focus{outline:0;box-shadow:none}.pull-to-refresh{pointer-events:none;position:fixed;top:env(safe-area-inset-top);left:0;width:100%;height:60px;display:flex;justify-content:center;align-items:center;opacity:0;transform:translateY(-100%);transition:transform .3s ease,opacity .3s ease}.pull-to-refresh-container{display:flex;align-items:center;justify-content:center;background-color:var(--card-bg);color:var(--body-text);border-radius:50px;padding:10px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.pull-to-refresh.visible{opacity:1;transform:translateY(0);z-index:10000}.pull-to-refresh-spinner{width:24px;height:24px;border:3px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:var(--body-text);animation:spinner-rotation 1s linear infinite;margin-right:8px}.pull-to-refresh-text{font-size:14px;font-weight:500;color:var(--body-text)}.pwa-install-banner{width:100%;max-width:500px;position:fixed;bottom:50px;left:50%;background-color:#212529;color:#fff;padding:12px 16px;margin:0 12px;display:flex;align-items:center;justify-content:space-between;z-index:998;box-shadow:0 -2px 10px rgba(0,0,0,.1);transform:translate(-50%,500%);transition:transform .3s ease;border-radius:12px}.pwa-install-banner.show{transform:translate(-50%,0)}.pwa-banner-content{display:flex;align-items:center;flex:1}.pwa-banner-icon{width:50px;height:50px;margin-right:12px;border-radius:8px;overflow:hidden}.pwa-banner-icon img{width:100%;height:100%;object-fit:cover}.pwa-banner-text{flex:1}.pwa-banner-title{font-weight:600;font-size:1rem;margin:0 0 4px;line-height:120%}.pwa-banner-description{font-size:13px;margin:0;opacity:.8;line-height:120%}.pwa-banner-actions{display:flex;gap:10px}.pwa-install-btn{background-color:#fff;color:#212529;border:none;padding:8px 14px;border-radius:6px;font-weight:500;font-size:14px;cursor:pointer;transition:background-color .2s ease}.pwa-install-btn:hover{background-color:#f0f0f0}.pwa-dismiss-btn{background:0 0;border:none;color:#fff;padding:8px;cursor:pointer;opacity:.7;font-size:1rem;transition:opacity .2s ease}.pwa-dismiss-btn:hover{opacity:1}.toast-notification{position:fixed;bottom:-60px;left:50%;transform:translateX(-50%);background-color:#212529;color:#fff;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;z-index:10000;box-shadow:0 4px 12px rgba(0,0,0,.15);transition:bottom .3s ease}.toast-notification.show{bottom:20px}@media (prefers-color-scheme:dark){.toast-notification{background-color:#f8f9fa;color:#212529}}.button-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .8s linear infinite;margin-right:8px;vertical-align:middle}.loading{opacity:.8;cursor:wait;display:flex!important;align-items:center;justify-content:center}.paynow-name-selection{display:flex;flex-direction:column;gap:8px;width:100%}.paynow-select{appearance:none;background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-color);font-size:16px;height:48px;padding:0 12px;width:100%;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%3Cpath%20fill%3D%22%23555555%22%20d%3D%22M10.293%203.293%2C6%207.586%2C1.707%203.293A1%2C1%2C0%2C0%2C0%2C.293%204.707l5%2C5a1%2C1%2C0%2C0%2C0%2C1.414%2C0l5-5a1%2C1%2C0%2C1%2C0-1.414-1.414Z%22%2F%3E%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px}.paynow-select:focus{border-color:var(--primary-color);outline:0}.dark-mode .paynow-select{background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%3Cpath%20fill%3D%22%23cccccc%22%20d%3D%22M10.293%203.293%2C6%207.586%2C1.707%203.293A1%2C1%2C0%2C0%2C0%2C.293%204.707l5%2C5a1%2C1%2C0%2C0%2C0%2C1.414%2C0l5-5a1%2C1%2C0%2C1%2C0-1.414-1.414Z%22%2F%3E%3C%2Fsvg%3E")}#paynowName{display:none}#birthdayMembersList.group-members{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:12px;padding:0 0 10px 0}#birthdayMembersList .member-avatar-wrapper .member-avatar{border:2px solid transparent;box-shadow:0 0 5px rgba(255,215,0,.5);transition:all .3s ease-in-out}#birthdayMembersList .member-avatar-wrapper.selected .member-avatar{border:2px solid var(--birthday-color);box-shadow:0 0 5px rgba(255,215,0,.5)}.birthday-person-btn{background:linear-gradient(135deg,#ff5454,#ff6b9d,#ff8e89);background-size:200% 200%;animation:birthdayGradientMove 6s linear infinite;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:600;height:42px;margin:5px 0;padding:0 16px;transition:all .3s ease;box-shadow:0 2px 8px rgba(255,107,157,.3);width:100%}.birthday-person-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(255,107,157,.4)}.birthday-person-btn:active{transform:translateY(0)}.birthday-person-btn.has-birthday-person{background:var(--birthday-color);box-shadow:0 2px 8px rgba(255,215,0,.3)}.birthday-person-btn.has-birthday-person:hover{box-shadow:0 4px 12px rgba(255,215,0,.4)}.birthday-icon{font-size:16px;animation:bounce 2s infinite}@keyframes birthdayGradientMove{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}@keyframes bounce{0%,100%,20%,50%,80%{transform:translateY(0)}40%{transform:translateY(-4px)}60%{transform:translateY(-2px)}}.birthday-text{font-size:14px}.birthday-helper-text{color:var(--text-secondary);font-size:14px;text-align:center;margin-bottom:20px;line-height:1.4}.birthday-members-list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.birthday-member-option{background:var(--card-bg);border:2px solid var(--border-color);border-radius:12px;cursor:pointer;display:flex;align-items:center;gap:12px;padding:12px 16px;transition:all .3s ease;position:relative}.birthday-member-option:hover{border-color:#ff6b9d;background:var(--hover-bg)}.birthday-member-option.selected{border-color:#ff6b9d;background:rgba(255,107,157,.1);box-shadow:0 2px 8px rgba(255,107,157,.2)}.birthday-member-option.selected::after{content:"🎂";position:absolute;right:16px;font-size:18px;animation:celebration .6s ease}@keyframes celebration{0%{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1.2) rotate(180deg);opacity:1}100%{transform:scale(1) rotate(360deg);opacity:1}}.birthday-member-avatar{width:40px;height:40px;border-radius:50%;background:var(--primary-color);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:16px;flex-shrink:0}.birthday-member-name{font-size:16px;font-weight:500;color:var(--text-color);flex-grow:1;line-height:120%}.birthday-status-display{background:var(--birthday-color);border-radius:12px;padding:7px 15px;text-align:center;margin-bottom:20px;box-shadow:0 2px 8px rgba(255,215,0,.3)}.birthday-selected-member{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;color:#8b4513;font-weight:600;font-size:16px}.birthday-cake-icon{font-size:20px}@keyframes rotate{0%{transform:rotate(-20deg)}50%{transform:rotate(20deg)}100%{transform:rotate(-20deg)}}.birthday-status-text{color:#8b4513;line-height:140%}.birthday-member-name{color:#8b4513;font-weight:700}#birthdayPersonModal .modal-actions{flex-direction:column}.birthday-button-two{width:100%;display:flex;justify-content:center;align-items:center;gap:10px}.member-avatar.birthday-person{position:relative;border:2px solid var(--birthday-color);box-shadow:0 0 4px rgba(255,215,0,.5)}.member-avatar.birthday-person::after{content:"🎂";position:absolute;top:-6px;right:-6px;background:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:12px;box-shadow:0 2px 4px rgba(0,0,0,.2);animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}100%{transform:scale(1)}}.member-name.birthday-person::before{content:"🎂 ";margin-right:4px}.dark-mode .birthday-status-display{background:linear-gradient(135deg,#b8860b,peru)}.dark-mode .birthday-member-name,.dark-mode .birthday-selected-member,.dark-mode .birthday-status-text{color:#fff}.birthday-celebration{background:var(--birthday-color);border-radius:8px;margin:8px 0;animation:celebrationGlow 2s ease-in-out infinite alternate}.birthday-celebration .member-bill-row-label{font-weight:700;color:#8b4513}.birthday-free{font-weight:700;color:#8b4513;font-size:18px;text-shadow:1px 1px 2px rgba(0,0,0,.1)}@keyframes celebrationGlow{0%{box-shadow:0 2px 8px rgba(255,215,0,.3)}100%{box-shadow:0 4px 16px rgba(255,215,0,.6)}}.birthday-share{background:rgba(255,215,0,.1);border-left:4px solid var(--birthday-color);padding-left:12px;margin:4px 0}.birthday-share .member-bill-row-label{font-weight:600;color:var(--primary-color)}.birthday-share .member-bill-row-value{font-weight:600;color:#ff6b35}.dark-mode .birthday-celebration{background:linear-gradient(135deg,#b8860b,peru)}.dark-mode .birthday-celebration .member-bill-row-label,.dark-mode .birthday-free{color:#fff}.dark-mode .birthday-share{background:rgba(184,134,11,.2);border-left-color:#b8860b}.birthday-celebration-item{background:var(--birthday-color);border:2px solid #ff6b9d;border-radius:12px;margin:16px 0;position:relative;overflow:hidden;animation:celebrationPulse 3s ease-in-out infinite}.birthday-celebration-item::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes celebrationPulse{0%,100%{transform:scale(1);box-shadow:0 4px 16px rgba(255,215,0,.4)}50%{transform:scale(1.02);box-shadow:0 6px 20px rgba(255,215,0,.6)}}@keyframes shimmer{0%{left:-100%}100%{left:100%}}.birthday-treat-header{display:flex;align-items:center;gap:8px;padding:12px 16px 8px;border-bottom:1px solid rgba(139,69,19,.2);margin-bottom:8px}.birthday-treat-icon{font-size:24px;animation:bounce 2s infinite}.birthday-treat-title{font-size:18px;font-weight:700;color:#8b4513;text-shadow:1px 1px 2px rgba(255,255,255,.5)}.birthday-free-text{font-weight:600;color:#8b4513;font-style:italic}.birthday-share-item{background:linear-gradient(135deg,rgba(255,215,0,.15),rgba(255,179,71,.15));border:2px solid var(--birthday-color);border-radius:12px;margin:16px 0;position:relative}.birthday-share-header{display:flex;align-items:center;gap:8px;padding:12px 16px 8px;border-bottom:1px solid rgba(255,215,0,.3);margin-bottom:8px;background:rgba(255,215,0,.1);border-radius:10px 10px 0 0}.birthday-share-icon{font-size:20px;animation:rotate 3s linear infinite}.birthday-share-title{font-size:16px;font-weight:600;color:var(--primary-color)}.birthday-contribution{font-weight:700;color:#ff6b35;font-size:16px}.dark-mode .birthday-celebration-item{background:linear-gradient(135deg,#b8860b,peru);border-color:#ff8e89}.dark-mode .birthday-free-text,.dark-mode .birthday-treat-title{color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.dark-mode .birthday-share-item{background:linear-gradient(135deg,rgba(184,134,11,.25),rgba(205,133,63,.25));border-color:#b8860b}.dark-mode .birthday-share-header{background:rgba(184,134,11,.2);border-bottom-color:rgba(184,134,11,.4)}.dark-mode .birthday-share-title{color:#fff}@media (min-width:768px){.paynow-name-selection{flex-direction:row}.paynow-select{flex:1}#paynowName{flex:2}}.payer-row{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border-color);font-weight:500}.payer-row .detail-label{color:var(--primary-color);font-weight:600}.payer-row .detail-value{font-weight:600}#paynowMemberModal .modal-content{max-width:500px;width:90%;max-height:80vh;overflow-y:auto}#paynowMemberModal .group-members{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:12px;padding:15px 0 0 0}#paynowMemberModal .member-avatar-wrapper{cursor:pointer;transition:transform .2s ease,opacity .2s ease;opacity:.7}#paynowMemberModal .member-avatar-wrapper:hover{transform:translateY(-3px);opacity:1}#paynowMemberModal .member-avatar-wrapper.selected{opacity:1;position:relative}#paynowMemberModal .member-avatar-wrapper.selected .member-avatar{border:3px solid #10b981;border-radius:50%}#paynowMembersList.group-members .member-avatar{width:70px;height:70px;border:0 solid #10b981;transition:all .1s ease-in}.custom-paynow-section{margin-top:20px}.custom-paynow-divider{display:flex;align-items:center;margin:10px 0;gap:10px}.custom-paynow-divider .divider-line{flex:1;height:1px;background:var(--border-color);line-height:120%}.custom-paynow-divider .divider-text{color:var(--body-desc);font-size:14px;padding:0 10px;line-height:120%}.select-paynow-member-btn{appearance:none;background-color:var(--card-bg);border:1px solid var(--body-text);border-radius:8px;color:var(--text-color);font-size:16px;height:48px;padding:0 12px;width:100%;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:border-color .2s ease}.select-paynow-member-btn:hover{border-color:var(--primary-color)}.select-paynow-member-btn .btn-icon{opacity:.5;transition:transform .2s ease}.select-paynow-member-btn:hover .btn-icon{transform:translateX(3px)}.paynow-name-selection.member-selected #paynowName{display:none}@media (prefers-color-scheme:dark){.pwa-install-banner{background-color:#343a40}.pwa-install-btn{background-color:#f8f9fa}.pwa-install-btn:hover{background-color:#e9ecef}}@media (min-width:768px){.page-container{max-width:600px}.welcome-section h1{font-size:28px}.paynow-name-selection{flex-direction:row;gap:10px}.select-paynow-member-btn{flex:1}#paynowName{flex:2}}@media screen and (min-width:1100px){#navbar{position:fixed;left:0;top:0;height:100%;width:10%;max-width:120px;z-index:1}.member-avatar-wrapper.sortable-item .member-avatar{width:70px;height:70px}#menuWrapper{flex-direction:column;align-items:center}#bubbleWrapper,#menuWrapper{display:flex;bottom:0;flex-direction:column;align-items:center;height:100%}.bubble-bounce{animation:bubbleBounceDesktop .5s forwards}.menuElement.active{transform:translateX(-100%)}#bubble1,#menu1{order:2}#bubble2,#menu2{order:1}#bubble3,#menu3{order:3}.page-container{width:100%;max-width:100%;padding-bottom:20px;margin:0}#historyContainer,#homeContainer,#settingsContainer{width:85%;left:120px;margin:0 auto}.menuElement{display:flex;justify-content:center;align-items:center;transform:translateY(0);height:33.33%}#homeContainer{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(5,1fr);grid-column-gap:15px;grid-row-gap:15px}#homeContainer.active{display:grid}.welcome-section{grid-column:span 4;grid-row:span 1}.weather-card{grid-column:span 4;grid-row:span 1}#startSettleCard{grid-column:span 4;grid-row:span 1}.card-widget:nth-child(4){grid-column:span 2;grid-row:span 1}.card-widget:nth-child(5){grid-column:span 2;grid-row:span 1}#settleNowScreen{gap:20px;align-items:center}.settle-now-header{width:100%;max-width:1100px}.white-slide-container{width:100%;max-width:1100px;max-height:calc(100% - 15%);border-radius:30px}.settle-view.active{display:flex;flex-direction:column;justify-content:space-between;max-width:1100px}.settle-choice-container{display:flex;justify-content:center;align-items:center;flex-direction:row;height:auto}.new-group-option,.saved-group-option{width:40%;height:240px}.btn-container{width:100%;display:flex;justify-content:center;align-items:center}.get-started-btn,.next-btn{width:50%;max-width:500px}.or-divider{height:100%;display:flex;flex-direction:column;width:100px}.divider-line{width:1.5px;height:100%}.add-member-button{width:50%;max-width:500px}#newGroupMembersView .member-list{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px;justify-content:flex-start;width:100%}.member-avatar{width:90px;height:90px}.saved-groups-list-container{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(min-content,auto);grid-column-gap:20px;grid-row-gap:20px;width:100%;max-width:100%}.saved-group-card{min-width:0;max-width:100%;height:auto;min-height:140px;overflow:hidden;justify-content:space-between;transition:all .3s cubic-bezier(.25, .8, .25, 1);box-shadow:0 1px 3px rgba(0,0,0,.05)}.saved-group-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px rgba(0,0,0,.08)}.saved-group-members{margin-top:auto}.add-settle-item-container{position:relative;width:calc(60% - 30px);height:calc(100% - 30px);overflow:inherit;margin-top:0;padding-bottom:0}.finalise-bill-container{position:relative;width:calc(60% - 15px);height:calc(100% - 30px);overflow:inherit;margin-top:0;padding-bottom:0}.bill-summary-modal{width:calc(40% - 15px);height:calc(100% - 108px);position:absolute;left:calc(60% - 20px);right:0;bottom:0!important;top:79px;border-radius:12px}.edit-member-avatar{width:90px;height:90px}.create-group-modal,.favourite-group-section,.finalise-bill-container,.item-details-section,.split-section,.white-slide-container{border-radius:12px}.bill-summary-footer{min-height:87px}.add-more-items-btn,.bill-summary-drag-handle,.share-action-buttons .share-bill-btn,.share-close-modal,.summary-close-modal,.swipe-instructions{display:none}.bill-summary-modal-content .modal-header{padding:20px 20px 0 20px}.modal-overlay{opacity:0;display:none}.bill-summary-modal-content{display:flex!important;justify-content:space-between}#dishSummaryContainer{max-height:calc(100% - 135px)}.finalise-bill-container{height:calc(100% - 105px)}#finaliseSettleBillScreen{margin-top:0;padding-top:0;padding-right:40px;max-width:1100px}.settle-lah-btn{width:calc(60% - 15px)}.loading-screen{flex-direction:row-reverse}.loading-top,.success-content{height:100%}.loading-footer,.success-footer{height:100%;border-radius:0}.success-screen.active{flex-direction:row}.success-content{justify-content:center;width:50%;max-width:100%}.success-footer{width:50%;justify-content:flex-start;padding-top:10vh}.share-action-buttons{margin-top:0}.share-bill-modal-content{width:100%;max-width:100%}.share-bill-modal.active{width:50%;height:50%;max-height:50%;bottom:0;right:0;left:auto;border-radius:0;box-shadow:none}.share-bill-modal .modal-header{padding:10px 0 10px 0;border-radius:0;width:100%}.share-buttons{display:grid!important;grid-template-columns:repeat(5,1fr);grid-gap:15px;overflow-y:auto}.share-btn,a.share-btn{gap:10px;display:flex;flex-direction:column}a.share-btn img,button.share-btn img{width:35px;height:35px;padding-right:0}a.share-btn .share-btn-span,button.share-btn .share-btn-span{text-align:center}.dish-name{font-size:1.4rem;margin:0 0 10px 0}.dish-price{font-size:1.6rem}.dish-members-divider span{font-size:.9rem;line-height:130%}.dish-action-btn{width:30px;height:30px}.dish-action-btn img{width:15px;height:15px}.bill-summary-subtotal{padding:10px 20px}#lastCreatedGroup{display:flex;flex-direction:column}#lastCreatedGroup .avatar-group{display:flex;flex-direction:row;align-items:center;flex:1}#lastCreatedGroup .avatar{width:75px;height:75px}#birthdayMembersList .member-avatar,#groupMembers .member-avatar{width:70px;height:70px}}@media (max-width:480px){.page-container{padding:0 15px 90px 15px;padding-top:env(safe-area-inset-top)}.weather-temp h1{font-size:36px}#navbarContainer{min-width:100%}#navbar{background-color:var(--navbar-bg)}.bubble{width:65px;height:65px}}@media (max-width:350px){.group-card,.settle-card,.weather-card{padding:12px 15px}.weather-temp h1{font-size:30px}.cat-image{width:120px;height:120px}.welcome-section h1{font-size:20px}}