/* v58: Crystal Places — same night-blue / crystal / gold language as Crystal Glamours. */
:root{--cp-gold:#e5cf93;--cp-gold2:#f3e6c2;--cp-cyan:#9ccfd9;--cp-text:#e7edf5;--cp-muted:#9eb3c7;--cp-line:#43566a77;--cp-card:#0d1a29;--cp-good:#9fe6cf;--cp-warn:#ffcf8a}
.cp-page{padding-bottom:30px}
.cp-ssr img{max-width:100%;height:auto;border-radius:16px}
.cp-root-ready .cp-ssr{display:none}
.cp-btn{font:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 16px;border:1px solid #58778599;border-radius:999px;background:#10233599;color:#d8e8f0;font-size:13.5px;cursor:pointer;text-decoration:none;line-height:1.3;transition:border-color .18s,background .18s,color .18s}
.cp-btn:hover{border-color:var(--cp-gold);color:var(--cp-gold2)}
.cp-btn:disabled{opacity:.6;cursor:progress}
.cp-btn:focus-visible,.cp-card:focus-visible{outline:2px solid #a8e2f7;outline-offset:2px}
.cp-primary{border-color:#ad985c;background:linear-gradient(135deg,#41463b,#202d37);color:#f6e9bd}
.cp-on{border-color:#9fe6cf88;color:var(--cp-good);background:#9fe6cf14}
.cp-link{min-height:30px;padding:0 6px;border:0;background:none;color:var(--cp-cyan);text-decoration:underline;text-underline-offset:3px}
.cp-note{margin:6px 0;color:var(--cp-muted);font-size:13px;line-height:1.6}
.cp-fine{color:#7f93a7;font-size:12px}
.cp-status{min-height:20px;color:var(--cp-muted);font-size:13px}
.cp-empty{padding:26px 16px;border:1px dashed #43566a;border-radius:16px;text-align:center;color:#c4d4e2}
.cp-eyebrow{display:block;color:var(--cp-gold);font-size:11px;letter-spacing:.16em}
.cp-h2{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:26px 0 12px;font-size:19px;color:#ede2c8}
.cp-h2::before{content:'✦';color:var(--cp-gold);font-size:14px}
.cp-h2 small{color:var(--cp-muted);font-size:12.5px;font-weight:400}
.cp-h2 .cp-link{margin-left:auto;font-size:13px}
/* hero + type entrances */
.cp-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end;padding:6px 0 18px;border-bottom:1px solid #ffffff14}
.cp-hero h1{margin:4px 0 6px;font-size:clamp(28px,4.4vw,40px);color:#f6e9bd;letter-spacing:.04em}
.cp-hero p{margin:0;color:#c4d4e2;max-width:640px}
.cp-hero-actions{display:flex;flex-wrap:wrap;gap:8px}
.cp-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:16px 0 4px}
.cp-search input,.cp-field input,.cp-field select,.cp-field textarea,.cp-filters select,.cp-filters input{font:inherit;font-size:14.5px;min-height:44px;width:100%;box-sizing:border-box;padding:0 12px;border:1px solid #456070;border-radius:12px;background:#0b1626;color:var(--cp-text)}
.cp-field textarea{padding:10px 12px;min-height:96px;resize:vertical;line-height:1.6}
.cp-types{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:16px 0 4px}
.cp-type{font:inherit;position:relative;display:grid;gap:4px;justify-items:start;padding:16px 14px;border:1px solid #c9b27855;border-radius:18px;background:radial-gradient(ellipse at 0 0,#7df9ff17,transparent 60%),linear-gradient(160deg,#1a2b40,#0b1626);color:var(--cp-text);text-decoration:none;cursor:pointer;text-align:left;transition:border-color .18s,transform .18s}
.cp-type:hover{border-color:var(--cp-gold);transform:translateY(-2px)}
.cp-type-icon{font-size:26px;line-height:1}
.cp-type strong{font-size:16px;color:var(--cp-gold2)}
.cp-type small{color:var(--cp-muted);font-size:12px}
/* cards */
.cp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.cp-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,260px);gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 2px 10px;scrollbar-width:thin}
.cp-row>.cp-card{scroll-snap-align:start}
.cp-card{position:relative;display:grid;grid-template-rows:auto 1fr;border:1px solid #43566a88;border-radius:18px;overflow:hidden;background:var(--cp-card);color:var(--cp-text);text-decoration:none;transition:border-color .18s,transform .18s,box-shadow .18s}
.cp-card:hover{border-color:#9ccfd9aa;transform:translateY(-2px);box-shadow:0 12px 26px #0008}
.cp-card.is-active{border-color:var(--cp-gold);box-shadow:0 0 0 2px #e5cf9355}
.cp-cover{position:relative;aspect-ratio:16/10;background:linear-gradient(140deg,#1e3550,#0b1626);overflow:hidden;display:grid;place-items:center}
.cp-cover img,.cp-cover video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cp-cover .cp-ph{font-size:40px;opacity:.55}
.cp-badge{position:absolute;left:10px;top:10px;z-index:1;display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;background:#06111bd9;border:1px solid #ffffff2b;color:#f3e6c2;font-size:12px}
.cp-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;border:1px solid #ffffff26;font-size:11.5px;color:#d5e3ee}
.cp-pill.is-open{border-color:#9fe6cf88;color:var(--cp-good)}
.cp-pill.is-closed{border-color:#d7a7a788;color:#e7b4b4}
.cp-pill.is-warn{border-color:#ffcf8a88;color:var(--cp-warn)}
.cp-card-body{display:grid;gap:5px;padding:12px 14px 14px;align-content:start}
.cp-card-body strong{font-size:16px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.cp-loc{color:#c7d6e3;font-size:12.5px;line-height:1.5;overflow-wrap:anywhere}
.cp-tags{display:flex;flex-wrap:wrap;gap:5px}
.cp-tag{font:inherit;display:inline-flex;padding:2px 9px;border-radius:999px;border:1px solid #9ccfd944;background:#9ccfd90d;color:#c7e6ee;font-size:11.5px;cursor:pointer;text-decoration:none}
.cp-tag.is-on{border-color:var(--cp-gold);color:var(--cp-gold2);background:#e5cf9314}
.cp-stats{display:flex;flex-wrap:wrap;gap:10px;color:var(--cp-muted);font-size:12px}
.cp-claimed{color:var(--cp-good)}
/* filters */
.cp-filters{display:grid;grid-template-columns:minmax(0,2fr) repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 8px}
.cp-filters label{display:grid;gap:4px;color:var(--cp-muted);font-size:12px}
.cp-chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}
.cp-pager{display:flex;justify-content:center;align-items:center;gap:10px;margin:18px 0 0;color:var(--cp-muted)}
/* tabs */
.cp-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 16px}
.cp-tabs button,.cp-tabs a{font:inherit;min-height:40px;padding:0 16px;border:1px solid #43566a99;border-radius:999px;background:#0d1a29b3;color:#d5e3ee;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}
.cp-tabs [aria-selected=true],.cp-tabs [aria-current=page]{border-color:#ad985c;color:#f6e9bd;background:linear-gradient(135deg,#41463b,#202d37)}
/* detail */
.cp-detail-hero{position:relative;margin:0 -2px 16px;border-radius:22px;overflow:hidden;border:1px solid #c9b27855;background:#0b1626}
.cp-detail-hero .cp-cover{aspect-ratio:21/9}
.cp-detail-hero .cp-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,#060d16e6)}
.cp-detail-title{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:18px 22px}
.cp-detail-title h1{margin:4px 0 4px;font-size:clamp(24px,4vw,38px);color:#f6e9bd;text-shadow:0 2px 12px #000}
.cp-detail-title .cp-loc{font-size:14px}
.cp-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.cp-detail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;align-items:start}
.cp-box{padding:16px 18px;border:1px solid var(--cp-line);border-radius:18px;background:linear-gradient(160deg,#16283bcc,#0b1626e6)}
.cp-box h3{margin:0 0 10px;font-size:16px;color:#ede2c8}
.cp-desc{white-space:pre-wrap;line-height:1.8;color:#dbe6ef;margin:0}
.cp-facts{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 14px;margin:0;font-size:13.5px}
.cp-facts dt{color:var(--cp-muted)}
.cp-facts dd{margin:0;color:var(--cp-text);overflow-wrap:anywhere;white-space:pre-wrap}
.cp-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}
.cp-gallery button{font:inherit;position:relative;padding:0;border:1px solid #ffffff1f;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#15283b;cursor:zoom-in}
.cp-gallery img,.cp-gallery video{width:100%;height:100%;object-fit:cover;display:block}
.cp-lightbox{width:min(1100px,calc(100% - 16px));max-height:calc(100dvh - 16px);padding:10px;border:1px solid #64707b;border-radius:16px;background:#060d16;color:var(--cp-text)}
.cp-lightbox::backdrop{background:#030712e6}
.cp-lightbox img,.cp-lightbox video{display:block;max-width:100%;max-height:calc(100dvh - 90px);margin:0 auto;border-radius:10px}
.cp-lightbox-bar{display:flex;justify-content:space-between;gap:8px;margin-top:8px}
.cp-works{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.cp-works .mini-outfit{width:auto;flex:none}
.cp-incomplete{padding:10px 14px;border:1px solid #ffcf8a66;border-radius:12px;background:#ffcf8a0f;color:var(--cp-warn);font-size:13px;margin-bottom:12px}
.cp-managers{display:flex;flex-wrap:wrap;gap:6px}
/* map component */
.is-multi .fm-pin.is-active .fm-pin-label{opacity:0}
/* explore */
.cp-explore{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;align-items:start}
.cp-explore-map{position:sticky;top:76px}
.cp-explore-list{display:grid;gap:10px;max-height:calc(100dvh - 120px);overflow:auto;padding-right:4px}
.cp-explore-list .cp-card{grid-template-columns:120px minmax(0,1fr);grid-template-rows:none}
.cp-explore-list .cp-cover{aspect-ratio:auto;height:100%}
/* pickers */
.cp-picker{position:relative}
.cp-picker-list{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);max-height:300px;overflow:auto;margin:0;padding:6px;list-style:none;border:1px solid #64707b;border-radius:14px;background:#0b1626;box-shadow:0 18px 40px #000b}
.cp-picker-list button{font:inherit;width:100%;display:grid;gap:1px;padding:8px 10px;border:0;border-radius:10px;background:none;color:var(--cp-text);text-align:left;cursor:pointer}
.cp-picker-list button:hover,.cp-picker-list button:focus-visible{background:#1a2b40}
.cp-picker-list small{color:var(--cp-muted);font-size:11.5px}
/* form wizard */
.cp-steps{display:flex;gap:6px;margin:10px 0 18px;padding:0;list-style:none;overflow-x:auto;scrollbar-width:none}
.cp-steps li{flex:none;display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid #43566a88;color:var(--cp-muted);font-size:12.5px;white-space:nowrap}
.cp-steps li b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#1a2b40;color:#d5e3ee;font-size:11px}
.cp-steps li.is-on{border-color:var(--cp-gold);color:var(--cp-gold2)}.cp-steps li.is-on b{background:var(--cp-gold);color:#1a1408}
.cp-steps li.is-done b{background:#9fe6cf;color:#0b1626}
.cp-form{display:grid;gap:14px}
.cp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cp-field{display:grid;gap:6px;color:#c7d6e3;font-size:13px}
.cp-field.is-wide{grid-column:1/-1}
.cp-field small{color:var(--cp-muted);font-size:12px}
.cp-check{display:flex;align-items:center;gap:8px;min-height:40px;color:#d5e3ee;font-size:13.5px}
.cp-check input{width:18px;height:18px;accent-color:#e5cf93}
.cp-days{display:flex;flex-wrap:wrap;gap:6px}
.cp-days label{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid #456070;border-radius:999px;font-size:13px;cursor:pointer}
.cp-days label:has(input:checked){border-color:var(--cp-gold);color:var(--cp-gold2)}
.cp-days input{accent-color:#e5cf93}
.cp-wizard-nav{display:flex;justify-content:space-between;gap:8px;margin-top:8px;flex-wrap:wrap}
.cp-type-pick{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.cp-type-pick .cp-type[aria-pressed=true]{border-color:var(--cp-gold);box-shadow:0 0 0 2px #e5cf9355}
.cp-media-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.cp-media-item{position:relative;border:1px solid #ffffff1f;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#15283b}
.cp-media-item img,.cp-media-item video{width:100%;height:100%;object-fit:cover;display:block}
.cp-media-item .cp-media-tools{position:absolute;left:4px;right:4px;bottom:4px;display:flex;gap:4px;justify-content:space-between}
.cp-media-item .cp-btn{min-height:28px;padding:0 8px;font-size:11px;background:#06111be6}
.cp-media-item.is-cover{border-color:var(--cp-gold)}
.cp-dialog{width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow:auto;padding:20px;border:1px solid #64707b;border-radius:20px;background:radial-gradient(ellipse at 0 0,#29455788,transparent 70%),#0e1a29;color:var(--cp-text)}
.cp-dialog::backdrop{background:#030712b3}
.cp-dialog-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.cp-dialog-top h2{margin:0;font-size:18px;color:var(--cp-gold2)}
.cp-foot{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0;padding:0;list-style:none}
.cp-foot li{display:grid;gap:2px;padding:12px 14px;border:1px solid #c9b27855;border-radius:16px;background:linear-gradient(160deg,#c9b2781a,#06111b99)}
.cp-foot strong{font-size:24px;color:var(--cp-gold2)}
.cp-foot span{color:var(--cp-muted);font-size:12.5px}
/* links on glamour / record pages */
.cp-linkbox{margin:14px 0 4px;padding:12px 14px;border:1px solid #9ccfd944;border-radius:14px;background:#9ccfd90a}
.cp-linkbox h4{margin:0 0 8px;font-size:14px;color:#ede2c8}
.cp-linkbox h4::before{content:'📍 '}
.cp-mini-places{display:grid;gap:8px}
.cp-mini{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;align-items:center;padding:6px;border:1px solid #ffffff14;border-radius:12px;background:#06111b80;color:var(--cp-text);text-decoration:none}
.cp-mini:hover{border-color:#9ccfd9aa}
.cp-mini .cp-cover{aspect-ratio:4/3;border-radius:8px}
.cp-mini .cp-cover .cp-ph{font-size:22px}
.cp-mini strong{font-size:13.5px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-mini small{color:var(--cp-muted);font-size:11.5px}
@media(max-width:1000px){.cp-types,.cp-type-pick{grid-template-columns:repeat(3,minmax(0,1fr))}.cp-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-filters>:first-child{grid-column:1/-1}.cp-detail-grid,.cp-explore{grid-template-columns:1fr}.cp-explore-map{position:relative;top:auto}.cp-explore-list{max-height:none;overflow:visible}}
@media(max-width:600px){
 .cp-hero{grid-template-columns:1fr}
 .cp-types,.cp-type-pick{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cp-types>:first-child,.cp-type-pick>:first-child{grid-column:1/-1}
 .cp-type{padding:12px}.cp-type-icon{font-size:22px}
 .cp-grid{grid-template-columns:1fr}
 .cp-row{grid-auto-columns:78%}
 .cp-form-grid{grid-template-columns:1fr}
 .cp-detail-hero .cp-cover{aspect-ratio:4/3}
 .cp-detail-title{padding:14px}
 .cp-actions .cp-btn{flex:1 1 calc(50% - 8px)}
 .cp-explore-list .cp-card{grid-template-columns:96px minmax(0,1fr)}
 .cp-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(prefers-reduced-motion:reduce){.cp-card,.cp-type{transition:none}.cp-card:hover,.cp-type:hover{transform:none}}
/* detail without a cover photo: a short banner instead of an empty 21:9 box */
.cp-detail-hero.no-cover .cp-cover{aspect-ratio:auto;height:190px}
.cp-detail-hero.no-cover .cp-cover .cp-ph{position:absolute;right:28px;top:22px;font-size:54px}
@media (max-width:600px){.cp-detail-hero.no-cover .cp-cover{height:150px}}
.cp-mapchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.cp-mapchips h3{flex-basis:100%;margin:0 0 2px;font-size:14px;color:#c4d4e2}
#cp-root .cp-primary,.cp-dialog .cp-primary{border-color:#ad985c!important;background:linear-gradient(135deg,#4a4a35,#202d37)!important;color:#f6e9bd!important}
.cp-detail-hero.no-cover .cp-cover{position:absolute;inset:0;height:auto}
.cp-detail-hero.no-cover .cp-detail-title{position:relative;padding:44px 96px 22px 22px;min-height:150px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start}
#cp-root>section>.cp-h2,#cp-root section>.cp-h2{margin-top:26px}
@media (max-width:600px){.cp-detail-hero.no-cover .cp-detail-title{padding:40px 70px 16px 16px;min-height:130px}.cp-detail-hero.no-cover .cp-cover .cp-ph{right:16px;top:16px;font-size:40px}}
.cp-aet{display:grid;gap:6px}
/* v67: 玩家打卡照片 */
.cp-checkin-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.cp-checkin-add{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:6px 0 12px}
.cp-checkin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.cp-checkin-item{margin:0;display:grid;gap:4px}
.cp-checkin-img{padding:0;border:1px solid #ffffff1f;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#15283b;cursor:zoom-in}
.cp-checkin-item.is-mine .cp-checkin-img{border-color:#e5cf93aa;box-shadow:0 0 0 1px #e5cf9355}
.cp-checkin-img img{width:100%;height:100%;object-fit:cover;display:block}
.cp-checkin-item figcaption{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:12.5px;color:#c4d4e2}
.cp-checkin-item figcaption a{color:#f3e6c2;text-decoration:none}.cp-checkin-item figcaption a:hover{text-decoration:underline}
.cp-checkin-item figcaption small{color:#8ea4b8}
.cp-checkin-rm{margin-left:auto;min-height:28px!important;padding:2px 6px!important;font-size:12px!important}
.cp-empty-sm{margin:4px 0;color:#9eb3c7;font-size:13px}
@media (max-width:600px){.cp-checkin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cp-checkin .cp-checkin-img{display:block;width:100%;min-height:0!important;padding:0!important;margin:0!important;border-radius:12px!important;box-shadow:none}
/* v68: 一起來過 — relation colours */
.cp-rel{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border-radius:999px;font-size:12px;border:1px solid var(--rc,#9fe6cf);color:var(--rc,#9fe6cf);background:color-mix(in srgb,var(--rc,#9fe6cf) 14%,transparent)}
.cp-rel i{font-style:normal}.cp-rel b{font-weight:600}
.cp-rel.is-cp,.cp-co.is-cp{--rc:#ff8fb8}.cp-rel.is-cb,.cp-co.is-cb{--rc:#c9a2ff}.cp-rel.is-comrade,.cp-co.is-comrade{--rc:#7fb8f0}.cp-rel.is-friend,.cp-co.is-friend{--rc:#9fe6cf}.cp-co.is-pending{--rc:#8ea4b8}
.cp-co-list{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 12px}
.cp-co{display:inline-flex;align-items:center;gap:8px;padding:6px 6px 6px 8px;border-radius:14px;border:1px solid color-mix(in srgb,var(--rc) 60%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--rc) 16%,transparent),#06111b99);box-shadow:0 0 14px color-mix(in srgb,var(--rc) 22%,transparent)}
.cp-co.is-pending{border-style:dashed;box-shadow:none}
.cp-co small{color:#9eb3c7;font-size:11.5px}
.cp-person{color:#f3e6c2;font-weight:600;text-decoration:none}.cp-person:hover{text-decoration:underline}
.cp-co-x{min-height:28px!important;padding:0 8px!important;font-size:15px!important}
.cp-co-q{width:100%;box-sizing:border-box;min-height:42px;margin:10px 0;padding:8px 12px;border-radius:10px;border:1px solid #43566a;background:#06111b;color:#e7edf5;font:inherit}
.cp-co-results{display:grid;gap:8px;max-height:min(60vh,420px);overflow:auto}
.cp-co-row,.cp-tg-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;border:1px solid #ffffff17;background:#06111b80}
.cp-tg-row.cp-co{display:grid}
.cp-co-who{display:grid;gap:4px;min-width:0}.cp-co-who small{color:#9eb3c7;font-size:12px}
.cp-co-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.cp-co-places{display:flex;flex-wrap:wrap;gap:6px}.cp-co-places .cp-tag{font-size:12px;min-height:28px;padding:2px 10px}
.cp-rel-select{min-height:36px;padding:4px 8px;border-radius:10px;border:1px solid #43566a;background:#06111b;color:#e7edf5;font:inherit;font-size:13px}
.cp-together-page{display:grid;gap:14px}
@media (max-width:600px){.cp-co-row,.cp-tg-row{grid-template-columns:1fr 1fr}.cp-co-who{grid-column:1/-1}}
/* v69: 拍照貼文連結 */
.cp-links{display:grid;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid #ffffff14}
.cp-link-form{display:grid;gap:4px}.cp-link-form strong{font-size:14px;color:#ede2c8}
.cp-link-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.3fr) auto auto;gap:8px;align-items:center}
.cp-link-row input{min-height:40px;padding:8px 12px;border-radius:10px;border:1px solid #43566a;background:#06111b;color:#e7edf5;font:inherit;font-size:14px;min-width:0}
.cp-links-h{margin:4px 0 0;font-size:14px;color:#ede2c8}
.cp-link-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.cp-link-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;align-items:center;padding:8px 10px;border-radius:12px;border:1px solid #ffffff17;background:#06111b80}
.cp-link-list li.is-mine{border-color:#e5cf9377}
.cp-link-go{display:flex;align-items:center;gap:8px;min-width:0;color:#e7edf5;text-decoration:none;font-weight:600}.cp-link-go span:not(.cp-site){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cp-link-go:hover span:not(.cp-site){color:#f3e6c2;text-decoration:underline}.cp-link-go i{font-style:normal;color:#9ccfd9}
.cp-link-list small{grid-column:1;color:#9eb3c7;font-size:12px}.cp-link-list .cp-co-x{grid-row:1/3;grid-column:2}
.cp-site{flex:none;padding:1px 8px;border-radius:999px;font-size:11.5px;font-weight:700;background:#ffffff14;color:#e7edf5;border:1px solid #ffffff2b}
.cp-site.is-threads,.cp-site.is-x{background:#000;color:#fff}.cp-site.is-instagram{background:linear-gradient(135deg,#f58529,#dd2a7b,#8134af);color:#fff;border-color:transparent}.cp-site.is-facebook{background:#1877f2;color:#fff;border-color:transparent}.cp-site.is-plurk{background:#ff574d;color:#fff;border-color:transparent}.cp-site.is-bahamut{background:#00b4d8;color:#fff;border-color:transparent}.cp-site.is-youtube{background:#ff0000;color:#fff;border-color:transparent}.cp-site.is-bluesky{background:#1185fe;color:#fff;border-color:transparent}
@media (max-width:600px){.cp-link-row{grid-template-columns:1fr 1fr}.cp-link-row input{grid-column:1/-1}}
/* v70: type icons sit on the right so they never cover the name */
.cp-type{padding-right:58px!important;min-height:76px;align-content:center}
.cp-type .cp-type-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:30px;line-height:1;pointer-events:none}
.cp-type strong,.cp-type small{position:relative;z-index:1}
@media(max-width:600px){.cp-type{padding-right:48px!important;min-height:64px}.cp-type .cp-type-icon{right:10px;font-size:24px}}
/* v71: detail hero — the type badge sits in the top-right corner, never on the title */
.cp-detail-title{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.cp-detail-title h1{margin:0!important;line-height:1.25}
.cp-hero-badge{position:absolute;top:16px;right:16px;left:auto!important;z-index:2;margin:0;font-size:13px;padding:4px 12px;background:#06111bcc;backdrop-filter:blur(6px)}
.cp-detail-hero.no-cover .cp-cover .cp-ph{top:auto;bottom:18px}
@media(max-width:600px){.cp-hero-badge{top:12px;right:12px;font-size:12px}.cp-detail-hero.no-cover .cp-cover .cp-ph{right:auto;left:auto;display:none}}
/* v78: venue links */
.cp-link-editor{display:grid;gap:8px}
.cp-link-edit-rows{display:grid;gap:8px}
.cp-link-edit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) auto;gap:8px;align-items:center}
.cp-link-edit .cp-link-rm{min-width:36px;padding:0 10px}
.cp-link-editor>.cp-btn{justify-self:start}
@media (max-width:640px){.cp-link-edit{grid-template-columns:1fr auto}.cp-link-edit input:first-child{grid-column:1/-1}}
.cp-venue-link-list{display:grid;gap:8px}
.cp-venue-link{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:8px 14px;border:1px solid #9ccfd955;border-radius:12px;background:#9ccfd912;color:#e7edf5;text-decoration:none;font-weight:600;transition:background .15s,border-color .15s}
.cp-venue-link:hover,.cp-venue-link:focus-visible{background:#9ccfd926;border-color:#9ccfd9aa}
.cp-venue-link span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-venue-link small{flex:none;color:var(--cp-cyan,#9ccfd9);font-weight:400;font-size:12px}
/* v83: likes + 人氣排行 */
.cp-like.cp-on{border-color:#f3c76a88;color:#f6d58b;background:#f3c76a14}
.cp-bump{animation:cp-bump .45s cubic-bezier(.2,1.6,.4,1)}
@keyframes cp-bump{0%{transform:scale(1)}40%{transform:scale(1.12)}100%{transform:scale(1)}}
.cp-ranks-wrap{margin:28px 0}
.cp-ranks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cp-rank{padding:16px 18px;border:1px solid #ffffff14;border-radius:18px;background:linear-gradient(160deg,#ffffff0a,#0b162680)}
.cp-rank h3{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px;font-size:17px;color:#ede2c8}
.cp-rank-fav h3::before{content:'♥';color:#f08fa8;margin-right:-4px}
.cp-rank-like h3::before{content:'👍';margin-right:-4px}
.cp-rank h3 .cp-link{margin-left:auto}
.cp-rank-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.cp-rank-row{display:grid;grid-template-columns:28px 64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:6px 8px;border-radius:12px;color:#e7edf5;text-decoration:none;transition:background .15s}
.cp-rank-row:hover,.cp-rank-row:focus-visible{background:#ffffff0f}
.cp-rank-no{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#ffffff12;color:#c4d4e2;font-size:14px}
.cp-rank-list li.is-1 .cp-rank-no{background:linear-gradient(135deg,#f7dc8a,#c99a3a);color:#3a2a08}
.cp-rank-list li.is-2 .cp-rank-no{background:linear-gradient(135deg,#e6edf5,#9aa8b8);color:#23303d}
.cp-rank-list li.is-3 .cp-rank-no{background:linear-gradient(135deg,#f0b48a,#a8673d);color:#36200f}
.cp-rank-thumb{position:relative;width:64px;height:44px;border-radius:8px;overflow:hidden;background:linear-gradient(140deg,#1e3550,#0b1626);display:grid;place-items:center;font-size:18px}
.cp-rank-thumb img,.cp-rank-thumb video{width:100%;height:100%;object-fit:cover}
.cp-rank-copy{display:grid;min-width:0}
.cp-rank-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}
.cp-rank-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9eb3c7;font-size:12px}
.cp-rank-n{color:#f6d58b;font-size:13px;white-space:nowrap}
.cp-rank-fav .cp-rank-n{color:#f5a9bc}
@media (max-width:760px){.cp-ranks{grid-template-columns:1fr}.cp-rank-row{grid-template-columns:26px 54px minmax(0,1fr) auto;gap:10px}.cp-rank-thumb{width:54px;height:38px}}
/* v84: like / save on cards */
.cp-card-acts{display:flex;gap:6px;margin-top:8px}
.cp-card-act{flex:1 1 0;min-height:32px;padding:0 10px;border:1px solid #ffffff22;border-radius:999px;background:#ffffff0a;color:#c4d4e2;font:inherit;font-size:13px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.cp-card-act:hover{background:#ffffff16;border-color:#ffffff40}
.cp-card-act:focus-visible{outline:2px solid #9ccfd9;outline-offset:2px}
.cp-card-act:disabled{opacity:.6;cursor:wait}
.cp-card-act.cp-ca-like.cp-on{border-color:#f3c76a88;color:#f6d58b;background:#f3c76a1a}
.cp-card-act.cp-ca-fav.cp-on{border-color:#f08fa888;color:#f5a9bc;background:#f08fa81a}
/* v88: companions — when / post link, public pairs */
.cp-co-pairs{display:grid;gap:8px;margin:6px 0 14px}
.cp-co-pair{display:grid;gap:4px}
.cp-co-amp{color:#9eb3c7;margin:0 2px}
.cp-co-meta-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:13px;color:#c4d4e2}
.cp-co-meta-line:empty{display:none}
.cp-co-post{min-height:0!important;padding:0!important;font-size:13px!important}
.cp-co-meta{display:grid;gap:12px;margin-top:12px}
.cp-co-meta input{width:100%;box-sizing:border-box;min-height:42px;padding:8px 12px;border-radius:10px;border:1px solid #43566a;background:#06111b;color:#e7edf5;font:inherit;color-scheme:dark}
.cp-row-btns{display:flex;flex-wrap:wrap;gap:8px}
.cp-co-chosen{margin-top:10px;font-size:16px}
.cp-co-places .cp-co-post{align-self:center}
/* v91: 今晚營業的 RP 店 */
.cp-tonight .cp-h2{flex-wrap:wrap}
.cp-h2-sub{width:100%;order:3;margin-top:2px;font-size:12px;font-weight:400;color:#9eb3c7;letter-spacing:0}
.cp-tonight-tag{position:absolute;right:10px;bottom:10px;z-index:2;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;backdrop-filter:blur(6px);box-shadow:0 4px 14px rgba(0,0,0,.35)}
.cp-tonight-tag.is-open{background:#123b2ccc;color:#9fe6cf;border:1px solid #9fe6cf88;animation:cp-glow 2.4s ease-in-out infinite}
.cp-tonight-tag.is-soon{background:#2b2412cc;color:#f6d58b;border:1px solid #f3c76a88}
@keyframes cp-glow{0%,100%{box-shadow:0 0 0 0 rgba(159,230,207,.0),0 4px 14px rgba(0,0,0,.35)}50%{box-shadow:0 0 14px 2px rgba(159,230,207,.35),0 4px 14px rgba(0,0,0,.35)}}
@media (prefers-reduced-motion:reduce){.cp-tonight-tag.is-open{animation:none}}
/* v94: 本週活動 + 打卡照片牆 + 活動 box */
.cp-acts .cp-h2{flex-wrap:wrap}
.cp-act-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,320px);gap:12px;overflow-x:auto;padding:4px 2px 10px;scroll-snap-type:x mandatory}
.cp-act-card{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:16px;border:1px solid #c9b27844;background:linear-gradient(135deg,#c9b27814,#0d1a29);color:#e7edf5;text-decoration:none;scroll-snap-align:start;transition:transform .15s,border-color .15s}
.cp-act-card:hover,.cp-act-card:focus-visible{transform:translateY(-2px);border-color:#c9b278aa}
.cp-act-date{position:relative;display:grid;place-items:center;flex:none;width:72px;min-height:70px;padding:6px 4px;border-radius:12px;background:#0b1a29;border:1px solid #9ccfd955;text-align:center}
.cp-act-date b{font-size:22px;color:#f6e9bd;line-height:1.1}
.cp-act-date small{font-size:11.5px;color:#9eb3c7}
.cp-act-date.is-live{border-color:#9fe6cf}
.cp-act-live{position:absolute;top:-9px;left:50%;transform:translateX(-50%);padding:1px 8px;border-radius:999px;background:#123b2c;color:#9fe6cf;font-size:11px;border:1px solid #9fe6cf88;white-space:nowrap}
.cp-act-text{display:grid;gap:3px;min-width:0}
.cp-act-text strong{font-size:15px;color:#f6e9bd;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-act-card .cp-act-text small{color:#9eb3c7;font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-act-list{display:grid;gap:10px}
.cp-act-item{display:flex;gap:14px;align-items:flex-start;padding:10px;border-radius:14px;background:#ffffff06}
.cp-act-item .cp-act-text strong{white-space:normal}
.cp-act-item .cp-desc{margin:4px 0 0;font-size:13.5px}
.cp-act-tools{margin-left:auto;display:flex;gap:4px;flex:none}
.cp-act-new{margin-top:10px}
.cp-wall-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.cp-wall-item{position:relative;display:block;aspect-ratio:1;border-radius:12px;overflow:hidden;background:#0b1626}
.cp-wall-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.cp-wall-item:hover img,.cp-wall-item:focus-visible img{transform:scale(1.06)}
.cp-wall-cap{position:absolute;inset:auto 0 0 0;display:grid;padding:22px 10px 8px;background:linear-gradient(transparent,#000c);color:#fff;font-size:12px;opacity:.95}
.cp-wall-cap b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.cp-wall-cap small{color:#d4dde8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:560px){.cp-wall-grid{grid-template-columns:repeat(3,1fr);gap:4px}.cp-wall-cap small{display:none}.cp-act-row{grid-auto-columns:82%}}
@media (prefers-reduced-motion:reduce){.cp-wall-item img,.cp-act-card{transition:none}}
/* v98: 伺服器地區（繁中服／國際服／中國服／韓服）與時區 */
.cp-regions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}
.cp-region{font:inherit;font-size:13.5px;min-height:38px;padding:4px 16px;border-radius:999px;border:1px solid #456070;background:#0b1626cc;color:#d6e6ef;cursor:pointer;transition:border-color .2s,color .2s,background .2s}
.cp-region:hover{border-color:#9ccfd9;color:#fff}
.cp-region.is-on{border-color:var(--cp-gold);color:#1a1205;background:linear-gradient(135deg,#ffe7a3,#d4af37);font-weight:700}
.cp-region:focus-visible{outline:2px solid #a8e2f7;outline-offset:3px}
.cp-world-pick{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:8px;width:100%}
.cp-filters .cp-world-pick{grid-template-columns:1fr}
.cp-world-pick select{font:inherit;font-size:14.5px;min-height:44px;width:100%;box-sizing:border-box;padding:0 12px;border:1px solid #456070;border-radius:12px;background:#0b1626;color:var(--cp-text)}
.cp-pill-region{border-color:#7dd3fc66!important;color:#bae6fd!important}
.cp-act-tz{display:block;margin-top:2px;color:#9fb3c6;font-size:12px}
@media(max-width:600px){.cp-region{font-size:13px;padding:4px 12px;min-height:36px}.cp-world-pick{grid-template-columns:1fr}}

/* v99: cover taken from a player check-in */
.cp-cover-credit{position:absolute;right:8px;top:8px;z-index:2;max-width:calc(100% - 16px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 10px;border-radius:999px;font-size:11.5px;color:#f3e6c2;background:#06101ccc;border:1px solid #e5cf9355;backdrop-filter:blur(6px);pointer-events:auto}
.cp-detail-hero .cp-cover-credit{font-size:12.5px;top:16px;left:16px;right:auto;max-width:60%}
/* v101: 「這張照片穿什麼」 */
.cp-look-back{display:inline-block;margin:6px 0 12px}
.cp-look{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:24px;align-items:start;margin-bottom:26px}
.cp-look-photo{margin:0;position:sticky;top:84px;border-radius:20px;overflow:hidden;border:1px solid #c9b27855;background:#0b1626;box-shadow:0 20px 50px #0008}
.cp-look-photo img{display:block;width:100%;max-height:78vh;object-fit:contain;background:#050b15}
.cp-look-photo figcaption{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;padding:12px 16px;font-size:13px;color:#c7d6e2}
.cp-look-photo figcaption q{flex-basis:100%;font-size:15px;color:#f3e6c2}
.cp-look-photo figcaption a{color:#a4e1e9}
.cp-look-title{margin:2px 0 14px;font-size:clamp(24px,3vw,32px)}
.cp-look-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px;position:relative}
.cp-look-steps::before{content:'';position:absolute;left:15px;top:18px;bottom:18px;width:2px;background:linear-gradient(#a4e1e9,#e5cf93);opacity:.35}
.cp-look-step{position:relative;padding:12px 14px 14px 46px;border:1px solid #456070;border-radius:16px;background:#0b1626d9}
.cp-look-step-h{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.cp-look-step-h h3{margin:0;font-size:14px;letter-spacing:.12em;color:#9fb3c6}
.cp-look-no{position:absolute;left:4px;top:10px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font:700 12px/1 Orbitron,system-ui,sans-serif;color:#1a1205;background:linear-gradient(135deg,#ffe7a3,#d4af37);box-shadow:0 0 12px #d4af3766}
.cp-look-place,.cp-look-glam{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none;border-radius:12px}
.cp-look-place:hover strong,.cp-look-glam:hover strong{color:#f3e6c2}
.cp-look-place>div,.cp-look-glam>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.cp-look-place small,.cp-look-glam small{color:#9fb3c6}
.cp-look-place-cover{position:relative;flex:0 0 92px;height:62px;border-radius:10px;overflow:hidden;display:grid;place-items:center;background:#1e3550}
.cp-look-place-cover img,.cp-look-place-cover video{width:100%;height:100%;object-fit:cover}
.cp-look-place-cover .cp-cover-credit{display:none}
.cp-look-coord{margin:0 0 8px;font:600 14px/1.5 system-ui,sans-serif;color:#e7edf5}
.cp-look-coord b{color:#a4e1e9;font-weight:600}
.cp-look-maphost{height:240px;border-radius:12px;overflow:hidden}
.cp-look-char{display:flex;align-items:baseline;gap:10px}
.cp-look-char strong{font-size:17px}
.cp-look-char small{color:#9fb3c6}
.cp-look-glam img{flex:0 0 76px;width:76px;height:96px;object-fit:cover;border-radius:10px;border:1px solid #e5cf9355}
.cp-look-likes{color:#ff9fb1;font-size:13px}
.cp-gear-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:6px}
.cp-gear{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:10px;background:#ffffff08}
.cp-gear-icon{flex:0 0 36px;width:36px;height:36px;border-radius:8px;background:#14273a}
.cp-gear-icon.is-missing{visibility:hidden}
.cp-gear>div{display:flex;flex-direction:column;min-width:0}
.cp-gear small{font-size:11px;color:#9fb3c6}
.cp-gear strong{font-size:14px;font-weight:600}
.cp-gear-dyes{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:11.5px;color:#c7d6e2}
.cp-dye{display:inline-block;width:11px;height:11px;border-radius:50%;border:1px solid #ffffff55}
.cp-look-go{width:100%;justify-content:center}
.cp-look-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-bottom:22px}
.cp-look-thumb{position:relative;display:block;aspect-ratio:1;border-radius:14px;overflow:hidden;border:1px solid #9ccfd944;background:#0b1626;text-decoration:none}
.cp-look-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.cp-look-thumb:hover img{transform:scale(1.05)}
.cp-look-thumb span{position:absolute;left:0;right:0;bottom:0;padding:16px 8px 6px;font-size:12px;color:#f3e6c2;background:linear-gradient(transparent,#050b15e6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cp-look-badge{position:absolute;left:6px;top:6px;z-index:2;padding:2px 8px;border-radius:999px;font-size:11px;font-style:normal;color:#1a1205;background:linear-gradient(135deg,#ffe7a3,#d4af37);pointer-events:none}
.cp-checkin-item{position:relative}
.cp-checkin-tag{font-size:12px}
.cp-tag-works{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;max-height:46vh;overflow:auto;padding:2px}
.cp-tag-work{font:inherit;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:6px;border-radius:12px;border:1px solid #456070;background:#0b1626;color:#e7edf5;cursor:pointer;text-align:left}
.cp-tag-work img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:8px}
.cp-tag-work strong{font-size:13px;line-height:1.3}
.cp-tag-work small{font-size:11px;color:#9fb3c6}
.cp-tag-work.is-none{justify-content:center;align-items:center;min-height:80px;color:#9fb3c6}
.cp-tag-work.is-on{border-color:var(--cp-gold);box-shadow:0 0 0 2px #e5cf9355}
.cp-tag-pos{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.cp-tag-pos input{font:inherit;min-height:44px;padding:0 12px;border:1px solid #456070;border-radius:12px;background:#0b1626;color:var(--cp-text)}
.cp-field-label{margin:0 0 6px;font-size:13px;color:#9fb3c6}
@media(max-width:900px){.cp-look{grid-template-columns:1fr}.cp-look-photo{position:static}}

/* v103: admin search in the tag dialog */
.cp-tag-search input{font:inherit;width:100%;min-height:42px;margin:0 0 6px;padding:0 12px;border:1px solid #e5cf9366;border-radius:12px;background:#0b1626;color:var(--cp-text)}
.cp-tag-search .cp-note{margin:0 0 6px}
.cp-tag-search:empty{display:none}
/* v110: 24-hour picker */
.cp-dt24{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cp-dt24 input[type=date]{flex:1 1 150px;min-width:0}.cp-dt24 select{width:auto;min-width:64px}.cp-dt24-sep{color:#9fb3c6}
/* v112: 打卡紀錄 cards + form */
.cp-ck-list{display:grid;gap:12px}
.cp-ck{display:grid;gap:8px;padding:12px 14px;border:1px solid #ffffff17;border-radius:16px;background:#06111b80}
.cp-ck.is-mine{border-color:#e5cf9355}
.cp-ck-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px}
.cp-ck-top .cp-person{font-weight:700;color:#e7edf5}
.cp-ck-when{font-size:13px;color:#a4e1e9}
.cp-ck-with{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.cp-ck-with-l{font-size:12.5px;color:#9fb3c6}
.cp-ck-mate{display:inline-flex;align-items:center;gap:6px;padding:2px 8px 2px 3px;border-radius:999px;background:#ffffff0d;border:1px solid #ffffff14;font-size:13px}
.cp-ck-mate.is-pending{opacity:.75;border-style:dashed}
.cp-ck-mate small{font-size:11px;color:#f3e6c2}
.cp-ck-mate .cp-person,.cp-ck-mate b{color:#e7edf5;font-weight:600}
.cp-ck-note{margin:0;color:#e7edf5;font-size:14px}
.cp-ck-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}
.cp-ck-ph{margin:0;display:grid;gap:2px}
.cp-ck-img{position:relative;display:block;aspect-ratio:1;border-radius:12px;overflow:hidden;background:#0b1626;border:1px solid #9ccfd933}
.cp-ck-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.cp-ck-img:hover img{transform:scale(1.04)}
.cp-ck-tag{justify-self:start;font-size:12px;min-height:28px;padding:0}
.cp-ck-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.cp-ck-post{display:inline-flex;align-items:center;gap:6px;color:#a4e1e9;text-decoration:none}
.cp-ck-del{color:#ffb4c0}
.cp-ck-more{justify-self:center}
.cp-ck-dialog{width:min(620px,96vw)}
.cp-ck-form{display:grid;gap:14px}
.cp-ck-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}
.cp-ck-pick:empty{display:none}
.cp-ck-pick-tile{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;border:1px solid #9ccfd944;background:#0b1626}
.cp-ck-pick-tile.is-new{border-color:#e5cf9388}
.cp-ck-pick-tile img{width:100%;height:100%;object-fit:cover}
.cp-ck-x{position:absolute;top:4px;right:4px;width:26px;height:26px;min-height:0;padding:0;border-radius:50%;border:0;background:#050b15cc;color:#fff;font-size:15px;line-height:1;cursor:pointer}
.cp-ck-mate .cp-ck-x{position:static;width:20px;height:20px;font-size:13px;background:#ffffff14}
.cp-ck-mates{display:flex;flex-wrap:wrap;gap:6px}
.cp-ck-mates:empty{display:none}
@media(max-width:600px){.cp-ck{padding:10px}.cp-ck-photos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cp-ck .cp-link{min-height:28px;padding:2px 10px;font-size:12.5px}.cp-ck-ph .cp-ck-tag{border:0;background:none;padding:0;color:#a4e1e9}

/* v140: 水晶羅盤 links on duty spots and FC pages */
.cp-compass-link{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;transition:border-color .2s,transform .2s}
.cp-compass-link:hover{border-color:rgba(246,213,139,.55);transform:translateY(-1px)}
.cp-compass-ic{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,rgba(246,213,139,.25),rgba(125,249,255,.12));color:#f6d58b;font-size:20px;flex:none}
.cp-compass-link b{display:block;color:#f6e9bd}.cp-compass-link small{color:#9eb3c7}
.fc-guide-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.fc-guide{display:flex;gap:12px;align-items:center;padding:10px;border-radius:14px;background:rgba(10,22,40,.55);border:1px solid rgba(156,207,217,.18);text-decoration:none;color:inherit;transition:border-color .2s,transform .2s}
.fc-guide:hover{border-color:rgba(246,213,139,.5);transform:translateY(-1px)}
.fc-guide-img{width:96px;aspect-ratio:16/9;border-radius:10px;overflow:hidden;flex:none;background:linear-gradient(135deg,#24426a,#091426)}
.fc-guide-img img{width:100%;height:100%;object-fit:cover;display:block}
.fc-guide-tx{min-width:0}.fc-guide-tx b{display:block;color:#f6e9bd;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fc-guide-tx small{color:#9eb3c7}
