@font-face{font-family:Vazirmatn;src:url('Vazirmatn.woff2') format('woff2');font-weight:100 900;font-display:swap}*{box-sizing:border-box}body{margin:0;background:#f6f7fb;color:#23243c;font-family:Vazirmatn,Tahoma,sans-serif;font-size:16px;line-height:1.8}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0;background:none;color:inherit}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ab97ff;outline-offset:3px}a{color:inherit}h1,h2,h3,p{margin:0}h1{font-size:28px;letter-spacing:-.7px}h2{font-size:21px}h3{font-size:17px}small,.muted{color:#87899e}small{font-size:13px}.icon{width:21px;height:21px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:white;border-left:1px solid #ebeaf2;padding:34px 23px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;font-size:29px;font-weight:850;letter-spacing:-1px}.brand-mark{background:#6d4aff;color:white;border-radius:15px;width:43px;height:43px;font-size:28px;line-height:43px;text-align:center;font-weight:900;box-shadow:0 7px 17px #6d4aff25}.brand small{display:block;font-size:11px;letter-spacing:3px;color:#9393a9;margin-top:-10px;font-weight:500}.sidebar nav{margin-top:53px;display:grid;gap:9px}.nav-btn{display:flex;align-items:center;gap:13px;width:100%;text-align:right;padding:13px 17px;border-radius:12px;color:#818298;font-weight:500}.nav-btn.active{background:#f0ecff;color:#7352ed;font-weight:700}.nav-btn:hover{background:#f6f4ff}.count{background:#ece7ff;color:#7652ed;border-radius:7px;padding:0 7px;font-size:12px;margin-right:auto}.sidebar-foot{margin-top:auto}.sidebar-note{background:#f7f8fc;border-radius:16px;padding:18px;font-size:14px;line-height:2;color:#86889b;margin-bottom:20px}.sidebar-note strong{display:block;color:#4c4e68;margin-bottom:5px}.profile-mini{border-top:1px solid #eeeeF5;padding-top:20px;display:flex;align-items:center;gap:10px;width:100%;text-align:right}.avatar{width:39px;height:39px;border-radius:50%;background:#eae4ff;color:#7552eb;font-size:15px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.avatar.a1{background:#dff5eb;color:#39a77c}.avatar.a2{background:#ffe8d9;color:#d59054}.avatar.a3{background:#e3eafa;color:#5b85cb}.avatar.a4{background:#fde5ed;color:#bd6b89}.profile-mini small{display:block;line-height:1.4;font-size:12px}.main{padding:32px 44px 50px;max-width:1480px;width:100%;margin:auto}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}.topbar-right{display:flex;align-items:center;gap:10px;color:#818399;font-size:14px}.top-actions{display:flex;gap:12px;align-items:center}.icon-btn{width:43px;height:43px;display:flex;align-items:center;justify-content:center;border:1px solid #e8e8f1;background:white;border-radius:12px;position:relative}.unread-dot{position:absolute;top:7px;right:10px;width:7px;height:7px;background:#6d4aff;border:2px solid white;border-radius:50%}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:15px}.page-head p{color:#9394a6;font-size:14px;margin-top:3px}.primary,.secondary,.danger{padding:10px 19px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:14px}.primary{background:#6d4aff;color:white;box-shadow:0 5px 12px #6d4aff18}.primary:hover{background:#5e3ae9}.secondary{border:1px solid #e7e5f0;background:white;color:#65647f}.danger{background:#fff0f1;color:#dc5968}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:30px}.stat{padding:24px;border:1px solid #ebeaf3;border-radius:17px;background:white}.stat.primary-stat{background:#272842;color:white;border:0;position:relative;overflow:hidden}.primary-stat:after{content:'';position:absolute;width:170px;height:170px;border:24px solid #ffffff05;border-radius:50%;left:-30px;bottom:-75px}.stat-top{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:#88899e}.primary-stat .stat-top{color:#d4d3e6}.stat-symbol{padding:8px;border-radius:10px;background:#f3f0ff;color:#825aee}.primary-stat .stat-symbol{background:#ffffff10;color:#c9b8ff}.stat-amount{font-size:30px;font-weight:800;line-height:1.8;margin-top:13px}.stat-amount span{font-size:13px;font-weight:400;color:#9697aa;margin-right:6px}.primary-stat .stat-amount span{color:#c2c1d9}.stat-bottom{font-size:12px;color:#9596aa;margin-top:5px}.green{color:#2fa67c}.orange{color:#dc9660}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:26px}.panel{background:white;border:1px solid #ebeaf3;border-radius:18px;padding:22px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px}.section-head h2{font-size:18px}.text-btn{color:#7854ed;font-size:13px;font-weight:600}.tabs{display:flex;gap:5px;border-bottom:1px solid #ecebf4;margin-bottom:19px}.tab{padding:10px 15px;font-size:14px;color:#8a8b9f;border-bottom:2px solid transparent}.tab.active{border-color:#7954ef;color:#7954ef;font-weight:700}.group-card{padding:19px;border:1px solid #e9e8f2;border-radius:14px;margin-bottom:13px;transition:border-color .2s,transform .2s;cursor:pointer}.group-card:hover{border-color:#baabed;transform:translateY(-2px)}.group-top{display:flex;align-items:center;gap:12px}.emoji-box{width:51px;height:51px;background:#f2efff;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:25px;flex-shrink:0}.group-title{flex:1}.group-title small{display:block;margin-top:1px}.badge{font-size:12px;padding:3px 9px;border-radius:6px;background:#f1edff;color:#7953e9;white-space:nowrap}.badge.settled{background:#ecf8f2;color:#42a47f}.badge.pending{background:#fff5e7;color:#b98c43}.group-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f0eff5;margin-top:16px;padding-top:13px;gap:10px}.avatar-stack{display:flex;padding-right:5px}.avatar-stack .avatar{border:3px solid white;margin-right:-6px;width:31px;height:31px;font-size:11px}.group-balance{font-size:14px;font-weight:600}.group-balance small{font-size:11px;font-weight:400}.debt-list{display:grid;gap:16px}.debt-row{display:flex;align-items:center;gap:11px}.debt-row .debt-name{flex:1;font-size:14px;line-height:1.7}.debt-row .debt-name small{display:block;font-size:11px}.debt-row b{font-size:14px}.help-card{margin-top:19px;background:#f0edff;border:1px solid #e5dfff;border-radius:17px;padding:22px;color:#706885;font-size:13px}.help-card .icon{color:#7950ef;margin-bottom:12px;width:28px;height:28px}.help-card h3{color:#4b3d76;margin-bottom:7px;font-size:15px}.recent{margin-top:27px}.expense-row{display:flex;align-items:center;gap:13px;padding:16px 0;border-bottom:1px solid #f1eff6}.expense-row:last-child{border-bottom:0}.category-icon{width:41px;height:41px;display:flex;justify-content:center;align-items:center;background:#f6f3ff;border-radius:12px;font-size:21px;flex-shrink:0}.expense-text{flex:1;min-width:0}.expense-text h3{font-size:14px}.expense-text small{display:block;font-size:12px}.expense-money{text-align:left;font-size:15px;white-space:nowrap}.expense-money small{display:block;font-size:11px}.empty{text-align:center;padding:36px 16px;color:#9493a8}.empty .icon{width:36px;height:36px;color:#c0b2f3;margin-bottom:12px}.empty h3{color:#58556f;margin-bottom:7px}.empty p{font-size:14px;max-width:380px;margin:0 auto 17px}.detail-head{display:flex;align-items:center;gap:15px;margin-bottom:25px}.detail-head .emoji-box{width:65px;height:65px;font-size:33px}.detail-head h1{font-size:26px}.detail-head .actions{margin-right:auto;display:flex;gap:8px;flex-wrap:wrap}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px}.member-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #f0eef5}.member-row .name{flex:1;font-size:14px}.member-row small{display:block;font-size:12px}.member-balance{font-size:13px;font-weight:600}.transfer{background:#faf9fe;border:1px solid #ede9f8;padding:17px;border-radius:13px;margin-top:12px}.transfer-head{display:flex;align-items:center;gap:8px;font-size:14px}.transfer-amount{font-size:22px;font-weight:750;margin:11px 0}.transfer-amount small{font-size:12px;font-weight:400}.card-number{font-family:Vazirmatn,Tahoma;letter-spacing:1px;direction:ltr;text-align:right;font-size:14px;color:#8b87a3;margin:8px 0}.payment-row{border:1px solid #ebe7f5;border-radius:12px;padding:16px;margin-top:12px}.payment-row p{font-size:14px}.payment-row .actions{display:flex;gap:8px;margin-top:12px}.invite{border:1px solid #eae6f7;border-radius:13px;padding:20px;margin-bottom:15px}.invite-head{display:flex;gap:13px;align-items:center}.invite .actions{display:flex;gap:9px;margin-top:15px}.notice{padding:17px;border-bottom:1px solid #f0edf6;font-size:14px;display:flex;gap:12px}.notice.unread{background:#f9f7ff}.notice small{display:block;margin-top:4px}.form{display:grid;gap:18px}.field{display:grid;gap:7px;font-size:14px;font-weight:500}.field input,.field select,.field textarea,.search{border:1px solid #e3e0ed;background:#fff;border-radius:10px;padding:11px 13px;width:100%;color:#39344f;font-size:15px;min-width:0}.field input[readonly]{background:#f5f4f8;color:#9b96aa}.field textarea{resize:vertical;min-height:84px}.hint{font-size:12px;color:#9b96a8;font-weight:400}.fields-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.modal-backdrop{position:fixed;inset:0;background:#1b15396a;backdrop-filter:blur(4px);z-index:50;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:white;border-radius:22px;max-width:540px;width:100%;max-height:92vh;overflow:auto;padding:27px;box-shadow:0 25px 70px #1b15392a}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.modal-head h2{font-size:21px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.participants{display:grid;grid-template-columns:1fr 1fr;gap:10px}.participant{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid #e9e5f3;border-radius:11px;font-size:14px;cursor:pointer}.participant:has(input:checked){border-color:#b7a5fb;background:#f7f4ff}.participant input{accent-color:#7451ed;width:17px;height:17px}.participant .avatar{width:29px;height:29px;font-size:12px}.split-preview{background:#f6f3ff;padding:14px;border-radius:11px;font-size:13px;color:#7a64af}.emoji-picker{display:flex;gap:9px}.emoji-option{background:#f7f4fc;border:2px solid transparent;border-radius:11px;padding:7px 11px;font-size:23px}.emoji-option.selected{border-color:#9474fb}.error-text{background:#fff1f2;color:#c95567;font-size:13px;padding:11px;border-radius:8px;display:none}.error-text.visible{display:block}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(20px);max-width:calc(100% - 40px);background:#272842;color:white;border-radius:12px;padding:13px 23px;font-size:14px;opacity:0;pointer-events:none;transition:.2s;z-index:100}#toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}.loading{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px}.loading p{font-size:28px;font-weight:800}.loading span{font-size:14px;color:#9390a8}.auth{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:white}.auth-art{background:#272842;padding:60px;color:white;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.auth-art .brand{position:absolute;top:45px}.auth-art h1{font-size:45px;line-height:1.65;max-width:400px;margin-bottom:16px}.auth-art p{color:#bcb9d4;max-width:370px;font-size:17px}.auth-art .lime{color:#cefa8a}.art-ledger{background:#ffffff08;border:1px solid #ffffff16;border-radius:20px;padding:24px;max-width:390px;margin-top:38px;transform:rotate(-3deg)}.art-ledger .ledger-line{display:flex;justify-content:space-between;border-bottom:1px solid #ffffff12;padding:12px 0;font-size:14px}.art-ledger .ledger-line:last-child{border:0}.auth-form-wrap{padding:55px 45px;display:flex;align-items:center;justify-content:center}.auth-form{width:100%;max-width:400px}.auth-form h2{font-size:28px;margin-bottom:5px}.auth-form>p{font-size:14px;color:#9691a6;margin-bottom:25px}.auth-form .primary{width:100%;padding:13px}.auth-switch{margin-top:20px;text-align:center;font-size:14px;color:#9891a6}.demo-link{display:block;text-align:center;width:100%;margin-top:19px;color:#7d58e9;font-size:14px}.demo-banner{display:flex;align-items:center;justify-content:space-between;padding:10px 17px;border:1px solid #e3dafa;background:#f0eaff;color:#6e53a8;font-size:13px;border-radius:10px;margin-bottom:22px;gap:15px}.mobile-brand{display:none}.profile-panel{max-width:640px}.back-btn{color:#8f81b8;font-size:14px;margin-bottom:18px;display:flex;align-items:center;gap:6px}.search{max-width:230px;font-size:13px;padding:9px 13px}.row-actions{display:flex;gap:2px}.row-actions button{padding:6px;color:#a5a0b9}.row-actions .icon{width:16px;height:16px}.mobile-nav{display:none}.footer-note{text-align:center;color:#aaa6b8;font-size:12px;margin-top:40px}.warning{background:#fff8ec;border:1px solid #f4e7c9;padding:13px;border-radius:10px;font-size:13px;color:#a18a5b;margin-bottom:17px}.ltr{direction:ltr;text-align:left}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.filter-row{display:flex;justify-content:space-between;gap:12px;margin-bottom:18px}.all-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.all-groups .group-card{margin:0;background:white}.sums{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;color:#827996;margin:5px 0 17px}.sums span{padding:6px 12px;background:#f6f3fd;border-radius:8px}
@media(min-width:1500px){.main{padding:40px 65px}}@media(max-width:1150px){.shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding:30px 15px}.main{padding:28px}.dashboard-grid,.detail-grid{grid-template-columns:minmax(0,1fr) 265px;gap:18px}.stat{padding:19px}.stat-amount{font-size:25px}}@media(max-width:930px){.dashboard-grid,.detail-grid{grid-template-columns:1fr}.dashboard-aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.help-card{margin:0}.auth-art{padding:35px}.auth-art h1{font-size:35px}.detail-grid>aside{order:0}}@media(max-width:700px){body{font-size:16px}.shell{display:block}.sidebar{display:none}.main{padding:21px 18px 95px}.topbar{margin-bottom:27px}.topbar-right{display:none}.mobile-brand{display:flex;font-size:25px}.mobile-brand .brand-mark{width:35px;height:35px;line-height:35px;font-size:24px;border-radius:12px}.top-actions .avatar{display:none}h1{font-size:24px}.page-head{align-items:flex-start}.page-head p{font-size:12px}.page-head .primary{padding:9px 12px;font-size:12px}.stats{gap:9px;margin-bottom:22px}.stat{padding:14px 11px;border-radius:13px}.stat-top{font-size:11px}.stat-symbol{display:none}.stat-amount{font-size:19px;margin-top:10px}.stat-amount span{font-size:10px;display:block;margin:0}.stat-bottom{font-size:10px}.dashboard-grid{gap:20px}.panel{padding:18px;border-radius:16px}.dashboard-aside{grid-template-columns:1fr}.help-card{display:none}.section-head h2{font-size:17px}.group-card{padding:15px}.group-title h3{font-size:16px}.group-title small{font-size:11px}.badge{font-size:10px}.group-balance{font-size:12px}.recent{margin-top:20px}.mobile-nav{position:fixed;bottom:0;right:0;left:0;background:#fff;border-top:1px solid #ece8f5;display:flex;justify-content:space-around;padding:10px 5px max(10px,env(safe-area-inset-bottom));z-index:30}.mobile-nav button{display:flex;flex-direction:column;gap:3px;align-items:center;color:#9390a3;font-size:10px;padding:3px 13px}.mobile-nav button.active{color:#754bed}.mobile-nav .icon{width:21px;height:21px}.all-groups{grid-template-columns:1fr}.search{max-width:170px}.auth{display:block}.auth-art{display:none}.auth-form-wrap{min-height:100vh;padding:32px 23px}.auth-form-wrap .mobile-brand{margin-bottom:38px}.fields-two{gap:10px}.modal-backdrop{padding:12px}.modal{padding:22px;border-radius:18px}.detail-head{flex-wrap:wrap;gap:12px}.detail-head h1{font-size:23px}.detail-head .actions{margin:5px 0 0;width:100%}.detail-head .actions .primary{flex:1}.participants{gap:7px}.participant{padding:9px;font-size:12px}.expense-money{font-size:13px}.expense-row{gap:9px}.demo-banner{font-size:11px}.footer-note{display:none}}

.expense-detail-button{padding:0;text-align:right;font-size:inherit;font-weight:inherit;line-height:inherit}.expense-detail-button:hover{color:#7451ed;text-decoration:underline}.member-row small{line-height:1.9}.tabs .tab{white-space:nowrap}@media(max-width:380px){.stats{gap:6px}.stat{padding:12px 8px}.stat-amount{font-size:16px}.stat-bottom{line-height:1.6}.top-actions>span{display:none}.group-top{gap:8px}.emoji-box{width:43px;height:43px}.group-title h3{font-size:14px}}
/* A consistent page frame keeps short screens anchored to the top. */
.main{margin:0 auto;align-self:start}.topbar{background:#fff;border:1px solid #ebeaf3;border-radius:16px;padding:12px 18px;margin-bottom:22px;min-height:70px}.topbar-right{color:#625f7a}.topbar-right>.icon{color:#8765ec}.top-actions>button:last-child{display:flex;padding:0}.page-head{background:linear-gradient(110deg,#fff 45%,#f5f1ff);border:1px solid #e7e1f5;border-radius:18px;padding:24px 26px;min-height:116px;margin-bottom:24px;position:relative}.page-heading{display:flex;align-items:center;gap:17px;min-width:0}.page-heading-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:54px;height:54px;border:1px solid #e3dafc;border-radius:16px;background:#eee8ff;color:#7950e8}.page-heading-icon>.icon{width:25px;height:25px}.page-head p{color:#827a98;line-height:1.9;margin-top:5px}.page-head h1{font-size:25px}.page-head>.primary{flex-shrink:0}.detail-head{padding:22px;background:#fff;border:1px solid #e7e1f5;border-radius:18px}.filter-row{align-items:center;background:white;border:1px solid #ebeaf3;border-radius:13px;padding:12px 17px}.all-groups>.empty{grid-column:1/-1;background:#fff;border:1px dashed #ddd5f0;border-radius:18px;min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center}.fields-two{align-items:start}.field input,.field select{height:49px}.field input[dir="ltr"]{text-align:left;unicode-bidi:plaintext}.profile-panel .fields-two .field{grid-template-rows:auto 49px auto}.profile-panel .fields-two .hint{line-height:1.8}.profile-panel{max-width:760px}.symbol-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.chosen-symbol{font-size:23px;display:flex;align-items:center;gap:8px}.chosen-symbol small{font-size:12px;font-weight:400}.symbol-library{border:1px solid #ebe6f4;border-radius:13px;padding:14px;max-height:255px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.symbol-section+.symbol-section{margin-top:17px}.symbol-section h3{font-size:12px;font-weight:500;color:#8a809e;margin-bottom:8px}.emoji-picker{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px}.emoji-option{padding:0;height:42px;width:100%;font-size:23px;display:flex;align-items:center;justify-content:center;border-radius:10px}.emoji-option:hover{background:#eee7ff}.emoji-option.selected{background:#eee7ff;border-color:#9474fb}.category-picker{min-width:0}.category-control{position:relative;display:flex;align-items:center}.category-control>input{padding-left:37px;font-size:14px}.category-control>button{position:absolute;left:4px;top:5px;width:32px;height:39px;display:flex;align-items:center;justify-content:center;padding:0;color:#8d7dac}.category-control>button>.icon{width:17px;height:17px;transform:rotate(0deg)}.category-options{border:1px solid #e2d9f5;border-radius:11px;background:#fff;margin-top:7px;max-height:180px;overflow:auto;padding:5px;overscroll-behavior:contain;box-shadow:0 5px 15px #45346e0a;scrollbar-width:thin}.category-options[hidden]{display:none}.category-options>button{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;text-align:right;border-radius:7px;font-size:14px;min-height:40px;line-height:1.6}.category-options>button>span{font-size:18px}.category-options>button>.icon{margin-right:auto;width:16px;height:16px;color:#7950e8}.category-options>button:hover,.category-options>button.highlighted{background:#f3edff}.category-options>button[aria-selected="true"]{background:#f6f2ff;color:#7049d9}.modal .fields-two{align-items:start}
@media(max-width:700px){.main{padding-top:16px}.topbar{padding:10px 12px;min-height:61px;border-radius:13px;margin-bottom:17px}.topbar .mobile-brand{font-size:22px;gap:8px}.top-actions{gap:6px}.top-actions>span{font-size:11px!important}.top-actions .icon-btn{width:36px;height:36px;border-radius:10px}.page-head{padding:18px 15px;min-height:108px;border-radius:15px;gap:10px;flex-wrap:wrap}.page-heading{gap:11px;flex:1 1 200px}.page-heading-icon{width:41px;height:41px;border-radius:12px}.page-heading-icon>.icon{width:21px;height:21px}.page-head h1{font-size:21px}.page-head p{font-size:13px;line-height:1.9}.page-head>.primary{margin-right:52px;font-size:13px;padding:9px 15px}.filter-row{padding:10px 12px}.all-groups>.empty{min-height:230px}.detail-head{padding:17px}.emoji-picker{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.symbol-library{padding:11px;max-height:230px}.emoji-option{height:39px;font-size:22px}.modal .fields-two{grid-template-columns:1fr}.profile-panel .fields-two{grid-template-columns:1fr 1fr}.category-options{max-height:170px}.modal-backdrop{padding:12px}.modal{max-height:calc(100dvh - 24px);padding:21px}.modal-head{margin-bottom:18px}.modal-actions{margin-top:20px}.modal .form{gap:14px}}
/* Compact member choices in the expense form. */
.modal .participant{padding:7px 10px;min-height:40px;line-height:1.5;gap:8px}
.modal .participant input{width:17px;height:17px;padding:0;margin:0;flex-shrink:0}
.modal .participant .avatar{width:26px;height:26px;font-size:12px}
@media(max-width:700px){.modal .participant{padding:6px 9px;min-height:38px;gap:7px}}
.home-group-search{margin:-4px 0 16px}.home-group-search .search{max-width:none;width:100%;background:#fbfaff}.install-offer{display:flex;align-items:center;gap:12px;border:1px solid #e2d8fa;background:#f4efff;border-radius:14px;padding:15px;margin-bottom:20px}.install-offer img{flex-shrink:0;border-radius:12px}.install-offer>div{flex:1;min-width:0}.install-offer strong{font-size:14px}.install-offer p{font-size:12px;color:#8b7aab;margin:2px 0 0}.install-offer .primary{font-size:13px;padding:8px 12px}.install-dismiss{font-size:23px;color:#9c8fb1;padding:2px;line-height:1}.install-steps{padding-right:22px;font-size:14px;line-height:2.2}.install-steps li{margin-bottom:12px}.profile-install{margin-top:22px;width:100%}.offline-screen{padding:24px;text-align:center;gap:20px}.offline-screen h1{font-size:23px}.offline-screen p{font-size:15px;max-width:380px;color:#8b809b}.auth-form #install-slot .install-offer{margin:24px 0 0;text-align:right}.auth-form #install-slot .primary{width:auto;padding:8px 12px}@media(display-mode:standalone){.main{padding-top:max(16px,env(safe-area-inset-top))}.install-offer,.profile-install{display:none}}@media(max-width:380px){.install-offer{gap:8px;padding:12px}.install-offer img{width:34px;height:34px}.install-offer p{font-size:11px}.install-offer .primary{padding:8px 10px}}
/* Confirm the account before sending an invitation. */
.invite-person{display:flex;align-items:center;gap:12px;width:100%;padding:13px 15px;border:1px solid var(--line,#e6e3f0);border-radius:14px;background:#fff;text-align:right;font:inherit;color:inherit;cursor:pointer}.invite-person>span:nth-child(2){flex:1}.invite-person strong{display:block}.invite-person small{display:block;width:max-content;color:#85839c;margin-top:4px}.invite-choice{font-size:12px;color:#6d4aff}.invite-person.selected{border-color:#9e85ff;background:#f5f1ff}.invite-feedback{font-size:13px;color:#b04c45}
.member-entry{border-bottom:1px solid #f0eef5;padding-bottom:8px}.member-entry:last-child{border-bottom:0}.member-entry .member-row{border-bottom:0;padding-bottom:4px}.member-removal{padding-right:49px;line-height:1.6}.member-removal small{font-size:11px}.remove-member{color:#bf5364;padding:3px 0;font-size:12px}
/* Floating mobile navigation: five full touch targets and a sliding active lane. */
@media(max-width:700px){
 .main{padding-bottom:calc(130px + env(safe-area-inset-bottom,0px))}
 .mobile-nav{display:block;inset-inline:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));max-width:480px;margin-inline:auto;padding:7px;border:1px solid #fff;border-radius:26px;background:rgba(255,255,255,.95);box-shadow:0 14px 40px #3223541a,0 3px 9px #3223540a;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
 .mobile-nav-track{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));isolation:isolate}
 .mobile-nav-indicator{position:absolute;z-index:-1;top:0;right:0;width:20%;height:100%;border-radius:20px;background:linear-gradient(180deg,#f0eaff,#f7f4ff);transform:translateX(calc(var(--nav-index)*-100%));pointer-events:none}
 .mobile-nav-indicator:after{content:'';position:absolute;bottom:4px;left:calc(50% - 7px);width:14px;height:3px;border-radius:3px;background:#9a7cf4}
 .mobile-nav button{position:relative;min-width:0;min-height:68px;padding:5px 1px 9px;gap:3px;justify-content:center;color:#747187;font-size:10px;line-height:1.5;border-radius:20px;touch-action:manipulation;transition:color .2s,transform .16s}
 .mobile-nav button:active{transform:scale(.91)}
 .mobile-nav button.active{color:#6541cf;font-weight:750}
 .mobile-nav-icon{position:relative;display:flex;align-items:center;justify-content:center;width:35px;height:33px;border-radius:12px;transition:background .22s,color .22s,box-shadow .22s,transform .22s}
 .mobile-nav button.active .mobile-nav-icon{background:linear-gradient(145deg,#8962ff,#6941ed);color:white;box-shadow:0 4px 9px #7044ed30;transform:translateY(-1px)}
 .mobile-nav .icon{width:21px;height:21px;stroke-width:1.9}
 .mobile-nav-label{white-space:nowrap;letter-spacing:-.2px}
 .mobile-nav-badge{position:absolute;top:-4px;right:-5px;min-width:15px;height:15px;padding:0 3px;display:grid;place-items:center;border:2px solid white;border-radius:8px;background:#ee8195;color:#fff;font-size:8px;font-weight:750;line-height:1}
 .nav-changed button.active .icon{animation:nav-icon-arrive .38s cubic-bezier(.22,1,.36,1)}
 #toast{bottom:calc(108px + env(safe-area-inset-bottom,0px))}
}
@keyframes nav-icon-arrive{0%{transform:translateY(4px) scale(.8)}60%{transform:translateY(-2px) scale(1.08)}100%{transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.mobile-nav button,.mobile-nav-icon{transition:none}.nav-changed button.active .icon{animation:none}}
/* Approved coin identity at every brand placement. */
.brand-mark.brand-image{display:block;width:48px;height:48px;object-fit:cover;flex-shrink:0;border-radius:14px;background:#6d4aff;box-shadow:0 5px 14px #6d4aff24}
.auth-art .brand-image{width:54px;height:54px;border-radius:16px}.loading>.brand-image{width:72px;height:72px;border-radius:20px}
@media(max-width:700px){.topbar .mobile-brand .brand-image{width:42px;height:42px;border-radius:12px}.auth-form .mobile-brand .brand-image{width:48px;height:48px;border-radius:14px}.install-offer img{object-fit:cover}}
.contact-tools{display:grid;gap:9px}.contact-pick{width:100%;border-style:dashed;border-color:#c9baf4;background:#faf8ff;color:#6d4aff}.contact-status{font-size:12px;color:#75688e;line-height:1.8}.contact-status:empty,.contact-numbers:empty{display:none}.contact-numbers{display:flex;flex-wrap:wrap;gap:7px}.contact-number{font-size:13px;padding:7px 12px}

/* Compact participant identity with an independent, accessible share input. */
.modal .participants{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.participant-entry{min-width:0;border:1px solid #e8e3f5;border-radius:12px;padding:6px;background:#fff}
.modal .participant-entry .participant{border:0;background:none;padding:4px 3px;min-height:34px;overflow-wrap:anywhere}
.participant-weight{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:3px 5px;font-size:11px;color:#74718b}
.modal .participant-weight input{width:68px;min-width:0;padding:5px 8px;border-radius:8px;text-align:center;font-size:14px;line-height:1.6}
.participant-weight input:disabled{opacity:.45;background:#f6f7fb}
.participant-amount{display:block;padding:2px 5px 4px;font-size:11px;color:#6b46d9;min-height:25px}
@media(max-width:360px){.modal .participants{grid-template-columns:1fr}}

.participant-entry:has([name="participants"]:checked){border-color:#b7a5fb;background:#faf8ff}

.auth-options{display:flex;gap:5px;background:#f5f2ff;padding:5px;border-radius:12px;margin-bottom:26px}.auth-options button{flex:1;padding:9px 5px;border-radius:9px;font-size:12px}.auth-options button.active{background:#fff;color:#7249e9;box-shadow:0 2px 8px #37247112}.auth-recovery{margin-top:20px;font-size:12px}.guest-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 18px;background:#ede8ff;border-radius:14px;color:#6044aa;margin-bottom:20px;font-size:12px}.identity-panel{display:grid;grid-template-columns:1fr 180px;gap:24px;align-items:center;margin-bottom:22px}.identity-panel p{font-size:13px;color:#858098;margin:9px 0}.identity-username{font-weight:700;color:#6748c7;margin:12px 0;overflow-wrap:anywhere}.identity-qr{padding:8px;background:#fff;border:1px solid #eee9f6;border-radius:16px}.identity-qr svg{width:100%;display:block}.identity-panel small{display:block;margin-top:12px}.guest-profile{display:flex;flex-wrap:wrap;gap:12px}.guest-profile h2,.guest-profile p{width:100%}.qr-scanner{display:flex;flex-wrap:wrap;gap:10px}.qr-scanner video{width:100%;max-height:300px;border-radius:12px;background:#23243c;object-fit:contain}.qr-scanner [hidden]{display:none}.invite-methods{margin-bottom:0}.invite-methods button{font-size:12px;flex:1}.identity-panel .actions{flex-wrap:wrap}@media(max-width:700px){.identity-panel{grid-template-columns:1fr;gap:16px}.identity-qr{width:180px;justify-self:center;grid-row:1}.guest-banner{align-items:flex-start}.auth-options button{font-size:11px}}

.field[hidden]{display:none}

/* Dongeto's own soft, coin-inspired app theme. The QR keeps its white quiet zone. */
:root{--dongeto-purple:#7048e8;--dongeto-ink:#302747;--dongeto-mint:#e6f6ee;--dongeto-peach:#fff0df;--dongeto-lilac:#f0eaff}
.primary{background:linear-gradient(135deg,#8b60f1,#7048e8);box-shadow:0 5px 14px #7048e824}.primary:hover{background:linear-gradient(135deg,#7c50e3,#653cd4)}
.identity-panel{grid-template-columns:minmax(0,1fr) 260px;gap:14px 30px;background:linear-gradient(135deg,#fff 50%,#f5efff);border-color:#e9def9;border-radius:26px;max-width:760px}
.identity-caption{grid-column:1;grid-row:1;align-self:end}.identity-caption h2{margin-top:8px;font-size:24px}.identity-caption p{max-width:300px;line-height:1.9}
.identity-details{grid-column:1;grid-row:2;align-self:start}.identity-label{font-size:12px;color:#7b6f8f}.identity-username{display:table;margin:7px 0 13px;padding:6px 13px;border-radius:12px;background:#eee7fc;font-size:16px;letter-spacing:.5px;color:#6442b8}.identity-details>.secondary{border-radius:14px;min-height:44px}
.identity-qr{grid-column:2;grid-row:1 / span 2;width:260px;max-width:100%;padding:10px;border-radius:24px;border:1px solid #e9e0f4;box-shadow:0 9px 24px #7052ab0c;justify-self:center}.identity-qr svg{height:auto;aspect-ratio:1}
.identity-details small{font-size:12px;line-height:1.9;max-width:340px}.auth-welcome{display:none}
@media(max-width:700px){
 body{background:#f8f5ff;color:var(--dongeto-ink)}
 .shell{min-height:100dvh;background:radial-gradient(ellipse at 95% 0,#ede3ff 0,transparent 34%),#f8f5ff}
 .main{max-width:560px;padding:12px 16px calc(116px + env(safe-area-inset-bottom,0px));padding-top:max(12px,env(safe-area-inset-top,0px))}
 .topbar{background:transparent;border:0;border-radius:0;box-shadow:none;min-height:60px;padding:4px 2px 12px;margin-bottom:6px}
 .topbar .mobile-brand{font-size:26px;gap:9px;font-weight:850}.topbar .mobile-brand .brand-image{width:46px;height:46px;border-radius:16px;box-shadow:0 5px 12px #7048e81a}
 .top-actions .icon-btn{width:42px;height:42px;border:1px solid #fff;border-radius:16px;box-shadow:0 3px 10px #6d4aff08}.top-actions>span{color:#776b89}
 .page-head{background:transparent;border:0;padding:12px 2px 18px;min-height:0;gap:12px;margin-bottom:8px}.page-heading{flex:1 1 170px;gap:10px}.page-heading-icon{width:42px;height:42px;background:#eee5ff;border:0;border-radius:16px;color:#8254d9}.page-head h1{font-size:22px;line-height:1.6}.page-head p{font-size:12px;color:#7c718f;line-height:1.9;margin-top:3px}.page-head>.primary{margin:0;padding:10px 13px;font-size:12px;min-height:43px;border-radius:16px}
 .primary,.secondary,.danger{border-radius:15px;min-height:44px}.secondary{border-color:#e7def3;background:#fff}.text-btn{color:#7048d1}
 .panel{border:1px solid #eee5f7;border-radius:24px;padding:18px;box-shadow:0 5px 18px #4e2c8204}.section-head{margin-bottom:14px}.section-head h2{color:#443457}
 .stats{gap:8px;margin-bottom:20px}.stat{position:relative;min-width:0;border:0;border-radius:22px;padding:16px 10px 13px;overflow:hidden;background:var(--dongeto-peach)}.stat.primary-stat{background:var(--dongeto-mint);color:#245c48}.stat:nth-child(3){background:#eee5ff;color:#60409a}.stat .stat-top,.primary-stat .stat-top{color:inherit;font-size:11px;font-weight:650}.stat-amount{font-size:clamp(15px,4.7vw,22px);line-height:1.5;margin-top:12px;overflow-wrap:anywhere}.stat-amount span,.primary-stat .stat-amount span{color:inherit;opacity:.75;font-size:10px;margin-top:4px}.stat-bottom{font-size:10px;line-height:1.7;color:#766348}.primary-stat .stat-bottom{color:#527666}.stat:nth-child(3) .stat-bottom{color:#7e699e}.primary-stat:after{width:110px;height:110px;border:15px solid #a6d7bd20;left:-40px;bottom:-55px}
 .tabs{background:#f7f3fc;border:0;border-radius:15px;padding:4px;gap:4px;margin-bottom:15px}.tab{border:0;border-radius:11px;flex:1;padding:8px 10px;font-size:13px}.tab.active{background:#fff;box-shadow:0 3px 10px #5e408a0b;color:#7348d5}.tab small{font-size:11px}
 .field input,.field select,.field textarea,.search{border-radius:15px;border-color:#e9e0f3;background:#fffeff}.field input:focus,.field textarea:focus,.search:focus{border-color:#b494ed}.field input[readonly]{background:#f6f1fb;color:#827493}.field .hint{color:#897a9c}
 .home-group-search .search{background:#fbf8ff;border:0;min-height:44px}.group-card{background:#fff;border:1px solid #eee6f7;border-radius:20px;padding:14px;margin-bottom:12px}.group-card:hover{transform:none}.emoji-box{background:#f1e9ff;border-radius:17px}.group-bottom{border-color:#f1ebf7}.badge{border-radius:9px;padding:3px 8px}.avatar{border:2px solid #fff}.category-icon{border-radius:14px;background:#f7f0ff}
 .empty{padding:28px 12px;color:#897b9d}.empty>.icon{box-sizing:content-box;width:28px;height:28px;padding:15px;border-radius:22px;background:#f2eaff;color:#a27ad7}.empty h3{color:#625174;font-size:16px}.empty p{font-size:12px;line-height:2}.empty .primary{margin-top:4px}.all-groups>.empty{border-radius:24px;border-color:#e7d7f6}
 .identity-panel{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 16px;background:radial-gradient(ellipse at 100% 0,#efe5ff,transparent 60%),radial-gradient(ellipse at 0 100%,#ecf8f0,transparent 60%),#fff;text-align:center;border-radius:28px}
 .identity-caption{grid-column:1;grid-row:1}.identity-caption h2{font-size:24px;margin-top:9px}.identity-caption p{margin:6px auto 0;font-size:12px;max-width:260px}.identity-caption .badge{font-size:11px;padding:4px 11px}
 .identity-qr{grid-column:1;grid-row:2;width:min(100%,300px);padding:8px;border-radius:24px;background:#fff}.identity-details{grid-column:1;grid-row:3}.identity-username{margin:7px auto 12px;font-size:17px;background:#f0e9ff}.identity-details>.secondary{padding:9px 16px}.identity-details small{margin:12px auto 0;max-width:260px;font-size:11px}.identity-label{font-size:11px}
 .guest-banner{background:#eee5ff;border:1px solid #e5d7fa;border-radius:18px;padding:12px 14px;color:#6e50a0}.guest-profile{gap:10px}.guest-profile h2{font-size:18px}.guest-profile p{font-size:13px;color:#81718f}.guest-profile>.primary{width:100%}.guest-profile>.secondary{flex:1 1 140px}
 .profile-panel .fields-two{grid-template-columns:1fr}.profile-panel .fields-two .field{grid-template-rows:auto 49px auto}.profile-panel .field{font-size:13px}
 .detail-head{border-radius:24px;border-color:#eaddf6;background:linear-gradient(135deg,#fff,#f3ecff)}.detail-head .emoji-box{border-radius:20px}.detail-head h1{font-size:23px}.filter-row{border-radius:18px;border-color:#ede3f7}
 .modal-backdrop{background:#24153665;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.modal{border-radius:28px;box-shadow:0 20px 70px #39225626}.modal-head h2{font-size:20px}.modal .participant-entry{border-radius:15px}.modal .participant-weight input{border-radius:10px}.invite,.transfer,.notice{border-radius:18px}.notice.unread{background:#f6f0ff}.warning{border-radius:16px}
 .mobile-nav{border-color:#fff;background:rgba(255,253,255,.96);border-radius:28px;box-shadow:0 10px 32px #5e3a8e18,0 2px 6px #7048e808}.mobile-nav-indicator{background:linear-gradient(160deg,#eee3ff,#f8f0ff);border-radius:22px}.mobile-nav button.active .mobile-nav-icon{background:linear-gradient(135deg,#9a6cf4,#7347db);border-radius:13px;box-shadow:0 4px 9px #7048e82a}.mobile-nav button.active{color:#7043c1}.mobile-nav-indicator:after{background:#bb99ec;width:12px;left:calc(50% - 6px)}
 .auth{background:radial-gradient(ellipse at 0 0,#e9dcff,transparent 55%),radial-gradient(ellipse at 100% 100%,#e4f5eb,transparent 50%),#f8f5ff;min-height:100dvh}.auth-form-wrap{min-height:100dvh;align-items:flex-start;padding:24px 16px max(24px,env(safe-area-inset-bottom));padding-top:max(24px,env(safe-area-inset-top))}.auth-form{max-width:440px;background:#ffffffd9;border:1px solid #fff;border-radius:30px;padding:25px 20px;box-shadow:0 14px 40px #69439808}
 .auth-form .mobile-brand{flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:32px;font-weight:850;margin-bottom:4px}.auth-form .mobile-brand .brand-image{width:80px;height:80px;border-radius:26px;box-shadow:0 8px 20px #7750ce1c}.auth-form>.auth-welcome{display:block;text-align:center;font-size:12px;color:#8c779e;margin:0 0 25px}.auth-options{background:#f1eafb;border-radius:17px;padding:5px;margin-bottom:22px}.auth-options button{font-size:11px;border-radius:12px;min-height:42px}.auth-options button.active{color:#7545cd;background:#fff;box-shadow:0 3px 9px #65407f10}.auth-form h2{font-size:23px}.auth-form>p{font-size:13px;line-height:2;margin-bottom:20px}.auth-form .primary{border-radius:17px;min-height:50px}.auth-recovery{display:block;margin:20px auto 0}.auth-form .field input{background:#fff;min-height:50px}.install-offer{border-radius:20px;background:#f0e8ff}
 #toast{border-radius:17px}
}
@media(max-width:360px){.main{padding-inline:12px}.panel{padding:15px}.identity-panel{padding:20px 12px}.auth-form{padding:22px 16px}.page-heading{flex-basis:155px}.stat{padding-inline:8px}}

@media(max-width:700px){.main[data-view="profile"] .guest-banner{display:none}.main[data-view="profile"] .page-head{padding:6px 2px 14px;margin-bottom:0}.main[data-view="profile"] .page-head p{display:none}.main[data-view="profile"] .page-heading-icon{display:none}}

/* One accessible tap target for the username and its adjacent copy icon. */
button.identity-username{display:inline-flex;align-items:center;justify-content:center;gap:10px;max-width:100%;min-height:44px;text-align:left;touch-action:manipulation}button.identity-username span{min-width:0;overflow-wrap:anywhere}button.identity-username .icon{width:18px;height:18px;opacity:.8}button.identity-username:hover,button.identity-username:active{background:#e5d9fb}

.identity-label{display:block}
