/* Irivi 创作者卡片会员外观（界面修正 §16，2026-10-29；预览 12_卡片会员外观/ panel.html、layouts.html）
   编辑器 /creator/edit 与公开页 /u/<账号> 共用：版式 杂志 / 拍立得墙、动态背景层、开场动画、设计面板新控件。
   动态背景只用 CSS（不引外部资源）；系统“减少动态效果”时流光 / 星点停在静止画面，视频只显示首帧。 */
:root{--cw-flow-base:#2A1E4A;--cw-flow-pink:#FF76B8;--cw-flow-sky:#AEE4FF;--cw-stars-base:#141A3A;--cw-stars-base2:#1B1E3E;--cw-polaroid-bg:#F3EEE6;--cw-tape:rgba(253,139,168,.55);--cw-toc-line:#ECEAF0;--cw-toc-num:#938C9E}

/* ---------- 动态背景层：铺满视口、在卡片内容之下 ---------- */
.cw-motion{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.cw-motion[hidden]{display:none}
.cw-pub .cw-pubin,#creatorStudio>.cw-page{position:relative;z-index:1}
.cw-motion[data-motion="flow"]{background:var(--cw-flow-base)}
.cw-motion[data-motion="flow"]:before,.cw-motion[data-motion="flow"]:after{content:"";position:absolute;width:80vmax;height:80vmax;border-radius:50%;filter:blur(40px);opacity:.75;will-change:transform}
.cw-motion[data-motion="flow"]:before{left:-25vmax;top:-30vmax;background:radial-gradient(circle,var(--cw-flow-pink) 0,rgba(255,118,184,0) 62%);animation:cw-flow-a 22s ease-in-out infinite alternate}
.cw-motion[data-motion="flow"]:after{right:-30vmax;bottom:-30vmax;background:radial-gradient(circle,var(--cw-flow-sky) 0,rgba(174,228,255,0) 62%);animation:cw-flow-b 26s ease-in-out infinite alternate}
@keyframes cw-flow-a{0%{transform:translate(0,0) scale(1)}50%{transform:translate(28vmax,22vmax) scale(1.15)}100%{transform:translate(8vmax,46vmax) scale(.95)}}
@keyframes cw-flow-b{0%{transform:translate(0,0) scale(1)}50%{transform:translate(-30vmax,-18vmax) scale(1.1)}100%{transform:translate(-10vmax,-44vmax) scale(1.2)}}
.cw-motion[data-motion="stars"]{background:linear-gradient(170deg,var(--cw-stars-base),var(--cw-stars-base2) 60%,#232456)}
.cw-motion[data-motion="stars"]:before,.cw-motion[data-motion="stars"]:after{content:"";position:absolute;inset:0;background-repeat:repeat}
.cw-motion[data-motion="stars"]:before{background-image:radial-gradient(1.5px 1.5px at 20px 30px,#fff 50%,transparent 51%),radial-gradient(1px 1px at 90px 120px,#fff 50%,transparent 51%),radial-gradient(1.5px 1.5px at 160px 60px,rgba(255,255,255,.9) 50%,transparent 51%),radial-gradient(1px 1px at 210px 170px,#fff 50%,transparent 51%);background-size:240px 220px;animation:cw-twinkle 3.6s ease-in-out infinite}
.cw-motion[data-motion="stars"]:after{background-image:radial-gradient(1px 1px at 50px 90px,#fff 50%,transparent 51%),radial-gradient(2px 2px at 130px 20px,rgba(174,228,255,.95) 50%,transparent 51%),radial-gradient(1px 1px at 180px 140px,#fff 50%,transparent 51%),radial-gradient(1.5px 1.5px at 260px 200px,rgba(255,200,230,.9) 50%,transparent 51%);background-size:300px 260px;animation:cw-twinkle 5.2s ease-in-out 1.3s infinite}
@keyframes cw-twinkle{0%,100%{opacity:.35}50%{opacity:1}}
.cw-motion[data-motion="video"]{background:#111 var(--cw-poster,none) center/cover no-repeat}
.cw-motion-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.cw-motion-play{position:fixed;left:14px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:5;height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 12px 0 10px;border-radius:999px;border:0;background:rgba(0,0,0,.42);color:#fff;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
.cw-motion-play svg{width:14px;height:14px}
.cw-motion-play[hidden]{display:none}
/* 编辑器：左上“● 动态背景”标记（预览截图） */
.cw-live{position:absolute;left:14px;top:74px;z-index:3;height:24px;padding:0 10px 0 8px;border-radius:12px;background:rgba(0,0,0,.35);color:#fff;font-size:11px;font-weight:900;display:inline-flex;align-items:center;gap:6px;pointer-events:none}
.cw-live b{width:8px;height:8px;border-radius:4px;background:var(--brand-pink,#FF76B8);box-shadow:0 0 0 3px rgba(255,118,184,.35)}
.cw-live[hidden]{display:none}
.cw.motion-dark{--tx:#F4F2FA;--tx2:#B8B2CC}
@media (prefers-reduced-motion:reduce){
  .cw-motion:before,.cw-motion:after{animation:none!important}
  .cw-motion[data-motion="stars"]:before,.cw-motion[data-motion="stars"]:after{opacity:.8}
}

/* ---------- 开场动画：黑底，场照淡入 / 短视频；结束后卡片从下方滑上 ---------- */
.cw-intro{position:fixed;inset:0;z-index:200;background:#000;display:none;align-items:center;justify-content:center;overflow:hidden}
html.cw-intro-pending .cw-intro,.cw-intro.is-playing{display:flex}
/* 脚本没有接手时（加载失败）4.5 秒后自动让开，不挡住卡片 */
html.cw-intro-pending .cw-intro:not(.is-playing){animation:cw-intro-fallback 0s linear 4.5s forwards}
@keyframes cw-intro-fallback{to{visibility:hidden;opacity:0;pointer-events:none}}
.cw-intro-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity var(--cw-intro-fade,700ms) ease-out}
.cw-intro.is-in .cw-intro-media{opacity:1}
.cw-intro[data-type="video"] .cw-intro-media{opacity:1;transition:none}
.cw-intro-skip{position:absolute;right:14px;top:calc(14px + env(safe-area-inset-top));z-index:2;height:30px;padding:0 13px;border-radius:15px;border:0;background:rgba(0,0,0,.42);color:#fff;font:inherit;font-size:13px;font-weight:900;cursor:pointer}
.cw-intro.is-leaving{opacity:0;transition:opacity 320ms cubic-bezier(.22,1,.36,1);pointer-events:none}
.cw-intro-slide .cw-pub .cw-pubin,.cw-intro-slide #creatorStudio>.cw-page{animation:cw-slide-up 320ms cubic-bezier(.22,1,.36,1) both}
@keyframes cw-slide-up{from{transform:translateY(60vh)}to{transform:none}}
html.cw-intro-pending body{overflow:hidden}
@media (prefers-reduced-motion:reduce){.cw-intro{display:none!important}}

/* ---------- 版式：杂志（会员） ---------- */
.lay-magazine .cw-card{padding-top:0;padding-bottom:22px;align-items:stretch;gap:0;background:#fff;--tx:#24212A;--tx2:#5E5868;color:var(--tx)}
.lay-magazine .cw-head{display:block;position:relative;height:clamp(360px,60vh,560px);margin:0 -20px;overflow:hidden;background:linear-gradient(160deg,#F2D2E0,#FBEEF3 50%,#E4B4CA)}
.lay-magazine .cw-cover{display:block;position:absolute;inset:0}
.lay-magazine .cw-cover img{width:100%;height:100%;object-fit:cover;display:block}
.lay-magazine .cw-cover img:not(:first-child){display:none}
.lay-magazine .cw-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.22),transparent 28%,transparent 55%,rgba(0,0,0,.42))}
/* 刊头：沿用现有字标图片（白色），不另用文字 */
.lay-magazine .cw-head:before{content:"";position:absolute;left:18px;top:16px;z-index:2;width:170px;height:52px;background:url(/static/icons/irivi-logo-dark.png) left center/contain no-repeat;filter:brightness(0) invert(1) drop-shadow(0 2px 10px rgba(0,0,0,.25))}
.lay-magazine .cw-av{display:none}
.lay-magazine .cw-nm{position:absolute;left:18px;right:96px;bottom:18px;z-index:2;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:6px}
.lay-magazine .cw-nm h1{font-size:30px;font-weight:900;line-height:1.15;letter-spacing:-.02em;color:#fff;margin:0;padding:0;text-shadow:0 2px 10px rgba(0,0,0,.25);outline-color:rgba(255,255,255,.55)}
.lay-magazine .cw-nm .cw-handle{flex-basis:auto;display:inline-block;margin:0;padding:3px 8px;border-radius:6px;background:#fff;color:#24212A;opacity:1;font-size:12px;font-weight:800;text-align:left;text-shadow:none}
.lay-magazine .cw-socials{position:absolute;right:14px;bottom:18px;z-index:2;justify-content:flex-end;max-width:88px;gap:6px}
.lay-magazine .cw-so{width:32px;height:32px}
.lay-magazine .cw-blocks{padding:16px 0 4px;gap:0;counter-reset:cw-toc}
.lay-magazine .cw-eb[data-block-type="link"]{counter-increment:cw-toc}
.lay-magazine .cw-eb:not([data-block-type="link"]){margin:12px 0}
.lay-magazine .cw-blk.link{--btx:#24212A!important;--btx2:#938C9E!important;min-height:0;padding:12px 2px;gap:12px;border-radius:0!important;border-bottom:1px solid var(--cw-toc-line);align-items:baseline}
.lay-magazine .cw-blk.link:before{display:none}
.lay-magazine .cw-blk.link .lg{width:24px;height:auto;flex:none;background:none;border-radius:0;font-size:0;overflow:visible;display:block}
.lay-magazine .cw-blk.link .lg>*{display:none}
.lay-magazine .cw-blk.link .lg:before{content:counter(cw-toc,decimal-leading-zero);font:900 13px/1 "Inter",var(--f-ui);color:var(--cw-toc-num)}
.lay-magazine .cw-blk.link b{font-size:15px;font-weight:800}
.lay-magazine .cw-blk.link small,.lay-magazine .cw-blk.link .go{display:none}
.lay-magazine .cw-foot{align-self:center;color:var(--tx2)}
.lay-magazine .cw-foot img{filter:none}
.lay-magazine .cw-handle-mag{display:inline-block}
.cw-handle-mag{display:none}

/* ---------- 版式：拍立得墙（会员） ---------- */
.cw.lay-polaroid{--tx:#24212A;--tx2:#5E5868;background:linear-gradient(rgba(243,238,230,.94),rgba(243,238,230,.94)),var(--th)}
.cw.lay-polaroid.motion-dark{--tx:#F4F2FA;--tx2:#B8B2CC}
.lay-polaroid .cw-card{align-items:stretch}
.lay-polaroid .cw-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px}
.lay-polaroid .cw-avatar{width:56px;height:56px;border:0;box-shadow:0 0 0 3px #fff}
.lay-polaroid .cw-avatar-fallback{font-size:22px}
.lay-polaroid .cw-cam{width:22px;height:22px;right:-4px;bottom:-2px}
.lay-polaroid .cw-nm{flex:1;min-width:0;justify-content:flex-start}
.lay-polaroid .cw-nm h1{font-size:20px;margin:0;padding:0 4px;text-align:left}
.lay-polaroid .cw-nm .cw-handle{text-align:left;padding-left:4px}
.lay-polaroid .cw-socials{flex-basis:100%;justify-content:flex-start}
.lay-polaroid .cw-blocks{display:flex;flex-direction:row;flex-wrap:wrap;gap:18px 14px;margin-top:8px}
.lay-polaroid .cw-eb{flex:1 1 100%;min-width:0}
/* 平台链接 → 2 列拍立得；自定义 / 网站 / 邮箱等其他按钮 → 白色胶囊 */
.lay-polaroid .cw-eb[data-block-type="link"]:not([data-platform="custom"]):not([data-platform="website"]):not([data-platform="email"]){flex:0 0 calc(50% - 7px)}
.lay-polaroid .cw-blk.link{--fill:#FFFFFF!important;--fill-op:1!important;--btx:#24212A!important;--btx2:#5E5868!important;border-radius:999px!important;justify-content:center;min-height:46px;padding:10px 16px;box-shadow:0 2px 6px rgba(60,40,20,.08)}
.lay-polaroid .cw-blk.link:before{border-radius:999px!important}
.lay-polaroid .cw-blk.link .lg,.lay-polaroid .cw-blk.link small,.lay-polaroid .cw-blk.link .go{display:none}
.lay-polaroid .cw-blk.link b{font-size:14px;font-weight:800;text-align:center}
.lay-polaroid .cw-eb[data-block-type="link"]:not([data-platform="custom"]):not([data-platform="website"]):not([data-platform="email"]) .cw-blk.link{display:block;padding:7px 7px 30px;border-radius:2px!important;min-height:0;box-shadow:0 4px 12px rgba(60,40,20,.15);transform:rotate(var(--r,-3deg))}
.lay-polaroid .cw-eb[data-block-type="link"]:not([data-platform="custom"]):not([data-platform="website"]):not([data-platform="email"]) .cw-blk.link:before{border-radius:2px!important}
.lay-polaroid .cw-eb[data-block-type="link"]:not([data-platform="custom"]):not([data-platform="website"]):not([data-platform="email"]) .cw-blk.link .lg{display:grid;width:100%;height:auto;aspect-ratio:1;border-radius:0;font-size:30px;background:linear-gradient(160deg,color-mix(in srgb,var(--a,#64748B) 30%,#FFFFFF),var(--a,#64748B))}
.lay-polaroid .cw-eb[data-block-type="link"]:not([data-platform="custom"]):not([data-platform="website"]):not([data-platform="email"]) .cw-blk.link .lg img{width:38%;height:38%}
.lay-polaroid .cw-eb[data-block-type="link"]:not([data-platform="custom"]):not([data-platform="website"]):not([data-platform="email"]) .cw-blk.link b{position:absolute;left:4px;right:4px;bottom:7px;font-size:12px;color:#5E5868;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lay-polaroid .cw-eb[data-block-type="link"]:not([data-platform="custom"]):not([data-platform="website"]):not([data-platform="email"]) .cw-blk.link:after{content:"";position:absolute;left:50%;top:-8px;width:44px;height:14px;margin-left:-22px;background:var(--cw-tape);transform:rotate(-4deg)}
.lay-polaroid .cw-eb:nth-child(4n+1) .cw-blk.link{--r:-3deg}
.lay-polaroid .cw-eb:nth-child(4n+2) .cw-blk.link{--r:2.5deg}
.lay-polaroid .cw-eb:nth-child(4n+3) .cw-blk.link{--r:1.5deg}
.lay-polaroid .cw-eb:nth-child(4n) .cw-blk.link{--r:-2deg}
.lay-polaroid .cw-foot img{filter:none}
.lay-polaroid.motion-dark .cw-foot img{filter:invert(1)}
.lay-polaroid .cw-addbig{background:rgba(255,255,255,.75);border-color:#D9CFBF;color:var(--ink)}

/* ---------- 设计面板：版式 6 格（宽屏 3×2，手机一排 6 个） ---------- */
.cw-tpls{grid-template-columns:repeat(3,minmax(0,1fr))}
.cw-tpls .cw-tpv{aspect-ratio:4/3.4}
.cw-tp2.cw-member .cw-tpv{position:relative}
.cw-tpv .cw-vip{position:absolute;right:4px;top:4px;margin:0;z-index:2;height:16px;padding:0 6px;font-size:10px}
.cw-tpv.t5{padding:0;background:#fff;gap:4px}
.cw-tpv.t5 .mh{width:100%;height:10%;background:#24212A;border-radius:0}
.cw-tpv.t5 .cv{width:100%;height:42%;border-radius:0;background:linear-gradient(180deg,#d898b4,#f2c6d6)}
.cw-tpv.t5 .l{width:80%;height:6%;background:#ECEAF0;border-radius:2px}
.cw-tpv.t6{background:var(--cw-polaroid-bg);flex-direction:row;flex-wrap:wrap;justify-content:center;align-content:center;gap:5px}
.cw-tpv.t6 .pc{width:38%;aspect-ratio:1;background:#fff;border-radius:1px;box-shadow:inset 0 0 0 3px #fff,inset 0 -8px 0 #fff,0 1px 3px rgba(60,40,20,.15);background-image:linear-gradient(160deg,#E9D9C2,#F6EEE2)}
.cw-tpv.t6 .pc:nth-child(odd){transform:rotate(-3deg)}.cw-tpv.t6 .pc:nth-child(even){transform:rotate(2.5deg)}
.cw-tl-vip{display:flex;align-items:center;gap:2px}
/* 动态背景 4 格 */
.cw-mvs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.cw-mv{display:flex;flex-direction:column;align-items:center;gap:5px;padding:5px 5px 7px;border-radius:10px;border:1.5px solid var(--line);background:#fff;font:inherit;font-size:12px;font-weight:800;color:var(--ink);cursor:pointer;position:relative}
.cw-mv.on{border:2px solid var(--ink);padding:4.5px 4.5px 6.5px}
.cw-mv[hidden]{display:none}
.cw-mv i{display:grid;place-items:center;width:100%;height:54px;border-radius:6px;position:relative;font-style:normal;color:var(--ink-2);background:var(--soft) center/cover no-repeat}
.cw-mv i.mv-flow{background:radial-gradient(circle at 30% 25%,var(--cw-flow-pink),transparent 50%),radial-gradient(circle at 75% 70%,var(--cw-flow-sky),transparent 50%),#5B3E9A}
.cw-mv i.mv-stars{background:radial-gradient(circle at 20% 30%,#fff 0 1px,transparent 2px),radial-gradient(circle at 60% 60%,#fff 0 1px,transparent 2px),radial-gradient(circle at 80% 20%,#fff 0 1px,transparent 2px),var(--cw-stars-base2)}
.cw-mv i.has-poster svg{display:none}
.cw-flag-note{margin:4px 0 0;padding:8px 12px;border-radius:10px;background:var(--soft);font-size:12px;font-weight:800;color:var(--ink-2)}
.cw-flag-note[hidden]{display:none}
.cw-mv-play{position:absolute;right:4px;bottom:4px;width:16px;height:16px;border-radius:8px;background:rgba(255,255,255,.9)}
.cw-mv-play:after{content:"";position:absolute;left:6px;top:4px;border-left:6px solid var(--ink);border-top:4px solid transparent;border-bottom:4px solid transparent}
.cw-mv.is-busy{opacity:.6;pointer-events:none}
/* 开场动画 / 时长 / 标识开关 */
.cw-introw{display:flex;align-items:center;gap:10px;margin-top:10px}
.cw-introw .cw-sg{flex:none}
.cw-sg-ink{border-radius:20px}
.cw-sg-ink button{height:32px;padding:0 13px;border-radius:16px;flex:none}
.cw-sg-ink button.on{background:var(--ink);color:#fff;box-shadow:none}
.cw-sg-ink button[hidden]{display:none}
.cw-k{font-size:14px;font-weight:800;color:var(--ink);display:inline-flex;align-items:center;gap:2px}
.cw-introw .cw-btn[hidden]{display:none}
.cw-intro-pick{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-top:10px}
.cw-intro-pick[hidden]{display:none}
.cw-intro-pick button{padding:0;border:0;border-radius:8px;overflow:hidden;aspect-ratio:1;background:var(--soft);cursor:pointer;outline-offset:2px}
.cw-intro-pick button.on{outline:2px solid var(--ink)}
.cw-intro-pick img{width:100%;height:100%;object-fit:cover;display:block}
.cw-intro-pick p{grid-column:1/-1;margin:0;font-size:12px;font-weight:700;color:var(--ink-3)}
.cw-brand-row{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);cursor:pointer}
.cw-switch{appearance:none;-webkit-appearance:none;width:46px;height:28px;border-radius:14px;background:#D9D5E0;position:relative;flex:none;margin:0;cursor:pointer;transition:background var(--t-fast,150ms)}
.cw-switch:after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:11px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform var(--t-fast,150ms)}
.cw-switch:checked{background:var(--ink)}.cw-switch:checked:after{transform:translateX(18px)}
.cw-switch:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.cw-looks-draft{position:sticky;z-index:5;bottom:-18px;margin:16px -18px -18px;padding:12px 18px;display:flex;align-items:center;gap:8px;background:#FFF0F4;border-top:1px solid #FBD3DF;font-size:12px;font-weight:900;color:#3A1626}
.cw-looks-draft[hidden]{display:none}
.cw-looks-draft .cw-btn.p{background:var(--ink);border-color:var(--ink);color:#fff}

@media (max-aspect-ratio:1/1){
  .cw-tpls{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
  .cw-tp2{font-size:11px;gap:4px}
  .cw-tpls .cw-tpv{aspect-ratio:3/4.4;padding:5px 4px}
  .cw-tpv .cw-vip{right:2px;top:2px;padding:0 4px;font-size:9px;height:14px}
  .lay-magazine .cw-head{margin:0 -16px}
  .cw-live{top:64px}
  .cw-looks-draft{bottom:calc(-18px - var(--safe-bottom,0px))}
}
