/* Pentfield's browser-local client and management workspaces */
.pf-portal,#pf-dialog{--p-ink:var(--ink,#232a26);--p-line:var(--line,#d8d9ce);--p-tint:#f4f4ed;--p-soft:#68716a;color:var(--p-ink);font-family:var(--sans,Arial,sans-serif);font-size:15px}
.pf-portal *,.pf-dialog-inner *{box-sizing:border-box}.pf-portal input,.pf-portal select,.pf-portal button,#pf-dialog input,#pf-dialog select,#pf-dialog textarea,#pf-dialog button{font:inherit}
.pf-portal a,#pf-dialog a{color:inherit}.pf-portal h1,.pf-portal h2,.pf-portal h3,#pf-dialog h2{color:inherit;line-height:1.08;margin:0;font-weight:500;letter-spacing:-.03em}
.pf-portal h1{font-size:clamp(2.5rem,4.2vw,4.75rem)}.pf-portal h2,#pf-dialog h2{font-size:clamp(1.5rem,2.3vw,2.5rem)}.pf-portal h3{font-size:1.17rem}
.pf-load,.pf-container{max-width:1600px;margin:auto;padding:clamp(16px,3vw,54px)}.pf-load{min-height:48vh;animation:pfPulse .9s alternate infinite}
.pf-shell{display:grid;grid-template-columns:minmax(192px,220px) minmax(0,1fr);border:1px solid var(--p-line);min-height:75vh;background:#fff}
.pf-side{background:var(--p-tint);border-right:1px solid var(--p-line);padding:22px 14px}.pf-side details{position:sticky;top:5rem;max-height:75vh;overflow:auto}.pf-side summary{display:none}.pf-side nav{display:grid;gap:1px}.pf-side nav a{font-size:.89rem;text-decoration:none;display:flex;align-items:center;gap:9px;padding:9px 12px;border-left:2px solid transparent}.pf-side nav a:hover,.pf-side nav a:focus-visible{background:#e9e9df}.pf-side nav a[aria-current=page]{color:var(--p-ink);background:#fff;border-color:var(--accent,#825827);font-weight:700}.pf-label,.pf-side nav strong,.pf-kicker{font:650 .67rem/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em}.pf-side nav strong{color:#515e54;padding:17px 12px 5px}.pf-panel{min-width:0;padding:clamp(16px,3vw,48px)}.pf-toolbar,.pf-actions,.pf-title,.pf-row,.pf-hgroup{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.pf-toolbar{padding-bottom:18px;border-bottom:1px solid var(--p-line);margin-bottom:26px}.pf-toolbar select{max-width:100%}.pf-title{align-items:flex-end;margin:24px 0}.pf-title p,.pf-note{font-size:.93rem;line-height:1.6;color:var(--p-soft);max-width:65ch}.pf-toolbar .pf-label,.pf-kicker{color:#636851}.pf-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--p-line);padding:5px 9px;font:600 .72rem Arial,sans-serif;border-radius:20px;background:#fff}.pf-badge:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--accent,#92612a)}
.pf-btn,.pf-link,.pf-icon{border:1px solid var(--p-line);min-height:40px;background:#fff;color:var(--p-ink);text-decoration:none;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:3px;line-height:1.25;font-family:Arial,sans-serif}
.pf-btn:hover,.pf-link:hover,.pf-icon:hover{border-color:var(--p-ink)}.pf-btn.primary,.pf-link.primary{background:var(--p-ink);border-color:var(--p-ink);color:white}.pf-icon{padding:8px 10px}.pf-actions{justify-content:flex-start;margin:12px 0}.pf-actions.compact{margin:0;gap:5px}.pf-actions.compact>*{min-height:34px;padding:6px 10px;font-size:.8rem}
.pf-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,128px),1fr));gap:10px;margin:22px 0}.pf-metric,.pf-card,.pf-empty,.pf-box,.pf-record{border:1px solid var(--p-line);padding:18px;background:#fff;min-width:0}.pf-metric{display:grid;text-decoration:none;gap:14px;border-top:2px solid var(--accent,#886c45)}.pf-metric b{font:500 clamp(2rem,3vw,3.8rem)/1 Georgia,serif}.pf-metric span{font-size:.85rem}.pf-box{margin:14px 0}.pf-box h2,.pf-box h3{margin-bottom:14px}.pf-col{display:grid;grid-template-columns:1.15fr 1fr;gap:14px}.pf-stack{display:grid;gap:12px}.pf-row{padding:13px 0;border-bottom:1px solid var(--p-line);align-items:flex-start;overflow-wrap:anywhere}.pf-row:last-child{border-bottom:0}.pf-row small,.pf-sub{display:block;color:var(--p-soft);margin-top:4px}.pf-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,195px),1fr));gap:14px}.pf-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.pf-card img{width:100%;aspect-ratio:1.5;object-fit:cover}.pf-card p,.pf-record p{margin:0;line-height:1.55}.pf-empty{padding:24px;background:var(--p-tint);line-height:1.6}.pf-empty p{margin:0 0 8px}.pf-empty p:last-child{margin:0}
.pf-form{display:grid;gap:14px}.pf-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pf-field{display:grid;align-content:start;gap:6px;font:600 .84rem/1.4 Arial,sans-serif}.pf-field input,.pf-field select,.pf-field textarea,.pf-toolbar select,.pf-search input,.pf-search select,.pf-record select{display:block;background:#fff;border:1px solid var(--p-line);border-radius:2px;color:var(--p-ink);font:400 1rem/1.3 Arial,sans-serif;padding:10px 11px;width:100%;min-width:0;min-height:43px}.pf-field textarea{min-height:94px}.pf-field:has(textarea),.pf-wide{grid-column:1/-1}.pf-search{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:15px}.pf-search label{max-width:100%}.pf-search input{width:min(100%,340px)}.pf-table-wrap{overflow:auto;max-width:100%}.pf-table{font-size:.87rem;width:100%;border-collapse:collapse}.pf-table th,.pf-table td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--p-line);vertical-align:top;overflow-wrap:anywhere}.pf-table th{color:var(--p-soft);font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}.pf-table td:first-child{font-weight:600}
.pf-board{display:grid;grid-template-columns:repeat(7,minmax(180px,1fr));gap:9px;overflow-x:auto;padding:4px 0 10px}.pf-lane{background:var(--p-tint);padding:10px;min-height:190px;border:1px solid var(--p-line)}.pf-lane.over{outline:2px dashed var(--p-ink)}.pf-lane h3{margin:7px 0 15px;font:650 .86rem Arial,sans-serif}.pf-record{padding:10px;margin-bottom:8px;font-size:.88rem;overflow-wrap:anywhere}.pf-record select{font-size:.8rem;margin-top:8px}.pf-record[draggable=true]{cursor:grab}
.pf-chart{display:grid;gap:14px}.pf-bar{display:grid;gap:6px}.pf-bar div{height:9px;background:var(--p-tint)}.pf-bar i{display:block;height:100%;background:var(--p-ink);transform-origin:left;animation:pfGrow .4s ease-out both}
.pf-auth{max-width:1050px;margin:auto;padding:clamp(20px,5vw,70px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,5vw,70px);align-items:start}.pf-auth header{border-top:3px solid var(--accent,#855f45);padding-top:24px}.pf-auth header h1{margin:15px 0}.pf-auth>.pf-box{padding:24px;margin:0}.pf-check{display:flex;align-items:center;gap:8px;font-size:.9rem}.pf-error{color:#922e25;line-height:1.5}.pf-status{line-height:1.6;background:var(--p-tint);padding:12px;border-left:2px solid var(--accent,#855f45)}.pf-steps{display:flex;gap:5px}.pf-steps span{padding:6px 10px;border-bottom:2px solid var(--p-line);font-size:.78rem}.pf-steps .active{border-color:var(--accent,#855f45);font-weight:bold}
#pf-dialog{width:min(620px,calc(100% - 24px));max-height:88dvh;color:var(--p-ink);background:#fff;border:1px solid var(--p-line);padding:0;box-shadow:0 12px 80px #1113}#pf-dialog::backdrop{background:#13251dcc}#pf-dialog[open]{animation:pfAppear .2s ease both}.pf-dialog-inner{padding:clamp(16px,4vw,28px)}.pf-dialog-inner>.pf-hgroup{margin-bottom:18px}.pf-dialog-inner select{max-width:100%}#pf-toast{position:fixed;z-index:1000;bottom:20px;right:16px;max-width:min(360px,calc(100vw - 32px));background:#25312a;color:white;padding:0;border-radius:3px;pointer-events:none}#pf-toast:not(:empty){padding:12px 17px}.pf-portal :focus-visible,#pf-dialog :focus-visible{outline:3px solid #916422;outline-offset:3px}.pf-mobile-only{display:none}
@keyframes pfPulse{to{opacity:.5}}@keyframes pfGrow{from{transform:scaleX(0)}}@keyframes pfAppear{from{opacity:0;transform:translateY(5px)}}
@media(max-width:920px){.pf-col{grid-template-columns:1fr}.pf-shell{grid-template-columns:175px minmax(0,1fr)}.pf-side{padding:10px 5px}}
@media(max-width:700px){.pf-container{padding:10px}.pf-shell{display:block}.pf-side{padding:0;border:0;border-bottom:1px solid var(--p-line)}.pf-side details{position:static;max-height:none}.pf-side summary{display:list-item;cursor:pointer;padding:14px;font-weight:650}.pf-side nav{max-height:50vh;overflow:auto}.pf-panel{padding:16px 12px}.pf-auth{grid-template-columns:1fr}.pf-fields{grid-template-columns:1fr}.pf-table th,.pf-table td{min-width:72px}.pf-toolbar{margin-bottom:16px}.pf-title{margin:16px 0}.pf-table-wrap{border-right:1px solid var(--p-line)}}
@media(prefers-reduced-motion:reduce){.pf-portal *,#pf-dialog[open]{animation:none!important;transition:none!important}}

.pf-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center;font-size:.84rem}.pf-month strong,.pf-month span{padding:8px 1px}.pf-month strong{color:var(--p-soft)}.pf-month span{background:var(--p-tint)}.pf-month .marked{background:var(--p-ink);color:white;font-weight:bold}.pf-dialog-inner dl{overflow-wrap:anywhere}.pf-dialog-inner dd{margin:3px 0 12px}.pf-dialog-inner input[type=file]{max-width:100%}
.pf-cover{position:relative;isolation:isolate;min-height:220px;background:var(--p-ink);display:flex;align-items:flex-end;overflow:hidden;padding:22px;color:white}.pf-cover img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%}.pf-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,32,23,.87) 0%,rgba(11,32,23,.56) 40%,rgba(11,32,23,.08) 80%);z-index:-1}.pf-cover h2{font-size:clamp(2rem,3.2vw,3.5rem);margin:7px 0;color:white;font-family:var(--serif,Georgia,serif)}.pf-cover .pf-kicker{color:#d7edaa}.pf-cover p{color:white;margin:5px 0 12px}.pf-cover .pf-link{color:#183023}.pf-portal h1,.pf-auth h1,.pf-dialog-inner h2{font-family:var(--serif,Georgia,serif)}
