:root{--cg-bg:#1b2140;--cg-bg2:#283056;--cg-sand:#efe7d6;--cg-sand2:#e3d8c0;--cg-ink:#2b2a26;--cg-muted:#5d5a50;--cg-copper:#b8892b;--cg-ok:#4f7a55;--cg-warn:#c9962c;--cg-late:#8c3b3b;--cg-line:rgba(43,42,38,.22)}html,body,#root{background:#1b2140}.cg-wrap{display:flex;flex-direction:column;gap:12px;height:100%;min-height:0;overflow:auto;padding:12px;font-family:system-ui,Segoe UI,sans-serif;color:var(--cg-ink)}.cg-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.cg-head h2{margin:0;font-size:1.25rem;color:#f4eddc}.cg-head .cg-sub{color:#c3c8e6;font-size:.85rem}.cg-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-content:start}.cg-card{background:var(--cg-sand);border:1px solid var(--cg-line);border-radius:12px;padding:12px 14px;box-shadow:0 6px 18px -12px #0009}.cg-card h3{margin:0 0 6px;font-size:.95rem;color:var(--cg-copper);letter-spacing:.02em}.cg-card p{margin:4px 0;font-size:.88rem;line-height:1.45}.cg-muted{color:var(--cg-muted);font-size:.8rem}.cg-chip{display:inline-block;border-radius:99px;padding:1px 10px;font-size:.74rem;font-weight:700;background:var(--cg-sand2);border:1px solid var(--cg-line);margin-right:6px}.cg-chip.ok{background:#d6e6d5;color:#2f5236}.cg-chip.warn{background:#f2e2b6;color:#7a5a12}.cg-chip.late{background:#ecc9c9;color:#6a2a2a}.cg-btn{background:var(--cg-copper);color:#fff;border:none;border-radius:8px;padding:7px 14px;font-weight:700;cursor:pointer;font-size:.86rem}.cg-btn.ghost{background:transparent;color:var(--cg-copper);border:1px solid var(--cg-copper)}.cg-btn:disabled{opacity:.55;cursor:wait}.cg-form{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end}.cg-form label{display:flex;flex-direction:column;gap:3px;font-size:.78rem;color:var(--cg-muted)}.cg-form input,.cg-form select,.cg-form textarea{border:1px solid var(--cg-line);border-radius:7px;padding:6px 8px;background:#fbf7ec;color:var(--cg-ink);font:inherit}.cg-err{color:var(--cg-late);font-size:.82rem}.cg-okmsg{color:var(--cg-ok);font-size:.82rem}.cg-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--cg-line);padding:5px 0;font-size:.86rem}.cg-row:last-child{border-bottom:none}.cg-tree{font-size:.88rem}.cg-tree .cg-node{padding:3px 0}.cg-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:18px;background:linear-gradient(145deg,#1b2140,#283056);font-family:system-ui,sans-serif}.cg-login .cg-card{width:min(760px,96vw)}.cg-person{display:flex;flex-direction:column;gap:2px;text-align:left;background:var(--cg-sand2);border:1px solid var(--cg-line);border-radius:10px;padding:8px 10px;cursor:pointer;font:inherit;color:var(--cg-ink)}.cg-person:hover{border-color:var(--cg-copper)}.cg-kpis{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.cg-kpi{display:flex;flex-direction:column;gap:2px;background:linear-gradient(160deg,#f6efde,#e8dcc0);border:1px solid var(--cg-line);border-left:6px solid var(--cg-copper);border-radius:12px;padding:12px 14px;box-shadow:0 8px 20px -14px #000000b3}.cg-kpi.ok{border-left-color:var(--cg-ok)}.cg-kpi.late{border-left-color:#a33}.cg-kpi-l{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--cg-muted)}.cg-kpi-v{font-size:1.55rem;color:#283056}.cg-kpi-s{font-size:.78rem;color:var(--cg-muted)}.cg-stat{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--cg-line);padding:4px 0;font-size:.86rem}.cg-stat:last-child{border-bottom:none}.cg-stat b.warn{color:#a33}.cg-bar{display:grid;grid-template-columns:150px 1fr auto;gap:8px;align-items:center;font-size:.8rem;margin:5px 0}.cg-bar i{display:block;height:10px;border-radius:6px;background:linear-gradient(90deg,var(--cg-copper),#d9a066)}.cg-ex{background:#fff4d6;border:1px dashed #b8892b;color:#6a4f12;border-radius:8px;padding:5px 10px;font-size:.78rem}.cg-table{width:100%;border-collapse:collapse;font-size:.86rem}.cg-table th{text-align:left;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:var(--cg-muted);border-bottom:1px solid var(--cg-line);padding:4px 6px}.cg-table td{border-bottom:1px solid var(--cg-line);padding:4px 6px;vertical-align:middle}.cg-table input[type=number]{width:70px}.cg-tabs{display:flex;gap:6px;flex-wrap:wrap}.cg-tabs button{background:var(--cg-sand2);border:1px solid var(--cg-line);border-radius:8px;padding:5px 12px;cursor:pointer;font:inherit;color:var(--cg-ink)}.cg-tabs button.on{background:var(--cg-copper);color:#fff;border-color:var(--cg-copper)}.cg-doc{background:var(--cg-sand);border:1px solid var(--cg-line);border-radius:12px;padding:12px 16px;overflow:auto;color:var(--cg-ink)}.cg-doc table{border-collapse:collapse;margin:8px 0;font-size:.84rem}.cg-doc th,.cg-doc td{border:1px solid var(--cg-line);padding:3px 8px;text-align:left;vertical-align:top}.cg-doc th{background:var(--cg-sand2)}.cg-svg svg{max-width:100%;height:auto}.cg-list{display:flex;flex-direction:column;gap:4px}.cg-list button{text-align:left;background:var(--cg-sand2);border:1px solid var(--cg-line);border-radius:8px;padding:6px 9px;cursor:pointer;font:inherit;color:var(--cg-ink)}.cg-list button.on{border-color:var(--cg-copper);background:#f6ecd0}
