.topkku-fan-page{--tk-ink:#35284f;--tk-muted:#7d728a;--tk-pink:#ff9acb;--tk-lilac:#c9b7ff;--tk-paper:#fffdfa;background:
radial-gradient(circle at 12% 14%,rgba(255,175,216,.34),transparent 28%),
radial-gradient(circle at 88% 10%,rgba(192,207,255,.34),transparent 30%),
linear-gradient(180deg,#fbf8ff 0,#fff9fb 45%,#fbf7ff 100%);color:var(--tk-ink)}
.topkku-fan-page:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:repeating-linear-gradient(0deg,rgba(83,63,112,.045) 0 1px,transparent 1px 5px)}
.topkku-fan-page .topbar{background:rgba(255,252,255,.88);border-bottom:1px solid rgba(87,66,117,.12);backdrop-filter:blur(18px);color:#241d35}.topkku-fan-page .topbar a{color:#241d35}.topkku-fan-page .nav a{color:#72687d}.topkku-fan-page .nav a.active{color:#2a203b}
.topkku-fan-page .topkku-shell{max-width:1500px;padding:0 4vw 90px}
.topkku-fan-page .topkku-hero{position:relative;border:1px solid rgba(99,75,128,.13);border-radius:30px;padding:38px;margin-top:96px;background:rgba(255,255,255,.77);box-shadow:0 24px 80px rgba(88,64,112,.11);overflow:hidden}
.topkku-fan-page .topkku-hero:before,.topkku-fan-page .topkku-hero:after{content:"";position:absolute;width:120px;height:28px;background:rgba(226,210,255,.72);z-index:0}.topkku-fan-page .topkku-hero:before{top:8px;left:9%;transform:rotate(-3deg)}.topkku-fan-page .topkku-hero:after{right:8%;bottom:9px;transform:rotate(3deg);background:rgba(255,198,225,.75)}
.topkku-fan-page .topkku-hero>*{position:relative;z-index:1}.topkku-fan-page .topkku-hero h1{color:#34254f;font-size:clamp(50px,6.5vw,92px)}.topkku-fan-page .topkku-hero p{color:#786d84}
.topkku-fan-page .topkku-note{background:#ffe0ee;border-color:rgba(141,91,123,.14);color:#6b3f5a;box-shadow:0 10px 28px rgba(97,67,91,.09);transform:rotate(1deg);font-family:"Comic Sans MS","Bradley Hand",cursive}.topkku-fan-page .topkku-note span{color:#7c5d70}
.topkku-fan-page .topkku-workspace{grid-template-columns:minmax(220px,280px) minmax(420px,720px) minmax(220px,300px)}
.topkku-fan-page .topkku-tools,.topkku-fan-page .topkku-tips{background:rgba(255,255,255,.79);border-color:rgba(93,70,122,.14);box-shadow:0 14px 40px rgba(86,62,109,.08);color:var(--tk-ink)}
.topkku-fan-page .tool-block{border-bottom-color:rgba(91,68,120,.11)}.topkku-fan-page .tool-label{color:#9b6b93}.topkku-fan-page .tool-block small{color:#8b8193}
.topkku-fan-page .upload-button{background:#3e3157;color:#fff;border-color:#3e3157}
.topkku-fan-page .photo-edit button,.topkku-fan-page .theme-chip,.topkku-fan-page .sticker-grid button,.topkku-fan-page .edit-row button,.topkku-fan-page .quick-copy button,.topkku-fan-page .text-add button,.topkku-fan-page .stage-actions button{background:#fff;color:#4b3e5e;border-color:rgba(95,72,124,.15)}
.topkku-fan-page .photo-edit #photoCenter,.topkku-fan-page .theme-chip.active{background:linear-gradient(135deg,#eadfff,#ffddec);color:#493858;border-color:#decdf0}
.topkku-fan-page .text-add input{background:#fffdfd;color:#463951;border-color:rgba(95,72,124,.15)}
.topkku-fan-page .topkku-stage-wrap{position:relative;padding:20px;border:1px solid rgba(97,73,125,.14);border-radius:24px;background:rgba(255,255,255,.72);box-shadow:0 18px 55px rgba(85,61,108,.09)}
.topkku-fan-page .topkku-stage-wrap:before{content:"favorite moment ♡";position:absolute;top:-12px;right:28px;padding:6px 12px;background:#e5dcff;color:#65557b;transform:rotate(2deg);font:600 13px/1 "Comic Sans MS","Bradley Hand",cursive}
.topkku-fan-page .stage-caption{color:#7e7189}.topkku-fan-page .canvas-shell{background:#f7f0fb;border-color:rgba(98,74,125,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.65)}
.topkku-fan-page .save-button{background:linear-gradient(135deg,#3d3153,#6b4d7f)!important;color:white!important;border-color:transparent!important}
.topkku-fan-page .topkku-tips h2{color:#3b2e51}.topkku-fan-page .topkku-tips article{background:#fffafc;border-color:rgba(99,75,126,.1)}.topkku-fan-page .topkku-tips article b{color:#bc6e9f}.topkku-fan-page .topkku-tips article p{color:#75697f}
.topkku-fan-page .topkku-coming{background:#f2ebff;border-color:rgba(102,77,130,.12)}.topkku-fan-page .topkku-coming span{color:#7b6f87}
.topkku-fan-page footer{color:#615871;border-top-color:rgba(91,68,118,.12)}.topkku-fan-page footer a{color:#50445f}
.topkku-diary-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.topkku-diary-strip span{padding:7px 11px;border-radius:999px;background:#f2e9ff;color:#705b89;font:700 11px/1 system-ui}.topkku-diary-strip span:nth-child(2){background:#ffe2ef;color:#92526f}.topkku-diary-strip span:nth-child(3){background:#e7f3ff;color:#536f91}
@media(max-width:900px){.topkku-fan-page .topkku-hero{margin-top:78px;padding:28px}.topkku-fan-page .topkku-workspace{grid-template-columns:1fr}.topkku-fan-page .topkku-tools,.topkku-fan-page .topkku-tips{position:static}.topkku-fan-page .topkku-stage-wrap{order:-1}}

.topkku-team{display:grid;gap:8px}.topkku-team input{width:100%;box-sizing:border-box;border:1px solid rgba(95,72,124,.15);background:#fff;color:#463951;border-radius:10px;padding:10px;font:inherit;font-size:10px;outline:none}.topkku-team-connected{padding:10px;border-radius:12px;background:#f5effc;color:#7a6d86;font-size:10px}.topkku-team-connected b{display:block;color:#4c3b5f;font-size:12px;margin-bottom:3px}.topkku-team-connected span{display:block;color:#8a7d95}.topkku-artist-results{display:grid;gap:6px}.topkku-artist-results button{display:grid;grid-template-columns:36px 1fr;gap:8px;align-items:center;text-align:left;border:1px solid rgba(95,72,124,.12);background:#fffafc;color:#45384f;border-radius:10px;padding:7px;cursor:pointer}.topkku-artist-results img{width:36px;height:36px;object-fit:cover;border-radius:8px}.topkku-artist-results span{min-width:0}.topkku-artist-results b,.topkku-artist-results small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topkku-artist-results small{color:#8d8197;font-size:9px;margin-top:2px}.topkku-team-empty{font-size:10px;color:#8d8197;padding:8px}.web-save-state{margin-top:10px;padding:11px 13px;border-radius:12px;background:#f4edff;color:#6f5e80;font-size:11px;line-height:1.5}.web-save-state a{color:#8b4d78;font-weight:900;text-decoration:none}.topkku-fan-page .stage-actions{flex-wrap:wrap}.topkku-fan-page #webSaveBtn:disabled{opacity:.55;cursor:wait}

.sticker-drawer{display:grid;gap:10px}.sticker-profile{padding:11px 12px;border-radius:14px;background:linear-gradient(135deg,#f4edff,#fff0f7);border:1px solid rgba(97,72,123,.12)}.sticker-profile b,.sticker-profile span{display:block}.sticker-profile b{font-size:12px;color:#4b3b5d}.sticker-profile span{margin-top:4px;font-size:9px;color:#84788d;line-height:1.45}.sticker-pack-tabs{display:flex;gap:5px;overflow:auto;padding-bottom:2px}.sticker-pack-tabs button{white-space:nowrap;border:1px solid rgba(95,72,124,.12);background:#fff;color:#75687e;border-radius:999px;padding:7px 9px;font:800 9px/1 system-ui;cursor:pointer}.sticker-pack-tabs button.active{background:#eadfff;color:#503b67;border-color:#d8c6ef}
.material-sticker-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.material-sticker{position:relative;min-height:84px!important;padding:8px 5px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:13px!important}.material-sticker .sticker-swatch{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;font-size:24px;line-height:1;background:linear-gradient(145deg,#fff,#f0e8f7);box-shadow:inset 0 0 0 1px rgba(111,83,137,.08),0 5px 12px rgba(89,64,104,.07)}.material-sticker b{font-size:9px;color:#4b3d59}.material-sticker small{font-size:7px;color:#96899f}.material-sticker.locked{opacity:.68}.material-sticker.locked .sticker-swatch{filter:saturate(.35)}.material-sticker.motion-item:after{content:"LIVE";position:absolute;top:5px;right:5px;padding:3px 5px;border-radius:999px;background:#4b365f;color:#fff;font:800 6px/1 system-ui;letter-spacing:.06em}.material-sticker.motion-item .sticker-swatch{animation:topkku-sticker-glow 1.8s ease-in-out infinite}.variant-holo{background:linear-gradient(135deg,#ffd0e8,#cceeff,#decaff,#fff2ae)!important}.kind-gem{background:linear-gradient(135deg,#f8ffff,#bee9ff,#efcfff,#ffd5e6)!important}.kind-chrome{background:linear-gradient(135deg,#8b909b,#fff,#aeb6c5,#fff,#747b88)!important;color:#484f5a}.kind-jelly{background:linear-gradient(135deg,#ff9dca,#c98cff)!important;color:#fff}.kind-pearl{background:radial-gradient(circle at 35% 30%,#fff 0 18%,#fff8fc 35%,#ded5e2 75%,#aaa0af 100%)!important}.kind-acrylic{background:linear-gradient(135deg,rgba(181,229,255,.75),rgba(255,202,230,.72),rgba(221,203,255,.78))!important}.kind-lace{background:#fff!important;color:#b894b2}.kind-frame{background:linear-gradient(135deg,#ffbddc,#c9c7ff,#bfeaff,#fff0ab)!important;color:#fff}.kind-sparkle{background:linear-gradient(135deg,#fff,#d7c7ff,#ffafd3,#aff0ff)!important}
.sticker-guide{padding:9px 10px;border-radius:11px;background:#fffafc;color:#87788f;font-size:9px;line-height:1.45}.publish-button{background:linear-gradient(135deg,#ff8fc2,#a97bd4)!important;color:#fff!important;border-color:transparent!important}.topkku-limit-line{margin-top:10px;font-size:9px;font-weight:800;color:#806f8e;text-align:center}
.topkku-vault{margin-top:28px;padding:24px;border:1px solid rgba(95,72,124,.13);border-radius:24px;background:rgba(255,255,255,.72);box-shadow:0 18px 50px rgba(86,62,109,.08)}.topkku-vault .paper-heading{display:flex;justify-content:space-between;gap:18px;align-items:end}.topkku-vault .paper-heading span{font-size:9px;font-weight:900;color:#b26f9c;letter-spacing:.14em}.topkku-vault .paper-heading h2{margin:5px 0 0;font-size:26px;color:#3b2d50}.topkku-vault .paper-heading em{font-style:normal;color:#8b7d94;font-size:10px}.topkku-vault-state{margin-top:14px;padding:10px 12px;border-radius:12px;background:#f6effd;color:#766781;font-size:10px}.topkku-vault-state button{border:0;background:none;color:#9b4f7d;font-weight:900;cursor:pointer}.topkku-vault-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}.vault-card{padding:8px;border-radius:14px;background:#fff;border:1px solid rgba(96,73,121,.12);box-shadow:0 8px 22px rgba(82,61,97,.06)}.vault-card>a{display:block}.vault-card img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:9px;background:#efe9f2}.vault-card>div{padding:8px 3px 2px}.vault-card b,.vault-card span{display:block}.vault-card b{font-size:11px;color:#47394f}.vault-card span{font-size:8px;color:#93869b;margin-top:3px}.vault-actions{margin-top:7px}.vault-actions a,.vault-actions button{display:inline-flex;border:0;background:#f0e6fa;color:#765585;border-radius:999px;padding:6px 8px;text-decoration:none;font:800 8px/1 system-ui;cursor:pointer}.topkku-vault-empty{grid-column:1/-1;padding:22px;text-align:center;color:#8e8295;font-size:11px}
@keyframes topkku-sticker-glow{0%,100%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.05);filter:brightness(1.18)}}
@media (prefers-reduced-motion:reduce){.material-sticker.motion-item .sticker-swatch{animation:none}}
@media(max-width:900px){.topkku-vault-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topkku-vault .paper-heading{display:block}.topkku-vault .paper-heading em{display:block;margin-top:6px}}
@media(max-width:520px){.material-sticker-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.topkku-vault{padding:16px}.topkku-vault-grid{gap:8px}}

.material-sticker .sticker-swatch.has-asset{background:#fff!important;overflow:hidden}
.material-sticker .sticker-swatch.has-asset img{display:block;width:86%;height:86%;object-fit:contain;pointer-events:none;user-select:none}
.material-sticker.locked .sticker-swatch.has-asset img{filter:saturate(.42) brightness(.96)}
.material-sticker.motion-item .sticker-swatch.has-asset img{filter:drop-shadow(0 3px 5px rgba(83,58,105,.12))}


/* Topkku social loop: gallery → taste vault → compare/reference → weekly taste battle */
.topkku-gallery,.topkku-balance{margin-top:28px;padding:24px;border:1px solid rgba(95,72,124,.13);border-radius:24px;background:rgba(255,255,255,.74);box-shadow:0 18px 50px rgba(86,62,109,.08)}
.topkku-gallery .paper-heading,.topkku-balance .paper-heading{display:flex;justify-content:space-between;align-items:end;gap:18px}
.topkku-gallery .paper-heading span,.topkku-balance .paper-heading span{font-size:9px;font-weight:900;color:#b26f9c;letter-spacing:.14em}
.topkku-gallery .paper-heading h2,.topkku-balance .paper-heading h2{margin:5px 0 0;font-size:28px;color:#3b2d50}
.topkku-gallery .paper-heading em,.topkku-balance .paper-heading em{font-style:normal;color:#8b7d94;font-size:10px;max-width:520px;text-align:right}
.topkku-gallery-tabs,.vault-scope-tabs,.vault-view-tabs,.vault-group-filters{display:flex;gap:7px;overflow:auto}
.topkku-gallery-tabs{margin-top:16px}.topkku-gallery-tabs button,.vault-scope-tabs button,.vault-view-tabs button,.vault-group-filters button{white-space:nowrap;border:1px solid rgba(95,72,124,.14);background:#fff;color:#75687e;border-radius:999px;padding:8px 11px;font:800 9px/1 system-ui;cursor:pointer}
.topkku-gallery-tabs button.active,.vault-scope-tabs button.active,.vault-view-tabs button.active,.vault-group-filters button.active{background:#eadfff;color:#503b67;border-color:#d8c6ef}
.topkku-gallery-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:14px}
.social-topkku-card{min-width:0;padding:8px;border:1px solid rgba(96,73,121,.12);border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(82,61,97,.06)}
.social-topkku-image{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.social-topkku-image img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:10px;background:#efe9f2}
.social-topkku-meta{padding:8px 2px 5px}.social-topkku-meta b,.social-topkku-meta span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.social-topkku-meta b{font-size:11px;color:#493a54}.social-topkku-meta span{margin-top:3px;font-size:8px;color:#95889e}
.social-topkku-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px}.social-topkku-actions button{border:0;border-radius:9px;background:#f4edf9;color:#745b81;padding:7px 5px;font:800 8px/1.15 system-ui;cursor:pointer}.social-topkku-actions button:last-child{grid-column:1/-1;background:#fff0f6;color:#a1537e}.social-topkku-actions button.active{background:#ffe0ef;color:#a43f75}
.topkku-loading{grid-column:1/-1;padding:28px;text-align:center;color:#8d8096;font-size:11px}
.topkku-compare-tray{position:sticky;bottom:14px;z-index:20;margin:14px auto 0;max-width:560px;display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid rgba(82,59,104,.15);border-radius:15px;background:rgba(55,42,70,.94);box-shadow:0 16px 42px rgba(54,37,66,.28);color:#fff;backdrop-filter:blur(12px)}
.topkku-compare-tray>div{display:flex;gap:4px}.topkku-compare-tray img{width:34px;height:48px;object-fit:cover;border-radius:6px}.topkku-compare-tray b{font-size:10px;margin-right:auto}.topkku-compare-tray button{border:0;border-radius:9px;padding:8px 10px;font:800 8px system-ui;cursor:pointer}.topkku-compare-tray button:disabled{opacity:.45;cursor:default}
.topkku-compare-modal{position:fixed;inset:0;z-index:999;background:rgba(29,21,37,.76);display:grid;place-items:center;padding:22px;backdrop-filter:blur(10px)}.topkku-compare-modal[hidden]{display:none}
.compare-sheet{position:relative;width:min(980px,96vw);max-height:94vh;overflow:auto;padding:20px;border-radius:24px;background:#fffafd;box-shadow:0 30px 100px rgba(0,0,0,.35)}.compare-close{position:sticky;top:0;float:right;z-index:2;border:0;border-radius:999px;background:#3f3151;color:#fff;padding:9px 12px;font-weight:900;cursor:pointer}.compare-pair{clear:both;display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-top:12px}.compare-pair figure{margin:0}.compare-pair img{display:block;width:100%;max-height:75vh;object-fit:contain;border-radius:16px;background:#f0e9f4}.compare-pair figcaption{padding:8px 4px;color:#6d5d78;font-size:10px;text-align:center}

.topkku-balance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.balance-match{position:relative;display:grid;grid-template-columns:1fr 26px 1fr;gap:8px;align-items:center;padding:10px;border-radius:18px;background:linear-gradient(135deg,#fff5fa,#f4efff);border:1px solid rgba(98,75,124,.11)}.balance-side{display:grid;grid-template-columns:72px 1fr;gap:8px;align-items:center;text-align:left;border:2px solid transparent;border-radius:13px;background:#fff;padding:6px;color:#4e3d5c;cursor:pointer}.balance-side img{width:72px;aspect-ratio:2/3;object-fit:cover;border-radius:9px}.balance-side span b,.balance-side span small{display:block}.balance-side span b{font-size:10px}.balance-side span small{margin-top:4px;color:#908298;font-size:8px}.balance-side.chosen{border-color:#ff8fc2;box-shadow:0 0 0 3px rgba(255,143,194,.13)}.balance-side:disabled{cursor:default}.balance-vs{font:900 9px/1 system-ui;color:#ad86aa;text-align:center}.balance-match>p{grid-column:1/-1;margin:0;text-align:center;color:#8c728c;font:800 8px system-ui}
.topkku-balance-ranking{margin-top:14px;padding:13px;border-radius:15px;background:#fff}.topkku-balance-ranking>b{font-size:11px;color:#503e60}.topkku-balance-ranking ol{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.topkku-balance-ranking li{display:grid;grid-template-columns:18px 32px 1fr auto;align-items:center;gap:6px;padding:6px;border-radius:10px;background:#f8f1fa}.topkku-balance-ranking li>span{font-weight:900;color:#b36192}.topkku-balance-ranking li img{width:32px;height:44px;object-fit:cover;border-radius:5px}.topkku-balance-ranking li strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px}.topkku-balance-ranking li em{font-style:normal;font-size:7px;color:#8e7d96}.point-pop{margin-bottom:8px;padding:7px 9px;border-radius:999px;background:#fff0b8;color:#846218;font:900 9px system-ui;text-align:center}

.topkku-reference-panel{display:grid;grid-template-columns:1fr 70px auto;gap:10px;align-items:center;margin-bottom:12px;padding:10px;border-radius:14px;background:linear-gradient(135deg,#fff0f7,#eee7ff);border:1px solid rgba(102,75,129,.12)}.topkku-reference-panel[hidden]{display:none}.topkku-reference-panel img{width:70px;height:96px;object-fit:cover;border-radius:8px}.reference-copy span,.reference-copy b,.reference-copy small{display:block}.reference-copy span{font:900 8px system-ui;letter-spacing:.13em;color:#b06695}.reference-copy b{margin-top:4px;font-size:11px}.reference-copy small{margin-top:3px;color:#8a7b92;font-size:8px}.topkku-reference-panel button{border:0;border-radius:9px;background:#fff;color:#775f84;padding:8px;font:800 8px system-ui;cursor:pointer}

/* tactile card-vault organizer */
.vault-toolbar{display:flex;justify-content:space-between;gap:12px;margin-top:14px}.vault-group-filters{margin-top:10px}.vault-organizer-board{position:relative;margin-top:12px;min-height:360px;padding:58px 72px;border:1px dashed rgba(102,78,128,.16);border-radius:22px;background:radial-gradient(circle at center,#fff 0,#fffafd 52%,#f5eef9 100%);overflow:hidden}.vault-drop-zone{position:absolute;z-index:4;display:flex;align-items:center;justify-content:center;border:1px solid rgba(108,83,133,.14);border-radius:999px;background:rgba(255,255,255,.8);color:#897590;font:900 8px system-ui;pointer-events:none;transition:.18s}.vault-drop-zone.hot{background:#ffe0ef;color:#9d4472;transform:scale(1.08);box-shadow:0 8px 24px rgba(157,68,114,.14)}.vault-drop-north{top:10px;left:50%;transform:translateX(-50%);padding:8px 14px}.vault-drop-north.hot{transform:translateX(-50%) scale(1.08)}.vault-drop-south{bottom:10px;left:50%;transform:translateX(-50%);padding:8px 14px}.vault-drop-south.hot{transform:translateX(-50%) scale(1.08)}.vault-drop-west{left:10px;top:50%;transform:translateY(-50%);padding:12px 8px;writing-mode:vertical-rl}.vault-drop-west.hot{transform:translateY(-50%) scale(1.08)}.vault-drop-east{right:10px;top:50%;transform:translateY(-50%);padding:12px 8px;writing-mode:vertical-rl}.vault-drop-east.hot{transform:translateY(-50%) scale(1.08)}
.topkku-vault-grid.is-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0}.topkku-vault-grid.is-fan{display:flex;align-items:center;justify-content:flex-start;overflow-x:auto;overflow-y:visible;min-height:260px;margin:0;padding:12px 26px 30px 4px;scrollbar-width:thin}.topkku-vault-grid.is-fan .vault-card{flex:0 0 168px;margin-left:-118px;z-index:calc(var(--card-index) + 1);transform-origin:50% 95%;transition:transform .18s,box-shadow .18s,margin .18s}.topkku-vault-grid.is-fan .vault-card:first-of-type{margin-left:0}.topkku-vault-grid.is-fan .vault-card:hover,.topkku-vault-grid.is-fan .vault-card:focus-within{z-index:90;transform:translateY(-13px) rotate(-1deg);box-shadow:0 18px 36px rgba(75,53,88,.2)}
.vault-card{touch-action:none;user-select:none;will-change:transform}.vault-card.dragging{z-index:120!important;transition:none!important;cursor:grabbing;box-shadow:0 24px 46px rgba(77,48,93,.28)}.vault-card.just-sorted{animation:vault-sorted .4s ease}.vault-swipe-help{margin:10px 0 0;text-align:center;color:#8f8298;font-size:9px}
@keyframes vault-sorted{0%{box-shadow:0 0 0 0 rgba(255,143,194,.3)}50%{box-shadow:0 0 0 8px rgba(255,143,194,.15)}100%{box-shadow:0 0 0 0 rgba(255,143,194,0)}}

@media(max-width:1100px){.topkku-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.topkku-balance-grid{grid-template-columns:1fr}.topkku-balance-ranking ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.topkku-gallery .paper-heading,.topkku-balance .paper-heading{display:block}.topkku-gallery .paper-heading em,.topkku-balance .paper-heading em{display:block;margin-top:6px;text-align:left}.topkku-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vault-toolbar{display:block}.vault-view-tabs{margin-top:8px}.vault-organizer-board{padding:55px 48px}.topkku-vault-grid.is-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compare-pair{gap:8px}.balance-side{grid-template-columns:52px 1fr}.balance-side img{width:52px}}
@media(max-width:480px){.topkku-gallery,.topkku-balance{padding:16px}.topkku-gallery-grid{gap:8px}.social-topkku-actions{grid-template-columns:1fr}.social-topkku-actions button:last-child{grid-column:auto}.balance-match{grid-template-columns:1fr 20px 1fr;padding:7px}.balance-side{display:block;text-align:center}.balance-side img{width:100%;margin-bottom:5px}.topkku-reference-panel{grid-template-columns:1fr 56px}.topkku-reference-panel img{width:56px;height:78px}.topkku-reference-panel button{grid-column:1/-1}.topkku-vault-grid.is-fan .vault-card{flex-basis:146px;margin-left:-103px}.vault-organizer-board{padding-left:40px;padding-right:40px}}

.topkku-compare-tray[hidden]{display:none!important}


/* hidden growth: no numeric level labels; five-leaf phases inside each public growth title */
.growth-profile-line{display:flex;gap:11px;align-items:center}.growth-profile-line>div{min-width:0}.growth-profile-line b,.growth-profile-line span{display:block}.growth-profile-line b{color:#493954;font-size:11px}.growth-profile-line span{margin-top:3px;color:#88798f;font-size:8px}
.growth-leaf-mark{display:flex;align-items:flex-end;gap:1px;min-width:76px;padding:7px 8px;border-radius:999px;background:#fff;border:1px solid rgba(94,71,118,.12);box-shadow:0 6px 16px rgba(80,58,95,.08)}
.growth-leaf-mark i{font-style:normal;font-size:14px;line-height:1;color:#d9d2dd;opacity:.45;transform:scale(.78) rotate(-12deg);transition:.25s}.growth-leaf-mark i:nth-child(even){transform:scale(.78) rotate(12deg)}.growth-leaf-mark i.grown{opacity:1;transform:scale(1) rotate(-12deg)}.growth-leaf-mark i:nth-child(even).grown{transform:scale(1) rotate(12deg)}
.growth-leaf-mark.band-1 i.grown{color:#9ed49d}.growth-leaf-mark.band-2 i.grown{color:#70bf83}.growth-leaf-mark.band-3 i.grown{color:#4ba16f}.growth-leaf-mark.band-4 i.grown{color:#43856a}.growth-leaf-mark.band-5 i.grown{color:#4f6f66}.growth-leaf-mark.band-6{background:linear-gradient(135deg,#fff7fd,#eee7ff,#f7fff7);box-shadow:0 0 0 3px rgba(182,146,211,.1),0 7px 22px rgba(92,61,114,.12)}.growth-leaf-mark.band-6 i.grown{color:#7c6b91;text-shadow:0 0 7px #e9d7ff}

.sticker-empty-band{grid-column:1/-1;padding:20px 12px;border:1px dashed rgba(104,78,126,.14);border-radius:13px;text-align:center;color:#8e8096;font-size:9px;background:#fffafd}.material-sticker.gifted-item{box-shadow:0 0 0 2px rgba(255,151,198,.16),0 8px 20px rgba(89,61,105,.08)}.material-sticker.gifted-item small{color:#ad4f7f!important}

/* physical-feeling growth letter / received gift keepsakes */
.growth-keepsake-layer[hidden],.topkku-fan-modal[hidden]{display:none!important}.growth-keepsake-layer,.topkku-fan-modal{position:fixed;inset:0;z-index:1200}.keepsake-backdrop,.fan-modal-backdrop{position:absolute;inset:0;display:grid;place-items:center;padding:22px;background:rgba(35,26,43,.72);backdrop-filter:blur(14px)}
.growth-keepsake,.gift-keepsake{position:relative;width:min(680px,94vw);max-height:92vh;overflow:auto;border-radius:28px;background:radial-gradient(circle at 20% 10%,rgba(255,255,255,.98),rgba(250,242,250,.98) 45%,rgba(239,231,247,.98));box-shadow:0 32px 100px rgba(28,17,35,.36);padding:28px}.keepsake-x{position:absolute;right:16px;top:14px;z-index:5;border:0;background:rgba(255,255,255,.72);width:34px;height:34px;border-radius:50%;color:#695674;font-size:20px;cursor:pointer}
.keepsake-envelope{position:relative;display:grid;place-items:center;width:min(500px,100%);min-height:300px;margin:26px auto;border:0;border-radius:18px;background:linear-gradient(145deg,#e6d9ff,#cbb7ef);box-shadow:0 24px 42px rgba(78,51,101,.22),inset 0 0 0 1px rgba(255,255,255,.45);cursor:pointer;overflow:hidden;color:#4a3858}.keepsake-envelope:before,.keepsake-envelope:after{content:"";position:absolute;bottom:-70px;width:68%;height:250px;background:#d6c4f2;transform:rotate(35deg);border-radius:20px}.keepsake-envelope:before{left:-110px}.keepsake-envelope:after{right:-110px;transform:rotate(-35deg)}.envelope-flap{position:absolute;top:-95px;width:72%;height:230px;background:#f0e8ff;transform:rotate(45deg);border-radius:22px;box-shadow:0 4px 16px rgba(74,48,92,.08)}.envelope-seal{position:relative;z-index:2;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#8364a9;color:#fff;font-size:23px;box-shadow:0 8px 20px rgba(73,47,96,.22)}.keepsake-envelope b,.keepsake-envelope small{position:relative;z-index:2}.keepsake-envelope b{margin-top:14px;font-size:18px}.keepsake-envelope small{margin-top:5px;color:#7c6a87}.keepsake-envelope.opened .envelope-flap{animation:open-envelope .34s ease forwards}
@keyframes open-envelope{to{transform:translateY(-150px) rotate(45deg);opacity:.2}}
.growth-letter{position:relative;margin:8px auto 0;padding:34px 32px 28px;width:min(560px,100%);background:#fffdf7;border:1px solid #eadfce;box-shadow:0 20px 45px rgba(87,64,72,.14);transform:rotate(-.4deg);background-image:repeating-linear-gradient(0deg,transparent 0 31px,rgba(151,123,145,.08) 32px)}.growth-letter.arrive{animation:letter-arrive .45s ease}.letter-tape{position:absolute;top:-14px;left:50%;width:120px;height:28px;transform:translateX(-50%) rotate(-2deg);background:rgba(221,199,255,.75);box-shadow:0 2px 4px rgba(70,50,80,.08)}.letter-kicker{display:block;color:#9b6e98;font:900 8px/1 system-ui;letter-spacing:.16em}.growth-letter h2,.gift-keepsake h2{margin:14px 0 16px;color:#4d3959;font-family:"Comic Sans MS","Segoe Print",cursive;font-size:clamp(24px,5vw,36px);line-height:1.15}.growth-letter>p{white-space:pre-line;color:#55465c;font-family:"Comic Sans MS","Segoe Print",cursive;font-size:15px;line-height:1.9}.letter-sign{text-align:right;color:#9b698e;font:700 13px/1.4 "Comic Sans MS","Segoe Print",cursive}
.keepsake-benefits{margin-top:25px;padding-top:18px;border-top:1px dashed #d9c9d6}.keepsake-benefits>b{color:#5f4967;font-size:11px}.keepsake-item-row{display:flex;gap:8px;overflow:auto;margin-top:10px;padding-bottom:4px}.keepsake-item-row article{flex:0 0 92px;min-height:108px;display:grid;place-items:center;gap:4px;padding:8px;border-radius:13px;background:#fff;border:1px solid #eee2ed;box-shadow:0 8px 20px rgba(86,59,96,.07)}.keepsake-item-row article img{width:58px;height:58px;object-fit:contain}.keepsake-glyph{font-size:35px}.keepsake-item-row article span:last-child{color:#6f5c76;font-size:8px;font-weight:900;text-align:center}.keepsake-benefits ul{margin:12px 0 0;padding-left:18px;color:#76657b;font-size:9px;line-height:1.7}.next-envelope-peek{margin-top:18px;padding:13px 15px;border-radius:13px;background:linear-gradient(135deg,#efe6ff,#fff0f6);border:1px solid rgba(121,85,142,.1)}.next-envelope-peek span,.next-envelope-peek b,.next-envelope-peek small{display:block}.next-envelope-peek span{font-size:8px;color:#9f78a0}.next-envelope-peek b{margin-top:4px;font-size:11px;color:#584661}.next-envelope-peek small{margin-top:3px;color:#8a7a90;font-size:8px}.keepsake-main{display:block;width:100%;margin-top:18px;border:0;border-radius:999px;background:#74558f;color:#fff;padding:13px;font-weight:900;cursor:pointer}
@keyframes letter-arrive{0%{opacity:0;transform:translateY(30px) rotate(-3deg) scale(.94)}100%{opacity:1;transform:translateY(0) rotate(-.4deg) scale(1)}}
.gift-keepsake{padding-top:50px}.gift-ribbon{position:absolute;left:-38px;top:18px;transform:rotate(-35deg);padding:7px 54px;background:#a887c7;color:#fff;font:900 8px system-ui;letter-spacing:.14em}.gift-stack{display:grid;gap:10px}.received-gift-card{display:grid;grid-template-columns:92px 1fr;gap:13px;align-items:center;padding:12px;border-radius:17px;background:#fff;border:1px solid #eadfeb;box-shadow:0 9px 24px rgba(89,61,101,.07)}.received-gift-object{display:grid;place-items:center;min-height:88px;border-radius:14px;background:linear-gradient(145deg,#fff2f9,#eee8ff)}.received-gift-object img{width:72px;height:72px;object-fit:contain}.received-gift-card b,.received-gift-card span,.received-gift-card small{display:block}.received-gift-card b{color:#503d5b;font-size:13px}.received-gift-card span{margin-top:3px;color:#8a778f;font-size:9px}.received-gift-card p{margin:8px 0;color:#6b526a;font-family:"Comic Sans MS","Segoe Print",cursive;font-size:11px}.received-gift-card small{color:#a090a5;font-size:8px}

/* comments / reaction fans / gifting drawer */
.topkku-fan-modal .fan-modal-backdrop{align-items:center}.fan-modal-sheet{position:relative;width:min(620px,94vw);max-height:88vh;overflow:auto;border-radius:24px;background:#fffafd;padding:24px;box-shadow:0 28px 90px rgba(31,18,41,.34);color:#4a3856}.fan-modal-x{position:absolute;right:14px;top:12px;border:0;border-radius:50%;width:34px;height:34px;background:#f0e6f5;color:#705c79;font-size:19px;cursor:pointer}.fan-modal-kicker{display:block;color:#ad6e98;font:900 8px system-ui;letter-spacing:.13em}.fan-modal-sheet h3{margin:7px 38px 14px 0;font-size:24px;letter-spacing:-.04em}.fan-modal-sub{color:#89798f;font-size:9px;line-height:1.55}.fan-modal-loading,.fan-modal-empty{padding:25px;text-align:center;color:#96879b;font-size:10px}.fan-modal-topkku{display:grid;grid-template-columns:82px 1fr;gap:12px;align-items:center}.fan-modal-topkku img{width:82px;height:112px;object-fit:cover;border-radius:10px}.fan-modal-topkku h3{margin-bottom:5px}.fan-modal-topkku small{color:#95879a;font-size:8px;line-height:1.5}
.topkku-comment-list{display:grid;gap:7px;margin-top:14px;max-height:320px;overflow:auto}.topkku-comment-list article{padding:10px 11px;border-radius:11px;background:#f7eff8}.topkku-comment-list b{font-size:9px}.topkku-comment-list p{margin:4px 0 0;color:#66536b;font-size:10px;line-height:1.5}.topkku-comment-compose{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:12px}.topkku-comment-compose textarea,.gift-note{resize:vertical;min-height:68px;border:1px solid #e4d7e8;border-radius:12px;background:#fff;padding:10px;color:#59475f;font:500 10px system-ui;outline:none}.topkku-comment-compose button,.gift-send-main{border:0;border-radius:12px;background:#805ca0;color:#fff;padding:0 15px;font-weight:900;cursor:pointer}.reaction-fan-list{display:grid;gap:7px;margin-top:13px}.reaction-fan-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border-radius:12px;background:#f7effa}.reaction-fan-list b,.reaction-fan-list span{display:block}.reaction-fan-list b{font-size:10px}.reaction-fan-list span{margin-top:3px;color:#947f9a;font-size:8px}.reaction-fan-list button{border:0;border-radius:999px;background:#e6d8f4;color:#694c78;padding:8px 10px;font:900 8px system-ui;cursor:pointer}
.gift-item-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}.gift-item-picker>button{border:1px solid #e6d8ea;border-radius:13px;background:#fff;padding:8px;cursor:pointer;color:#65516c}.gift-item-picker>button.selected{border-color:#a473bf;background:#f3e9fb;box-shadow:0 0 0 2px rgba(164,115,191,.12)}.gift-item-picker i{display:grid;place-items:center;height:68px;border-radius:10px;background:#faf5fb;font-style:normal;font-size:30px}.gift-item-picker img{width:58px;height:58px;object-fit:contain}.gift-item-picker b{display:block;margin-top:5px;font-size:8px}.gift-note{width:100%;display:block}.gift-send-main{width:100%;min-height:42px;margin-top:8px}.gift-send-main:disabled{opacity:.45}.gift-sent-celebration{text-align:center;padding:35px 10px}.gift-sent-celebration>span{font-size:58px}.gift-sent-celebration h3{margin:15px 0 8px}.gift-sent-celebration p{color:#7b687f;font-size:11px;line-height:1.6}.gift-sent-celebration button{border:0;border-radius:999px;background:#765493;color:#fff;padding:11px 18px;font-weight:900;cursor:pointer}

@media(max-width:560px){.growth-keepsake,.gift-keepsake{padding:20px 15px;border-radius:20px}.growth-letter{padding:30px 20px 22px}.growth-letter>p{font-size:13px}.keepsake-envelope{min-height:260px}.gift-item-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.received-gift-card{grid-template-columns:76px 1fr}.received-gift-object{min-height:74px}.received-gift-object img{width:60px;height:60px}.fan-modal-sheet{padding:20px 14px}.topkku-comment-compose{grid-template-columns:1fr}.topkku-comment-compose button{min-height:38px}}


/* maker trends: live / weekly / monthly recognition */
.topkku-maker-trend{margin-top:26px;padding:24px;border-radius:24px;background:linear-gradient(180deg,#fffafd,#f8f4ff);border:1px solid rgba(93,70,115,.1);box-shadow:0 18px 50px rgba(66,48,78,.07)}
.maker-trend-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 10px}.maker-trend-tabs button{border:1px solid rgba(88,66,108,.13);background:#fff;color:#75667d;border-radius:999px;padding:9px 13px;font:900 9px system-ui;cursor:pointer}.maker-trend-tabs button.active{background:linear-gradient(135deg,#eadfff,#ffddec);color:#4d3c59;border-color:#d8c4e6}
.maker-trend-reward{padding:9px 11px;border-radius:12px;background:#fff;border:1px dashed rgba(112,83,129,.16);color:#8d7c94;font-size:8px;line-height:1.5}
.maker-trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.maker-trend-card{position:relative;display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;padding:12px;border-radius:14px;background:#fff;border:1px solid rgba(92,68,115,.1);box-shadow:0 7px 18px rgba(72,53,86,.05)}.maker-trend-card.top-maker{background:linear-gradient(135deg,#fff,#fff6fb 58%,#f3eeff)}
.maker-trend-place{font-size:25px;font-weight:950;color:#b76f98;letter-spacing:-.06em}.maker-trend-copy b,.maker-trend-copy strong,.maker-trend-copy small{display:block}.maker-trend-copy b{color:#4e3d57;font-size:11px}.maker-trend-copy strong{margin-top:3px;color:#7a6880;font-size:8px}.maker-trend-copy small{margin-top:4px;color:#a092a5;font-size:7px;line-height:1.45}.maker-trend-card em{font-style:normal;border-radius:999px;background:#7b5c92;color:#fff;padding:6px 8px;font-size:8px;font-weight:950;white-space:nowrap}
@media(max-width:680px){.topkku-maker-trend{padding:17px 13px}.maker-trend-grid{grid-template-columns:1fr}.maker-trend-card{grid-template-columns:40px 1fr auto}}
