:root{
  --ink:#15171b;--muted:#6d7380;--bg:#f4f5f7;--panel:#fff;--line:#e6e8ec;
  --dark:#10141b;--dark-2:#1d2430;--gold:#b58d51;--gold-soft:#f8f0e4;
  --blue:#2e5f93;--blue-soft:#eaf2fb;--orange:#ad641a;--orange-soft:#fff0df;
  --green:#176b46;--green-soft:#e8f6ee;--red:#b3393e;--red-soft:#fdebed;
  --violet:#7250a7;--violet-soft:#f0eafd;--shadow:0 18px 45px rgba(20,26,38,.08);
  --radius:20px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Tahoma,Arial,"Segoe UI",sans-serif;line-height:1.45}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
a{color:inherit;text-decoration:none}.app{min-height:100vh;display:grid;grid-template-columns:268px minmax(0,1fr);direction:rtl}.sidebar{background:var(--dark);color:#fff;height:100vh;position:sticky;top:0;padding:22px 15px;display:flex;flex-direction:column;gap:25px;z-index:20}.brand{display:flex;gap:10px;align-items:center;padding:2px 7px}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;border:1px solid rgba(255,255,255,.28);font-weight:800;color:#f8e9d1;letter-spacing:.6px}.brand-text b{display:block;font-size:15px;letter-spacing:.4px}.brand-text span{display:block;color:#aeb6c1;font-size:10px;margin-top:3px}.nav{display:grid;gap:7px}.nav a{padding:12px 12px;border-radius:13px;color:#cbd1d9;font-size:13px;display:flex;gap:11px;align-items:center;transition:.2s}.nav a:hover,.nav a.active{background:rgba(255,255,255,.11);color:#fff}.nav .ico{width:20px;text-align:center;color:#e0ba7d;font-size:16px}.side-footer{margin-top:auto;padding:13px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:15px}.side-footer b{display:block;font-size:12px}.side-footer span{display:block;color:#b4bdc8;font-size:10px;margin-top:4px;overflow-wrap:anywhere}.main{padding:28px 30px 42px;max-width:1600px;width:100%;margin:0 auto}.topbar{display:flex;gap:20px;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:.7px;text-transform:uppercase;color:#99733f;font-weight:800;margin-bottom:6px}.page-title{margin:0;font-size:26px;letter-spacing:-.6px}.page-subtitle{margin:6px 0 0;color:var(--muted);font-size:12px;max-width:680px}.top-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.user-pill,.date-chip{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;padding:9px 11px;border-radius:12px;font-size:11px;color:#4f5662}.avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--gold-soft);color:#7a551e;font-weight:800}.role{font-size:10px;background:#f1f3f5;padding:3px 6px;border-radius:20px;color:#616874}.btn{border:0;border-radius:12px;padding:10px 13px;font-size:12px;font-weight:800;display:inline-flex;gap:7px;align-items:center;justify-content:center;transition:.2s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--dark);color:#fff;box-shadow:0 8px 17px rgba(16,20,27,.18)}.btn.secondary{background:#fff;border:1px solid var(--line);color:#29303a}.btn.gold{background:var(--gold-soft);color:#76531d;border:1px solid #ead8ba}.btn.danger{background:var(--red-soft);color:var(--red);border:1px solid #f5cdd0}.btn.success{background:var(--green-soft);color:var(--green);border:1px solid #ccead7}.btn.small{font-size:10px;padding:7px 9px;border-radius:9px}.btn.large{width:100%;padding:13px}.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}.flash{border-radius:13px;padding:11px 12px;margin:0 0 17px;font-size:12px}.flash.success{background:var(--green-soft);color:var(--green);border:1px solid #ccebd8}.flash.error{background:var(--red-soft);color:var(--red);border:1px solid #f4ced1}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:19px}.stat{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:17px;position:relative;overflow:hidden;box-shadow:0 5px 18px rgba(16,20,27,.025)}.stat:before{content:"";position:absolute;right:0;top:0;bottom:0;width:5px;background:var(--gold)}.stat.blue:before{background:var(--blue)}.stat.green:before{background:var(--green)}.stat.red:before{background:var(--red)}.stat-label{color:var(--muted);font-size:11px}.stat-value{font-size:29px;font-weight:850;line-height:1.1;margin-top:7px}.stat-note{color:var(--muted);font-size:10px;margin-top:5px}.grid-2{display:grid;grid-template-columns:1.4fr .9fr;gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:19px;box-shadow:var(--shadow)}.card.tight{padding:0;overflow:hidden}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.card-header h2{font-size:16px;margin:0}.card-header p{font-size:11px;color:var(--muted);margin:3px 0 0}.link{font-size:11px;color:#7e5a22;font-weight:800}.section-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:16px}.section-head h2{margin:0;font-size:18px}.section-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:920px}.data-table th{text-align:right;color:var(--muted);font-size:10px;font-weight:700;padding:0 10px 10px;border-bottom:1px solid var(--line)}.data-table td{font-size:11px;padding:13px 10px;border-bottom:1px solid #eef0f2;vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:0}.case-name{font-size:12px;font-weight:800}.case-code{font-size:10px;color:var(--muted);margin-top:2px}.muted{color:var(--muted)}.due.late{color:var(--red);font-weight:800}.due.soon{color:var(--orange);font-weight:800}.badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:99px;font-size:10px;font-weight:800;white-space:nowrap}.badge.reception{background:#eef0f2;color:#555e6a}.badge.design{background:var(--blue-soft);color:var(--blue)}.badge.production{background:var(--orange-soft);color:var(--orange)}.badge.qc{background:var(--gold-soft);color:#79541b}.badge.ready{background:var(--green-soft);color:var(--green)}.badge.delivered{background:#e7f4f0;color:#177359}.badge.archived{background:#eceff2;color:#58606d}.progress{height:8px;border-radius:20px;overflow:hidden;background:#edf0f2;min-width:90px}.progress>span{display:block;height:100%;background:var(--blue);border-radius:20px}.progress-label{font-size:10px;color:var(--muted);margin-top:4px}.mini-actions{display:flex;flex-wrap:wrap;gap:6px}.empty{padding:38px 20px;text-align:center;color:var(--muted);font-size:12px}.filters{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-bottom:15px}.input,.select,.textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:10px 11px;background:#fff;color:var(--ink);outline:none}.input:focus,.select:focus,.textarea:focus{border-color:#b18d54;box-shadow:0 0 0 3px rgba(181,141,81,.11)}.search{width:270px;max-width:100%}.select.auto{width:auto}.textarea{min-height:92px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label,.form-stack label{font-size:11px;font-weight:800;color:#565d68}.form-stack{display:grid;gap:12px}.form-stack label{display:grid;gap:6px}.form-stack input{border:1px solid var(--line);border-radius:11px;padding:11px;background:#fff;outline:none}.form-stack input:focus{border-color:#b18d54;box-shadow:0 0 0 3px rgba(181,141,81,.11)}.help{font-size:10px;color:var(--muted);margin:2px 0 0}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}.detail-head{display:flex;gap:16px;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.detail-title{margin:0;font-size:20px}.detail-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}.key-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}.key{border:1px solid var(--line);background:#fcfcfd;padding:11px;border-radius:13px}.key b{display:block;color:var(--muted);font-size:10px;font-weight:700}.key span{display:block;font-size:12px;margin-top:4px;font-weight:800}.timeline{display:grid;gap:0}.timeline-item{display:grid;grid-template-columns:16px 1fr;gap:10px;position:relative;padding-bottom:15px}.timeline-item:last-child{padding-bottom:0}.timeline-item:after{content:"";width:1px;background:#e5e7ea;position:absolute;right:7px;top:14px;bottom:0}.timeline-item:last-child:after{display:none}.dot{width:15px;height:15px;margin-top:2px;border-radius:50%;background:var(--gold-soft);border:4px solid #f5e6ce;z-index:1}.timeline-item b{font-size:11px}.timeline-item p{margin:3px 0;color:#434a55;font-size:11px}.timeline-item small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.comment{border:1px solid var(--line);border-radius:13px;padding:12px;background:#fff;margin-bottom:9px}.comment.admin-message{border-right:3px solid var(--violet)}.comment-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.comment strong{font-size:11px}.comment small{display:block;font-size:10px;color:var(--muted);margin-top:2px;overflow-wrap:anywhere}.comment p{margin:8px 0 0;font-size:11px;white-space:pre-wrap}.pill{font-size:9px;padding:3px 6px;border-radius:20px;background:var(--violet-soft);color:var(--violet);font-weight:800}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.photo{display:block;aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:#f0f2f4;border:1px solid var(--line);position:relative}.photo img{display:block;width:100%;height:100%;object-fit:cover}.photo span{position:absolute;bottom:0;right:0;left:0;padding:5px 6px;background:linear-gradient(transparent,rgba(0,0,0,.65));color:#fff;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.case-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.warning{margin-top:15px;padding:11px;border-radius:12px;background:var(--gold-soft);font-size:11px;color:#6b4c19}.login-note{font-size:10px;color:var(--muted);margin-top:11px}.auth-body{min-height:100vh;background:linear-gradient(135deg,#f7f3ec,#eef1f4);display:grid;place-items:center;padding:22px}.auth-wrap{width:min(500px,100%)}.auth-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:29px;box-shadow:0 22px 60px rgba(25,32,42,.12)}.brand-auth{display:flex;align-items:center;gap:10px;margin-bottom:26px}.brand-auth .brand-mark{color:#6d4d1e;border-color:#dec6a6;background:#f9f0e4}.brand-auth b{display:block;font-size:15px;letter-spacing:.4px}.brand-auth span{display:block;font-size:10px;color:var(--muted);margin-top:2px}.auth-card h1{font-size:23px;margin:0 0 7px}.lead{font-size:12px;color:var(--muted);margin:0 0 20px;line-height:1.7}.subtle{font-size:10px;color:var(--muted);line-height:1.6;margin:18px 0 0}.mobile-menu{display:none}.messages-box{display:grid;gap:10px}.notice-card{padding:13px;border:1px solid #e4d3b8;background:#fffaf2;border-radius:14px;font-size:11px;color:#5f4d32}.user-list{display:grid;gap:10px}.user-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:13px;padding:11px}.user-row b{font-size:12px}.user-row small{display:block;color:var(--muted);font-size:10px;overflow-wrap:anywhere}.label-admin{color:#7d5b20;background:var(--gold-soft)}.label-pro{color:var(--blue);background:var(--blue-soft)}.desktop-only{display:inline-flex}
@media(max-width:1120px){.stats{grid-template-columns:repeat(2,1fr)}.grid-2,.split{grid-template-columns:1fr}.key-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.app{display:block}.sidebar{position:fixed;right:0;top:0;bottom:0;height:auto;width:265px;transform:translateX(104%);transition:.25s;box-shadow:-8px 0 30px rgba(0,0,0,.2)}.sidebar.open{transform:none}.mobile-menu{display:inline-flex}.main{padding:19px 15px 36px}.topbar{align-items:flex-start;gap:12px}.page-title{font-size:22px}.page-subtitle{font-size:11px}.date-chip{display:none}.top-actions{justify-content:flex-end}.user-pill{padding:7px}.user-pill .user-text{display:none}.desktop-only{display:none}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:14px}.stat-value{font-size:24px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.key-grid{grid-template-columns:1fr 1fr}.photo-grid{grid-template-columns:repeat(2,1fr)}.detail-head{display:block}.detail-head .btn{margin-top:12px}.auth-card{padding:24px}.topbar .btn.primary{display:none}}
@media(max-width:440px){.stats{grid-template-columns:1fr}.key-grid{grid-template-columns:1fr}.top-actions{gap:6px}.avatar{width:25px;height:25px}.btn{padding:9px 10px}.auth-body{padding:13px}.auth-card{border-radius:18px}}
