*{box-sizing:border-box}body{margin:0;background:#eef2f7;font-family:Arial,Helvetica,sans-serif;color:#172033}.app{display:flex;min-height:100vh}aside{width:245px;background:#0f172a;color:white;padding:18px;position:fixed;top:0;bottom:0}aside h1{font-size:24px;line-height:1;margin:8px 0 25px}aside span{font-size:13px;color:#93c5fd}aside a{display:block;color:#dbeafe;text-decoration:none;padding:11px 13px;border-radius:9px;margin:4px 0}aside a:hover{background:#1e293b}main{margin-left:245px;width:calc(100% - 245px)}main.full{margin:0;width:100%}.top{height:62px;background:white;display:flex;align-items:center;justify-content:space-between;padding:0 24px;box-shadow:0 1px 10px #0001}section{padding:22px}.card,.stat{background:#fff;border-radius:14px;padding:18px;margin-bottom:18px;box-shadow:0 8px 20px #0000000d}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat h3{margin:0;font-size:14px;color:#64748b}.stat p{font-size:26px;font-weight:800;margin:10px 0 0}.row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}label{display:block;font-size:13px;margin:0 0 4px;color:#475569}input,select,textarea{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:8px}textarea{min-height:75px}.btn{background:#2563eb;color:white;border:0;border-radius:8px;padding:10px 14px;text-decoration:none;display:inline-block;cursor:pointer}.green{background:#16a34a}.gray{background:#475569}.red{background:#dc2626}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}table{width:100%;border-collapse:collapse;background:white}th,td{padding:10px;border-bottom:1px solid #e5e7eb;text-align:left}th{background:#f8fafc}.alert{padding:12px;border-radius:8px;margin-bottom:14px}.success{background:#dcfce7;color:#166534}.danger{background:#fee2e2;color:#991b1b}.login{max-width:420px;margin:8vh auto}.line{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 42px;gap:8px;margin-bottom:8px}.right{text-align:right}.invoice{max-width:940px;margin:auto;background:white;padding:30px}.muted{color:#64748b}@media(max-width:850px){aside{position:static;width:100%}.app{display:block}main{margin:0;width:100%}.grid,.row,.row3,.line{grid-template-columns:1fr}.top{display:block;height:auto;padding:15px}}@media print{aside,.top,.no-print,.btn{display:none!important}main{margin:0;width:100%}section{padding:0}.invoice{padding:20px}}
