


.ui-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  border-radius: var(--ingos-btn-radius); border: 1px solid transparent;
  padding: 7px 16px; font: inherit; font-size: 13px; font-weight: 500; line-height: 1.25;
  white-space: nowrap; cursor: pointer; transition: filter .15s ease, background .15s ease, border-color .15s ease;
}
.ui-btn .hgi-stroke { font-size: 15px; }
.ui-btn-sm { padding: 5px 12px; font-size: 12px; }
.ui-btn:disabled { opacity: .5; cursor: not-allowed; }
.ui-btn-primary { background-image: var(--ingos-brand-gradient); color: #fff; }   
.ui-btn-primary:hover:not(:disabled) { filter: brightness(1.08); }
.ui-btn-outline { border-color: var(--ingos-line-2); background: transparent; color: var(--ingos-text); }
.ui-btn-outline:hover:not(:disabled) { background: var(--ingos-surface-2); }
.ui-btn-danger { border-color: rgba(244, 63, 94, .5); background: transparent; color: #fb7185; }
.ui-btn-danger:hover:not(:disabled) { background: rgba(244, 63, 94, .12); }
.ui-btn-ghost { border-color: transparent; background: transparent; color: var(--ingos-text-muted); }
.ui-btn-ghost:hover:not(:disabled) { color: var(--ingos-text); }

.ui-btn-round { width: 40px; height: 40px; padding: 0; gap: 0; flex: none; }
.ui-btn-round.ui-btn-lg { width: 44px; height: 44px; }   
.ui-btn-round .hgi-stroke { font-size: 18px; }
.ui-btn-round.ui-btn-outline { background: var(--ingos-key-bg); border-color: var(--ingos-key-edge); box-shadow: 0 2px 12px var(--ingos-chat-shadow); }
.ui-btn-round.ui-btn-outline:hover:not(:disabled) { background: var(--ingos-key-bg); border-color: rgb(var(--ingos-accent-rgb) / .45); }


.ui-card {
  background: var(--ingos-card-bg); border: 1px solid var(--ingos-line);
  border-radius: var(--ingos-card-radius); padding: 17px 18px; backdrop-filter: blur(22px) saturate(140%); -webkit-backdrop-filter: blur(22px) saturate(140%);
}
.ui-card-muted { background: var(--ingos-surface-2); }


.ui-av {
  position: relative; flex: none; box-sizing: border-box; width: 40px; height: 40px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center; line-height: 1;
  border: 2.5px solid #6b7280; background: var(--ingos-surface-2); color: var(--ingos-text-muted); font-size: 12.5px;
}
.ui-av-32 { width: 32px; height: 32px; border-width: 2px; font-size: 11px; }
.ui-av-72 { width: 72px; height: 72px; border-width: 3px; font-size: 22px; }
.ui-av-104 { width: 104px; height: 104px; border-width: 3px; font-size: 34px; }
.ui-av-ini .hgi-stroke { font-size: 18px; }
.ui-av-32 .ui-av-ini .hgi-stroke { font-size: 15px; }
.ui-av-72 .ui-av-ini .hgi-stroke { font-size: 28px; }
.ui-av-104 .ui-av-ini .hgi-stroke { font-size: 34px; }
.ui-av-alt { display: none; }   
.ui-av-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.ui-av-tick {
  position: absolute; right: -2px; bottom: -2px; width: 17px; height: 17px; border-radius: 50%; box-sizing: border-box;
  display: flex; align-items: center; justify-content: center; background: var(--ingos-accent); border: 2px solid var(--ingos-bg);
}
.ui-av-tick .hgi-stroke { font-size: 10px; color: #fff; }
.ui-av-32 .ui-av-tick { width: 14px; height: 14px; }
.ui-av-32 .ui-av-tick .hgi-stroke { font-size: 9.5px; }
.ui-av-72 .ui-av-tick { width: 24px; height: 24px; right: 0; bottom: 0; }
.ui-av-104 .ui-av-tick { width: 27px; height: 27px; right: -4px; bottom: -4px; border-width: 3px; }
.ui-av-72 .ui-av-tick .hgi-stroke, .ui-av-104 .ui-av-tick .hgi-stroke { font-size: 13px; }


.ui-badge {
  display: inline-flex; align-items: center; gap: 5px; font-size: 11.5px; font-weight: 500;
  padding: 4px 11px; border-radius: 20px;
  background: rgb(var(--ingos-accent-rgb) / .22); color: var(--ingos-accent);
  border: 1px solid rgb(var(--ingos-accent-rgb) / .55);
}
.ui-badge-ok    { background: rgba(52, 211, 153, .16); color: var(--ingos-ok);   border-color: rgba(52, 211, 153, .4); }
.ui-badge .hgi-stroke { font-size: 13px; }
.ui-badge-warn  { background: rgba(245, 158, 11, .14); color: var(--ingos-warn); border-color: rgba(245, 158, 11, .45); }
.ui-badge-danger{ background: rgba(244, 63, 94, .14);  color: #fb7185;           border-color: rgba(244, 63, 94, .45); }
.ui-badge-muted { background: var(--ingos-surface-2);  color: var(--ingos-text-muted); border-color: var(--ingos-line); }


.ui-kpi-num { font-size: var(--ingos-kpi-size); font-weight: 500; }


.ui-switch { flex: none; width: 42px; height: 24px; padding: 0; border-radius: 999px; border: 1px solid var(--ingos-line);
  background: var(--ingos-surface-2); position: relative; cursor: pointer; transition: .15s; }
.ui-switch::after { content: ""; position: absolute; top: 2px; left: 2px; width: 18px; height: 18px; border-radius: 50%;
  background: var(--ingos-text-muted); transition: .15s; }
.ui-switch[aria-checked="true"] { border-color: rgb(var(--ingos-accent-rgb) / .7); background: rgb(var(--ingos-accent-rgb) / .22); }
.ui-switch[aria-checked="true"]::after { left: 20px; background: rgb(var(--ingos-accent-rgb)); }
.ui-switch:disabled { opacity: .5; cursor: default; }


.ui-field { display: block; }
.ui-field > span { display: block; font-size: 12px; color: var(--ingos-text-muted); margin-bottom: 4px; }
.ui-input, .ui-select, .ui-textarea {
  width: 100%; box-sizing: border-box; font: inherit; font-size: 13px;
  color: var(--ingos-text); background: var(--ingos-surface-2);
  border: 1px solid var(--ingos-line); border-radius: 10px; padding: 9px 12px;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.ui-textarea { min-height: 84px; resize: vertical; }

.ui-input, .ui-select { height: 36px; }   
.ui-select { -webkit-appearance: none; appearance: none; padding-right: 34px; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%238b8fa3' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 12px center; background-size: 12px 12px; }
.ui-input[type="date"], .ui-input[type="time"], .ui-input[type="datetime-local"] { -webkit-appearance: none; appearance: none; }
.ui-input::-webkit-date-and-time-value { text-align: left; }
.ui-field > .ui-field-hint { display: block; font-size: 11.5px; margin-bottom: 0; color: var(--ingos-text-muted); margin-top: 4px; line-height: 1.4; }
.ui-input:focus, .ui-select:focus, .ui-textarea:focus {
  outline: none; border-color: rgb(var(--ingos-accent-rgb) / .6);
  box-shadow: 0 0 0 3px rgb(var(--ingos-accent-rgb) / .18);
}


.tenant.ui-pick { font: inherit; margin: 0; box-sizing: border-box; height: 36px; min-height: 0; min-width: 0;
  max-width: 100%; text-align: left; -webkit-appearance: none; appearance: none; }
.tenant.ui-pick .tn { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tenant.ui-pick > .hgi-stroke { flex: none; }   
.ui-field > .tenant.ui-pick, .tenant.ui-pick.ui-pick-block { display: flex; width: 100%; }
.tenant.ui-pick:focus { outline: none; }
.tenant.ui-pick:focus-visible { border-color: rgb(var(--ingos-accent-rgb) / .6); box-shadow: 0 0 0 3px rgb(var(--ingos-accent-rgb) / .18); }
.tenant.ui-pick:disabled { opacity: .5; cursor: not-allowed; }
.tenant.ui-pick:disabled:hover { background: var(--glass-2); }
.tenant.ui-pick.ui-pick-empty .tn { color: var(--ingos-text-muted); font-weight: 400; }
.ui-pick-menu { max-width: calc(100vw - 16px); }

.menu.ui-pick-menu { overflow-y: auto; overscroll-behavior: contain; }
.ui-pick-menu .mi:focus, .ui-pick-menu .mi.ui-pick-lit { outline: none; background: rgba(255,255,255,.08); }
html.theme-light .ui-pick-menu .mi:focus, html.theme-light .ui-pick-menu .mi.ui-pick-lit { background: rgba(31,22,40,.05); }
.ui-pick-menu .mi > span:not(.hgi-stroke) { min-width: 0; overflow-wrap: anywhere; }
.ui-pick-menu .mi[aria-disabled="true"] { opacity: .5; cursor: default; }
.ui-pick-menu .mi .ui-pick-tick { margin-left: auto; padding-left: 10px; color: var(--ingos-accent); }
.ui-pick-menu .ui-pick-head { padding: 11px 15px 9px; border-bottom: 1px solid var(--ingos-line); }
.ui-pick-menu .ui-pick-htitle { font-size: 13.5px; font-weight: 500; color: var(--ingos-text); overflow-wrap: anywhere; }
.ui-pick-menu .ui-pick-hsub { font-size: 12px; color: var(--ingos-text-muted); margin-top: 2px; }
.ui-field.papier > .tenant.ui-pick { background: var(--ingos-paper-bg); color: var(--ingos-paper-text);
  border-color: var(--ingos-paper-line); }
.ui-field.papier > .tenant.ui-pick > .hgi-stroke { color: var(--ingos-paper-muted); }


.ui-page-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin: 0 2px 22px; }
.ui-page-header .uih-title { font-size: 21px; font-weight: 500; color: var(--ingos-text); }
.ui-page-header .uih-sub { font-size: 13px; color: var(--ingos-text-muted); margin-top: 2px; }


.ui-pane { height: 100%; min-height: 0; margin: 0; display: flex; flex-direction: column; overflow: hidden;
  background: var(--ingos-card-bg); border: 1px solid var(--ingos-line); border-radius: var(--ingos-card-radius);
  backdrop-filter: blur(22px) saturate(140%); -webkit-backdrop-filter: blur(22px) saturate(140%); }

.ui-pane-head { flex: none; padding: 17px 22px 14px; border-bottom: 1px solid var(--ingos-line);
  display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 12px 16px; }
.ui-pane-head .uip-htext { flex: 1 1 240px; min-width: 0; }
.ui-pane-head .uip-title { font-size: 16px; font-weight: 500; color: var(--ingos-text); }
.ui-pane-head .uip-sub { font-size: 12.5px; color: var(--ingos-text-muted); line-height: 1.55; margin-top: 5px; }
.ui-pane-body { flex: 1; min-height: 0; overflow-y: auto; padding: 18px 22px; display: flex; flex-direction: column; gap: 12px; }

.ui-pane-body > * { flex: none; }


.ui-pane-body.fill { padding: 12px 14px; gap: 0; overflow-y: auto; overflow-x: hidden; display: flex; flex-direction: column; }
.ui-pane-body.fill > .ingos-fill { flex: 1; min-height: 0; }

.ui-pane-fill.bleed > .ui-pane-body.fill { padding: 0; }
.ui-pane-foot { flex: none; padding: 12px 22px; border-top: 1px solid var(--ingos-line);
  display: flex; justify-content: flex-end; align-items: center; gap: 9px; flex-wrap: wrap; }
.ui-pane-foot:empty { display: none; }

.ui-aktionen { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.ui-pane-body > .ui-aktionen { justify-content: flex-start; margin-top: 4px; }

.ui-pane-body .ui-state, .ingos-set-detail .ui-state { max-width: none; margin-left: 0; margin-right: 0; }
.ui-pane-body > .ui-state:only-child, .ui-pane-body .fill-host > .ui-state:only-child { max-width: 520px; margin: 24px auto; }

@media (max-width: 860px) {
  .ingos-view.full { height: auto; min-height: 100%; }
  .ui-pane:not(.ui-pane-fill) { height: auto; flex: none; overflow: visible; }
  .ui-pane-body:not(.fill) { overflow: visible; }
}



.ui-state { display: flex; flex-direction: column; align-items: center; justify-content: center;
  text-align: center; gap: 10px; padding: 60px 20px; color: var(--ingos-text-muted);
  max-width: min(520px, 100% - 28px); margin: 24px auto; background: var(--ingos-card-bg); border: 1px solid var(--ingos-line);
  border-radius: 16px; backdrop-filter: blur(22px) saturate(140%); -webkit-backdrop-filter: blur(22px) saturate(140%); }
.ui-state .hgi-stroke { font-size: 34px; opacity: .6; margin-bottom: 12px; }
.ui-state .uis-title { font-size: 14px; font-weight: 500; color: var(--ingos-text); }
.ui-state .uis-text { font-size: 12.5px; max-width: 360px; line-height: 1.5; }
.ui-error .hgi-stroke { color: var(--ingos-warn); }
.ui-spin { width: 26px; height: 26px; border-radius: 50%;
  border: 2px solid var(--ingos-line); border-top-color: var(--ingos-accent); animation: ui-spin .8s linear infinite; }
@keyframes ui-spin { to { transform: rotate(360deg); } }


.ingldrhost { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; min-height: 200px; box-sizing: border-box; padding: 18px; }
.ingldrhost .ingosldr { gap: 10px; }
.ingldrhost .ingosldr-svg { width: min(30vw, 126px); }
.ingldrhost .ingosldr-cap { font-size: 11px; }
.ingosldr { display: flex; flex-direction: column; align-items: center; gap: 18px; --ldr-glow: rgba(147,51,234,.5); transition: opacity .45s ease, transform .45s ease; will-change: opacity, transform; }
.ingosldr.out { opacity: 0; transform: scale(1.04); }
.ingosldr-svg { width: min(56vw, 288px); height: auto; display: block; overflow: visible; }
.ingosldr-svg .trk .L { fill: none; stroke: var(--ink); stroke-width: .5; opacity: .07; }
.ingosldr-svg .ink .L { fill: none; stroke: url(#ingoldrg); stroke-width: .6; stroke-linejoin: round; stroke-linecap: round; stroke-opacity: 1; }
.ingosldr-svg .ink { filter: drop-shadow(0 0 2px var(--ldr-glow)); transition: filter .35s ease; }
.ingosldr.done .ingosldr-svg .ink { filter: drop-shadow(0 0 6px var(--ldr-glow)); }
@keyframes ingosldrPulse { 0%,100% { opacity: 1; } 50% { opacity: .6; } }
.ingosldr.waiting .ingosldr-svg .ink { animation: ingosldrPulse 1.7s ease-in-out infinite; }
.ingosldr-cap { font-size: 13px; color: var(--ink-dim); text-align: center; letter-spacing: .01em; }
.ingosldr-cap .dots i { animation: ingosldrDot 1.4s infinite; opacity: .25; font-style: normal; }
.ingosldr-cap .dots i:nth-child(2) { animation-delay: .2s; }
.ingosldr-cap .dots i:nth-child(3) { animation-delay: .4s; }
@keyframes ingosldrDot { 0%,60%,100% { opacity: .25; } 30% { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .ingosldr.waiting .ingosldr-svg .ink { animation: none; } .ingosldr-cap .dots i { animation: none; opacity: .7; } }


.ui-tab { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.ui-tab-kopf { display: flex; align-items: center; gap: 12px; }
.ui-tab-zahl { font-size: 12.5px; color: var(--ingos-text-muted); }
.ui-tab-spalten { margin-left: auto; max-width: 190px; }

.ui-tab-rahmen { overflow-x: auto; border: 1px solid var(--ingos-line);
                 border-radius: 14px; background: var(--ingos-surface); }
.ui-tab-t { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.ui-tab-t th { text-align: left; padding: 12px 16px; border-bottom: 1px solid var(--ingos-line);
               vertical-align: bottom; white-space: nowrap; }
.ui-tab-th { display: inline-block; font-size: 13px; font-weight: 400;
             color: var(--ingos-text-muted); }
.ui-tab-sort { cursor: pointer; }
.ui-tab-sort:hover { color: var(--ingos-text); }
.ui-tab-sort.an::after { content: " ⇅"; font-size: 11px; }
.ui-tab-f { display: block; margin-top: 6px; width: 100%; min-width: 90px; font-size: 12px;
            padding: 4px 8px; border-radius: 8px; border: 1px solid var(--ingos-line);
            background: var(--ingos-surface-2); color: var(--ingos-text); }
.ui-tab-t td { padding: 15px 16px; border-bottom: 1px solid var(--ingos-line);
               vertical-align: middle; color: var(--ingos-text); }
.ui-tab-t tbody tr:last-child td { border-bottom: 0; }

.ui-tab-t tbody tr.ui-tab-klick { cursor: pointer; }
.ui-tab-t tbody tr.ui-tab-klick:hover { background: color-mix(in srgb, var(--ingos-primary) 8%, transparent); }
.ui-tab-r { text-align: left; }   
.ui-tab-leer { padding: 26px 16px; text-align: center; color: var(--ingos-text-muted); }

.ui-tab-suche { flex: 1 1 240px; max-width: 420px; min-width: 0; font-size: 13px; height: 36px; box-sizing: border-box;
                padding: 8px 14px; border-radius: 999px; border: 1px solid var(--ingos-line);
                background: var(--ingos-surface-2); color: var(--ingos-text); }
.ui-tab-suche::placeholder { color: var(--ingos-text-muted); }
.ui-tab-zz { max-width: 130px; }
.ui-tab-kopf { flex-wrap: wrap; }
.ui-tab-spalten { margin-left: 0; }
@media (max-width: 700px) {
  .ui-tab-suche { flex-basis: 100%; max-width: none; }
}




.ui-field.papier > span { color: var(--ingos-paper-muted); }
.ui-field.papier .ui-input,
.ui-field.papier .ui-select,
.ui-field.papier .ui-textarea {
  background-color: var(--ingos-paper-bg); color: var(--ingos-paper-text);
  border-color: var(--ingos-paper-line); color-scheme: light;
}
.ui-field.papier .ui-input::placeholder,
.ui-field.papier .ui-textarea::placeholder { color: var(--ingos-paper-muted); }


.ui-confirm-ov { position: fixed; inset: 0; z-index: 110; background: rgba(3, 4, 8, .55);
  display: flex; align-items: center; justify-content: center; padding: 20px; }
.ui-confirm { width: min(460px, 100%); background: var(--ingos-card-bg); border: 1px solid var(--ingos-line);
  border-radius: var(--ingos-card-radius); box-shadow: 0 24px 70px rgba(0, 0, 0, .45);
  backdrop-filter: blur(22px) saturate(140%); -webkit-backdrop-filter: blur(22px) saturate(140%); }
.ui-confirm-head { padding: 18px 22px 12px; display: flex; gap: 12px; align-items: flex-start; }
.ui-confirm-head > .hgi-stroke { font-size: 22px; color: var(--ingos-accent); flex: none; margin-top: 1px; }
.ui-confirm.danger .ui-confirm-head > .hgi-stroke { color: var(--ingos-danger, var(--ingos-warn)); }
.ui-confirm-htext { min-width: 0; }
.ui-confirm-title { font-size: 16px; font-weight: 500; color: var(--ingos-text); }
.ui-confirm-text { font-size: 13px; color: var(--ingos-text-muted); line-height: 1.55; margin-top: 4px; }
.ui-confirm-wirkung { margin: 0 22px; padding: 10px 12px; border-radius: 10px; font-size: 12.5px; line-height: 1.5;
  background: var(--ingos-surface-2); border: 1px solid var(--ingos-line); color: var(--ingos-text); }
.ui-confirm .ui-confirm-tippen { display: flex; padding: 12px 22px 0; }
.ui-confirm-foot { padding: 14px 22px 16px; display: flex; justify-content: space-between; gap: 9px; flex-wrap: wrap; }   


.ui-toasts { position: fixed; top: calc(64px + env(safe-area-inset-top)); right: 16px; z-index: 90;
  display: flex; flex-direction: column; gap: 8px; width: min(340px, calc(100vw - 32px)); pointer-events: none; }
.ui-toast { pointer-events: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 10px;
  padding: 10px 8px 10px 14px; border-radius: 14px; font-size: 13px; color: var(--ingos-text);
  background: var(--ingos-card-bg); border: 1px solid var(--ingos-line); }
.ui-toast > .hgi-stroke { font-size: 18px; color: var(--ingos-accent); flex: none; }
.ui-toast-main { flex: 1 1 160px; min-width: 0; display: flex; flex-direction: column; gap: 2px; text-align: left;
  font: inherit; color: inherit; background: none; border: 0; padding: 0; }
button.ui-toast-main { cursor: pointer; }
.ui-toast-title { font-weight: 500; overflow-wrap: anywhere; }
.ui-toast-text { color: var(--ingos-text-muted); font-size: 12.5px; overflow-wrap: anywhere; }
.ui-toast-a { display: flex; flex-wrap: wrap; gap: 4px; }
.ui-toast-a .ui-btn { padding: 4px 8px; }
@media (max-width: 480px) {
  .ui-toasts { left: 12px; right: 12px; width: auto; }
}


.ui-confirm.ui-bug { width: min(640px, 100%); }
.ui-bug-body { padding: 0 22px; display: flex; flex-direction: column; gap: 12px; }
.ui-bug-body .ui-field { display: flex; }
.ui-bug-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.ui-bug-t { flex: 1 1 180px; min-width: 0; font-size: 13px; }
.ui-bug-hint { font-size: 12px; color: var(--ingos-text-muted); overflow-wrap: anywhere; }
.ui-bug-a { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.ui-bug-thumb { max-width: 100%; max-height: 180px; border: 1px solid var(--ingos-line); border-radius: 10px; }
.ui-bug-err { font-size: 12.5px; color: var(--ingos-danger, var(--ingos-warn)); overflow-wrap: anywhere; }
.ui-bug-ctxlbl { font-size: 12px; color: var(--ingos-text-muted); margin-bottom: 4px; }
.ui-bug-pre { margin: 0; max-height: 160px; overflow: auto; padding: 8px 10px; border-radius: 10px;
  background: var(--ingos-surface-2); border: 1px solid var(--ingos-line);
  font: 12px/1.55 ui-monospace, SFMono-Regular, Menlo, monospace; white-space: pre-wrap; word-break: break-word; }


.ingos-tm-sky { position: relative; isolation: isolate; background: var(--ingos-tm-bg); }
.ingos-tm-sky::before { content: ""; position: absolute; top: 1px; left: 0; right: 0; bottom: 0; z-index: 0;
  pointer-events: none; background: var(--ingos-tm-glow); }
.ingos-tm-stars { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; }


.ingos-pp { display: flex; flex-direction: column; gap: 14px; }
.ingos-pp-grp { display: flex; flex-direction: column; gap: 7px; }
.ingos-pp-t { display: flex; align-items: center; gap: 7px; font-size: 11.5px; color: var(--ingos-text-muted); }
.ingos-pp-dot { width: 7px; height: 7px; border-radius: 50%; flex: none; }
.ingos-pp-prods { display: flex; flex-wrap: wrap; gap: 7px; }
.ingos-pp-prod .hgi-stroke { font-size: 17px; color: var(--ingos-text-muted); }
.ingos-pp-prod { display: inline-flex; align-items: center; gap: 7px; padding: 4px 11px 4px 5px; border: 1px solid var(--ingos-line); border-radius: 999px; background: var(--ingos-surface-2); color: var(--ingos-text-muted); cursor: pointer; font-family: inherit; font-size: 12.5px; transition: .12s; }
.ingos-pp-prod img { width: 20px; height: 20px; object-fit: contain; border-radius: 5px; flex: none; }
.ingos-pp-prod:hover { border-color: rgb(var(--ingos-accent-rgb) / .5); color: var(--ingos-text); }
.ingos-pp-prod.on { border-color: rgb(var(--ingos-accent-rgb) / .7); background: rgb(var(--ingos-accent-rgb) / .16); color: var(--ingos-text); }
.ingos-pp-nm { text-align: left; }
.ingos-pp-sub { display: block; font-size: 11px; color: var(--ingos-text-muted); line-height: 1.25; }


.ingos-rail { width: 62px; flex: none; display: flex; flex-direction: column; overflow: hidden; align-self: stretch;
  background: var(--ingos-card-bg); border: 1px solid var(--ingos-line); border-radius: var(--ingos-card-radius); }
.ingos-rail-hd { min-height: 51px; display: flex; align-items: center; justify-content: center; flex: none;
  border-bottom: 1px solid var(--ingos-line); color: var(--ingos-text-muted); font-size: 16px; }
.ingos-rail-rows { flex: 1; min-height: 0; overflow-y: auto; }
.ingos-rail-item { display: flex; align-items: center; justify-content: center; width: 100%; padding: 13px 0; margin: 0;
  font: inherit; color: var(--ingos-text); background: none; cursor: pointer;
  border: 0; border-left: 2px solid transparent; border-bottom: 1px solid var(--ingos-line); }
.ingos-rail-item:hover { background: var(--ingos-surface-2); }
.ingos-rail-item.on { background: rgb(var(--ingos-accent-rgb) / .12); border-left-color: rgb(var(--ingos-accent-rgb)); }
.ingos-rail-item img { width: 32px; height: 32px; object-fit: contain; border-radius: 7px; }
.ingos-rail-item > .hgi-stroke { font-size: 22px; color: var(--ingos-text-muted); }
.ingos-rail-item.dim img, .ingos-rail-item.dim > .hgi-stroke { opacity: .38; }
.ingos-rail-item.dim.on img, .ingos-rail-item.dim.on > .hgi-stroke { opacity: .7; }

@media (max-width: 768px) {
  .ingos-rail { width: 100%; flex-direction: row; }
  .ingos-rail-hd { display: none; }
  .ingos-rail-rows { display: flex; overflow-x: auto; overflow-y: hidden; }
  .ingos-rail-item { width: 58px; flex: none; padding: 10px 0; border-left: 0; border-bottom: 2px solid transparent;
    border-right: 1px solid var(--ingos-line); }
  .ingos-rail-item.on { border-left: 0; border-bottom-color: rgb(var(--ingos-accent-rgb)); }
}


.ui-consent { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.ui-consent-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.ui-consent-act { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.ui-consent-act { align-items: flex-start; padding: 12px 0; border-top: 1px solid var(--ingos-line); }
.ui-consent-act:first-child { border-top: 0; }
.ui-consent-t { flex: 1 1 220px; min-width: 0; }
.ui-consent-act-t { flex: 1 1 220px; min-width: 0; }
.ui-consent-a { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-width: 0; }
.ui-consent-lbl { font-size: 13.5px; font-weight: 500; color: var(--ingos-text); overflow-wrap: anywhere; }
.ui-consent-sub { font-size: 12.5px; color: var(--ingos-text-muted); line-height: 1.5; overflow-wrap: anywhere; margin-top: 2px; }
.ui-consent-note { font-size: 12.5px; line-height: 1.55; color: var(--ingos-text-muted); padding: 10px 12px; border-radius: 10px;
  background: rgb(var(--ingos-accent-rgb) / .08); border: 1px solid rgb(var(--ingos-accent-rgb) / .22); overflow-wrap: anywhere; }
.ui-consent-form { display: flex; flex-wrap: wrap; gap: 12px 14px; align-items: flex-start; }
.ui-consent-form .ui-field { flex: 1 1 220px; min-width: 0; }
.ui-consent-acts { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.ui-consent-err { font-size: 12.5px; color: var(--ingos-danger, var(--ingos-warn)); overflow-wrap: anywhere; }
.ui-consent-h { font-size: 13px; font-weight: 500; color: var(--ingos-text-muted); margin: 18px 0 4px; }
.ui-consent-acts-list { display: flex; flex-direction: column; }
.ui-consent-acts-list .ui-av { flex: none; }
.ui-confirm.ui-consent-dlg { width: min(520px, 100%); }
.ui-consent-body { padding: 0 22px; display: flex; flex-direction: column; gap: 12px; }
.ui-consent-inline:empty { display: none; }


.ui-wys { border: 1px solid var(--ingos-paper-line); border-radius: 12px; background: var(--ingos-paper-bg); color-scheme: light; overflow: hidden; }
.ui-wys { transition: box-shadow var(--ingos-dur-1, 120ms) var(--ingos-ease, ease), border-color var(--ingos-dur-1, 120ms) var(--ingos-ease, ease); }
.ui-wys:focus-within { border-color: rgb(var(--ingos-accent-rgb) / .5); box-shadow: 0 0 0 3px rgb(var(--ingos-accent-rgb) / .18); }   
.ui-wys-ed { min-height: 66px; max-height: 220px; overflow-y: auto; padding: 11px 14px; font-size: 13.5px; line-height: 1.55; outline: none; color: var(--ingos-paper-text); }
.ui-wys.empty .ui-wys-ed::before { content: attr(data-ph); color: var(--ingos-paper-muted); pointer-events: none; }
.ui-wys-ed p { margin: 0 0 8px; } .ui-wys-ed p:last-child { margin: 0; }
.ui-wys-ed ul, .ui-wys-ed ol { margin: 6px 0 6px 20px; padding: 0; }
.ui-wys-ed a { color: var(--ingos-paper-accent); }
.ui-wys-ed blockquote { margin: 6px 0; padding-left: 12px; border-left: 3px solid var(--ingos-paper-line); color: var(--ingos-paper-muted); }
.ui-wys-tb { display: flex; align-items: center; gap: 2px; padding: 6px 8px; background: var(--ingos-paper-2); border-top: 1px solid var(--ingos-paper-line); flex-wrap: wrap; }
.ui-wys-b { border: 0; background: none; color: var(--ingos-paper-muted); cursor: pointer; width: 30px; height: 30px; border-radius: 7px; display: grid; place-items: center; font-size: 16px; }
.ui-wys-b:hover { background: rgba(31, 22, 40, .07); color: var(--ingos-paper-text); }
.ui-wys-div { width: 1px; height: 18px; background: var(--ingos-paper-line); margin: 0 4px; }

html:not(.theme-light) .ui-wys.follow { background: rgba(10, 9, 18, .55); border-color: var(--ingos-line-2); color-scheme: dark; }
html:not(.theme-light) .ui-wys.follow .ui-wys-ed { color: var(--ingos-text); }
html:not(.theme-light) .ui-wys.follow.empty .ui-wys-ed::before { color: var(--ingos-text-muted); }
html:not(.theme-light) .ui-wys.follow .ui-wys-ed a { color: var(--ingos-accent); }
html:not(.theme-light) .ui-wys.follow .ui-wys-ed blockquote { border-left-color: var(--ingos-line-2); color: var(--ingos-text-muted); }
html:not(.theme-light) .ui-wys.follow .ui-wys-tb { background: rgba(255, 255, 255, .03); border-top-color: var(--ingos-line); }
html:not(.theme-light) .ui-wys.follow .ui-wys-b { color: var(--ingos-text-muted); }
html:not(.theme-light) .ui-wys.follow .ui-wys-b:hover { background: rgba(255, 255, 255, .07); color: var(--ingos-text); }
html:not(.theme-light) .ui-wys.follow .ui-wys-div { background: var(--ingos-line); }

.ui-wys.tall .ui-wys-ed { min-height: 220px; max-height: none; }


@media (prefers-reduced-motion: reduce) {
  :root { --ingos-dur-1: 0ms; --ingos-dur-2: 0ms; --ingos-dur-3: 0ms; }
}
