:root{--bg:#f5f7fb;--panel:#fff;--text:#172033;--muted:#72809a;--line:#e6eaf0;--accent:#4f46e5;--accent2:#eef2ff;--danger:#b42318;--shadow:0 8px 28px rgba(20,31,56,.06)}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit}.app{display:flex;min-height:100vh}.sidebar{width:250px;background:#111827;color:#dbe2ee;position:fixed;top:0;bottom:0;right:0;padding:24px 16px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 24px}.logo{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:grid;place-items:center;color:#fff;font-weight:800;letter-spacing:.4px}.brand b{display:block;color:#fff}.brand span{display:block;color:#93a0b6;font-size:12px;margin-top:3px}.sidebar nav{display:grid;gap:7px}.sidebar nav a{padding:12px 14px;border-radius:11px;text-decoration:none;color:#c8d1df;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:#1f2937;color:#fff}.side-bottom{margin-top:auto;padding:8px}.side-bottom a{color:#9aa8bc;text-decoration:none;font-size:13px}.main{margin-right:250px;width:calc(100% - 250px);padding:30px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}header h1{margin:0 0 5px;font-size:28px}header p,.muted{margin:0;color:var(--muted);font-size:13px}.date{background:#fff;border:1px solid var(--line);padding:9px 13px;border-radius:10px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:22px}.card{background:var(--panel);padding:18px;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.card span{font-size:13px;color:var(--muted)}.card strong{font-size:30px;display:block;margin:8px 0}.card small{color:#97a2b4}.card.danger strong{color:var(--danger)}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:20px;margin-bottom:20px}.panel h2{margin:0 0 16px;font-size:17px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.grid-2{display:grid;grid-template-columns:360px 1fr;gap:20px}.form{display:grid;gap:13px}.form label{display:grid;gap:7px;font-size:13px;font-weight:600}.form input,.form select,.form textarea,.search,.inline-update select{width:100%;border:1px solid #dfe4ec;background:#fff;border-radius:10px;padding:10px 11px;font:inherit;color:var(--text);outline:none}.form textarea{min-height:78px;resize:vertical}.form input:focus,.form select:focus,.form textarea:focus,.search:focus{border-color:#a5b4fc;box-shadow:0 0 0 3px #eef2ff}.btn{border:0;background:var(--accent);color:#fff;padding:10px 14px;border-radius:10px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}.btn.secondary{background:#fff;color:#39445b;border:1px solid var(--line)}.search{max-width:220px}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:680px}th,td{text-align:right;padding:12px 10px;border-bottom:1px solid var(--line);font-size:13px;vertical-align:middle}th{color:#7d899d;font-weight:700;background:#fbfcfe}td a{color:#4f46e5;text-decoration:none}.badge{display:inline-block;padding:5px 9px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:11px}.badge.published,.badge.active{background:#ecfdf3;color:#067647}.badge.deleted,.badge.blocked,.badge.rejected{background:#fef3f2;color:#b42318}.badge.pending,.badge.planned{background:#fffaeb;color:#b54708}.icon-btn{border:0;background:#fff0f0;color:#c62828;width:30px;height:30px;border-radius:8px;cursor:pointer}.note{background:#fff8e7;border:1px solid #f5dd9b;color:#6f5616;padding:10px 12px;border-radius:10px;font-size:12px;margin-bottom:14px}.empty{padding:28px;text-align:center;color:var(--muted)}.summary{cursor:pointer;font-weight:800;color:#3f46bd}.placement-form{grid-template-columns:repeat(3,1fr);margin-top:18px}.placement-form .wide{grid-column:1/-1}.actions{display:flex;gap:9px;align-items:center}.inline-update{display:grid;grid-template-columns:130px 120px 130px 90px 56px;gap:6px;align-items:center}.inline-update select{padding:7px 8px}.inline-update span{color:var(--muted);font-size:12px}.mini{border:0;background:#eef2ff;color:#4338ca;border-radius:8px;padding:8px;cursor:pointer;font-weight:700}footer{text-align:center;color:#98a2b3;font-size:12px;padding:16px}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top,#eef2ff,#f7f8fb 55%)}.auth-card{width:min(420px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;box-shadow:0 20px 60px rgba(31,41,55,.12)}.auth-card .logo{margin-bottom:18px}.auth-card h1{margin:0 0 8px}.auth-card p{color:var(--muted);line-height:1.8}.auth-card form{display:grid;gap:12px;margin-top:20px}.auth-card input{padding:12px;border-radius:10px;border:1px solid var(--line)}.auth-card button{padding:12px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-weight:800}.alert{background:#fef3f2;color:#b42318;border-radius:10px;padding:10px 12px;font-size:13px}@media(max-width:1200px){.cards{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:1fr}.placement-form{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sidebar{position:static;width:100%;height:auto}.app{display:block}.main{margin:0;width:100%;padding:18px}.sidebar nav{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:repeat(2,1fr)}header{align-items:flex-start}.grid-2{grid-template-columns:1fr}.placement-form{grid-template-columns:1fr}.placement-form .wide{grid-column:auto}.panel-head{align-items:flex-start;flex-direction:column}.actions{width:100%;flex-wrap:wrap}.search{max-width:none}.inline-update{grid-template-columns:1fr 1fr;min-width:420px}}
.password-field{display:flex;gap:8px;align-items:center}.password-field input{flex:1}.toggle-password,.copy-btn,.reveal-btn,.copy-password-btn{border:1px solid #d9dde7;background:#fff;border-radius:8px;padding:6px 9px;cursor:pointer;font:inherit}.copy-btn{padding:3px 7px;font-size:12px}.masked-password{direction:ltr;display:inline-block;min-width:72px;font-family:monospace}
.quick-add{display:inline-block;text-decoration:none;white-space:nowrap;padding:8px 12px;border-radius:9px;background:#5146e5;color:#fff!important;font-weight:700}.quick-add:hover{opacity:.9}.note.wide{grid-column:1/-1;line-height:1.9}.note.wide a{font-weight:700}
.lang-switch{margin-top:auto;padding:16px 12px 4px;display:flex;gap:6px;flex-wrap:wrap}.lang-switch a{font-size:12px;text-decoration:none;padding:7px 9px;border:1px solid rgba(255,255,255,.12);border-radius:9px;color:#cbd5e1}.lang-switch a:hover{background:rgba(255,255,255,.08)}
.report-toolbar{margin-bottom:18px}.report-select{max-width:460px}.client-report h3{margin:28px 0 12px}.report-head{display:flex;align-items:center;gap:28px;padding:8px 0 24px;border-bottom:1px solid #e5e7eb}.report-head>div:first-child{flex:1}.eyebrow{font-size:11px;letter-spacing:.15em;color:#64748b;font-weight:700}.report-head h2{font-size:30px;margin:5px 0}.report-kpi{min-width:120px;text-align:center;padding:16px;border-radius:16px;background:#f8fafc}.report-kpi strong{display:block;font-size:30px}.report-kpi span{font-size:12px;color:#64748b}
html[dir="ltr"] body{text-align:left}html[dir="ltr"] .app{direction:ltr}html[dir="ltr"] .sidebar{order:0}html[dir="ltr"] main{direction:ltr}html[dir="ltr"] table{text-align:left}html[dir="ltr"] .form label{text-align:left}
@media print{.sidebar,.no-print,header .date,footer{display:none!important}.app{display:block!important}main{margin:0!important;padding:0!important}.panel{box-shadow:none!important;border:0!important}.client-report{display:block!important}body{background:#fff!important}.report-head{break-inside:avoid}a{color:#000!important;text-decoration:none!important}}
