/* Shared Nebka Team visual language; scoped away from invoice printing. */
body{background:linear-gradient(140deg,#fdf7ed,#f3e6d6);color:#4c4c3c}
.shell{grid-template-columns:238px minmax(0,1fr)}
.sidebar{background:linear-gradient(175deg,#7c8061,#636b4d);color:#fff;border-left:1px solid #ebe3d64d;box-shadow:-12px 0 35px #25231e10;padding:30px 18px 22px;overflow-y:auto}
.brand{justify-content:center;padding:4px 0 30px}.brand img{width:124px;height:128px;filter:brightness(0) invert(1);object-fit:contain}
.nav{gap:7px}.nav button{color:#ffffffeb;border:1px solid transparent;border-radius:13px;padding:12px 14px;transition:background .2s,border-color .2s,transform .2s;line-height:1.7}.nav button .icon{width:20px;height:20px}.nav button:hover{background:#ebe3d61a;border-color:#ebe3d633;transform:translateX(-2px)}.nav button.active{background:linear-gradient(135deg,#8b9270,#636b4d);border-color:#ebe3d67a;box-shadow:inset 0 1px #ffffff1a,0 8px 22px #25231e14}
.sidefoot{margin-top:auto;padding:17px 18px;border:1px solid #ebe3d63b;border-radius:16px;background:#ebe3d60c;color:#ffffffd9;display:grid;gap:4px}.sidefoot-label{font-size:10px}.sidefoot .dot{background:#e0e6cc}.sidefoot strong{font-weight:500;font-size:15px}.sidefoot small{font:9px Arial,sans-serif;letter-spacing:1.5px;color:#ffffffa6;margin-top:5px}
.topbar{border:0;padding-bottom:6px;margin-bottom:35px}.top-actions{direction:ltr;align-items:center;gap:4px;padding:9px 13px;border:1px solid #ebe3d663;border-radius:999px;background:linear-gradient(135deg,#85886a,#636b4d);box-shadow:0 12px 35px #25231e26,inset 0 1px #ffffff15}.top-actions button{display:grid;place-items:center;width:38px;height:38px;padding:8px;border:0;border-radius:50%;color:#fff;transition:background .2s,transform .2s}.top-actions button:hover{background:#ebe3d62e;transform:translateY(-1px)}.top-actions .icon{width:20px;height:20px}
.content{padding:30px 34px}.content h1{font-size:29px;font-weight:600}.heading p{font-size:12px}.heading .eyebrow{display:none}.panel,.stat{background:#fffdf5;border-color:#ddcbb588;box-shadow:0 12px 34px #75664a0a;border-radius:22px;transition:box-shadow .25s,border-color .25s}.panel:hover,.stat:hover{border-color:#c4b69a;box-shadow:0 16px 38px #75664a13}.hero{background:linear-gradient(135deg,#85886a,#4c533c);border:1px solid #ebe3d64d;box-shadow:0 15px 40px #25231e15;border-radius:22px;align-items:center}.hero h2{margin:0;font-size:23px}.hero:after{opacity:.5}.content button.primary{background:#75805c;border-color:#63704e}.content button{transition:background .2s,box-shadow .2s,transform .2s}.content button.primary:hover{background:#636b4d;box-shadow:0 6px 16px #454b3520;transform:translateY(-1px)}.content input,.content select,.content textarea{background:#faf0e2;border-color:#dcc7ad}.content input:focus-visible,.content select:focus-visible,.content textarea:focus-visible{outline:2px solid #75805c88;outline-offset:2px}.nav button:focus-visible,.top-actions button:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(min-width:701px){.nav{margin-bottom:30px}.sidefoot{flex-shrink:0}}
@media(max-width:1050px) and (min-width:701px){.shell{grid-template-columns:216px minmax(0,1fr)}.content{padding:25px}.sidebar{padding:25px 14px}.brand img{width:112px;height:116px}.nav button{font-size:12px}}
@media(max-width:700px){.shell{display:block}.sidebar{height:auto;padding:18px 14px;overflow:visible}.brand{padding:0 0 16px}.brand img{width:86px;height:90px}.nav{display:flex;gap:6px;overflow:auto;padding-bottom:5px}.nav button{padding:10px 12px;white-space:nowrap}.sidefoot{display:none}.content{padding:22px 14px}.topbar{gap:12px;margin-bottom:24px}.topbar .en{font-size:8px;letter-spacing:1px}.top-actions{padding:5px 7px}.top-actions button{width:34px;height:34px}.content h1{font-size:25px}.panel{border-radius:18px}.hero{gap:18px;align-items:flex-start}.hero h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.shell *{transition:none!important;transform:none!important}}
@media print{body{background:#fff}.shell{display:none!important}}

.jalali-field{position:relative}.jalali-input{display:flex;align-items:center;gap:6px}.jalali-input input{text-align:left;flex:1;min-width:0}.jalali-input button{padding:10px;display:grid;place-items:center}.jalali-calendar{position:relative;z-index:2;padding:12px;border:1px solid #dcc7ad;border-radius:14px;background:#fffdf5;box-shadow:0 10px 25px #25231e15;margin-top:5px;min-width:240px}.jalali-calendar[hidden]{display:none}.jalali-calendar header{display:flex;align-items:center;justify-content:space-between;direction:rtl}.jalali-calendar button{padding:5px;border:0;min-height:32px}.jalali-days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:2px;margin:8px 0}.jalali-days small{padding:4px}.jalali-days button[aria-current]{background:#75805c;color:#fff}.jalali-days button:hover{background:#e4e8d9;color:#454b35}

/* Studio dashboard background from Nebka Team's sand palette. */
@media screen{
.shell[data-view="home"]{background:radial-gradient(ellipse at 7% 0%,#ebe3d652,transparent 52%),linear-gradient(145deg,#dccab4,#ceb89e 57%,#bca284)}
.shell[data-view="home"] .content{background:transparent}
}

.table-scroll td .due-late{color:#9a5145;margin-top:4px}

/* Large Jalali invoice calendar, matching the Team calendar. */
.invoice-calendar{padding:0;overflow:hidden}.invoice-calendar-header{padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.invoice-calendar-header h2{font-size:19px}.invoice-calendar-controls{display:flex;align-items:center;gap:7px}.invoice-calendar-controls select{width:auto;padding:7px 10px;font-size:12px}.invoice-calendar-controls button{padding:6px 12px}.invoice-calendar-scroll{overflow-x:auto}.invoice-calendar-grid{min-width:650px}.invoice-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.invoice-calendar-weekdays{background:#f0ebdf;color:#797568;font-size:11px;text-align:center}.invoice-calendar-weekdays>div{padding:12px 3px}.invoice-calendar-day{min-height:126px;padding:10px 7px;border-top:1px solid #e8dfd0;border-left:1px solid #e8dfd0;background:#fffdf5;min-width:0}.invoice-calendar-day:last-child{border-left:0}.invoice-calendar-day>time{display:grid;place-items:center;width:28px;height:28px;font-size:12px;margin-bottom:7px}.invoice-calendar-day.is-today>time{background:#75805c;color:white;border-radius:50%;font-weight:bold}.invoice-calendar-day.is-outside{background:#f5f0e7}.invoice-calendar-day.is-outside>time{color:#aaa18f}.invoice-calendar-entries{display:grid;gap:6px}.invoice-calendar-entry{width:100%;padding:6px 7px!important;min-width:0;text-align:right;border:1px solid #d6ddc9!important;border-radius:8px;background:#ebefdf!important;color:#4c533c;line-height:1.6;font-size:11px;overflow-wrap:anywhere}.invoice-calendar-entry span{display:block}.invoice-calendar-entry .invoice-calendar-number{font:9px/1.8 Arial,sans-serif;text-align:right;letter-spacing:.3px}.invoice-calendar-entry:hover{background:#e0e7d2!important;box-shadow:0 3px 9px #454b3514}.invoice-calendar-entry.is-settled{background:#f0efe8!important;border-color:#e0dccc!important;color:#8a887c}.invoice-calendar-entry s{text-decoration-thickness:1px}.invoice-calendar-entry.is-void{background:#f1e8e2!important;border-color:#e4d5cc!important;color:#957e72}.invoice-calendar-entry small{font-size:9px;color:inherit}@media(max-width:700px){.invoice-calendar-header{padding:17px 14px}.invoice-calendar-controls{gap:4px}.invoice-calendar-controls button{padding:5px 9px}.invoice-calendar-controls select{padding:6px}.invoice-calendar-day{min-height:112px}}

/* Finance login follows the Team login composition and original moodboard crop. */
.login{position:relative;isolation:isolate;min-height:100dvh;overflow:hidden;background:linear-gradient(140deg,#fbefdf,#ecd6ba);padding:28px 16px;color:#fff}
.finance-login-backdrop{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none;opacity:.15;mix-blend-mode:multiply}.finance-login-backdrop svg{display:block;width:100%;height:100%;overflow:hidden}.login:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,#ceb89e33,#ceb89e88 85%)}
.login .finance-login-card{position:relative;isolation:isolate;overflow:hidden;width:min(390px,100%);padding:36px 28px;border:1px solid #ebe3d64d;border-radius:32px;background:linear-gradient(145deg,#a68e73,#87705a);color:#fff;box-shadow:0 16px 42px #25231e15,inset 0 1px #ebe3d624;margin:0;transition:border-color .25s,box-shadow .25s}
.finance-login-card:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(280px circle at var(--login-x,50%) var(--login-y,25%),#fff2,transparent 70%);opacity:0;transition:opacity .25s}.finance-login-card:hover:before{opacity:1}.login .finance-login-card:hover{border-color:#ebe3d68a;box-shadow:0 24px 52px #25231e20,inset 0 1px #ebe3d638}
.login .finance-login-card>img{display:block;width:min(198px,100%);height:auto;aspect-ratio:460/361;object-fit:contain;margin:0 auto 22px;filter:brightness(0) invert(1)}
.finance-login-title{font:700 20px/1.6 'Segoe UI',Arial,sans-serif;letter-spacing:2.2px;color:#fff;margin-bottom:25px}
.login .finance-login-card label{display:grid;text-align:right;font-size:11px;color:#ffffffe0;gap:8px;margin-top:0}.login .finance-login-card input{background:#89745e9c;border:1px solid #ebe3d663;color:white;box-shadow:inset 0 1px 4px #25231e0c;padding:12px 14px;border-radius:11px;direction:ltr;text-align:left}.login .finance-login-card input:focus{outline:2px solid #ebe3d680;outline-offset:2px}.login .finance-login-card input:-webkit-autofill{-webkit-text-fill-color:#fff;box-shadow:0 0 0 1000px #89745e inset;caret-color:#fff}
.login .finance-login-card button.primary{margin-top:18px;min-height:46px;background:linear-gradient(135deg,#85886a,#636b4d);color:#fff;border:1px solid #ebe3d64d;border-radius:11px;transition:background .2s,box-shadow .2s}.login .finance-login-card button.primary:hover{background:linear-gradient(135deg,#8b9270,#636b4d);box-shadow:0 8px 22px #25231e14}.login .finance-login-card .error{color:#ffe1d5;font-size:11px;margin-top:8px}.finance-login-version{display:block;margin-top:34px;text-align:center;font:700 14px/1.5 'Segoe UI',Arial,sans-serif;letter-spacing:1px;color:#fff}.login .finance-login-setup{color:#ffffffe0;margin:0 0 18px;font-size:12px}
@media(max-width:480px){.login .finance-login-card{padding:30px 24px}.login .finance-login-card>img{width:180px}.finance-login-title{font-size:18px}}
@media(prefers-reduced-motion:reduce){.finance-login-card,.finance-login-card:before{transition:none!important}}

.finance-login-footer{display:grid;justify-items:center;gap:10px;margin-top:34px}.finance-login-footer .finance-login-title{font:500 11px/1.7 'Segoe UI',Arial,sans-serif;letter-spacing:2.4px;margin:0;color:#ffffff99}.finance-login-footer .finance-login-version{margin:0}

/* Team-style dark cards, exclusively on the overview tab. */
@media screen{
.shell[data-view="home"] .content :is(.panel,.stat){background:linear-gradient(145deg,#aa947a,#947c65);border-color:#ebe3d64d;color:#fff;box-shadow:0 16px 42px #25231e15,inset 0 1px #ebe3d624}
.shell[data-view="home"] .content :is(.panel,.stat):hover{border-color:#ebe3d68a;box-shadow:0 20px 46px #25231e20,inset 0 1px #ffffff26}
.shell[data-view="home"] .content :is(.panel,.stat) :is(h2,h3,p,small,span,strong,b,em,th,td,.label,.number,.foot,.sub,.legend,.muted){color:#fff}
.shell[data-view="home"] .content :is(.panel,.stat) :is(small,.foot,.sub,th,.legend){color:#ffffffe0}
.shell[data-view="home"] .content :is(.panel,.stat) .icon{color:#fff;opacity:.85}
.shell[data-view="home"] .content .panel :is(td,th,.audit,.bars){border-color:#ebe3d64d}
.shell[data-view="home"] .content .panel button{border-color:#ebe3d666;color:#fff;background:#ffffff0a}
.shell[data-view="home"] .content .panel button:hover{background:#ffffff20;border-color:#ebe3d6a6}
.shell[data-view="home"] .content .panel .bar{background:#fff}
.shell[data-view="home"] .content .panel .bar.out{background:repeating-linear-gradient(135deg,#ffffffd9 0 4px,#ffffff66 4px 7px)}
.shell[data-view="home"] .content .panel .legend i{background:#fff}
.shell[data-view="home"] .content .panel .legend i.out{background:repeating-linear-gradient(135deg,#ffffffd9 0 3px,#ffffff66 3px 5px)}
.shell[data-view="home"] .content .panel .progress{background:#ffffff26}
.shell[data-view="home"] .content .panel .progress i{background:#fff}
.shell[data-view="home"] .content .panel .badge{background:#ffffff1f;color:#fff;border:1px solid #ffffff30}
.shell[data-view="home"] .content .panel .badge.pending{background:#eadbc326;color:#fff}
.shell[data-view="home"] .content .panel .badge.void{background:#69483d40;color:#fff}
}

/* Match Team's warm translucent input, including browser autofill. */
.login .finance-login-card input{background:#89745e9c;border-color:#ebe3d663;color:#fff;box-shadow:inset 0 1px 4px #25231e0c}
.login .finance-login-card input:focus{border-color:#ebe3d6d9;outline:none;box-shadow:0 0 0 3px #ebe3d61a}
.login .finance-login-card input:-webkit-autofill{background:#89745e9c!important;-webkit-text-fill-color:#fff;caret-color:#fff;-webkit-box-shadow:0 0 0 1000px #8d7761 inset;box-shadow:0 0 0 1000px #8d7761 inset}
.login .finance-login-card input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #8d7761 inset,0 0 0 3px #ebe3d61a;box-shadow:0 0 0 1000px #8d7761 inset,0 0 0 3px #ebe3d61a}
