/* G-Log authenticated workspace; the existing original brand assets remain in the shell. */
.shell[data-app="g-log"] { --accent:#995b0d; --deep:#1f2935; --soft:#f7f8fa; --accent-soft:#fff1d9; background:#f5f7fa; }
.shell[data-app="g-log"] .main { min-width:0; background:#f5f7fa; color:#1f2935; }
.shell[data-app="g-log"] .topbar { background:#fff; color:#1f2935; border-color:#dfe4eb; }
.shell[data-app="g-log"] .tenant-select { color:#1f2935; background:#fff; border-color:#cbd3dd; }
.shell[data-app="g-log"] .content { padding:28px clamp(20px,3vw,44px) 60px; }
.gl-app,.gl-dialog { --gl-ink:#1f2935; --gl-muted:#596577; --gl-line:#dfe4eb; --gl-accent:#91580e; color:var(--gl-ink); font-family:Lexend,Arial,sans-serif; font-size:14px; line-height:1.5; }
.gl-app *,.gl-dialog * { box-sizing:border-box; }
.gl-app :is(h2,h3,h4,p),.gl-dialog :is(h2,h3,h4,p) { margin:0; }
.gl-app h2 { font-size:clamp(26px,3vw,35px); line-height:1.2; letter-spacing:-.8px; }
.gl-app h3,.gl-dialog h3 { font-size:18px; line-height:1.4; }
.gl-app h4,.gl-dialog h4 { font-size:15px; }
.gl-nav { display:flex; gap:6px; padding:5px; margin-bottom:30px; width:max-content; max-width:100%; border:1px solid var(--gl-line); border-radius:14px; background:#fff; }
.gl-nav button { border:0; background:transparent; color:#4c5868; border-radius:9px; min-height:44px; padding:11px 20px; font:inherit; font-weight:600; cursor:pointer; white-space:nowrap; }
.gl-nav button.is-active { color:#fff; background:#263240; }
.gl-page-head { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:26px; }
.gl-page-head p:not(.gl-eyebrow) { color:var(--gl-muted); margin-top:9px; max-width:700px; }
.gl-eyebrow { font-size:10px; letter-spacing:1.6px; font-weight:700; color:var(--gl-accent); text-transform:uppercase; margin-bottom:9px!important; }
.gl-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.gl-button { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:44px; padding:10px 15px; border:1px solid #cbd3dd; border-radius:10px; background:#fff; color:#263240; text-decoration:none; font:inherit; font-size:13px; font-weight:600; line-height:1.35; cursor:pointer; white-space:normal; text-align:center; }
.gl-button:hover { border-color:#a7b2c0; background:#f0f3f6; }
.gl-button.gl-primary { background:#91580e; border-color:#91580e; color:#fff; }
.gl-button.gl-primary:hover { background:#774708; border-color:#774708; }
.gl-button:disabled { cursor:default; opacity:.52; }
.gl-app :is(button,a,input,select,textarea):focus-visible,.gl-dialog :is(button,a,input,select,textarea,summary):focus-visible { outline:3px solid #da9a35; outline-offset:3px; }
.gl-filter { display:flex; max-width:370px; margin:0 0 20px; }
.gl-filter .gl-field { width:100%; }
.gl-field { display:flex; flex-direction:column; gap:8px; min-width:0; font-size:13px; font-weight:600; }
.gl-field input,.gl-field select,.gl-field textarea { width:100%; min-width:0; min-height:46px; padding:11px 12px; border:1px solid #cbd3dd; border-radius:9px; background:#fff; color:var(--gl-ink); font:inherit; font-size:14px; line-height:1.5; }
.gl-field textarea { resize:vertical; min-height:112px; }
.gl-field input[type=file] { padding:10px; font-weight:400; }
.gl-workspace { display:grid; grid-template-columns:minmax(220px,290px) minmax(0,1fr); align-items:start; gap:20px; }
.gl-list { display:grid; gap:8px; }
.gl-list-item { width:100%; display:flex; flex-direction:column; gap:6px; text-align:start; padding:17px; border:1px solid var(--gl-line); border-radius:12px; color:var(--gl-ink); background:#fff; cursor:pointer; font:inherit; }
.gl-list-item strong { font-size:14px; }
.gl-list-item span { color:var(--gl-muted); font-size:12px; }
.gl-list-item.is-active { border-color:#b88231; background:#fff8ec; box-shadow:inset 3px 0 0 #a46a1d; }
.gl-panel { border:1px solid var(--gl-line); border-radius:16px; background:#fff; padding:24px; min-width:0; }
.gl-panel-head { display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:18px; padding-bottom:22px; border-bottom:1px solid var(--gl-line); margin-bottom:22px; }
.gl-panel-head p:not(.gl-eyebrow) { margin-top:6px; color:var(--gl-muted); font-size:13px; }
.gl-checkpoints { display:grid; gap:0; margin-top:20px; }
.gl-checkpoint { display:flex; gap:15px; padding:20px 0; border-top:1px solid var(--gl-line); }
.gl-checkpoint:first-child { border-top:0; padding-top:0; }
.gl-point-number { flex:0 0 34px; height:34px; display:grid; place-items:center; border-radius:9px; background:#fff1d9; color:#774708; font-size:14px; font-weight:700; }
.gl-point-content { flex:1; min-width:0; }
.gl-row-head { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.gl-point-content .gl-actions { margin-top:14px; }
.gl-meta,.gl-muted { color:var(--gl-muted); font-size:12px; margin-top:7px!important; }
.gl-instructions { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.7; margin-top:12px!important; }
.gl-task-list { margin:12px 0; padding-inline-start:20px; }
.gl-badge { display:inline-flex; padding:4px 9px; border:1px solid #dbe1e8; border-radius:6px; background:#f4f6f9; color:#4d596a; font-size:11px; font-weight:600; white-space:nowrap; }
.gl-state-running,.gl-state-ready { background:#e9f3fd; color:#20547d; border-color:#cde1f3; }
.gl-state-completed { background:#eaf5ee; color:#216644; border-color:#cde4d7; }
.gl-state-deviation,.gl-state-cancelled { background:#fff0ed; color:#913c30; border-color:#edcfc8; }
.gl-empty { padding:42px 24px; border:1px dashed #ccd5df; border-radius:14px; background:#fff; display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px; }
.gl-empty strong { font-size:17px; font-weight:600; }
.gl-empty p { max-width:570px; color:var(--gl-muted); line-height:1.7; }
.gl-empty .gl-button { margin-top:5px; }
.gl-run-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); gap:18px; }
.gl-run-card { display:flex; flex-direction:column; align-items:stretch; padding:24px; background:#fff; border:1px solid var(--gl-line); border-radius:16px; gap:15px; }
.gl-run-card>p { color:var(--gl-muted); }
.gl-run-card>.gl-button { align-self:flex-start; margin-top:auto; }
.gl-progress { display:grid; gap:9px; font-size:12px; font-weight:600; }
.gl-progress progress { width:100%; height:8px; border:0; border-radius:4px; background:#e7ebf0; overflow:hidden; appearance:none; }
.gl-progress progress::-webkit-progress-bar { background:#e7ebf0; }
.gl-progress progress::-webkit-progress-value { background:#a76a1b; border-radius:4px; }
.gl-progress progress::-moz-progress-bar { background:#a76a1b; border-radius:4px; }
.gl-references { padding-top:17px; margin-top:16px; border-top:1px solid var(--gl-line); font-size:11px; color:var(--gl-muted); }
.gl-references summary { cursor:pointer; padding:7px 0; font-weight:600; }
.gl-references dl { display:grid; grid-template-columns:150px minmax(0,1fr); gap:6px 12px; margin:12px 0 0; }
.gl-references dt { font-weight:600; }
.gl-references dd { margin:0; overflow-wrap:anywhere; font-family:ui-monospace,monospace; }
.gl-entry-list { list-style:none; padding:0; margin:0; }
.gl-entry-list li { padding:22px 0; border-bottom:1px solid var(--gl-line); }
.gl-entry-list li:first-child { padding-top:0; }
.gl-entry-list li:last-child { border-bottom:0; padding-bottom:0; }
.gl-entry-list time { font-size:12px; color:var(--gl-muted); }
.gl-note { padding:13px 15px; border-radius:9px; background:#f4f6f9; color:var(--gl-muted); font-size:12px; line-height:1.7; }
.gl-panel>.gl-note { margin-top:20px; }
.gl-error { padding:12px 14px; background:#fff0ed; color:#8b2f22; border:1px solid #ebc1b9; border-radius:9px; font-size:13px; line-height:1.6; }
.gl-inline-error:empty,.gl-form-error:empty { display:none; }
.gl-dialog { width:min(760px,calc(100vw - 48px)); max-height:calc(100dvh - 64px); border:1px solid #dce2e9; border-radius:18px; padding:0; background:#fff; box-shadow:0 24px 90px #18243440; }
.gl-dialog::backdrop { background:rgba(20,29,40,.55); backdrop-filter:blur(3px); }
.gl-dialog-head { position:sticky; top:0; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 24px; background:#fff; border-bottom:1px solid var(--gl-line); }
.gl-dialog-head h2 { font-size:20px; line-height:1.4; }
.gl-dialog-body { padding:24px; }
.gl-form { display:grid; gap:19px; }
.gl-form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.gl-form-actions { display:flex; flex-wrap:wrap; gap:9px; justify-content:flex-end; padding-top:12px; border-top:1px solid var(--gl-line); }
.gl-check { display:flex; align-items:center; gap:12px; min-height:44px; cursor:pointer; }
.gl-check input { width:20px; height:20px; accent-color:#91580e; margin:0; }
.gl-form [hidden] { display:none!important; }
.gl-form [data-gl-gps] { display:grid; gap:16px; }
.gl-run-summary { display:flex; gap:14px; flex-wrap:wrap; align-items:center; margin-bottom:20px; }
.gl-media-list { display:grid; gap:14px; margin:16px 0 24px; }
.gl-media-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; border:1px solid var(--gl-line); border-radius:12px; padding:16px; min-width:0; }
.gl-media-item strong { overflow-wrap:anywhere; font-size:13px; }
.gl-media-preview { grid-column:1/-1; color:var(--gl-muted); font-size:12px; }
.gl-media-preview:empty { display:none; }
.gl-media-preview img,.gl-media-preview video { display:block; max-width:100%; width:auto; max-height:420px; margin:auto; border-radius:8px; background:#f0f3f6; }
.gl-upload-status { font-size:12px; color:var(--gl-muted); }
[dir="rtl"] .gl-list-item.is-active { box-shadow:inset -3px 0 0 #a46a1d; }
@media(min-width:901px) { [dir="rtl"] .shell[data-app="g-log"] .sidebar { left:auto!important; right:0!important; } }
@media(max-width:900px) {
  .shell[data-app="g-log"] .topbar { flex-wrap:wrap; gap:10px!important; }
  .shell[data-app="g-log"] .master-preview-switch { flex-basis:100%; flex-wrap:wrap; }
  .shell[data-app="g-log"] .master-preview-switch button { min-height:44px; }
  .shell[data-app="g-log"] .sidebar { height:calc(64px + env(safe-area-inset-bottom))!important; padding-bottom:env(safe-area-inset-bottom)!important; }
  body:has(.shell[data-app="g-log"])>.global-info-cluster { left:0!important; right:0!important; bottom:calc(64px + env(safe-area-inset-bottom))!important; transform:none!important; width:100%!important; height:56px!important; padding:6px 64px!important; background:#f5f7fa!important; border-top:1px solid #dfe4eb!important; z-index:31!important; }
  body:has(.shell[data-app="g-log"]) :is(.global-dsgvo-link,.global-info-menu>summary,.global-mobile-language) { width:44px!important; height:44px!important; min-width:44px!important; min-height:44px!important; }
  body:has(.shell[data-app="g-log"]) .system-applex-slot { position:fixed!important; left:10px!important; bottom:calc(70px + env(safe-area-inset-bottom))!important; width:44px!important; height:44px!important; }
  body:has(.shell[data-app="g-log"]) .system-help-launcher { position:fixed!important; right:10px!important; bottom:calc(70px + env(safe-area-inset-bottom))!important; width:44px!important; height:44px!important; min-height:44px!important; }
  body:has(.shell[data-app="g-log"]) .system-help-mobile-icon,body:has(.shell[data-app="g-log"]) .system-help-mobile-icon>img { width:42px!important; height:42px!important; }
  body:has(.shell[data-app="g-log"])>.toast { bottom:calc(128px + env(safe-area-inset-bottom)); }
}
@media(max-width:1100px) {
  .gl-page-head { align-items:flex-start; flex-direction:column; gap:18px; }
  .gl-workspace { grid-template-columns:minmax(190px,240px) minmax(0,1fr); gap:14px; }
  .gl-panel { padding:20px; }
}
@media(max-width:760px) {
  .shell[data-app="g-log"] .content { padding:20px 16px 140px!important; }
  .gl-nav { width:100%; justify-content:space-between; margin-bottom:24px; }
  .gl-nav button { flex:1; min-width:0; padding:10px 8px; font-size:12px; }
  .gl-page-head { gap:17px; }
  .gl-page-head>.gl-actions { width:100%; }
  .gl-workspace { grid-template-columns:minmax(0,1fr); }
  .gl-list { display:flex; overflow-x:auto; padding-bottom:4px; }
  .gl-list-item { flex:0 0 230px; }
  .gl-panel { padding:18px; border-radius:13px; }
  .gl-run-grid { grid-template-columns:minmax(0,1fr); }
  .gl-run-card { padding:20px; }
  .gl-checkpoint { gap:11px; }
  .gl-point-number { flex-basis:29px; height:29px; }
  .gl-filter { max-width:none; }
  .gl-empty { padding:32px 20px; }
  .gl-dialog { width:100%; max-width:100%; max-height:92dvh; margin:auto 0 0; border-radius:20px 20px 0 0; border:0; }
  .gl-dialog-head { padding:17px 18px; }
  .gl-dialog-head h2 { font-size:18px; }
  .gl-dialog-body { padding:20px 18px max(24px,env(safe-area-inset-bottom)); }
  .gl-form-row { grid-template-columns:minmax(0,1fr); }
  .gl-field :is(input,select,textarea) { font-size:16px; }
  .gl-form-actions>.gl-button { flex:1; }
  .gl-media-item { grid-template-columns:minmax(0,1fr); }
  .gl-media-item>.gl-actions { justify-content:flex-start; }
  .gl-references dl { grid-template-columns:minmax(0,1fr); gap:4px; }
  .gl-references dd { margin-bottom:8px; }
}
@media(prefers-reduced-motion:reduce) { .gl-app *,.gl-dialog * { scroll-behavior:auto!important; transition:none!important; } }
