/* Stránka Projekty: kolečka s fotkami, tenká časová osa a okno projektu (papír jako v diáři). */
body.atelier main{padding-left:24px;padding-right:24px}
.pf{--pf-lw:190px;display:flex;flex-direction:column;height:calc(100vh - 6px);padding:14px 0 0;color:var(--ink)}
.pfBar2{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-bottom:10px}
.pfSp{margin-left:auto}
.pfSeg{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--card)}
.pfSeg button{background:transparent;color:var(--ink-soft);border-radius:0;min-height:34px;padding:6px 16px;font-size:13px;font-weight:400;letter-spacing:.04em}
.pfSeg button+button{border-left:1px solid var(--line)}
.pfSeg button.on{background:var(--ink);color:#fff}
.pfSeg button:not(.on):hover{background:var(--paper-2)}
.pfLink{background:none;color:var(--ink-soft);padding:6px 8px;min-height:34px;font-size:13px;border-radius:4px;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}
.pfLink:hover{background:none;color:var(--ink);text-decoration-color:var(--gold)}
.pfAdd{min-height:36px;padding:8px 18px;font-size:13px}
.pfSearch{width:170px;min-height:34px;padding:4px 10px;font-size:13px;border:1px solid var(--line);border-radius:6px;background:var(--card)}

/* Kolečka: jedna řada, posouvá se do stran */
.pfCircles{flex:0 0 auto;display:flex;flex-wrap:nowrap;gap:22px;overflow-x:auto;overflow-y:hidden;padding:16px 10px 12px;scrollbar-width:none}.pfCircles::-webkit-scrollbar{display:none}
.pfStrip{position:relative;flex:0 0 auto;border-top:1px solid var(--line)}
.pfStrip .pfCircles{border-top:0}
.pfCircles.drag{cursor:grabbing;user-select:none}
.pfCircles.drag .pfC{pointer-events:none}
.pfArr{position:absolute;top:34px;z-index:5;width:34px;height:34px;min-height:0;padding:0;border-radius:50%;background:var(--ink);color:#fff;font-size:20px;line-height:1;display:grid;place-items:center;box-shadow:0 0 0 3px var(--paper),0 4px 12px #1E1E1C40}
.pfArr[hidden]{display:none}
.pfArr.l{left:2px}.pfArr.r{right:2px}
.pfCw{position:relative;flex:0 0 104px;width:104px;display:flex;flex-direction:column;align-items:center}
.pfC{display:flex;flex-direction:column;align-items:center;gap:8px;width:104px;background:none;color:var(--ink);padding:0;min-height:0;border-radius:8px;font-weight:400}
.pfC:hover{background:none}
.pfRing{position:relative;flex:none;width:88px;height:88px;border-radius:50%;display:grid;place-items:center;background:var(--card);box-shadow:inset 0 0 0 1px var(--line),0 0 0 3px var(--card),0 0 0 4px var(--ph,#b99a79);transition:background .15s,box-shadow .15s,color .15s}
.pfC:hover .pfRing{background:var(--paper-2)}
.pfRing b{font-weight:300;font-size:30px;letter-spacing:.08em;line-height:1}
.pfC.sel .pfRing{background:var(--ink);color:#fff;box-shadow:0 0 0 3px var(--ink),0 0 0 5px var(--gold)}
.pfRing.photo{background-color:var(--paper-2);background-image:var(--photo);background-size:cover;background-position:center;filter:grayscale(.3)}
.pfC:hover .pfRing.photo{filter:none;background-color:var(--paper-2)}
.pfC.sel .pfRing.photo{filter:none;background:var(--paper-2) var(--photo) center/cover no-repeat;box-shadow:0 0 0 3px var(--paper),0 0 0 5px var(--gold)}
.pfTag{position:absolute;left:50%;bottom:-9px;transform:translateX(-50%);background:var(--ink);color:#fff;font-size:10px;letter-spacing:.12em;padding:1px 7px;border-radius:9px;font-weight:500}
.pfC.sel .pfTag{background:var(--gold);color:var(--ink)}
.pfWho{position:absolute;right:-6px;bottom:-4px;width:26px;height:26px;border-radius:50%;box-shadow:0 0 0 2px var(--paper);background-color:var(--avatar-background,#e9edf3);overflow:hidden}
.pfWho img,.pfAv img{width:100%;height:100%;object-fit:cover}
.pfFlag{position:absolute;left:2px;top:2px;width:11px;height:11px;border-radius:50%;box-shadow:0 0 0 2px var(--paper);background:#C26A55}
.pfFlag.soon{background:var(--gold)}
.pfNm{font-size:14px;line-height:1.2;text-align:center;letter-spacing:.01em;margin-top:2px;max-width:104px;overflow-wrap:anywhere}
.pfDl{font-size:11px;color:var(--muted);margin-top:-4px}
.pfC.sel .pfNm{font-weight:500}
.pfEdit{position:absolute;top:-2px;right:2px;width:30px;height:30px;min-height:0;padding:0;border-radius:50%;background:var(--ink);color:#fff;font-size:14px;opacity:0;transform:scale(.85);transition:opacity .15s,transform .15s;z-index:3;box-shadow:0 0 0 2px var(--paper)}
.pfCw:hover .pfEdit,.pfEdit:focus-visible{opacity:1;transform:none}
@media(hover:none){.pfEdit{opacity:1;transform:none}}
.pfNone{font-size:13px;color:var(--muted);padding:18px 4px}

/* Časová osa */
.pfTl{flex:1;min-height:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}
.pfTlHead{display:flex;align-items:center;gap:12px;padding:8px 0}
.pfScroll{flex:1;min-height:0;overflow:auto;background:#FBFAF7;border:1px solid var(--line);border-radius:6px;scrollbar-width:thin;position:relative}
.pfInner{position:relative;min-width:100%}
.pfAxis{position:sticky;top:0;z-index:6;height:54px;background:var(--paper);border-bottom:1px solid var(--line);display:grid;grid-template-columns:var(--pf-lw) 1fr}
.pfAxLab{position:sticky;left:0;z-index:7;background:var(--paper);border-right:1px solid var(--line)}
.pfAxTrack{position:relative}
.pfYr{position:absolute;top:2px;font-weight:300;font-size:26px;letter-spacing:.1em;color:var(--ink);padding-left:8px;white-space:nowrap;border-left:1px solid var(--gold);height:48px;line-height:30px}
.pfMo{position:absolute;top:34px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-left:6px;border-left:1px solid var(--line);height:20px}
.pfMo.q{border-left-color:#C9C6BC}
.pfRow{display:grid;grid-template-columns:var(--pf-lw) 1fr;height:36px;border-bottom:1px solid var(--line)}
.pfLab{position:sticky;left:0;z-index:4;background:#FBFAF7;border-right:1px solid var(--line);border-radius:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:0;padding:2px 12px;min-height:0;color:var(--ink);font-weight:400;text-align:left;overflow:hidden}
.pfLab:hover{background:var(--paper-2)}
.pfLabName{font-size:13px;line-height:1.15;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pfLab small{font-size:10px;line-height:1.1;color:var(--muted);letter-spacing:.04em;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pfTrack{position:relative}
.pfVl{position:absolute;top:0;bottom:0;width:1px;background:var(--line)}
.pfVl.q{background:#D6D3CA}
.pfVl.y{background:var(--gold)}
.pfBar{position:absolute;top:10px;height:16px;border-radius:8px;background:var(--ph);opacity:.85;display:flex;align-items:center;padding:0 8px;overflow:hidden;white-space:nowrap}
.pfBar.inferred{opacity:.55;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.35) 0 4px,transparent 4px 8px)}
.pfBar span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#fff;font-weight:500}
.pfMs{position:absolute;top:12px;width:12px;height:12px;margin-left:-6px;transform:rotate(45deg);background:#FBFAF7;border:2px solid var(--ph);z-index:2}
.pfMs.done{background:var(--ph)}
.pfMs.late{border-color:#C26A55;background:#C26A55}
.pfToday{position:absolute;top:54px;bottom:0;width:2px;background:var(--gold);z-index:3;pointer-events:none}
.pfTodayTag{position:absolute;top:34px;transform:translateX(-50%);background:var(--gold);color:var(--ink);font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:1px 6px;border-radius:3px;z-index:8}
.pfEmpty{padding:36px 24px;font-size:14px;color:var(--muted)}

/* Okno projektu: vše sedí na linkách diáře (řádek = 32 px, linka na jeho spodní hraně) */
dialog.pjDlg{--row:32px;padding:0;border:0;border-radius:10px;background:#FBFAF7;width:min(820px,96vw);max-height:92vh;overflow:hidden;box-shadow:0 30px 80px #1E1E1C40;color:var(--ink)}
dialog.pjDlg::backdrop{background:#1E1E1C70}
dialog.pjDlg form{margin:0;display:block}
.pfPage{position:relative;box-sizing:border-box;padding:var(--row) 44px var(--row) 40px;background-color:#FBFAF7;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--row) - 1px),#E3E0D6 calc(var(--row) - 1px),#E3E0D6 var(--row));background-attachment:local;max-height:calc(92vh - 70px);overflow:auto}
.pfBand{display:none}
.pfTop{display:flex;gap:26px;align-items:flex-start}
.pfPhoto{flex:0 0 118px;text-align:center;padding-top:calc(var(--row) / 2)}
.pfPhoto .pfLink{display:block;width:100%;height:var(--row);min-height:0;margin:0;padding:0;font-size:12px;line-height:var(--row)}
.pfBig{width:118px;height:118px;margin:0 auto 26px;border-radius:50%;background:var(--paper-2) center/cover no-repeat;display:grid;place-items:center;font-size:36px;font-weight:300;letter-spacing:.08em;color:var(--ink);box-shadow:0 0 0 3px #FBFAF7,0 0 0 4px var(--ph,#b99a79)}
.pfFields{flex:1;min-width:0}
.pfLabel{height:var(--row);line-height:var(--row);margin:0;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink);white-space:nowrap}
.pfLn{display:block;box-sizing:border-box;width:100%;height:var(--row);min-height:0;border:0;border-bottom:1px solid #B9B6AB;border-radius:0;background:transparent;padding:0 2px;font-size:15px;line-height:calc(var(--row) - 2px);color:var(--ink)}
.pfLn:focus{border-bottom-color:var(--ink);outline:0;box-shadow:none}
.pfLn.bad{border-bottom-color:#C26A55}
.pfLn.big{height:calc(var(--row) * 2);font-size:30px;font-weight:300;letter-spacing:.01em;line-height:calc(var(--row) * 2 - 2px)}
select.pfLn{padding-right:22px}
textarea.pfLn{height:calc(var(--row) * 3);border:0;border-bottom:1px solid #B9B6AB;resize:none;line-height:var(--row);padding-top:0}
.pfRow2{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.pfSec{margin-top:var(--row)}
.pfChips{display:flex;flex-wrap:wrap;gap:0 8px}
.pfChip{display:inline-flex;align-items:center;gap:7px;box-sizing:border-box;height:28px;min-height:0;margin:2px 0;border:1px solid var(--line);background:var(--card);color:var(--ink-soft);border-radius:14px;padding:0 12px 0 2px;font-size:13px;font-weight:400}
.pfChip:hover{background:var(--paper-2)}
.pfChip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.pfAv{width:22px;height:22px;border-radius:50%;background-color:var(--avatar-background,#e9edf3);overflow:hidden;flex:0 0 22px}
.pfStar{font-size:12px;color:var(--gold)}
.pfPh{display:grid;grid-template-columns:24px 1.5fr 1fr 1fr 32px 32px;gap:0 10px;align-items:center;height:var(--row)}
.pfPhHead span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);line-height:var(--row)}
.pfMsRow .pfLn:nth-child(2){grid-column:2}
.pfDot{width:16px;height:16px;min-height:0;padding:0;border-radius:50%;background:var(--c);justify-self:center;cursor:pointer;box-shadow:0 0 0 2px #FBFAF7}
.pfX,.pfDm{display:grid;place-items:center;width:32px;height:var(--row);min-height:0;padding:0;background:none;line-height:1}
.pfX{color:var(--muted);font-size:17px}
.pfX:hover{background:none;color:#C26A55}
.pfMsRow .pfDm{width:24px;justify-self:center}
.pfDm{color:var(--gold-ink);font-size:14px}
.pfDm:hover{background:none;color:var(--ink)}
.pfDm.on{color:var(--ink)}
.pfLink.pfAddMs,.pfLink.pfAddPh{display:block;height:var(--row);min-height:0;padding:0 0 0 34px;font-size:13px;line-height:var(--row);text-align:left}
.pfLink.pfAddPh{padding-left:0}
.pfMore{margin-top:var(--row)}
.pfMore summary{cursor:pointer;height:var(--row);line-height:var(--row);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink)}
.pfCheck{display:flex;align-items:center;gap:6px;height:var(--row);font-size:14px}
.pfMsg{min-height:var(--row);margin:0;line-height:var(--row);font-size:13px;color:#B0503C}
.pfFoot{display:flex;align-items:center;gap:12px;padding:14px 40px 16px;border-top:1px solid var(--line);background:#FBFAF7}
.pfOk{min-height:40px;padding:8px 24px}
@media(max-width:760px){
 .pf{--pf-lw:120px;height:auto;min-height:100vh}
 .pfTl{min-height:420px}
 .pfCw,.pfC{flex-basis:90px;width:90px}.pfRing{width:76px;height:76px}.pfRing b{font-size:26px}
 .pfPage{padding:var(--row) 20px var(--row) 18px}.pfFoot{padding:12px 20px}
 .pfTop{flex-direction:column;align-items:center}.pfFields{width:100%}.pfBig{margin-bottom:0}
 .pfRow2{grid-template-columns:1fr}
 .pfPh{grid-template-columns:20px 1.3fr 1fr 1fr 28px 28px;gap:0 6px}
 .pfSearch{width:100%}
}
