/* P1 · Start, Einstieg, Ablage und Belegartwahl. Werte aus P0. */
.p1-start-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:28px; }
.p1-start-head > div { min-width:0; }
.p1-start-head h1 { font:700 34px/1.25 var(--head); margin:0; letter-spacing:normal; }
.p1-start-head h1 span { display:block; }
.p1-start-head p { margin:12px 0 0; color:var(--muted); font-size:17px; }
.p1-start-head > .btn { flex:none; }
.p1-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0 0 28px; }
.p1-stat { display:flex; align-items:center; gap:16px; padding:0 24px; color:var(--paused); text-decoration:none; min-height:64px; }
.p1-stat:first-child { padding-left:0; }
.p1-stat + .p1-stat { border-left:1px solid var(--line-strong); }
.p1-stat strong { font:700 40px/1.2 var(--head); }
.p1-stat > span { display:flex; align-items:center; gap:8px; }
.p1-stat svg { width:20px; height:20px; flex:none; }
.p1-stat.safe { color:var(--safe); } .p1-stat.check { color:var(--check); } .p1-stat.zero { color:var(--faint); }
.p1-start-grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:20px; align-items:start; }
.p1-tasks { min-width:0; display:grid; gap:20px; }
.p1-today, .p1-upload, .p1-live, .p1-choice, .p1-recent, .p1-preview { padding:20px; margin:0; }
.p1-today h2, .p1-upload h2, .p1-live h2, .p1-recent h2, .p1-preview h2 { font:700 20px/1.4 var(--head); margin:0 0 16px; }
.p1-today ol, .p1-live > ul, .p1-assign-files { margin:0; padding:0; list-style:none; }
.p1-today li { border-top:1px solid var(--line); }
.p1-today li a { min-height:72px; display:grid; grid-template-columns:160px minmax(0,1fr) minmax(0,1fr) auto; align-items:center; gap:16px; padding:12px 0; color:var(--ink); text-decoration:none; }
.p1-today li a:hover { background:var(--sunken); }
.p1-today-name { display:grid; gap:2px; min-width:0; overflow-wrap:anywhere; }
.p1-today-name > b, .p1-today-name > span { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.p1-today-name > span, .p1-today-reason { font-size:14px; color:var(--muted); }
.p1-status { display:inline-flex; align-items:center; gap:6px; padding:4px 10px; border-radius:999px; font:600 14px/1.5 var(--body); white-space:nowrap; width:max-content; max-width:100%; }
.p1-status > span { flex:none; display:inline-flex; }
.p1-status svg { width:16px; height:16px; flex:none; }
.p1-status.safe { color:var(--safe); background:var(--safe-bg); }
.p1-status.check { color:var(--check); background:var(--check-bg); }
.p1-status.paused { color:var(--paused); background:var(--paused-bg); }
.p1-status.error { color:var(--error); background:var(--error-bg); }
.p1-status.reading { color:var(--accent-ink); background:var(--accent-soft); }
.p1-all-done { min-height:72px; display:flex; align-items:center; gap:12px; margin:0; }
.p1-all-done > span { color:var(--safe); }
.p1-drop { border:1px dashed var(--line-strong); border-radius:var(--r-card); background:var(--surface); padding:24px 16px; min-height:240px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; text-align:center; }
.p1-drop.over { background:var(--accent-soft); border-color:var(--accent-ink); }
.p1-drop strong { font-weight:500; }
.p1-file-icon svg { width:40px; height:40px; color:var(--muted); }
.p1-upload .field { margin-top:20px; }
.p1-upload > .btn { margin-top:16px; }
.p1-upload > p { margin:12px 0; }
.p1-progress { padding:12px 0; color:var(--accent-ink); }
.p1-live li { display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; padding:12px 0; border-top:1px solid var(--line); }
.p1-live li > a { overflow-wrap:anywhere; flex:1 1 160px; }
.p1-read-steps { list-style:none; margin:0; padding:0; display:grid; gap:4px; font-size:14px; color:var(--muted); }
.p1-read-steps li { display:flex; align-items:baseline; gap:8px; padding:0; border:0; }
.p1-read-steps li.done { color:var(--safe); } .p1-read-steps li.running { color:var(--accent-ink); }
.p1-live > a { display:inline-block; margin-top:12px; }
.p1-unclear { display:flex; align-items:center; gap:16px; padding:16px; background:var(--check-bg); border:1px solid var(--check-line); border-radius:var(--r-card); color:var(--check); }
.p1-unclear > span { display:flex; align-items:center; gap:10px; flex:1; }
.p1-unclear svg { width:20px; height:20px; flex:none; }
.p1-ablegen-top, .p1-ablegen-grid { display:grid; grid-template-columns:minmax(0,3fr) minmax(0,2fr); gap:20px; margin-bottom:20px; }
.p1-drop-large { min-height:168px; display:grid; grid-template-columns:64px auto; align-content:center; column-gap:20px; row-gap:4px; }
.p1-drop-large .p1-file-icon { grid-row:1 / 4; align-self:center; }
.p1-drop-large > .btn { justify-self:center; }
.p1-choice { display:grid; align-content:start; gap:12px; }
.p1-choice h2 { font:700 20px/1.4 var(--head); margin:0; }
.p1-choice-help { margin:0; font-size:14px; }
.p1-recent { padding:20px 12px; min-width:0; }
.p1-recent h2 { margin-left:8px; }
.p1-table-wrap { min-width:0; }
.p1-live-table { width:100%; table-layout:fixed; }
.p1-live-table th:nth-child(1) { width:29%; } .p1-live-table th:nth-child(2) { width:25%; } .p1-live-table th:nth-child(3) { width:29%; } .p1-live-table th:nth-child(4) { width:12%; } .p1-live-table th:last-child { width:5%; }
.p1-live-table th, .p1-live-table td { padding:12px 6px; font-size:14px; overflow-wrap:anywhere; }
.p1-live-table td { font-size:15px; }
.p1-live-table .p1-status { white-space:normal; }
.p1-filename { display:flex; align-items:center; gap:8px; color:var(--text); text-decoration:none; }
.p1-type-icon { color:var(--muted); border:1px solid var(--line-strong); border-radius:var(--r-ctl); padding:2px; flex:none; font-size:14px; }
.p1-filename > span:last-child { min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.p1-filename svg { width:20px; height:20px; flex:none; }
.p1-time { white-space:nowrap; font-variant-numeric:tabular-nums; }
.p1-row-menu { position:relative; }
.p1-row-menu summary { list-style:none; cursor:pointer; min-width:28px; min-height:40px; display:grid; place-items:center; font-weight:700; }
.p1-row-menu summary::-webkit-details-marker { display:none; }
.p1-row-menu .shell-menu { left:auto; right:0; width:176px; }
.p1-preview { min-width:0; }
.p1-preview .between { align-items:start; gap:12px; }
.p1-preview .between a { flex:none; font-size:14px; }
.p1-paper { position:relative; background:var(--paper); box-shadow:var(--shadow-pop); }
.p1-paper img { display:block; width:100%; height:auto; }
.p1-marker { position:absolute; pointer-events:none; background:var(--marker); opacity:.45; mix-blend-mode:multiply; }
.p1-empty { padding:40px 24px; text-align:center; color:var(--muted); }
.page-main > .page.p1-ablegen { padding-bottom:128px; }
.p1-ablegen-foot { position:fixed; left:296px; right:32px; max-width:1136px; margin-inline:auto; bottom:16px; z-index:10; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:12px 16px; color:var(--muted); }
.p1-mobile-upload { display:none; }
.p1-upload .demo-drop, .p1-ablegen-top .demo-drop { display: flex; flex-direction: column; align-items: stretch; gap: 16px; }
.p1-ablegen-top:has(.demo-drop) { grid-template-columns: minmax(0, 1fr); }
.pc-erste-schritte { margin-bottom: 24px; }
.pc-erste-schritte ul { list-style: none; padding: 0; margin: 8px 0 0; display: grid; gap: 4px; }
.pc-schritt { display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 8px 12px; margin: 0 -12px; border-radius: var(--r); color: var(--ink); font-size: 16px; font-weight: 600; text-decoration: none; }
.pc-schritt:hover { background: var(--blue-50); }
.pc-haken { flex: none; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; border: 2px solid var(--faint); }
.pc-schritt.done { color: var(--muted); font-weight: 500; }
.pc-schritt.done .pc-haken { border-color: var(--green); background: var(--green); color: var(--surface); }
.pc-haken svg { width: 16px; height: 16px; stroke-width: 2.6; }
.pc-pfeil { margin-left: auto; color: var(--blue); }
.p1-onboarding > h1 { font:700 34px/1.3 var(--head); margin:0 0 8px; }
.p1-onboarding > p { font-size:17px; color:var(--muted); }
.p1-onboarding > h2 { margin:32px 0 8px; font:700 20px/1.4 var(--head); }
.p1-setup-steps { display:flex; align-items:center; list-style:none; padding:0; margin:36px 0; gap:20px; }
.p1-setup-steps li { display:flex; align-items:center; gap:12px; flex:1; color:var(--muted); font-size:15px; }
.p1-setup-steps li + li::before { content:''; display:block; width:32px; border-top:1px solid var(--line-strong); }
.p1-setup-steps li > span { display:grid; place-items:center; width:44px; height:44px; flex:none; border-radius:50%; border:1px solid var(--input-line); font:700 20px var(--head); }
.p1-setup-steps li[aria-current] { color:var(--accent-ink); }
.p1-setup-steps li[aria-current] > span { background:var(--accent); color:var(--on-accent); border-color:var(--accent); }
.p1-template-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding:0; margin:24px 0; border:0; min-width:0; }
.p1-template { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:12px; text-align:center; height:190px; padding:20px; background:var(--surface); border:1px solid var(--line); border-radius:var(--r-card); cursor:pointer; }
.p1-template input { position:absolute; opacity:0; width:1px; height:1px; }
.p1-template:has(input:checked) { border:2px solid var(--accent); background:var(--accent-soft); }
.p1-template:has(input:focus-visible) { outline:2px solid var(--accent-ink); outline-offset:2px; }
.p1-template-icon svg { width:40px; height:40px; color:var(--ink); }
.p1-template b { font-size:17px; font-weight:700; }
.p1-template-icon { height:40px; flex:none; }
.p1-template > .muted { font-size:15px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.p1-onboarding-actions { display:flex; justify-content:flex-end; padding-top:16px; border-top:1px solid var(--line); }
.p1-assign-files { margin:0 0 20px; display:grid; gap:8px; font-size:15px; }
.p1-assign-files li { display:flex; align-items:center; gap:10px; overflow-wrap:anywhere; }
.p1-assign-files svg { width:20px; height:20px; flex:none; }
.p1-assign-choices { border:0; padding:0; margin:0; }
.p1-assign-choices label { display:flex; align-items:center; gap:12px; min-height:48px; padding:8px 12px; border-top:1px solid var(--line); }
.p1-assign-choices input { width:20px; height:20px; accent-color:var(--accent); flex:none; }
.p1-assign-each:not([hidden]) { display:grid; gap:12px; margin-top:16px; }
@media (prefers-reduced-motion:no-preference) { .p1-spin { display:inline-block; animation:p1-spin 1s linear infinite; } @keyframes p1-spin { to { transform:rotate(360deg); } } }
@media (min-width:860px) and (max-width:1023px) { .p1-ablegen-foot { left:104px; right:24px; } }
@media (max-width:1100px) and (min-width:860px) { .p1-today li a { grid-template-columns:160px minmax(0,1fr) auto; } .p1-today-reason { grid-column:2; } .p1-stat { padding:0 12px; gap:8px; } }
@media (max-width:859px) {
  .p1-start-head { display:block; margin-bottom:24px; }
  .p1-start-head h1 { font-size:28px; }
  .p1-start-head > .btn { width:100%; margin-top:20px; }
  .p1-stats { margin-bottom:24px; }
  .p1-stat { padding:0 8px; display:grid; grid-template-columns:auto auto; justify-content:center; align-content:start; gap:6px 8px; text-align:center; }
  .p1-stat:first-child { padding-left:8px; }
  .p1-stat strong { font-size:32px; }
  .p1-stat > span { display:contents; }
  .p1-stat > span > span { grid-column:1 / -1; font-size:14px; }
  .p1-start-grid { display:block; }
  .p1-start-grid > .p1-upload { display:none; }
  .p1-today, .p1-live { padding:16px; }
  .p1-today li a { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:8px 12px; padding:12px 0; }
  .p1-today li .p1-status { grid-column:1 / -1; }
  .p1-today li a > span:last-child { display:none; }
  .p1-unclear { flex-wrap:wrap; }
  .p1-unclear > span { flex-basis:100%; }
  .p1-ablegen-top, .p1-ablegen-grid { grid-template-columns:minmax(0,1fr); }
  .p1-ablegen-top > .p1-drop, .p1-preview { display:none; }
  .p1-mobile-upload { display:grid; gap:12px; margin-bottom:20px; }
  .p1-ablegen-top { margin-bottom:20px; }
  .p1-live-table, .p1-live-table tbody { display:block; }
  .p1-live-table thead { display:none; }
  .p1-live-table tr { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px; padding:12px 8px; border-top:1px solid var(--line); }
  .p1-live-table td { display:block; height:auto; border:0; padding:0; }
  .p1-live-table td:first-child { grid-column:1; }
  .p1-live-table td:nth-child(2) { grid-column:1; grid-row:2; }
  .p1-live-table .p1-time { grid-column:2; grid-row:2; }
  .p1-live-table .p1-details { display:none; }
  .p1-live-table .p1-menu-cell { grid-column:2; grid-row:1; }
  .p1-ablegen-foot { left:16px; right:16px; bottom:calc(76px + env(safe-area-inset-bottom)); flex-direction:column; gap:12px; }
  .p1-ablegen-foot .btn { width:100%; }
  .page-main > .page.p1-ablegen { padding-bottom:160px; }
  .p1-setup-steps { gap:8px; align-items:start; margin:24px 0; }
  .p1-setup-steps li { flex-direction:column; text-align:center; gap:8px; font-size:14px; }
  .p1-setup-steps li + li::before { display:none; }
  .p1-template-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
  .p1-template { height:96px; display:grid; grid-template-columns:40px minmax(0,1fr); text-align:left; gap:4px 16px; padding:12px 16px; }
  .p1-template-icon { grid-row:1 / 3; }
  .p1-template b { align-self:end; }
  .p1-template > .muted { align-self:start; }
}

@media (max-width:859px) { .demo-bar .demo-end { background:transparent; } }

.p1-upload-errors { display:flex; align-items:flex-start; gap:12px; margin:0 0 20px; }
.p1-upload-errors > svg { width:20px; height:20px; flex:none; color:var(--error); }
.p1-upload-errors strong { color:var(--error); }
.p1-upload-errors ul { list-style:none; margin:8px 0 0; padding:0; color:var(--text); overflow-wrap:anywhere; }
.p1-upload-errors li + li { margin-top:8px; }
