@font-face{font-family:IRANSansCustom;src:url('fonts/IRANSans(FaNum)_Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap;}
@font-face{font-family:IRANSansCustom;src:url('fonts/IRANSans(FaNum)_Medium.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:IRANSansCustom;src:url('fonts/IRANSans(FaNum)_UltraLight.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:IRANSansCustom;src:url('fonts/IRANSans(FaNum).ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:IRANSansCustom;src:url('fonts/IRANSans(FaNum)_Light.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap;}
:root{
 --sea:#6CC2B1;
 --orange:#EC5D3D;
 --cream:#E9DACD;
 --dark:#72665C;
 --ink:#3f3935;
 --bg:#f6f1ec;
 --white:#fffdf9;
 --border:#dfd2c8;
 --shadow:0 10px 30px rgba(114,102,92,.12);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:IRANSansCustom,Tahoma,Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px}
aside{position:fixed;right:0;top:0;bottom:0;width:240px;background:var(--dark);color:#fff;padding:26px 16px;box-shadow:-8px 0 25px rgba(114,102,92,.12)}
aside:before{content:"";display:block;height:8px;background:var(--sea);border-radius:0 0 10px 10px;margin:-26px -16px 25px}
aside h2{margin:0 8px 28px;font-size:22px;font-weight:700}
aside a{display:block;color:#f8f3ee;text-decoration:none;padding:13px 14px;border-radius:12px;margin:6px 0;transition:.2s}
aside a:hover{background:rgba(108,194,177,.18)}
aside a.active{background:var(--sea);color:#fff;box-shadow:0 5px 15px rgba(108,194,177,.25)}
main{margin-right:240px;padding:28px;min-height:100vh}
header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
header h1{margin:0;font-size:25px;color:var(--dark)}
header span{background:var(--cream);padding:8px 14px;border-radius:999px;color:var(--dark)}
.cards{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:18px}
.cards div,.panel{background:var(--white);border:1px solid var(--border);border-radius:18px;padding:22px;box-shadow:var(--shadow);margin-bottom:20px}
.cards div:first-child{border-top:5px solid var(--sea)}
.cards div:nth-child(2){border-top:5px solid var(--orange)}
.cards b{font-size:34px;display:block;color:var(--dark)}
.cards small{color:#8c7d72}
.panel h3{margin-top:0;color:var(--dark)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
input,select,textarea,button{font:inherit;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fffdfa;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(108,194,177,.3);border-color:var(--sea)}
textarea{min-height:90px}
button,.button{background:var(--orange);color:#fff;border:0;cursor:pointer;text-decoration:none;text-align:center;border-radius:10px;padding:12px 16px}
button:hover,.button:hover{filter:brightness(.96)}
.grid button{grid-column:1/-1}
table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden}
th,td{padding:12px;border-bottom:1px solid #eee3dc;text-align:right}
th{background:var(--cream);color:var(--dark)}
tr:hover td{background:#fcf8f4}
.login{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#f6f1ec 0%,#e9dacd 100%)}
.loginbox{background:var(--white);width:390px;padding:32px;border-radius:22px;border:1px solid var(--border);box-shadow:0 18px 50px rgba(114,102,92,.18);display:flex;flex-direction:column;gap:13px}
.loginbox.wide{width:530px}
.loginbox h1{text-align:center;font-size:24px;color:var(--dark);margin:0 0 8px}
.loginbox:before{content:"";display:block;height:10px;background:linear-gradient(90deg,var(--sea) 0 50%,var(--orange) 50% 100%);border-radius:20px;margin:-32px -32px 15px}
.loginbox h3{color:var(--dark);margin:8px 0 0}
.error{background:#fde3dd;color:#9e3825;padding:11px;border-radius:10px;border-right:4px solid var(--orange)}
.success{background:#dff3ee;color:#287d6f;padding:11px;border-radius:10px;border-right:4px solid var(--sea)}
@media(max-width:800px){
 aside{position:static;width:100%;display:flex;overflow:auto;padding:12px;gap:4px}
 aside:before{display:none}
 aside h2{display:none}
 aside a{white-space:nowrap;margin:0}
 main{margin:0;padding:15px}
 .grid{grid-template-columns:1fr}
 .cards{grid-template-columns:1fr}
 .panel{overflow:auto}
}
