/* My Oasis photo approvals (Oct 27, 2026) */
.ap-card{border:2px solid #1f5f60;scroll-margin-top:96px}.ap-card:not(.is-open){border-width:1px;border-color:#e3dacb}
.ap-item{min-width:0}.ap-h{margin:0 0 4px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ap-sub{margin:0 0 10px;color:#5f6a64;font-size:14px}.ap-lead{margin:0 0 12px}
.ap-note{background:#f7f3ec;border-radius:12px;padding:12px 14px;margin:0 0 14px}.ap-note b{display:block;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#1f5f60;margin-bottom:4px}.ap-note p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.ap-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin:0 0 14px}
.ap-photos.big{grid-template-columns:1fr}@media(min-width:700px){.ap-photos.big{grid-template-columns:1fr 1fr}}
.ap-ph{position:relative;display:block;padding:0;border:1px solid #e3dacb;border-radius:12px;overflow:hidden;background:#eee6d9;cursor:zoom-in;aspect-ratio:4/3}
.ap-ph img{display:block;width:100%;height:100%;object-fit:cover}
.ap-zoom{position:absolute;right:8px;bottom:8px;background:rgba(22,61,92,.85);color:#fff;font-size:12px;font-weight:700;border-radius:999px;padding:4px 10px}
.ap-photos:not(.big) .ap-zoom{display:none}
.ap-statement{margin:0 0 14px;padding:14px 16px;border-left:4px solid #1f5f60;background:#fbf9f4;border-radius:0 12px 12px 0;font:400 17px/1.5 "Fraunces",Georgia,serif;color:#22302b}
.ap-statement.is-locked{border-left-color:#c9bfae}
.ap-form .f input{font-size:17px}.ap-acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.ap-acts .btn{min-height:48px}
.ap-approve{min-width:180px}.ap-change{margin-top:10px}.ap-change textarea{width:100%;box-sizing:border-box;font:inherit;font-size:16px;padding:11px 12px;border:1px solid #d8cfbf;border-radius:10px}
.ap-done{font-weight:700;color:#1d5b34;margin:0 0 12px}.ap-wait{font-weight:700;font-size:17px;color:#22302b;margin:0 0 12px}
.ap-fine{font-size:13px;color:#5f6a64;margin:8px 0 0}.ap-rec{margin:0 0 4px}.ap-sep{border:0;border-top:1px solid #e3dacb;margin:22px 0}
/* owner */
.ap-top{margin-bottom:10px}.ap-top h3{margin:0}.ap-aform{border:1px solid #e3dacb;border-radius:14px;padding:16px;margin:0 0 16px;background:#fff}
.ap-aform select,.ap-aform input,.ap-aform textarea{max-width:100%;box-sizing:border-box}.ap-lbl{display:block;font-weight:700;font-size:15px;margin:0 0 6px}
.ap-pick{display:flex;gap:8px;flex-wrap:wrap}.ap-file{position:relative;overflow:hidden;min-height:48px;display:inline-flex;align-items:center;justify-content:center;flex:1 1 140px}
.ap-file input{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:0}
.ap-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;margin-top:10px}.ap-th{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;border:1px solid #e3dacb}
.ap-th img{width:100%;height:100%;object-fit:cover;display:block}.ap-th-x{position:absolute;top:4px;right:4px;width:30px;height:30px;padding:0;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;font-size:18px;line-height:30px;cursor:pointer}
.ap-th-none{grid-column:1/-1;font-size:14px}.ap-prev .ap-statement{font-size:15px;margin:0}
.ap-list{gap:12px}.ap-row{list-style:none;border:1px solid #e3dacb;border-radius:14px;padding:14px 16px;display:grid;gap:8px;min-width:0}
.ap-row.st-changes_requested{border-color:#e9a39a;background:#fffaf9}.ap-row.st-approved{border-color:#b9d9c3}.ap-row.st-withdrawn{opacity:.7}
.ap-row-t{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}.ap-row-t>div{display:flex;flex-direction:column;gap:3px;min-width:0}.ap-row-t strong{overflow-wrap:anywhere}
.ap-meta{margin:0;font-size:14px;overflow-wrap:anywhere}.ap-meta.ok{color:#1d5b34;font-weight:600}.ap-meta.bad{color:#8a1f11;font-weight:700}
.ap-quote{margin:0;white-space:pre-wrap;background:#fdecea;border-radius:10px;padding:10px 12px;overflow-wrap:anywhere}
.ap-row .ap-photos{margin:0}.pstat-void{background:#eceae4;color:#4a4f4b}
/* viewer */
.ap-noscroll,.ap-noscroll body{overflow:hidden}
.ap-lb{position:fixed;inset:0;z-index:2000;background:rgba(10,20,28,.94);display:flex;flex-direction:column}
.ap-lb-sc{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;-webkit-overflow-scrolling:touch}
.ap-lb-sc img{max-width:100%;max-height:100%;object-fit:contain;cursor:zoom-in;display:block}
.ap-lb.zoom .ap-lb-sc{display:block}.ap-lb.zoom .ap-lb-sc img{max-width:none;max-height:none;width:240%;cursor:zoom-out}@media(min-width:900px){.ap-lb.zoom .ap-lb-sc img{width:auto}}
.ap-lb-bar{display:flex;align-items:center;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));color:#fff;font-size:14px}
.ap-lb-b{min-width:48px;min-height:48px;font-size:26px;background:rgba(255,255,255,.12);color:#fff;border:0;border-radius:12px;padding:0}
.ap-lb-h{flex:1;opacity:.75;font-size:13px}.ap-lb-x{min-height:48px;background:#fff;color:#163d5c;border:0}
#ap-admin,#ap-admin *,#approvals,#approvals *{box-sizing:border-box;min-width:0}
#ap-admin select,#ap-admin input:not([type=file]),#ap-admin textarea{width:100%;max-width:100%}
#ap-admin .pform-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}@media(max-width:520px){#ap-admin .pform-2{grid-template-columns:minmax(0,1fr)}}
.ap-file.btn-primary{color:#fff}.ap-file.btn-light{color:#163d5c}
.ap-file:focus-within{outline:3px solid #f2c14e;outline-offset:2px}

/* approval-photo-names-1030: named photos */
.ap-fig{margin:0;min-width:0}.ap-cap{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:5px;font-size:13px;line-height:1.35;color:#3d4a44}
.ap-cap-t{flex:1 1 100%;font-weight:600;overflow-wrap:anywhere}.ap-photos.big .ap-cap{font-size:14px}
.ap-dl{font-size:13px;color:#163d5c;text-decoration:underline;min-height:28px;display:inline-flex;align-items:center}
.ap-ren{font-size:12px;padding:4px 10px;min-height:28px}
.ap-photos:not(.big) .ap-cap{font-size:12px}.ap-photos:not(.big){grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.ap-th{aspect-ratio:auto;overflow:visible;border:0}.ap-th img{aspect-ratio:1;height:auto;border-radius:10px;border:1px solid #e3dacb}
.ap-th-name{width:100%;margin-top:4px;font-size:13px;padding:6px 8px;border:1px solid #cfc5b4;border-radius:8px;box-sizing:border-box}
