@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;500;600;700;800&display=swap');
:root{--navy:#102d52;--navy2:#173f68;--teal:#087e71;--green:#087a5b;--mint:#e2f8ed;--coral:#f35f49;--ink:#102642;--muted:#677990;--bg:#f8f9f6;--line:#e3eaf0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Vazirmatn,Tahoma,sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}.shell{max-width:760px;min-height:100dvh;margin:auto;background:linear-gradient(170deg,#e8f9f8 0,#fbfaf5 260px,#f7f8f5 100%);padding:0 18px 120px;box-shadow:0 0 80px #183b5420}.header{display:flex;align-items:center;justify-content:space-between;padding:26px 4px 16px}.brand{font-size:24px;font-weight:800;color:var(--navy)}.brandmark{display:inline-grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#7eeac1,var(--navy));color:white;width:34px;height:34px;margin-left:7px}.hello{font-size:14px;font-weight:700}.hero{padding:18px 4px 10px}.hero h1{font-size:27px;margin:3px 0 25px;line-height:1.5}.eyebrow,.page-head p{color:var(--muted);margin:0}.stats{display:flex;background:white;border-radius:26px;padding:18px 6px;box-shadow:0 12px 35px #102d5212}.stats>div{flex:1;text-align:center;border-left:1px solid var(--line)}.stats>div:last-child{border:0}.stats strong{display:block;font-size:29px;color:var(--navy)}.stats div:nth-child(2) strong{color:var(--green)}.stats div:nth-child(3) strong{color:var(--coral)}.stats span{font-size:12px;color:var(--muted)}.month{display:flex;justify-content:center;gap:35px;align-items:center;margin:25px auto;background:#fff;border:1px solid var(--line);border-radius:50px;padding:9px 17px;width:max-content;box-shadow:0 5px 18px #102d520a}.month a{font-size:22px;color:var(--navy);padding:2px 8px}.section-title{display:flex;align-items:center;justify-content:space-between;margin:25px 3px 13px}.section-title h2,h2{font-size:20px;margin:0}.section-title small{color:var(--muted)}.cards{display:grid;gap:14px}.installment,.panel{background:white;border-radius:25px;padding:20px;box-shadow:0 8px 28px #122f4410;border:1px solid #eef1f0;scroll-margin-top:20px}.installment.paid{background:#effdf4;border-color:#bdebd8}.card-top{display:flex;align-items:center;gap:12px}.loan-symbol{display:grid;place-items:center;flex:none;background:#e7f4fa;color:var(--navy2);font-size:25px;border-radius:16px;width:48px;height:48px}.card-top h3,.user-card h3{margin:0;font-size:19px}.owner,.muted{font-size:13px;color:var(--muted)}.late{margin-right:auto;background:#fff0eb;color:#cf442f;padding:6px 9px;border-radius:15px;font-size:12px;font-weight:700}.amount{font-size:26px;font-weight:800;color:var(--navy);margin:14px 0}.amount small{font-size:14px;font-weight:500}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.due{color:var(--muted);font-size:13px}.status{border:0;border-radius:15px;padding:10px 18px;font-weight:700;white-space:nowrap}.status.pending{background:var(--coral);color:white}.status.done{background:#d1f4df;color:#086a48}.paid-note{color:var(--green);font-size:11px;margin:13px 0 0}.page-head{padding:20px 3px}.page-head h1{margin:0 0 5px;font-size:29px}.primary{display:block;width:100%;border:0;background:linear-gradient(110deg,#107e75,var(--navy));color:#fff;border-radius:18px;padding:15px;text-align:center;font-weight:800;font-size:17px;box-shadow:0 10px 24px #103d5860}.link-button{margin:15px 0 22px}.loan-card .amount{font-size:22px}.actions{display:flex;justify-content:flex-end;gap:23px;border-top:1px solid var(--line);padding-top:15px;color:var(--navy);font-size:14px;font-weight:700}.actions button{border:0;background:none;padding:0}.text-danger{color:#db4c45}.form{display:grid;gap:18px;margin-top:15px}.form label,.login label{display:grid;gap:8px;font-weight:700;font-size:14px}.form input,.form select,.login input{width:100%;padding:14px;border:1px solid #ccd6d9;border-radius:13px;background:white;outline:none;color:var(--ink)}input:focus,select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #d7f5eb}.notice{padding:15px;background:#e7f8ee;border-radius:13px;color:#145b4d;font-size:13px;line-height:1.9}.user-card{display:flex;align-items:center;gap:14px}.user-card p{margin:2px 0}.avatar{display:grid;place-items:center;background:#e1f4ed;border-radius:50%;width:58px;height:58px;color:var(--green);font-size:24px;font-weight:800;flex:none}.badge{background:#e6f5e9;color:var(--green);font-size:11px;padding:4px 9px;border-radius:20px}.green{color:var(--green);font-size:13px}.edit{margin-right:auto;font-size:22px}.bottom{position:fixed;z-index:5;bottom:0;right:50%;transform:translateX(50%);width:min(760px,100%);display:flex;justify-content:space-around;background:#fffffff2;backdrop-filter:blur(12px);border-radius:25px 25px 0 0;padding:9px 12px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -5px 25px #102d5210}.bottom a{display:grid;place-items:center;gap:0;min-width:64px;color:#728096;font-size:11px;padding:5px;border-radius:17px}.bottom a span{font-size:25px;line-height:1.3}.bottom .selected{color:var(--navy);background:#e6f5ff;font-weight:800}.flash,.errors{padding:13px;margin:8px 0;border-radius:13px;background:#dcf8e7;color:#126a49}.errors{background:#ffebea;color:#a92d30}.empty{text-align:center;padding:55px 10px;color:var(--muted);background:#fff;border-radius:24px}.login-hero{text-align:center;padding:55px 0 30px}.logo-large{font-size:48px;color:var(--teal)}.login-hero h1{font-size:35px;color:var(--navy);margin:0}.login-hero p{color:var(--muted)}.login{display:grid;gap:15px}.login form{display:grid;gap:20px}.login .hint{font-size:12px;text-align:center;color:var(--muted)}.logout{display:block;margin:22px auto;background:none;border:0;color:#d94e49}.error-row{border-bottom:1px solid var(--line);padding-bottom:12px}.error-row small{color:#b44039;overflow-wrap:anywhere}@media(min-width:800px){.shell{border-radius:30px}.bottom{border-radius:25px}}@media(max-width:390px){.stats span{font-size:10px}.status{padding:9px 12px}.amount{font-size:23px}}
