/* Pick•Mine website: signed-in area (#/account). Uses the site's variables (--orange, --ink, --line, --soft, --sh-s ...).
   All classes are prefixed pm- so nothing clashes with the site (the site already uses .card for photo tiles). */
.pm-portal{background:var(--soft,#F7F5F2);min-height:70vh}
.pm-wrap{max-width:760px;margin:0 auto;padding:96px 16px 64px;color:var(--ink,#111214);font-family:var(--font,inherit)}
.pm-wrap .h2{margin:0 0 6px;line-height:1.1;letter-spacing:-.02em}
.pm-wrap .lede{margin:8px 0 20px}
.pm-wrap .eyebrow{margin:0 0 10px}
.pm-wrap p{margin:6px 0}
.pm-wrap .small{display:inline-block}
.pm-wrap p.small,.pm-wrap div.small{display:block}
.pm-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.pm-back{font-weight:700;font-size:14px;color:var(--ink);text-decoration:none}
.pm-back::before{content:'‹';margin-right:6px;color:var(--orange)}
.pm-who{display:flex;align-items:center;gap:10px;min-width:0}
.pm-who .small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:46vw}
.pm-card{background:#fff;border-radius:18px;box-shadow:var(--sh-s,0 10px 26px -18px rgba(17,18,20,.4));padding:18px;margin:0 0 14px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.pm-card>.btn,.pm-card>.pm-btns,.pm-card>form,.pm-card>.pm-packs,.pm-card>.pm-tiles,.pm-card>textarea,.pm-card>.pm-chips,.pm-card>.pm-person,.pm-card>.pm-between,.pm-card>.pm-facts,.pm-card>.pm-sub,.pm-card>.pm-legal,.pm-card>.pm-timeline,.pm-card>[data-msg]{align-self:stretch}
.pm-card>.btn:not(.sm){width:100%}
.pm-card .eyebrow{margin:0}
.pm-grid{display:grid;grid-template-columns:1fr;gap:14px}
.pm-grid .pm-card{margin:0}
@media (min-width:720px){.pm-grid{grid-template-columns:repeat(3,1fr)}.pm-wrap{max-width:1000px}}
.pm-big{font-size:30px;font-weight:800;letter-spacing:-.02em;margin:2px 0}
.pm-btns{display:flex;gap:10px;flex-wrap:wrap}
.pm-row{display:flex;gap:18px;flex-wrap:wrap;margin:14px 0}
.pm-between{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.pm-link{background:none;border:none;padding:0;font:inherit;font-weight:700;font-size:14px;color:var(--orange-d,#E24A16);cursor:pointer;text-decoration:none}
.pm-red{color:#B4544A}.pm-green{color:#2E8B57}
.pm-h3{font-size:19px;font-weight:800;letter-spacing:-.01em;margin:26px 0 10px}
.pm-sheet .pm-h3,.pm-card .pm-h3{margin:8px 0 4px}
.pm-label{display:block;font-weight:700;font-size:13px;margin:14px 0 6px}
.pm-input{width:100%;box-sizing:border-box;min-height:50px;padding:13px 14px;border:1.5px solid var(--line,rgba(17,18,20,.12));border-radius:14px;background:#fff;font:inherit;font-size:16px;color:var(--ink)}
textarea.pm-input{resize:vertical;line-height:1.45}
.pm-input:focus{outline:none;border-color:var(--ink)}
.pm-code{font-size:24px;letter-spacing:.4em;text-align:center;font-weight:700}
.pm-form{align-items:stretch}
.pm-form>.btn{margin-top:14px}
.pm-auth{max-width:460px;margin:0 auto;align-items:stretch}
.pm-auth form{display:flex;flex-direction:column;gap:6px}
.pm-auth .btn{margin-top:10px}
.pm-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pm-prefix{position:relative}
.pm-prefix span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--ink2);font-weight:600;pointer-events:none}
.pm-prefix .pm-input{padding-left:46px}
.pm-chips{display:flex;flex-wrap:wrap;gap:8px}
.pm-chip{height:38px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);background:#fff;font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer}
.pm-chip.on{background:var(--black,#0E0F11);border-color:var(--black,#0E0F11);color:#fff;font-weight:600}
.pm-chip.pm-dim{opacity:.4}
.pm-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45;cursor:pointer;padding:6px 0}
.pm-check input{width:20px;height:20px;accent-color:var(--orange);flex:none;margin-top:1px}
.pm-checks{display:flex;flex-direction:column;align-self:stretch;border-top:1px solid var(--line);margin:4px 0}
.pm-checks .pm-check{border-bottom:1px solid var(--line);padding:10px 0}
.pm-note{margin:10px 0;padding:12px 14px;border-radius:14px;background:var(--soft,#F7F5F2);font-size:13.5px;line-height:1.5}
.pm-note.warn{background:#FFEDE5;color:#9A3412}
.pm-warnbox{background:#FFEDE5;color:#9A3412;box-shadow:none}
.pm-redbox{background:rgba(180,84,74,.08);box-shadow:none}
.pm-soft{background:#fff}
.pm-test{padding:10px;border-radius:10px;background:rgba(180,84,74,.1);color:#B4544A;font-weight:800;font-size:12px;letter-spacing:.08em;text-align:center}
.pm-badge{display:inline-flex;align-items:center;height:26px;padding:0 11px;border-radius:999px;font-size:12px;font-weight:700;background:var(--soft);color:var(--ink);white-space:nowrap}
.pm-badge.orange{background:#FFEDE5;color:#B23A0E}.pm-badge.dark{background:var(--black,#0E0F11);color:#fff}
.pm-badge.green{background:#E3F4EA;color:#2E7D4F}.pm-badge.red{background:rgba(180,84,74,.12);color:#B4544A}.pm-badge.grey{background:var(--soft);color:var(--ink)}
.pm-pill{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);font-size:12px;font-weight:600;background:#fff}
.pm-pill.soft{border:none;background:#FFEDE5;color:#B23A0E}
.pm-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:12.5px;color:var(--ink2)}
.pm-meta>span+span:not(.pm-pill):not(.pm-badge)::before{content:'·';margin-right:10px;color:var(--ink3)}
.pm-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
.pm-stats .pm-card{margin:0;align-items:center;text-align:center;padding:14px 8px;gap:2px}
.pm-stats b{font-size:18px;font-weight:800;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.pm-stats span{font-size:11.5px;color:var(--ink2)}
.pm-ticks{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.45}
.pm-ticks li{position:relative;padding-left:24px}
.pm-ticks li::before{content:'';position:absolute;left:3px;top:4px;width:10px;height:10px;border-radius:50%;border:2px solid var(--ink3)}
.pm-ticks li.ok::before{border:none;width:14px;height:14px;left:1px;top:2px;background:var(--orange);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.pm-ticks li span{color:var(--ink2)}
.pm-tabs{display:flex;gap:8px;margin-bottom:12px;overflow-x:auto}
.pm-tabs button{height:36px;padding:0 14px;border-radius:999px;border:none;background:#fff;font:inherit;font-weight:600;font-size:13.5px;color:var(--ink);cursor:pointer;white-space:nowrap;box-shadow:inset 0 0 0 1px var(--line)}
.pm-tabs button.on{background:var(--ink);color:#fff;box-shadow:none}
.pm-list{display:flex;flex-direction:column;gap:10px}
.pm-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;background:#fff;border-radius:18px;box-shadow:var(--sh-s);color:var(--ink);text-decoration:none}
.pm-item>div:first-child{min-width:0}
.pm-item>div:first-child>b{display:block;overflow:hidden;text-overflow:ellipsis}
.pm-item .pm-meta{margin-top:4px}
.pm-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:12.5px;text-align:right;flex:none;margin-left:auto}
.pm-empty{padding:18px;border-radius:14px;background:#fff;display:flex;flex-direction:column;gap:4px;font-size:13px}
.pm-empty span{color:var(--ink2)}
.pm-facts{display:flex;flex-wrap:wrap;gap:10px 24px}
.pm-facts>div{display:flex;flex-direction:column;gap:2px}
.pm-pre{white-space:pre-wrap;overflow-wrap:anywhere}
.pm-q{gap:6px}
.pm-inline{display:flex;gap:8px;align-items:center;align-self:stretch;margin:8px 0}
.pm-inline .pm-input{flex:1;min-width:0}
.pm-inline .btn{flex:none;height:50px}
.pm-person{display:flex;align-items:center;gap:12px}
.pm-person img,.pm-ava{width:44px;height:44px;border-radius:50%;object-fit:cover;background:var(--soft);flex:none}
.pm-person>div{min-width:0;flex:1}
.pm-price{font-size:14px}
.pm-price>b{font-size:20px;font-weight:800;margin-right:6px}
.pm-state{font-weight:700;font-size:13px;color:var(--ink2)}.pm-state.ok{color:#2E8B57}
.pm-tiles,.pm-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
@media (min-width:560px){.pm-tiles{grid-template-columns:repeat(4,1fr)}.pm-pick{grid-template-columns:repeat(5,1fr)}}
.pm-tiles img,.pm-tile{width:100%;aspect-ratio:1;border-radius:10px;object-fit:cover;background:var(--soft);display:block}
.pm-tile{position:relative;overflow:hidden;border:none;padding:0;cursor:pointer}
.pm-tile img{width:100%;height:100%;object-fit:cover;display:block}
.pm-tile.on{box-shadow:inset 0 0 0 3px var(--orange);outline:3px solid var(--orange);outline-offset:-3px}
.pm-tile.on::after{content:'';position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:var(--orange)}
.pm-vid{position:absolute;left:6px;bottom:6px;padding:2px 8px;border-radius:999px;background:rgba(17,18,20,.6);color:#fff;font-size:11px;font-weight:600}
.pm-legal{padding:14px;border-radius:14px;background:var(--soft);font-size:13px;line-height:1.5}
.pm-limits{font-size:13.5px;line-height:1.55}
.pm-packs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:4px}
.pm-pack{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:92px;border-radius:18px;border:1.5px solid var(--line);background:#fff;font:inherit;color:var(--ink);cursor:pointer;transition:border-color .15s,transform .15s}
.pm-pack b{font-size:22px;font-weight:800}
.pm-pack span{font-size:12.5px;font-weight:700;color:var(--orange-d,#E24A16)}
.pm-pack:hover:not(:disabled){border-color:var(--orange)}
.pm-pack:active:not(:disabled){transform:scale(.98)}
.pm-pack:disabled{opacity:.38;cursor:not-allowed}
.pm-pack:disabled span{color:var(--ink3)}
.pm-total{font-size:15px;margin-top:10px}.pm-total b{font-size:22px;font-weight:800}
.pm-rules-t{font-weight:700;font-size:13px;margin-top:12px}
.pm-rules{margin:4px 0 12px;padding-left:18px;font-size:12px;line-height:1.5;color:var(--ink2);display:flex;flex-direction:column;gap:4px}
.pm-timeline{list-style:none;margin:0;padding:0}
.pm-timeline li{position:relative;padding:0 0 14px 32px;display:flex;flex-direction:column;font-size:13.5px;color:var(--ink3)}
.pm-timeline li:last-child{padding-bottom:0}
.pm-timeline li::before{content:'';position:absolute;left:0;top:0;width:16px;height:16px;border-radius:50%;border:2px solid var(--line);background:#fff}
.pm-timeline li::after{content:'';position:absolute;left:9px;top:20px;bottom:0;width:2px;background:var(--line)}
.pm-timeline li:last-child::after{display:none}
.pm-timeline li.done{color:var(--ink)}
.pm-timeline li.done::before{background:var(--orange);border-color:var(--orange)}
.pm-timeline li.done::after{background:var(--orange)}
.pm-sub{padding:14px;border-radius:14px;background:var(--soft);display:flex;flex-direction:column;gap:8px}
.pm-stars{display:flex;gap:4px}
.pm-stars button{border:none;background:none;padding:0 2px;font-size:30px;line-height:1;color:var(--line);cursor:pointer}
.pm-stars button.on{color:var(--orange)}
.pm-notes{display:flex;flex-direction:column;gap:8px}
.pm-bubble{max-width:85%;align-self:flex-start;padding:10px 12px;border-radius:14px;background:#fff;font-size:13.5px}
.pm-bubble.mine{align-self:flex-end;background:#FFEDE5}
.pm-bubble p{margin:0 0 2px}
.pm-licence{margin-top:18px}
.pm-center{text-align:center;align-items:center}
.pm-sheet-bg{position:fixed;inset:0;z-index:200;background:rgba(14,15,17,.5);display:flex;align-items:flex-end;justify-content:center}
.pm-sheet{background:#fff;width:100%;max-width:560px;max-height:88vh;overflow:auto;border-radius:22px 22px 0 0;padding:18px 16px 28px;box-sizing:border-box;display:flex;flex-direction:column;gap:6px}
@media (min-width:640px){.pm-sheet-bg{align-items:center}.pm-sheet{border-radius:22px;padding:22px}}
.pm-x{width:36px;height:36px;border-radius:50%;border:none;background:var(--soft);font-size:22px;line-height:1;cursor:pointer;color:var(--ink)}
.pm-loading{display:flex;align-items:center;gap:10px;padding:40px 0;color:var(--ink2);font-size:14px}
.pm-spin,.pm-busy::after{width:18px;height:18px;border-radius:50%;border:2.5px solid var(--line);border-top-color:var(--orange);animation:pmspin .8s linear infinite;display:inline-block}
.pm-busy{opacity:.75;pointer-events:none}
.pm-busy::after{content:'';width:14px;height:14px}
@keyframes pmspin{to{transform:rotate(360deg)}}
.pm-wrap .btn:disabled{opacity:.45;cursor:not-allowed}
.pm-wrap .btn b{font-weight:800}
@media (prefers-reduced-motion:reduce){.pm-spin,.pm-busy::after{animation:none}}

/* Sign-in: full-screen hero background (founder, 2026-09-27) */
.pm-auth-scene{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0B0B0C url('/img/hero/brunch.webp') center/cover no-repeat}
.pm-auth-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04)}
.pm-auth-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,9,.55),rgba(8,8,9,.72));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.pm-auth-scene .pm-wrap{position:relative;z-index:1;width:100%;padding-top:110px;padding-bottom:48px}
.pm-auth-scene .pm-auth{box-shadow:0 30px 70px -30px rgba(0,0,0,.75);padding:26px 24px}
@media (max-width:560px){.pm-auth-scene .pm-wrap{padding-top:96px}.pm-auth-scene .pm-auth{padding:22px 18px}}

/* Pro application: "Upload from your device" tile (2026-09-28) */
.pm-tile.pm-add{display:flex;align-items:center;justify-content:center;padding:8px;background:var(--soft);border:1.5px dashed var(--orange);color:var(--ink,#111);font-weight:600;font-size:13px;line-height:1.25;text-align:center}
[data-uploader]{margin-top:12px;padding-top:12px;border-top:1px solid var(--line,#e8e4df)}
/* ===== Apply for Pro, editorial (2026-09-28): only #/account/pro uses these ===== */
.pm-serif{font-family:'Fraunces',Georgia,'Times New Roman',serif;font-weight:600;letter-spacing:-.015em}
.pm-pro-hero{position:relative;border-radius:26px;overflow:hidden;margin:0 0 26px;min-height:300px;display:flex;align-items:flex-end;background:#2A241F;color:#fff}
.pm-pro-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 40%}
.pm-pro-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,16,12,.78) 0%,rgba(20,16,12,.45) 55%,rgba(20,16,12,.1) 100%)}
.pm-pro-hero-in{position:relative;z-index:1;padding:34px 32px 36px;max-width:520px}
.pm-pro-hero h1{font-size:48px;line-height:1.02;margin:6px 0 12px;color:#fff}
.pm-pro-eyebrow{margin:0;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#FFB08F}
.pm-pro-sub{margin:0 0 16px;font-size:16px;line-height:1.5;color:rgba(255,255,255,.9)}
.pm-credit{position:absolute;right:12px;bottom:10px;z-index:1;font-size:10.5px;color:rgba(255,255,255,.7)}
.pm-pro-sec{margin:34px 0 0}
.pm-pro-h{font-size:28px;line-height:1.15;margin:0 0 4px}
.pm-soft-t{color:#7A736B;margin:0 0 14px!important}
.pm-pro-card{background:#fff;border-radius:20px;box-shadow:var(--sh-s,0 10px 26px -18px rgba(17,18,20,.4));padding:20px}
.pm-pro-me{display:flex;align-items:center;gap:14px;min-width:0}
.pm-pro-ava{width:58px;height:58px;border-radius:50%;object-fit:cover;flex:none;background:#F3E6DA}
.pm-pro-ini{display:flex;align-items:center;justify-content:center;font-weight:800;font-size:22px;color:#B8420F}
.pm-pro-name{min-width:0;overflow-wrap:anywhere}
.pm-pro-name b{font-size:18px}
.pm-seal{width:20px;height:20px;vertical-align:-4px;margin-left:6px}
.pm-pro-pill{display:inline-block;margin-left:6px;padding:2px 9px;border-radius:999px;background:#FFF1EA;color:#B8420F;font-size:12px;font-weight:700;vertical-align:2px}
.pm-pro-vibes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}
.pm-pro-vibes img,.pm-pro-vibes span{width:100%;aspect-ratio:4/5;border-radius:14px;object-fit:cover;display:block;background:#F4EEE7}
.pm-pro-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.pm-pro-tile{background:#fff;border-radius:18px;padding:18px;box-shadow:var(--sh-s,0 10px 26px -18px rgba(17,18,20,.4))}
.pm-pro-tile b{display:block;margin:12px 0 4px;font-size:15px}
.pm-pro-tile .small{margin:0;color:#6B6661}
.pm-line{width:30px;height:30px;color:var(--orange,#FF5A26)}
.pm-pro-row{display:flex;gap:14px;padding:14px 0;border-top:1px solid #F0EAE3}
.pm-pro-row:first-child{border-top:0;padding-top:2px}
.pm-pro-row>div{min-width:0;flex:1}
.pm-pro-row .small{margin:2px 0 0;color:#6B6661}
.pm-pro-row .btn{margin-top:10px}
.pm-pro-dot{flex:none;width:24px;height:24px;border-radius:50%;border:1.5px solid #CFC6BC;margin-top:1px}
.pm-pro-row.ok .pm-pro-dot{border:0}
.pm-pro-dot .pm-seal{width:24px;height:24px;margin:0;vertical-align:0}
.pm-dots{display:flex;gap:6px;margin:12px 0 2px;flex-wrap:wrap}
.pm-dots i{width:16px;height:16px;border-radius:50%;background:#EFE7DE;display:block}
.pm-dots i.on{background:var(--orange,#FF5A26)}
.pm-warm{margin:10px 0 0!important;color:#B8420F;font-weight:600}
.pm-pro-ex{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.pm-pro-ex figure{margin:0;min-width:0}
.pm-pro-ex figure>div{position:relative}
.pm-pro-ex img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:16px;display:block}
.pm-ex{position:absolute;left:8px;top:8px;padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.88);color:#6B6661;font-size:11px;font-weight:600}
.pm-pro-ex figcaption{margin-top:8px;font-size:14px}
.pm-pro-ex figcaption b{display:block}
.pm-credit-s{display:block;font-size:10.5px;color:#9A928A;margin-top:2px}
.pm-pro-send{font-size:17px;padding-top:18px;padding-bottom:18px}
h2.pm-pro-sec{margin:34px 0 12px}
@media (max-width:600px){
  .pm-pro-hero{min-height:260px;border-radius:20px}
  .pm-pro-hero-in{padding:24px 20px 30px}
  .pm-pro-hero h1{font-size:38px}
  .pm-pro-hero::after{background:linear-gradient(0deg,rgba(20,16,12,.82) 0%,rgba(20,16,12,.5) 60%,rgba(20,16,12,.2) 100%)}
  .pm-pro-h{font-size:24px}
  .pm-pro-ex{gap:8px}
  .pm-pro-ex figcaption{font-size:12.5px}
  .pm-dots i{width:13px;height:13px}
}
@media (min-width:601px){.pm-pro-vibes{grid-template-columns:repeat(3,150px)}.pm-pro-ex{grid-template-columns:repeat(3,200px)}}

/* Apply for Pro (founder, 2026-09-29): banner full width, edge to edge, the whole camera in view; setup card centred. */
.pm-portal{overflow-x:clip}
.pm-setup-card{max-width:560px;width:100%;margin-left:auto!important;margin-right:auto!important;align-items:stretch;padding:28px 26px}
.pm-setup-card .pk-hero{padding:0!important;min-height:0!important;background:none!important;text-align:center}
.pm-setup-card .pk-hero .wrap{padding:0!important;max-width:none}
.pm-setup-card .pk-hero .h1{font-size:clamp(34px,5vw,48px)}
.pm-setup-card .pk-setup{max-width:460px;width:100%;margin:18px auto 0;text-align:start}
@media (max-width:560px){.pm-setup-card{padding:22px 16px}}
/* Sign in / Create account tabs and "I'm a" choice (founder, 2026-09-29) */
.pm-tabs{display:flex;align-self:stretch;gap:4px;padding:4px;margin:0 0 10px;border-radius:999px;background:var(--soft,#F7F5F1)}
.pm-tabs button{flex:1;border:0;background:transparent;border-radius:999px;padding:10px 12px;font:700 14.5px var(--font,inherit);color:var(--ink,#111214);cursor:pointer}
.pm-tabs button.on{background:var(--white,#fff);box-shadow:0 4px 14px -8px rgba(17,18,20,.35);color:var(--ink,#111214)}
.pm-roles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 6px}
.pm-role{display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:start;padding:12px;border-radius:14px;border:1.5px solid var(--line,rgba(17,18,20,.14));background:transparent;font:inherit;color:var(--ink,#111214);cursor:pointer}
.pm-role b{font-size:15px}.pm-role span{font-size:12.5px;line-height:1.35;color:var(--muted,rgba(17,18,20,.62))}
.pm-role.on{border-color:var(--orange,#FF5A26);box-shadow:inset 0 0 0 1px var(--orange,#FF5A26);background:rgba(255,90,38,.07)}
.pm-role-note{margin:2px 0 6px}
@media (max-width:420px){.pm-roles{grid-template-columns:1fr}}
.pm-setup-card .pk-hero .wrap{display:block!important;grid-template-columns:none!important}
.pm-setup-card .pk-hero .wrap>div{max-width:none!important;width:100%!important;margin:0 auto}
.pm-setup-card .pk-hero .lede{margin-left:auto;margin-right:auto}
.pm-tabs button{border:0!important;box-shadow:none!important;background:transparent!important}
.pm-tabs button.on{background:var(--orange,#FF5A26)!important;color:#fff!important}
.pm-portal p.lede.pm-center{margin-left:auto;margin-right:auto;text-align:center;max-width:560px}

/* Apply for Pro banner, v2 (founder, 2026-09-29): edge to edge; the text starts on the same line as the page content (the
   account row above, 968 px); the text sits on a dark panel on the left, the photo on the right with a soft dark fade into it so
   the white text reads well and the camera screen stays clear. Brand font only (no serif). */
.pm-pro-hero{--pad:max(24px,calc((100vw - 968px) / 2));--txt:min(470px,calc(100vw - 2 * var(--pad)));--img:calc(var(--pad) + var(--txt) - 40px);
  margin:0 calc(50% - 50vw) 26px;border-radius:0;height:clamp(420px,34vw,540px);min-height:0;display:flex;align-items:center;background:#14100C}
.pm-pro-hero>img{position:absolute;top:0;bottom:auto;right:auto;left:var(--img);width:calc(100% - var(--img));height:100%;max-width:none;object-fit:cover;object-position:50% 45%}
.pm-pro-hero::after{background:linear-gradient(90deg,#14100C 0,#14100C calc(var(--pad) + var(--txt) - 40px),rgba(20,16,12,.55) calc(var(--pad) + var(--txt) + 40px),rgba(20,16,12,0) calc(var(--pad) + var(--txt) + 200px))}
.pm-pro-hero-in{max-width:none;width:var(--txt);box-sizing:content-box;padding:32px 0 34px var(--pad)}
.pm-pro-hero h1,.pm-pro-hero .pm-pro-title{font-family:var(--font,'Montserrat',-apple-system,'Helvetica Neue',Arial,sans-serif)!important;font-weight:800;
  letter-spacing:-.04em;font-size:clamp(34px,3.6vw,50px);line-height:1.05;white-space:nowrap;margin:8px 0 14px;color:#fff}
.pm-pro-sub{font-size:16.5px;line-height:1.5;max-width:var(--txt)}
.pm-pro-hero .pm-credit{z-index:2}
.pm-portal p.lede.pm-center{max-width:640px;width:100%;white-space:normal;overflow:visible;text-overflow:clip;margin:6px auto 22px;padding:0 16px;box-sizing:border-box}
@media (max-width:900px){
  /* Phones and small tablets: the photo on top (the whole camera screen visible), the text on the dark panel under it. */
  .pm-pro-hero{--pad:20px;height:auto;min-height:0;display:block}
  .pm-pro-hero>img{position:relative;display:block;left:0;width:100%;height:clamp(220px,52vw,420px);object-position:50% 45%}
  .pm-pro-hero::after{display:none}
  .pm-pro-hero-in{width:auto;padding:22px 20px 26px}
  .pm-pro-hero .pm-credit{top:8px;bottom:auto}
  .pm-pro-hero h1,.pm-pro-hero .pm-pro-title{font-size:clamp(30px,9vw,40px)}
}
/* No serif anywhere on the website (founder, 2026-09-29): Pro page headings use the brand font too. */
.pm-serif{font-family:var(--font,'Montserrat',-apple-system,'Helvetica Neue',Arial,sans-serif)!important;font-weight:800;letter-spacing:-.03em}

/* Sign-in cards (2026-09-29): a mix of moods under the sign-in card, "Every mood. Every moment." */
.pm-si{margin:22px auto 0;max-width:460px;text-align:center}
.pm-si-cards{display:flex;justify-content:center;align-items:flex-end;gap:0}
.pm-si-card{width:108px;margin:0 -6px;padding:6px 6px 0;background:#fff;border-radius:8px;box-shadow:0 16px 34px -14px rgba(0,0,0,.6);transition:opacity .45s ease,transform .45s ease}
.pm-si-card img{display:block;width:100%;height:118px;object-fit:cover;border-radius:4px}
.pm-si-card figcaption{font-weight:600;font-size:12px;color:#111;padding:7px 2px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pm-si-c0{transform:rotate(-8deg)}.pm-si-c1{transform:translateY(-14px);z-index:2}.pm-si-c2{transform:rotate(7deg)}
.pm-si-card.pm-si-out{opacity:0}
.pm-si-line{margin:14px 0 0;color:rgba(255,255,255,.88);font-weight:600;font-size:14px;letter-spacing:.01em;text-shadow:0 1px 10px rgba(0,0,0,.45)}
html[data-theme="dark"] .pm-si-card{background:#1B1E26}html[data-theme="dark"] .pm-si-card figcaption{color:#F4EFE7}
@media (max-width:560px){.pm-si-card{width:92px}.pm-si-card img{height:100px}}
@media (prefers-reduced-motion:reduce){.pm-si-card{transition:none}}

/* Creator tools (2026-10-01): Studio stats, Pick•Mine link + QR, earnings, your vibe, profile, settings, saved. Same cards and colours. */
.pm-studio{margin:0 0 14px}
@media (min-width:720px){.pm-studio{grid-template-columns:1.1fr 1.2fr .9fr}}
.pm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-self:stretch;margin:4px 0}
.pm-stat{display:flex;flex-direction:column;gap:2px;padding:10px 8px;border-radius:12px;background:var(--soft,#F7F5F2);min-width:0}
.pm-stat b{font-size:18px;font-weight:800;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pm-stat span{font-size:11.5px;color:var(--ink2)}
.pm-linkrow{display:flex;gap:8px;align-items:center;align-self:stretch;flex-wrap:wrap}
.pm-linkrow code{flex:1;min-width:0;padding:10px 12px;border-radius:12px;background:var(--soft,#F7F5F2);font:inherit;font-weight:700;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pm-qrrow{display:flex;gap:14px;align-items:center}
.pm-qr{width:104px;height:104px;flex:none;border-radius:12px;background:#fff;padding:6px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}
.pm-qr svg{width:100%;height:100%;display:block}
.pm-link-a{font-weight:700;font-size:14px;color:var(--orange-d,#E24A16);text-decoration:none}
.pm-share{display:flex;flex-wrap:wrap;gap:8px}
.pm-share .pm-chip{height:34px;font-size:13px}
.pm-earn .btn[disabled]{opacity:.5;cursor:not-allowed}
.pm-earn .pm-btns{align-items:center}
.pk-st.draft{color:var(--ink2);background:var(--soft,#F7F5F2);padding:2px 8px;border-radius:999px;align-self:flex-start}
.pm-vibe-top{flex-direction:row;align-items:flex-start;gap:16px}
.pm-vibe-top>div{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}
.pm-vibe-cover{width:120px;height:150px;border-radius:14px;object-fit:cover;background:var(--soft);flex:none;display:block}
.pm-vibe-top .pm-kpis{grid-template-columns:repeat(3,minmax(0,1fr));max-width:340px}
.pm-free{margin-top:10px;padding:12px;border-radius:14px;background:var(--soft,#F7F5F2)}
.pm-free small{color:var(--ink2);font-size:12.5px}
.pm-danger{color:#B4544A!important}
.pm-avrow{display:flex;align-items:center;gap:14px}
.pm-av{width:64px;height:64px;border-radius:50%;overflow:hidden;background:var(--soft);display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:22px;flex:none}
.pm-av img{width:100%;height:100%;object-fit:cover;display:block}
.pm-person .pm-av{width:44px;height:44px;font-size:16px}
.pm-person .pm-av img{width:100%;height:100%}
.pm-ok{color:#2E8B57;font-weight:700}
.pm-softbox{background:var(--soft,#F7F5F2);box-shadow:none;margin:10px 0 0;align-self:stretch}
.pm-people{display:flex;flex-direction:column;gap:10px;align-self:stretch}
.pm-person{text-decoration:none;color:inherit;font-weight:700;font-size:14px}
@media (min-width:720px){.pm-grid.pm-two-col{grid-template-columns:1fr 1fr}}
.pm-vibe .pm-vibe-a{display:flex;flex-direction:column;gap:5px;text-decoration:none;color:inherit}
.pm-unsave{background:none;border:none;padding:0;font:inherit;font-size:12.5px;font-weight:700;color:var(--ink2);cursor:pointer;text-align:left}
.pm-unsave:hover{color:var(--orange-d,#E24A16)}
@media (max-width:520px){.pm-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-vibe-top{flex-direction:column}.pm-vibe-cover{width:100%;height:220px}.pm-two{grid-template-columns:1fr}}
html[data-theme="dark"] .pm-stat,html[data-theme="dark"] .pm-linkrow code,html[data-theme="dark"] .pm-free,html[data-theme="dark"] .pm-softbox,html[data-theme="dark"] .pk-st.draft{background:#1B1E26}
html[data-theme="dark"] .pm-link-a{color:#FF7A45}html[data-theme="dark"] .pm-danger{color:#F08A7E!important}html[data-theme="dark"] .pm-ok{color:#7BD39B}
/* Continue with Google / Apple (2026-10-01): Google's and Apple's own button styles (pill shape, as both allow). */
.pm-oauth{display:flex;flex-direction:column;gap:10px;margin:6px 0 2px}
.pm-google,.pm-apple{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:46px;border-radius:999px;font-family:Roboto,'Helvetica Neue',Arial,sans-serif;font-weight:500;font-size:15px;letter-spacing:.01em;cursor:pointer;padding:0 16px}
.pm-google{background:#fff;border:1px solid #747775;color:#1F1F1F}
.pm-google:hover{background:#F8F9FA}
.pm-google svg{width:20px;height:20px;flex:none}
.pm-apple{background:#000;border:1px solid #000;color:#fff;font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif}
.pm-apple svg{width:18px;height:18px;flex:none;margin-top:-2px}
.pm-google:disabled,.pm-apple:disabled{opacity:.6;cursor:default}
.pm-or{display:flex;align-items:center;gap:12px;margin:8px 0 0!important;font-size:13px;color:var(--ink2)}
.pm-or::before,.pm-or::after{content:'';flex:1;height:1px;background:var(--line)}
html[data-theme="dark"] .pm-google{background:#131314;border-color:#8E918F;color:#E3E3E3}
html[data-theme="dark"] .pm-google:hover{background:#1E1F20}
html[data-theme="dark"] .pm-apple{background:#fff;border-color:#fff;color:#000}
.pm-studio .pm-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.pm-close-list{margin:4px 0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.5}

/* 2026-10-02: hidden sign-in buttons stay hidden (Google shows only once it is switched on in Supabase) */
.pm-oauth[hidden],.pm-oauth [hidden]{display:none!important}
/* 2026-10-02: password field with show/hide eye */
.pm-pw{position:relative}
.pm-pw .pm-input{padding-right:48px}
.pm-pw .pm-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;border-radius:999px;background:transparent;color:var(--ink2,#555);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.pm-pw .pm-eye:hover{background:var(--soft,rgba(0,0,0,.05))}
.pm-hint{margin:6px 0 0;color:var(--ink2,#666)}
html[data-theme="dark"] .pm-pw .pm-eye{color:rgba(255,255,255,.75)}
[dir=rtl] .pm-pw .pm-input{padding-right:14px;padding-left:48px}
[dir=rtl] .pm-pw .pm-eye{right:auto;left:6px}
/* Prices now reminder (2026-10-03) */
.pm-pricenote{display:flex;flex-direction:column;gap:2px;text-decoration:none;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--orange)}
/* 2026-10-03: Apply for Pro, 3-step checklist */
.pm-steps{list-style:none;margin:0 0 14px;padding:20px;display:flex;flex-direction:column;gap:0;align-items:stretch}
.pm-step{display:flex;gap:14px;padding:16px 0;border-top:1px solid var(--line,rgba(17,18,20,.1))}.pm-step:first-child{border-top:0;padding-top:4px}
.pm-step-n{flex:none;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;background:var(--soft,#F7F5F1);color:var(--ink)}
.pm-step.done .pm-step-n{background:var(--orange);color:#fff}
.pm-step-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.pm-step-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:16px}
.pm-step-st{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--soft,#F7F5F1)}.pm-step-st.ok{background:rgba(255,90,38,.14);color:#B8420F}.pm-step-st.pend{background:rgba(17,18,20,.07)}
.pm-step-big{margin:0;font-size:15px}.pm-step b,.pm-step p{margin:0}
.pm-step .pm-form{width:100%;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.pm-step .pm-input{max-width:360px}
.pm-code-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0}.pm-code{font-size:20px;letter-spacing:.06em;padding:6px 12px;border-radius:10px;background:var(--soft,#F7F5F1)}
.pm-step-pending{width:100%;display:flex;flex-direction:column;gap:6px}
.pm-remind{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;box-shadow:inset 0 0 0 1.5px rgba(255,90,38,.35)}
.pm-step [data-uploader]{width:100%}
html[data-theme="dark"] .pm-step-n,html[data-theme="dark"] .pm-code{background:#1e2129;color:#fff}
.pk-note-ok{background:var(--soft,#F7F5F1)}
/* Default avatars: first initial on neutral grey (founder, 2026-10-03), and the calm "Add a profile photo" note in Studio. */
:root{--pm-ini-bg:#E7E4DF;--pm-ini-fg:#5E5A54}
html[data-theme="dark"]{--pm-ini-bg:#2B2E35;--pm-ini-fg:#C9C4BC}
.pm-ava.pm-ini,.pm-av{background:var(--pm-ini-bg);color:var(--pm-ini-fg)}
.pm-ava.pm-ini{display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:16px}
.pm-card.pm-photonote{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;text-align:left}
.pm-card.pm-photonote .btn{width:auto;flex:none}
.pm-photonote p{margin:0;font-size:14px;line-height:1.45}
/* Pro plan: Studio vibe counter + Verified rules (founder, 2026-10-15; docs/pro-contract.md) */
.pm-plancount{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:12px 0 4px}
.pm-pc-bar{flex:0 0 140px;height:8px;border-radius:99px;background:rgba(127,127,127,.2);overflow:hidden}
.pm-pc-bar i{display:block;height:100%;border-radius:99px;background:#FF5A26}
.pm-pc-t{font-size:14px;font-weight:600}
.pm-plancount .pm-link{font-weight:700;font-size:14px}
.pm-vrules-l{margin:8px 0 0;padding-left:18px;display:grid;gap:7px;font-size:14px;line-height:1.5}
.pm-vfree .pm-h3{margin:6px 0 12px}

/* Founding sign-up (founder, 2026-10-23): one email box on /founding (the footer waitlist is hidden there) and the
   "Free · no card · takes 30 seconds" line under the button. */
.fd-on .x124-wl, .fd-on [data-signup="home"] { display: none !important; }
.fd-free { text-align: center; margin: 10px 0 0; color: var(--muted, #6b6b6b); }
/* Rewrite title (2026-10-24) */
.pm-rewrite{display:flex;flex-direction:column;gap:8px;margin:-2px 0 6px}
.pm-rewrite .pm-link{align-self:flex-start;font-size:13.5px}
.pm-rewrite [data-rwout]:empty{display:none}

/* Sentence case everywhere in Studio, the Picker home and Discover (founder, 2026-10-24): no small uppercase spaced labels. */
#p-account .eyebrow, #p-account .pm-pro-eyebrow, #p-discover .eyebrow, #p-discover .pk-pack-k, #p-discover .pk-flabel, #p-discover .pm-soon-eye,
#p-explore .eyebrow, #p-explore .pk-pack-k, #p-explore .pk-flabel {
  text-transform: none !important; letter-spacing: normal !important; font-size: 14px; font-weight: 700;
}

/* /founding sign-up panel (founder, 2026-10-25): the "Create your account" block opens only from the "Become a Founding
   Creator" buttons, as a sheet on phones and a centred panel on computers (portal/founding2.js sheet()). */
#p-founding .x130-fd.fd-sheet { display: none; }
#p-founding .x130-fd.fd-sheet.open {
  display: block; position: fixed; z-index: 1001; left: 0; right: 0; bottom: 0; max-height: 92vh; overflow-y: auto;
  -webkit-overflow-scrolling: touch; background: var(--white, #fff); border-radius: 24px 24px 0 0; padding: 44px 0 calc(16px + env(safe-area-inset-bottom));
  box-shadow: 0 -20px 60px -20px rgba(0, 0, 0, .45);
}
#p-founding .fd-sheet .fd-wrap { padding-top: 0; padding-bottom: 0; }
#p-founding .fd-sheet #fd-join { margin: 0 auto; box-shadow: none; }
.fd-sheet-bd { display: none; }
.fd-sheet-bd.open { display: block; position: fixed; inset: 0; z-index: 1000; background: rgba(10, 10, 12, .55); }
.fd-sheet-x { position: absolute; top: 10px; right: 12px; width: 40px; height: 40px; border-radius: 999px; border: 0; background: rgba(0, 0, 0, .06); color: inherit; display: flex; align-items: center; justify-content: center; cursor: pointer; }
html.fd-sheet-on, html.fd-sheet-on body { overflow: hidden; }
html[data-theme="dark"] #p-founding .x130-fd.fd-sheet.open { background: #1B1E26; }
html[data-theme="dark"] .fd-sheet-x { background: rgba(255, 255, 255, .1); }
@media (prefers-color-scheme: dark) { html:not([data-theme="light"]) #p-founding .x130-fd.fd-sheet.open { background: #1B1E26; } }
@media (min-width: 900px) {
  #p-founding .x130-fd.fd-sheet.open { left: 50%; right: auto; top: 50%; bottom: auto; transform: translate(-50%, -50%); width: min(560px, 92vw); max-height: 90vh; border-radius: 24px; padding-bottom: 16px; }
}
