@font-face{font-family:Bangla;src:url('assets/bengali.ttf') format('truetype');font-weight:100 900;font-display:swap}*{box-sizing:border-box}body{margin:0;color:#213c34;background:#eeeFEb;font:15px Bangla,system-ui,sans-serif}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button{border:0}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #e5a84f;outline-offset:3px}input:focus,textarea:focus,select:focus{outline:2px solid #4b9a7c;outline-offset:1px}button:disabled{opacity:.45;cursor:default}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,p{margin:0}h1{font-size:27px;line-height:1.45;letter-spacing:-.6px}h2{font-size:21px;line-height:1.5}h3{font-size:16px}small,.small{font-size:12px}.muted{color:#7a8982}.shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{background:#fbfcf9;border-right:1px solid #dde2da;padding:29px 19px;position:fixed;top:0;bottom:0;width:248px;overflow:auto}.brand{display:flex;align-items:center;gap:10px;color:#175c4b}.brand b{font-size:25px;letter-spacing:-.8px}.brand span{display:block;font-size:11px;color:#809186}.logo{width:43px;height:43px;display:grid;place-items:center;background:#175c4b;color:#fff;border-radius:14px 14px 14px 3px}.logo svg{width:28px;height:28px}.sideintro{font-size:12px;margin:23px 0 15px;color:#7a8982}.group-label{font-size:11px;color:#8b958e;margin:22px 10px 6px}.screenlink{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;background:none;border-radius:10px;color:#61746b;text-align:left;font-size:13px}.screenlink svg{width:17px;height:17px}.screenlink.active{background:#e6f0e9;color:#175c4b;font-weight:650}.screenlink:hover{background:#f0f4ef}.workspace{grid-column:2;padding:25px 35px 60px}.topbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d9dfd6;padding-bottom:21px;margin-bottom:32px}.eyebrow{font-size:11px;letter-spacing:1px;color:#7d8b81;margin-bottom:4px}.topbar h2{font-size:18px}.seg{background:#e2e7de;border-radius:11px;display:flex;padding:4px;gap:2px}.seg button{background:none;color:#718075;padding:8px 14px;border-radius:8px;font-size:12px}.seg button.active{background:white;color:#175c4b;box-shadow:0 2px 4px #173b2610}.stage{display:flex;align-items:flex-start;justify-content:center;gap:44px}.phone{width:390px;flex-shrink:0;background:#fafbf8;border-radius:32px;overflow:hidden;box-shadow:0 24px 60px #1f39231a,0 0 0 7px #fff,0 0 0 8px #dce1d8;position:relative;min-height:790px}.statusbar{height:32px;display:flex;justify-content:space-between;align-items:center;padding:12px 24px 0;font:600 11px system-ui;background:#fafbf8}.statusbar .signals{font-size:10px;letter-spacing:2px}.appheader{display:flex;align-items:center;gap:11px;padding:20px 20px 15px;background:#fafbf8;position:relative;z-index:2}.appheader .title{flex:1}.appheader .title p{font-size:12px;color:#839087;margin-top:2px}.appheader h2{font-size:19px}.iconbtn{height:40px;min-width:40px;border:1px solid #e6ebe4;border-radius:13px;background:white;color:#526f61;display:inline-flex;align-items:center;justify-content:center}.appbody{padding:8px 20px 25px;min-height:640px}.appbody.hasnav{padding-bottom:94px}.bottomnav{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-around;background:#fffffff5;border-top:1px solid #e8ece5;padding:10px 5px 18px;z-index:3}.bottomnav button{display:flex;flex-direction:column;gap:3px;align-items:center;color:#91a095;font-size:11px;background:none;min-width:64px}.bottomnav button.active{color:#175c4b;font-weight:650}.bottomnav button svg{width:23px;height:23px}.note-panel{width:245px;padding-top:40px}.note-panel h2{font-size:23px;margin:14px 0 10px}.note-panel p{font-size:13px;line-height:1.9;color:#78857b}.note-panel .step{font-size:11px;color:#9b9f91;border-top:1px solid #d9dfd6;padding-top:20px;margin-top:26px}.note-panel .nextlinks{display:flex;gap:8px;margin-top:18px}.note-panel .nextlinks button{background:#fff;color:#526c60;border-radius:10px;padding:9px 12px}.pill{display:inline-flex;align-items:center;gap:5px;border-radius:30px;padding:5px 10px;font-size:10px;background:#e8f2e9;color:#34715a}.pill.amber{background:#fff0d7;color:#987023}.pill.red{background:#fae9e3;color:#ae5844}.pill.gray{background:#eef0eb;color:#778276}.pill svg{width:12px;height:12px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.stack{display:flex;flex-direction:column;gap:12px}.gap{height:20px}.gap-sm{height:10px}.card{border:1px solid #e6ebe3;border-radius:17px;background:#fff;padding:16px;margin-bottom:13px}.soft{background:#f0f5ef;border:0}.hero{background:#175c4b;color:white;border-radius:23px;padding:23px 21px;margin-top:3px;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;width:160px;height:160px;border:1px solid #ffffff12;border-radius:50%;right:-64px;top:-40px;box-shadow:0 0 0 24px #ffffff05,0 0 0 50px #ffffff03;pointer-events:none}.hero .label{font-size:13px;color:#b9d8ca}.hero .balance{font-size:37px;font-weight:650;margin:6px 0 16px;letter-spacing:-.7px}.hero .summary{display:flex;justify-content:space-between;border-top:1px solid #ffffff26;padding-top:15px;position:relative;z-index:1}.hero .summary p{font-size:11px;color:#b9d8ca}.hero .summary b{font-size:16px;font-weight:500;display:block;margin-top:4px}.quick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 19px}.quick button{border-radius:15px;padding:15px 8px;display:flex;gap:8px;align-items:center;justify-content:center;font-size:14px;font-weight:600}.due-btn{background:#f5e9df;color:#a8663f}.paid-btn{background:#e4f0e8;color:#256b4e}.sectionhead{display:flex;align-items:center;justify-content:space-between;margin:22px 0 12px}.textbtn{background:none;color:#337558;padding:3px;font-size:12px}.person{display:flex;align-items:center;gap:11px;padding:14px 0;border-bottom:1px solid #edf0e9;cursor:pointer}.person:last-child{border-bottom:0}.avatar{height:43px;width:43px;display:grid;place-items:center;border-radius:14px;background:#f0eadf;color:#9c7951;font-size:18px;flex-shrink:0}.avatar.mint{background:#e6eee7;color:#5e8265}.avatar.lilac{background:#efeaf3;color:#8b749d}.avatar.blue{background:#e8edf0;color:#6a8696}.person .info{flex:1}.person h3{font-size:14px;font-weight:550}.person p{font-size:11px;color:#8b978e;margin-top:3px}.amount{text-align:right;font-size:15px;font-weight:550;color:#ac6542}.amount.green{color:#277556}.amount small{display:block;font-size:10px;font-weight:400;color:#919b94}.search{position:relative;margin:5px 0 16px}.search svg{position:absolute;left:13px;top:13px;width:19px;height:19px;color:#83938a}.search input{padding-left:41px}.field{margin-bottom:16px}.field label{display:block;font-size:12px;color:#597363;margin-bottom:7px;font-weight:550}input,textarea,select{width:100%;border:1px solid #dfe6dd;background:#fff;border-radius:11px;padding:12px 13px;color:#244337;min-height:47px}input::placeholder,textarea::placeholder{color:#a0aaa1}textarea{resize:vertical;min-height:88px}.hint{font-size:11px;color:#8a978c;margin:7px 0;line-height:1.7}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.primary,.secondary,.danger{width:100%;padding:14px 16px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:550;min-height:49px}.primary{background:#175c4b;color:white}.secondary{background:#fff;color:#376e58;border:1px solid #dce6dc}.danger{background:#faede7;color:#b7674b}.primary svg,.secondary svg{width:18px;height:18px}.primary:hover{background:#104a3c}.chips{display:flex;gap:7px;margin:10px 0 16px;flex-wrap:wrap}.chips button{background:#fff;border:1px solid #e1e8df;padding:7px 13px;border-radius:25px;font-size:11px;color:#75877a}.chips button.selected{background:#175c4b;color:white;border-color:#175c4b}.notice{display:flex;align-items:flex-start;gap:9px;font-size:11px;line-height:1.8;padding:13px;background:#f0f4e9;border-radius:12px;color:#78865f;margin:14px 0}.notice svg{width:17px;height:17px;margin-top:2px}.notice.warning{background:#fff3df;color:#a48442}.notice.error{background:#faeae5;color:#a95e49}.entryamount{padding:22px 0 17px;text-align:center}.entryamount label{font-size:13px;color:#7c8c81}.entryamount .money-input{display:flex;align-items:center;justify-content:center;color:#175c4b}.entryamount input{font-size:38px;width:200px;border:0;background:none;text-align:center;padding:8px 0;min-height:70px;font-weight:600}.entryamount span{font-size:30px}.upload{border:1px dashed #bdcdbd;border-radius:13px;padding:20px;text-align:center;background:#f7f9f3;color:#6c876f;font-size:12px;cursor:pointer;display:block}.upload svg{display:block;margin:0 auto 6px}.upload input{padding:5px;font-size:10px;margin-top:8px;min-height:auto}.summaryline{display:flex;justify-content:space-between;font-size:12px;padding:9px 0}.summaryline.total{border-top:1px dashed #d9e1d5;font-size:17px;font-weight:600;margin-top:8px;padding-top:14px}.listitem{width:100%;display:flex;align-items:center;gap:12px;background:white;color:#42604e;text-align:left;padding:16px 12px;border-bottom:1px solid #eef1eb}.listitem:last-child{border-bottom:0}.listitem .listicon{padding:9px;border-radius:11px;background:#f0f5ed;display:flex;color:#6a876c}.listitem .listtext{flex:1}.listitem b{display:block;font-size:13px;font-weight:550}.listitem small{font-size:10px;color:#8a978d;display:block;margin-top:3px}.listitem>svg{width:16px;color:#a4afa4}.listcard{border:1px solid #e5eae0;background:white;border-radius:16px;overflow:hidden;margin-bottom:15px}.welcome{padding-top:20px}.welcome .brand{justify-content:center}.welcome h1{text-align:center;font-size:29px;margin:25px 0 10px}.welcome>p{text-align:center;color:#809083;font-size:13px;line-height:1.9}.illustration{position:relative;height:250px;margin:5px 0 17px;display:flex;align-items:center;justify-content:center}.orbit{width:215px;height:215px;border:1px solid #e0e8d7;border-radius:50%;position:absolute;background:#eff4e8}.ledger{position:relative;background:white;border:1px solid #d7e3d0;width:174px;border-radius:15px;box-shadow:0 14px 35px #36553715;transform:rotate(-7deg);padding:20px}.ledger .stripe{height:7px;background:#e6ece0;width:85%;margin:12px 0;border-radius:4px}.ledger .ledger-title{color:#175c4b;font-size:16px;font-weight:600}.floatnote{position:absolute;background:#175c4b;color:#fff;padding:11px 15px;border-radius:12px;bottom:32px;right:3px;font-size:12px;transform:rotate(5deg);box-shadow:0 5px 15px #23482c16}.floatnote span{display:block;font-size:20px}.checkbubble{position:absolute;left:15px;top:44px;background:#e2eedc;border:6px solid #fafbf8;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;color:#5b8053}.intro-label{display:flex;gap:8px;align-items:center;justify-content:center;font-size:11px;color:#718a73;margin:20px 0}.intro-label svg{width:15px}.center{text-align:center}.bigicon{display:grid;place-items:center;width:78px;height:78px;background:#e4f0df;border-radius:24px;margin:24px auto;color:#34754b}.bigicon svg{width:37px;height:37px}.empty{padding:35px 10px;text-align:center}.empty p{font-size:13px;color:#819183;line-height:1.9;margin:12px 0 25px}.otp{display:flex;gap:8px;margin:25px 0}.otp input{text-align:center;padding:10px 2px;font-size:23px}.receipt{background:white;border:1px solid #e1e7dd;padding:22px 16px;border-radius:7px;position:relative;margin-bottom:15px}.receipt:after{content:'';height:9px;position:absolute;bottom:-1px;left:0;right:0;background:linear-gradient(135deg,transparent 50%,#fafbf8 50%) 0 0/14px 14px,linear-gradient(225deg,transparent 50%,#fafbf8 50%) 0 0/14px 14px}.receipt h2{font-size:19px}.receipt .small{color:#8e9b90;font-size:10px}.receipt hr{border:0;border-top:1px dashed #d5dfd0;margin:16px 0}.receipt table{width:100%;border-collapse:collapse;font-size:11px;margin:15px 0}.receipt th{text-align:left;color:#82917f;font-weight:500;padding:8px 0;border-bottom:1px solid #e4e9e0}.receipt td{padding:10px 0;border-bottom:1px solid #f0f2eb}.receipt td:last-child,.receipt th:last-child{text-align:right}.timeline{border-left:1px solid #dce5d6;margin:15px 10px;padding-left:22px}.timeline .event{position:relative;padding-bottom:22px}.timeline .event:before{position:absolute;content:'';width:9px;height:9px;border:3px solid #fafbf8;background:#57906c;border-radius:50%;left:-29px;top:4px}.timeline b{font-size:13px}.timeline p{font-size:11px;color:#8c998c;margin-top:4px}.plan{border:1px solid #dde6d7;border-radius:17px;padding:19px;margin-bottom:14px;background:white}.plan.featured{border:2px solid #39795c;background:#f4f8ef}.plan .price{font-size:29px;font-weight:650;color:#175c4b;margin:10px 0}.plan .price small{font-size:11px;color:#899681;font-weight:400}.benefit{display:flex;align-items:center;gap:7px;font-size:12px;color:#718368;margin:9px 0}.benefit svg{width:15px;height:15px;color:#659d68}.switchrow{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #ebefe6;font-size:12px}.switch{position:relative;width:37px;height:22px;flex-shrink:0}.switch input{opacity:0;width:0;height:0;min-height:0}.switch span{position:absolute;inset:0;border-radius:20px;background:#dce3d6;cursor:pointer}.switch span:after{content:'';position:absolute;width:16px;height:16px;left:3px;top:3px;border-radius:50%;background:white;transition:.2s}.switch input:checked+span{background:#3a7e5b}.switch input:checked+span:after{transform:translateX(15px)}.metricgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.metricgrid .card{margin:0}.metricgrid p{font-size:11px;color:#8b9789}.metricgrid b{font-size:22px;display:block;margin:5px 0;color:#315f43}.bar-chart{height:125px;display:flex;align-items:flex-end;gap:16px;justify-content:center;margin:25px 0 8px}.bar-chart div{background:#dcebd7;border-radius:6px 6px 0 0;width:24px;position:relative}.bar-chart div:nth-child(4){background:#327454}.bar-chart span{position:absolute;bottom:-24px;left:0;right:0;text-align:center;font-size:10px;color:#8f9c8b}.progress{height:6px;border-radius:4px;background:#e5ecde;overflow:hidden;margin:13px 0}.progress i{display:block;background:#3d805b;height:100%;width:30%;border-radius:4px}.attachment{height:140px;background:#f2ecd9;border-radius:12px;padding:18px;color:#968769;margin:13px 0;font-size:14px;line-height:1.9;transform:rotate(-1deg)}.attachment em{font-style:normal;border-bottom:1px dashed #cfbda0;display:block}.tabs{display:flex;border-bottom:1px solid #e2e8db;margin-bottom:20px}.tabs button{flex:1;background:none;padding:12px 0;color:#8b9987;font-size:12px}.tabs button.active{border-bottom:2px solid #31754e;color:#31754e}.double-actions{display:flex;gap:9px}.double-actions>*{flex:1}.prototype{display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px;color:#8a9587;margin-top:18px}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:30px;align-items:start}.gallery-card{cursor:pointer}.gallery-title{display:flex;justify-content:space-between;align-items:center;margin:0 0 14px;font-size:13px}.gallery-title span{color:#8e9989;font-size:10px}.mini{height:510px;overflow:hidden;border-radius:20px;background:white;border:1px solid #d9e2d4;position:relative}.mini>.phone{transform:scale(.68);transform-origin:top left;width:390px;pointer-events:none;border-radius:24px;box-shadow:none}.mini:after{position:absolute;content:'';inset:0}.gallery-card:hover .mini{box-shadow:0 12px 25px #21443118;border-color:#9bb49a}.gallery-banner{margin-bottom:25px}.gallery-banner h1{font-size:27px;margin-bottom:7px}.gallery-banner p{color:#7c8c76;font-size:13px}.galleryfilters{display:flex;flex-wrap:wrap;gap:7px;margin-top:19px}.galleryfilters button{padding:8px 12px;border-radius:20px;background:white;color:#6b8067;font-size:11px}.galleryfilters button.active{background:#175c4b;color:white}#toast{display:none;position:fixed;bottom:35px;left:50%;transform:translateX(-50%);background:#173d2e;color:white;box-shadow:0 8px 30px #10281833;padding:14px 22px;border-radius:14px;z-index:100;font-size:13px;max-width:90vw}#modal:empty{display:none}.overlay{position:fixed;inset:0;background:#0a231766;z-index:90;display:flex;align-items:center;justify-content:center;padding:22px;backdrop-filter:blur(3px)}.dialog{max-width:390px;width:100%;background:#fafbf7;border-radius:23px;padding:25px}.dialog p{font-size:13px;line-height:1.9;color:#7d8c75;margin:15px 0 22px}.mobile-designbar{display:none}.formerror{color:#ae5c42;font-size:12px;padding:8px 0}.adminbadge{background:#e8e7f4;color:#8277a0}.legal p{font-size:12px;line-height:2;color:#7f8d76;margin:8px 0 18px}.dots{display:flex;gap:5px;justify-content:center;margin:14px 0}.dots i{height:5px;width:5px;background:#d4e0cc;border-radius:5px}.dots i:first-child{width:19px;background:#3b7e53}.rolecard{background:#f0f5e9;border-radius:14px;padding:14px;margin-bottom:14px}.radio-row{display:flex;align-items:center;gap:10px;padding:15px 3px;border-bottom:1px solid #e8ede1}.radio-row input{width:17px;height:17px;min-height:0;accent-color:#317652}.radio-row label{flex:1;font-size:13px}.radio-row span{font-size:11px;color:#939d8b}.tagrow{display:flex;justify-content:space-between;align-items:center;margin:10px 0}.help-block{font-size:12px;line-height:1.9;color:#7f8e77}.shop-avatar{width:72px;height:72px;display:grid;place-items:center;border-radius:22px;background:#e9eddb;color:#71804f;margin:5px auto 20px}.shop-avatar svg{height:34px;width:34px}@media(min-width:1500px){.stage{gap:75px}.workspace{padding-left:65px;padding-right:65px}}@media(max-width:1100px){.note-panel{display:none}.workspace{padding:22px}.shell{grid-template-columns:220px 1fr}.sidebar{width:220px}}@media(max-width:700px){body{background:#fafbf8}.shell{display:block}.sidebar{display:none}.workspace{padding:0}.topbar{display:none}.stage{display:block}.phone{width:100%;max-width:460px;min-height:calc(100dvh - 43px);margin:0 auto;border-radius:0;box-shadow:none}.statusbar{display:none}.appbody{min-height:calc(100dvh - 128px)}.appheader{padding-top:20px}.bottomnav{position:fixed;max-width:460px;margin:0 auto;bottom:0;padding-bottom:max(12px,env(safe-area-inset-bottom));background:#fffffffa}.appbody.hasnav{padding-bottom:100px}.mobile-designbar{display:flex;background:#eaf0e5;align-items:center;justify-content:space-between;padding:9px 17px;font-size:10px;color:#73866c;min-height:43px}.mobile-designbar button{background:none;color:#386347;font-size:11px;display:flex;gap:5px;align-items:center}.mobile-designbar svg{width:15px;height:15px}.gallerywrap{padding:22px 17px;background:#f0f2eb;min-height:100vh}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 12px}.gallery .mini{height:330px}.mini>.phone{transform:scale(.43);margin:0;min-height:790px}.gallery-title{font-size:10px;align-items:start}.gallery-title span{display:none}.gallery-banner h1{font-size:23px}.gallery-banner p{font-size:11px}.gallery .bottomnav{position:absolute}.gallery .appbody{min-height:640px}.gallery .statusbar{display:flex}.gallery .appheader{padding-top:20px}.gallery-card .phone{max-width:none}.gallery .appbody.hasnav{padding-bottom:94px}.gallery .bottomnav{padding:10px 5px 18px}.galleryfilters{gap:6px}.galleryfilters button{font-size:10px;padding:7px 10px}.gallery .mini .phone{width:390px}.gallery .mini .phone .bottomnav{width:390px}.gallery .mini{background:#fafbf8}.gallery .mini .appheader{width:390px}.gallery .mini .phone .appbody{width:390px}.gallery .mini .phone{min-height:790px}}@media print{.sidebar,.topbar,.note-panel,.bottomnav,.mobile-designbar,#toast{display:none!important}.shell{display:block}.workspace{padding:0}.phone{box-shadow:none;border-radius:0}.appbody{min-height:0}.receipt{border:0}.appbody>.double-actions,.appbody>.primary,.appbody>.notice{display:none}}
/* Optional modules share the approved visual system. */
.xrow{display:block;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer}.person.xrow{display:flex;background:transparent;border:0;border-bottom:1px solid #edf0e9;border-radius:0}.card.xrow{background:white;border:1px solid #e5e9e2}.xrow .info{min-width:0}.xrow .info p{overflow-wrap:anywhere}.rangebar{display:flex;align-items:end;flex-wrap:wrap;gap:8px;margin:16px 0}.rangebar .field{flex:1;min-width:115px;margin:0}.rangebar input{padding:9px;font-size:12px;min-width:0}.rangebar .secondary{width:auto;padding:10px 14px}.slip-photo{max-width:100%;border-radius:14px;margin:12px 0;border:1px solid #dfe5dc}.item-fields[hidden],.simple-fields[hidden]{display:none}details{margin:10px 0}summary{cursor:pointer}.appbody .hero small{font-size:18px}.appbody button:focus-visible,.appbody input:focus-visible{outline:3px solid #d4a453;outline-offset:2px}
