:root{--sidebar-width:255px}.system-sidebar{position:fixed;z-index:100;right:0;top:0;bottom:0;width:var(--sidebar-width);display:flex;flex-direction:column;background:linear-gradient(180deg,#0d131b,#080c12);border-left:1px solid var(--border);box-shadow:-12px 0 40px #0005;padding:18px 12px}.system-brand{display:flex;align-items:center;gap:11px;padding:8px 9px 20px;color:#fff!important;text-decoration:none;border-bottom:1px solid var(--border)}.system-brand>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#21c995,#19795f);font:bold 1rem Arial}.system-brand div{display:flex;flex-direction:column;line-height:1.15}.system-brand b{font-family:"B Titr"}.system-brand small{color:var(--accent)!important;font-family:Arial;font-size:.7rem}.system-sidebar nav{flex:1;overflow:auto;padding:14px 0}.system-sidebar nav a{display:flex;align-items:center;gap:10px;color:#b8c5d2;padding:9px 12px;margin:3px 0;border-radius:9px;text-decoration:none;font-size:.95rem}.system-sidebar nav a:hover{background:#19232e;color:#fff}.menu-label{color:#657487;font-size:.68rem;padding:15px 12px 5px;border-top:1px solid #1c2632;margin-top:8px}.sidebar-user{border-top:1px solid var(--border);padding:12px 8px;display:flex;justify-content:space-between;align-items:center}.sidebar-user form,.sidebar-user button{margin:0}.sidebar-user button{padding:5px 10px}.app-shell{margin-right:var(--sidebar-width);min-height:100vh;display:flex;flex-direction:column}.app-shell main{width:min(1380px,calc(100% - 42px));margin:0 auto;padding:25px 0;flex:1}.app-shell footer{display:flex;justify-content:space-between;padding:15px 28px;border-top:1px solid var(--border);background:#0c1118}.app-shell footer a{font-family:"B Titr";text-decoration:none}.page-heading{display:flex;justify-content:space-between;align-items:center;margin:8px 0 22px;padding:22px 25px;background:linear-gradient(135deg,#101923,#142c35);border:1px solid #29505a;border-radius:16px}.page-heading h1{font-family:"B Titr";color:#fff;margin:0}.page-heading p{margin:3px 0 0;color:var(--muted)}.page-heading>span{background:#163c33;color:#72e9c1;padding:7px 12px;border-radius:20px}.entity-create{border-right:3px solid var(--accent)!important}.entity-row{background:var(--surface-2);border:1px solid var(--border)!important;border-radius:11px;padding:0 14px!important;margin-bottom:9px}.entity-row summary{padding:13px 2px}.pager{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:22px}.pager a{padding:7px 15px;background:var(--surface-3);border:1px solid var(--border);border-radius:8px;text-decoration:none}.pager a.disabled{pointer-events:none;opacity:.35}.stage-timeline{position:relative;padding:5px 20px}.stage-timeline:before{content:"";position:absolute;right:40px;top:30px;bottom:30px;width:2px;background:var(--border)}.stage-item{position:relative;display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:15px;padding:15px;margin-bottom:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px}.stage-check{z-index:1;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:2px solid #465363;background:#121923;color:transparent;font:bold 1.15rem Arial}.stage-item.completed{border-color:#235c4b}.stage-item.completed .stage-check{background:var(--accent);border-color:var(--accent);color:#06261c}.stage-item.running .stage-check{border-color:#e0b34d;box-shadow:0 0 0 5px #e0b34d1b}.stage-item.failed{border-color:#6e3038}.stage-item p{margin:2px 0;color:var(--muted)}.stage-item time{font-size:.75rem}.stage-item em{font-style:normal;color:var(--muted)}.stage-item.completed em{color:var(--accent)}@media(max-width:800px){:root{--sidebar-width:72px}.system-sidebar{padding:12px 8px}.system-brand div,.system-sidebar nav a span,.menu-label,.sidebar-user span{display:none}.system-brand{padding:4px 6px 15px}.system-sidebar nav a{justify-content:center;font-size:1.2rem}.sidebar-user{justify-content:center}.sidebar-user button{font-size:0}.sidebar-user button:after{content:"×";font-size:1rem}.app-shell main{width:calc(100% - 24px)}.app-shell footer{display:block}.stage-item{grid-template-columns:40px 1fr}.stage-item em{grid-column:2}.crud-grid{grid-template-columns:1fr!important}}
