/* Crystal Account: extends the sanctuary palette, scoped to account components. */
.ca-bar{position:relative;z-index:35;display:flex;align-items:center;justify-content:flex-end;gap:12px;width:min(1440px,calc(100% - 32px));margin:12px auto;flex-wrap:wrap;color:#d5e5ef;font:14px/1.6 'Noto Sans TC','CardHuninn',sans-serif}.ca-bar [hidden],.ca-surface [hidden]{display:none!important}.ca-button,.ca-surface button,.ca-surface a.ca-button{font:inherit;color:#e2eff6;background:linear-gradient(135deg,rgba(36,66,85,.9),rgba(15,32,49,.94));border:1px solid #456070;border-radius:12px;min-height:44px;padding:10px 16px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;line-height:1.4;white-space:normal;max-width:100%;box-sizing:border-box;transition:border-color .18s,background .18s,transform .18s}.ca-button:hover,.ca-surface button:hover{border-color:#b8a877;background-color:#25435b;transform:translateY(-1px)}.ca-button:focus-visible,.ca-surface :focus-visible{outline:2px solid #a8e2f7;outline-offset:3px}.ca-surface button:disabled{opacity:.5;cursor:wait;transform:none}.ca-primary{border-color:#ad985c!important;color:#f6e9bd!important;background:linear-gradient(135deg,#41463b,#202d37)!important}.ca-danger{color:#f5b5b5!important}.ca-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover}.ca-account-label{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ca-menu{position:absolute;right:0;top:calc(100% + 8px);width:min(280px,calc(100vw - 32px));padding:10px;background:#101e2df5;border:1px solid #526478;border-radius:18px;box-shadow:0 16px 50px #0008;backdrop-filter:blur(18px);display:grid;gap:4px}.ca-menu a,.ca-menu button{justify-content:flex-start;background:transparent;border-color:transparent;text-align:left}.ca-surface{color:#e0eaf3;font:15px/1.7 'Noto Sans TC','CardHuninn',sans-serif;box-sizing:border-box}.ca-surface *{box-sizing:border-box}.ca-surface h2,.ca-surface h3{color:#ede2c8;line-height:1.5;overflow-wrap:anywhere}.ca-surface h2{font-size:1.4rem;margin:0}.ca-surface h3{font-size:1.05rem;margin:8px 0}.ca-surface p{overflow-wrap:anywhere}.ca-dialog{width:min(640px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 32px);max-height:calc(100svh - 32px);padding:24px;border:1px solid #64707b;border-radius:24px;background:radial-gradient(ellipse at 0 0,#29455788,transparent 70%),#0e1a29;box-shadow:0 24px 100px #0009;overflow:auto;overscroll-behavior:contain}.ca-dialog::backdrop{background:#030b16bc;backdrop-filter:blur(6px)}.ca-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.ca-top>button{flex:none}.ca-eyebrow{letter-spacing:.15em;color:#b8cad6;font-size:11px;margin:0 0 6px}.ca-note{color:#9eb3c7;font-size:13px;margin:8px 0 16px}.ca-status{color:#acdadd;min-height:1.7em;overflow-wrap:anywhere}.ca-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}.ca-surface input:not([type=checkbox]),.ca-surface select,.ca-surface textarea{display:block;width:100%;min-width:0;padding:11px 12px;background:#0c1726;border:1px solid #425268;border-radius:10px;color:#e4edf5;font:inherit;min-height:44px;max-width:100%}.ca-surface label{display:block;margin:12px 0;color:#c3d0dc}.ca-surface input[type=checkbox]{width:20px;height:20px;vertical-align:middle;accent-color:#8bcacf;margin-right:8px}.ca-surface .ca-check{display:flex;gap:8px;align-items:center}.ca-surface .ca-check input{flex:none}.ca-grid-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.ca-google{min-height:46px;max-width:100%;overflow:hidden;display:flex;justify-content:center;padding:4px 0}.ca-panel{padding:20px;border:1px solid #43566a77;border-radius:18px;background:linear-gradient(135deg,#20364a66,#101c2caa);margin:16px 0}.ca-page{max-width:1260px;margin:0 auto;padding:20px 24px 64px}.ca-page-heading{padding:24px 0 12px}.ca-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid #52647866;padding-bottom:16px;margin-bottom:20px}.ca-tabs [aria-current=page]{border-color:#b6a069;background:#33413f;color:#f0e0b9}.ca-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ca-card{border:1px solid #3e526b;border-radius:20px;overflow:hidden;background:#111f30;min-width:0}.ca-cover{display:flex;width:100%;aspect-ratio:4/5;max-height:330px;align-items:center;justify-content:center;background:radial-gradient(circle,#243e52,#0b1523);color:#b7d8e2;text-decoration:none;font-size:34px;overflow:hidden}.ca-cover img{width:100%;height:100%;object-fit:contain}.ca-card-content{padding:16px}.ca-badge{display:inline-block;border:1px solid #4c6676;border-radius:100px;padding:2px 9px;font-size:12px;color:#b8d7df;margin:0 6px 6px 0}.ca-card .ca-actions{gap:8px}.ca-card button,.ca-card a.ca-button{font-size:13px;padding:9px 12px;min-height:42px}.ca-pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin:24px 0}.ca-empty{padding:40px 20px;text-align:center;border:1px dashed #567184;border-radius:20px;color:#b7cadc;grid-column:1/-1}.ca-cloud{margin:12px 0;padding:14px;border:1px solid #58778566;background:#14273890;border-radius:15px}.ca-cloud .ca-actions{margin:8px 0 0}.ca-cloud button{padding:8px 10px;font-size:12px}.ca-cloud p{margin:0}.ca-cloud select{font-size:13px}.ca-toast{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);padding:14px 20px;z-index:100000;background:#172e40;border:1px solid #6a93a2;border-radius:14px;box-shadow:0 10px 40px #0008;color:#e7f5fa;overflow-wrap:anywhere}.ca-preview{max-width:100%;max-height:60dvh;object-fit:contain;display:block;margin:auto}.ca-account-code{font:12px monospace;overflow-wrap:anywhere;user-select:all}.ca-dialog form{min-width:0}.ca-surface [role=status]:empty{min-height:0;margin:0}.ca-legacy-note{border-left:2px solid #c5ab73;padding-left:14px}.ca-body{background:#091221;margin:0;color:#d6e5f1;font-family:'Noto Sans TC','CardHuninn',sans-serif}.ca-body .site-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;gap:14px;flex-wrap:wrap;max-width:1260px;margin:auto}.ca-body .site-header a{color:#c8dce9;text-decoration:none}.ca-body .site-header nav{display:flex;gap:20px}.ca-body footer{text-align:center;padding:30px 20px;color:#8aa3b8;border-top:1px solid #33485b}.ca-body footer a{color:#b9d9e7;display:inline-block;margin:8px 14px}.ca-body footer h2{font-size:16px}.ca-body .ca-body .site-header .brand{display:flex;gap:10px;align-items:center;color:#a4e1e9;font:24px/1.1 Georgia,serif;letter-spacing:2px;text-decoration:none}.ca-body .ca-body .site-header .brand small{display:block;font:8px/1.4 CardHuninn,sans-serif;letter-spacing:4px;color:#ddc18a}.ca-body .ca-language{max-width:150px}.ca-surface .ca-favorite[aria-pressed=true]{color:#efd48d;border-color:#ac9259}.ca-dialog[open]{animation:ca-enter .18s ease-out}@keyframes ca-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@media(max-width:900px){.ca-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.ca-page{padding:12px 14px 48px}.ca-dialog{padding:18px;border-radius:20px}.ca-grid{grid-template-columns:minmax(0,1fr);gap:16px}.ca-grid-fields{grid-template-columns:minmax(0,1fr)}.ca-page-heading{padding-top:8px}.ca-tabs{gap:8px}.ca-tabs a{flex:1 1 42%;padding:10px 8px;font-size:13px}.ca-bar{width:calc(100% - 28px)}.ca-panel{padding:16px}.ca-cover{max-height:400px}.ca-body .site-header{padding:18px 14px}.ca-dialog .ca-actions>*{flex:1 1 auto}.ca-top{gap:10px}.ca-account-label{max-width:145px}}@media(prefers-reduced-motion:reduce){.ca-dialog[open]{animation:none}.ca-button,.ca-surface button{transition:none;transform:none!important}}

.ca-enabled .submission-password-fields{display:none!important}

.main-navigation>.ca-bar{width:auto;margin:0 0 0 4px;flex:0 0 auto;min-width:0}.main-navigation .ca-account-label{max-width:135px}.main-navigation .ca-button{font-size:13px;padding:8px 12px;min-height:40px}.main-navigation .ca-menu .ca-button{min-height:44px}
.main-navigation>.ca-bar{position:static}.main-navigation .ca-menu{right:12px;max-height:calc(100dvh - 170px);overflow:auto}

/* v34: inset account tools to the editor grid; links and buttons share a size. */
.controls>.ca-cloud{margin:16px 20px 12px;padding:14px 16px;border-radius:14px;min-width:0}
.ca-cloud-heading{display:flex;align-items:baseline;justify-content:space-between;gap:6px 12px;flex-wrap:wrap;margin-bottom:12px}
.ca-cloud-heading .ca-eyebrow{font-size:10px;letter-spacing:.14em;line-height:1.5}
.ca-cloud-heading .ca-status{font-size:12px;line-height:1.5;min-height:18px;margin:0}
.controls .ca-cloud>label{margin:0 0 12px;font-family:'CardHuninn','Noto Sans TC',sans-serif;font-size:12px;line-height:1.5;letter-spacing:0}
.controls .ca-cloud select{font-family:'CardHuninn','Noto Sans TC',sans-serif;margin-top:6px;min-height:44px;padding:9px 10px;font-size:13px}
.controls .ca-cloud .ca-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
.controls .ca-cloud .ca-actions>.ca-button{width:100%;min-width:0;min-height:44px;padding:9px 6px;margin:0;font:12px/1.45 'CardHuninn','Noto Sans TC',sans-serif;letter-spacing:0;border-radius:10px;overflow-wrap:anywhere;text-align:center}
.controls>.community-nav{margin:0 20px 4px;padding:12px 0;gap:8px}
.controls>.community-nav>.community-button{flex:1 1 120px;min-width:0;min-height:44px;margin:0;padding:9px 10px;font-size:12px;border-radius:10px}
.ca-button.ca-favorite{font:13px/1.4 'CardHuninn','Noto Sans TC',sans-serif;letter-spacing:0;min-height:44px;min-width:0;padding:9px 12px;vertical-align:middle;touch-action:manipulation}
.ca-button.ca-favorite[aria-pressed=true]{color:#f4d59a;border-color:#ac9259;background:linear-gradient(135deg,#3b382b,#252d2d)}
.ca-button.ca-favorite:disabled{opacity:.55;cursor:wait;transform:none}
.outfit-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:0 12px 12px;align-items:stretch}
.outfit-actions>.community-favorite,.outfit-actions>.like-button{margin:0;width:100%;min-width:0;min-height:44px;padding:8px;font-size:12px;line-height:1.4;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;white-space:normal}
.outfit-actions>.like-button{min-width:48px}
.crystal-card-info>.ca-favorite{display:flex;min-height:44px;width:100%;margin:10px 0 0}
.crystal-detail-actions>.ca-favorite,.share-favorite>.ca-favorite{margin:0;align-self:stretch}
.ca-body .site-header>nav{flex-wrap:wrap;gap:12px 20px;align-items:center}
.site-header>nav>.friend-link{white-space:nowrap}
.main-navigation>.nav-menu{flex-wrap:wrap;justify-content:center;min-width:0;gap:2px}
.main-navigation~.container{margin-top:calc(var(--crystal-nav-height,66px) + 14px)}
.main-navigation>.nav-menu .nav-link{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:40px;padding:6px 12px;white-space:nowrap;box-sizing:border-box}
.main-navigation .ca-bar .ca-menu{right:16px}

@media(max-width:1100px){.main-navigation{flex-wrap:wrap;gap:6px 10px;padding:8px 12px}}
@media(max-width:900px){
 .main-navigation>.nav-menu{flex:0 0 100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}
 .main-navigation>.nav-menu .nav-link{display:flex;padding:6px 3px;min-height:40px;font-size:12px;letter-spacing:0;white-space:normal;text-align:center;line-height:1.35}
 .main-navigation>.language-switch{margin:0}.main-navigation>#motion-toggle{margin:0}
 .main-navigation>.ca-bar{margin-left:auto}.main-navigation .ca-account-label{max-width:115px}
 .main-navigation .ca-button{min-height:40px;padding:7px 10px;font-size:12px}
 .main-navigation .ca-avatar{width:24px;height:24px}
}
@media(max-width:600px){
 .controls>.ca-cloud{margin:14px 15px 10px;padding:12px}
 .controls>.community-nav{margin:0 15px 2px}
 .ca-cloud-heading{gap:4px 8px;margin-bottom:10px}
 .ca-cloud-heading .ca-status{font-size:11px}
 .outfit-actions{gap:6px;padding:0 9px 10px}
 .outfit-actions>.community-favorite,.outfit-actions>.like-button{padding:8px 5px;min-height:44px}
 .main-navigation{gap:5px 6px;padding:6px 8px}
 .main-navigation .ca-account-label{max-width:100px}
 .site-header>nav{flex-wrap:wrap;gap:12px 18px}
}

/* v35: Crystal Account entry.
   Glamours / account pages: last item of the header link menu, styled as a crystal pill.
   Share page: top-right of the share header. Editor: unchanged (main navigation). */
.ca-gem{color:#8fe3ee;font-size:.95em;line-height:1;transform:translateY(-.5px)}
.ca-label-short{display:none}
.ca-header{position:relative;z-index:40}
.ca-header nav a{white-space:nowrap}

.ca-nav{align-items:center;flex-wrap:wrap}
.ca-bar.ca-in-nav{position:relative;width:auto;margin:0 0 0 2px;padding:0 0 0 22px;flex:0 0 auto;min-width:0;font:inherit;color:inherit;gap:0}
.ca-bar.ca-in-nav::before{content:'';position:absolute;left:0;top:50%;width:1px;height:20px;transform:translateY(-50%);background:linear-gradient(#ffffff00,#c9b27899,#ffffff00)}
.ca-in-nav>.ca-button{min-height:36px;padding:6px 14px 6px 12px;border-radius:999px;font:inherit;letter-spacing:.04em;color:#f3e6c2;border:1px solid #c9b2786b;background:linear-gradient(135deg,#7df9ff1a,#c9b2781f) ,#0b1626cc;box-shadow:inset 0 1px 0 #ffffff14,0 0 0 0 #7df9ff00;gap:7px;transition:border-color .2s,box-shadow .2s,background .2s,transform .2s}
.ca-in-nav>.ca-button:hover,.ca-in-nav>.ca-button[aria-expanded=true]{border-color:#e5cf93;background:linear-gradient(135deg,#7df9ff2b,#c9b27833),#0f1d31;box-shadow:inset 0 1px 0 #ffffff1f,0 0 18px #7df9ff26;transform:translateY(-1px)}
.ca-in-nav>.ca-button:hover .ca-gem{color:#d9fbff;text-shadow:0 0 8px #7df9ffaa}
.ca-in-nav .ca-account-label{max-width:150px}
.ca-in-nav .ca-avatar{width:22px;height:22px;margin-left:-4px;box-shadow:0 0 0 1px #c9b27880}
.ca-in-nav>.ca-button>span:last-child:not(.ca-account-label){opacity:.7;font-size:.9em}

.ca-in-header .ca-button{min-height:40px;padding:7px 14px;font-size:13px;border-radius:999px;gap:7px}
.ca-in-header .ca-account-label{max-width:140px}
.ca-in-header .ca-avatar{width:24px;height:24px}
.share-header .ca-in-header span{font:inherit;letter-spacing:normal}
.share-header>nav{margin-left:auto}

.main-navigation .ca-menu{right:12px}
.main-navigation .ca-menu .ca-button{min-height:40px!important}
@media(max-width:1100px){.main-navigation{flex-wrap:wrap;gap:6px 10px;padding:8px 12px}}
@media(max-width:900px){
 .main-navigation>.nav-menu{flex:0 0 100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}
 .main-navigation>.nav-menu .nav-link{display:flex;padding:6px 3px;min-height:40px;font-size:12px;letter-spacing:0;white-space:normal;text-align:center;line-height:1.35}
 .main-navigation>.language-switch{margin:0}.main-navigation>#motion-toggle{margin:0}
 .main-navigation>.ca-bar{margin-left:auto}.main-navigation .ca-account-label{max-width:115px}
 .main-navigation .ca-button{min-height:40px;padding:7px 10px;font-size:12px}
 .main-navigation .ca-avatar{width:24px;height:24px}
}
@media(max-width:600px){
 .controls>.ca-cloud{margin:14px 15px 10px;padding:12px}
 .controls>.community-nav{margin:0 15px 2px}
 .ca-cloud-heading{gap:4px 8px;margin-bottom:10px}
 .ca-cloud-heading .ca-status{font-size:11px}
 .outfit-actions{gap:6px;padding:0 9px 10px}
 .outfit-actions>.community-favorite,.outfit-actions>.like-button{padding:8px 5px;min-height:44px}
 .main-navigation{gap:5px 6px;padding:6px 8px}
 .main-navigation .ca-account-label{max-width:100px}
 .site-header>nav{flex-wrap:wrap;gap:12px 18px}
}

/* v35: Crystal Account entry.
   Glamours / account pages: last item of the header link menu, styled as a crystal pill.
   Share page: top-right of the share header. Editor: unchanged (main navigation). */
.ca-gem{color:#8fe3ee;font-size:.95em;line-height:1;transform:translateY(-.5px)}
.ca-label-short{display:none}
.ca-header{position:relative;z-index:40}
.ca-header nav a{white-space:nowrap}

.ca-nav{align-items:center;flex-wrap:wrap}
.ca-bar.ca-in-nav{position:relative;width:auto;margin:0 0 0 2px;padding:0 0 0 22px;flex:0 0 auto;min-width:0;font:inherit;color:inherit;gap:0}
.ca-bar.ca-in-nav::before{content:'';position:absolute;left:0;top:50%;width:1px;height:20px;transform:translateY(-50%);background:linear-gradient(#ffffff00,#c9b27899,#ffffff00)}
.ca-in-nav>.ca-button{min-height:36px;padding:6px 14px 6px 12px;border-radius:999px;font:inherit;letter-spacing:.04em;color:#f3e6c2;border:1px solid #c9b2786b;background:linear-gradient(135deg,#7df9ff1a,#c9b2781f) ,#0b1626cc;box-shadow:inset 0 1px 0 #ffffff14,0 0 0 0 #7df9ff00;gap:7px;transition:border-color .2s,box-shadow .2s,background .2s,transform .2s}
.ca-in-nav>.ca-button:hover,.ca-in-nav>.ca-button[aria-expanded=true]{border-color:#e5cf93;background:linear-gradient(135deg,#7df9ff2b,#c9b27833),#0f1d31;box-shadow:inset 0 1px 0 #ffffff1f,0 0 18px #7df9ff26;transform:translateY(-1px)}
.ca-in-nav>.ca-button:hover .ca-gem{color:#d9fbff;text-shadow:0 0 8px #7df9ffaa}
.ca-in-nav .ca-account-label{max-width:150px}
.ca-in-nav .ca-avatar{width:22px;height:22px;margin-left:-4px;box-shadow:0 0 0 1px #c9b27880}
.ca-in-nav>.ca-button>span:last-child:not(.ca-account-label){opacity:.7;font-size:.9em}

.ca-in-header .ca-button{min-height:40px;padding:7px 14px;font-size:13px;border-radius:999px;gap:7px}
.ca-in-header .ca-account-label{max-width:140px}
.ca-in-header .ca-avatar{width:24px;height:24px}
.share-header .ca-in-header span{font:inherit;letter-spacing:normal}
.share-header>nav{margin-left:auto}

/* Dropdown (it is a <nav>, so neutralise the page's generic nav rules) */
.ca-header .ca-bar nav.ca-menu{display:grid!important;gap:2px!important;order:0!important;width:240px!important;justify-content:stretch!important;padding:8px!important;border-top:1px solid #c9b27855!important;font-size:14px!important}
.ca-header .ca-bar nav.ca-menu[hidden]{display:none!important}
.ca-in-nav .ca-menu,.ca-in-header .ca-menu,.main-navigation .ca-bar .ca-menu{top:calc(100% + 12px);right:0;z-index:60;width:240px;padding:8px;border-radius:16px;border-color:#c9b27855;background:#0d1a2bf7;font:14px/1.5 'Noto Sans TC','CardHuninn',sans-serif;letter-spacing:0}
.ca-in-nav .ca-menu::before,.ca-in-header .ca-menu::before,.main-navigation .ca-bar .ca-menu::before{content:'';position:absolute;top:-6px;right:28px;width:10px;height:10px;transform:rotate(45deg);background:#0d1a2b;border-left:1px solid #c9b27855;border-top:1px solid #c9b27855}
.ca-in-nav .ca-menu .ca-button,.ca-in-header .ca-menu .ca-button,.main-navigation .ca-bar .ca-menu .ca-button{justify-content:flex-start;text-align:left;background:transparent;border-color:transparent;min-height:40px;padding:8px 12px;font-size:14px;border-radius:10px;color:#dce9f2;box-shadow:none}
.ca-in-nav .ca-menu .ca-button:hover,.ca-in-nav .ca-menu .ca-button:focus-visible,.ca-in-header .ca-menu .ca-button:hover,.main-navigation .ca-bar .ca-menu .ca-button:hover{background:#7df9ff14;border-color:transparent;color:#f3e6c2;transform:none}
.ca-in-nav .ca-menu>button:last-child,.ca-in-header .ca-menu>button:last-child,.main-navigation .ca-bar .ca-menu>button:last-child{margin-top:4px;border-top:1px solid #ffffff14;border-radius:0 0 10px 10px;color:#b9c8d4}

@media(max-width:1100px){
 .site-header.ca-header{flex-wrap:wrap;row-gap:12px}
 .site-header.ca-header>nav.ca-nav{order:3;width:100%;justify-content:center;border-top:1px solid #ffffff1a;padding-top:12px}
 .site-header.ca-header>#gallery-motion-toggle,.site-header.ca-header>.ca-language{margin-left:auto}
}
@media(max-width:700px){
 .site-header.ca-header>nav.ca-nav{gap:10px 14px}
 .ca-nav{justify-content:center;row-gap:10px}
 .ca-bar.ca-in-nav{padding-left:0;margin-left:2px}
 .ca-bar.ca-in-nav::before{display:none}
 .ca-in-nav>.ca-button{min-height:32px;padding:4px 11px 4px 10px}
 .ca-in-nav .ca-account-label{max-width:110px}
 .ca-in-header .ca-button{min-height:36px;padding:5px 10px;font-size:12px}
 .ca-in-header .ca-label-long,.ca-in-nav .ca-label-long{display:none}
 .ca-in-header .ca-label-short,.ca-in-nav .ca-label-short{display:inline}
}
@media(max-width:620px){
 .share-header{flex-direction:row!important;flex-wrap:wrap;align-items:center!important}
 .share-header>a{flex:1 1 0;min-width:0}
 .share-header>nav{order:10;width:100%;margin-left:0}
}

/* v41: one brand mark for every page (the Crystal Glamours style). */
.site-brand{display:inline-flex;gap:10px;align-items:center;color:#a4e1e9;font:22px/1.1 Georgia,serif;letter-spacing:2px;text-decoration:none;white-space:nowrap;margin:0 18px 0 22px;flex:0 0 auto}
.site-brand small{display:block;font:8px/1.4 CardHuninn,sans-serif;letter-spacing:4px;color:#ddc18a}
.site-brand:hover{color:#d9fbff}
.main-navigation>.site-brand+.nav-menu{margin-right:auto}
.nav-link[aria-current=page]{color:#ddc18a!important}
@media(max-width:1180px){.main-navigation>.site-brand{display:none}}
@media(max-width:700px){.ca-body .site-header .brand{font-size:19px}}
@media(max-width:900px){.main-navigation>.nav-menu{grid-template-columns:repeat(5,minmax(0,1fr))!important}}

/* v41: phones get a fixed download / publish action instead of scrolling to tab 04. */
.mobile-action-bar{display:none}
@media(max-width:900px){
 .mobile-action-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:7000;justify-content:center;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(to top,#050810f5 62%,#05081000);pointer-events:none}
 .mobile-action-bar .download-btn{pointer-events:auto;width:min(520px,100%);margin:0;min-height:48px;font-size:15px;box-shadow:0 8px 28px #0009}
 body:has(.mobile-action-bar){padding-bottom:86px}
 body:has(.mobile-action-bar) .upload-progress:not(.is-inline),body:has(.mobile-action-bar) .ca-toast,body:has(.mobile-action-bar) #upgrade-toast{bottom:calc(92px + env(safe-area-inset-bottom))!important}
 body.azem-intro-active .mobile-action-bar{display:none}
}

/* v41: account work cards — frosted cover fill and a compact action row. */
.ca-cover{position:relative;isolation:isolate}
.ca-cover.has-img::before{content:'';position:absolute;inset:-24px;z-index:-1;background:var(--ca-cover-img) center/cover no-repeat;filter:blur(20px) saturate(1.15) brightness(.6);transform:scale(1.12)}
.ca-cover.has-img::after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at center,#0b152300 40%,#0b1523a0 100%)}
.ca-cover img{position:relative;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 6px 18px #0008)}
.ca-card .ca-actions{position:relative}
.ca-more{position:relative}
.ca-more>summary{list-style:none;min-width:42px;font-size:18px!important;letter-spacing:1px;padding:6px 12px!important}
.ca-more>summary::-webkit-details-marker{display:none}
.ca-more[open]>summary{border-color:#b8a877}
.ca-more-menu{position:absolute;left:0;bottom:calc(100% + 8px);z-index:20;display:grid;gap:4px;min-width:170px;padding:8px;border:1px solid #c9b27855;border-radius:14px;background:#0d1a2bf7;box-shadow:0 14px 40px #000a}
.ca-more-menu>*{justify-content:flex-start!important;width:100%;background:transparent!important;border-color:transparent!important}
.ca-more-menu>*:hover{background:#7df9ff14!important}
.publish-retry{display:flex!important;margin:10px auto 0;border-color:#c9b27880!important;color:#f3e6c2!important;white-space:normal!important;max-width:100%;text-align:center}

/* ===== v44 ===== */
/* Hashtag chips (editor picker, gallery filter, cards, detail, share page, favorites) */
.tag-chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:4px 12px;border:1px solid #7ecce240;border-radius:999px;background:#10233599;color:#cfe6ee;font:12px/1.4 'Noto Sans TC','CardHuninn',sans-serif;letter-spacing:.02em;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .16s,border-color .16s,color .16s,transform .16s}
.tag-chip:hover{border-color:#c9b278aa;color:#f3e6c2;transform:translateY(-1px)}
.tag-chip.is-on,.tag-chip[aria-pressed=true]{border-color:#e5cf93;background:linear-gradient(135deg,#7df9ff22,#c9b27833),#132538;color:#f6e9bd;box-shadow:0 0 12px #c9b27833}
.tag-chip:focus-visible{outline:2px solid #a8e2f7;outline-offset:2px}
.tag-chip .tag-x{opacity:.65;font-size:13px}
.card-tags{margin:6px 0 18px;padding:14px;border:1px solid #58778566;border-radius:14px;background:#14273870}
.card-tags .tag-title{margin:0 0 10px;color:#ede2c8;font-weight:600}
.card-tags .tag-list{display:flex;flex-wrap:wrap;gap:8px}
.card-tags .tag-input{display:flex;gap:8px;margin-top:12px}
.card-tags .tag-input input{flex:1;min-width:0}
.card-tags .tag-status{margin:6px 0 0;color:#f2b8a8;font-size:12px;min-height:0}
.card-tags .tag-status:empty{display:none}
.outfit-tags{display:flex;flex-wrap:wrap;gap:6px;padding:0 15px 12px}
.outfit-tags .tag-chip{min-height:26px;padding:2px 10px;font-size:11px}
.detail-tags{padding:4px 0 8px}
.share-tags{padding:6px 0 0;justify-content:center}
.tag-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid #ffffff12}
.tag-filter-label{color:#9eb3c7;font-size:12px;margin-right:4px}
.ca-tag-filter{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px}

/* B1 glamour cards: lift, crystal sheen and an equipment peek on hover */
.outfit{position:relative;transition:transform .22s cubic-bezier(.2,.7,.3,1),border-color .22s,box-shadow .22s}
.outfit:hover{transform:translateY(-5px);border-color:#9ccfd9;box-shadow:0 14px 34px #0009,0 0 0 1px #7df9ff22,0 0 24px #7df9ff1f}
.outfit .photo::after{content:'';position:absolute;inset:-20% -60%;background:linear-gradient(105deg,#fff0 42%,#ffffff2e 50%,#fff0 58%);transform:translateX(-70%);pointer-events:none}
.outfit:hover .photo::after{animation:crystal-sheen .9s ease-out}
@keyframes crystal-sheen{to{transform:translateX(70%)}}
.gear-peek{position:absolute;left:8px;right:8px;bottom:8px;display:flex;justify-content:center;gap:5px;padding:6px;border-radius:12px;background:#06111bcc;backdrop-filter:blur(6px);border:1px solid #ffffff1c;opacity:0;transform:translateY(10px);transition:opacity .2s,transform .2s;pointer-events:none}
.gear-peek img{width:30px;height:30px;border-radius:6px;object-fit:contain;background:#0b1626}
.outfit:hover .gear-peek{opacity:1;transform:none}
@media(hover:none){.gear-peek{display:none}}

/* B3 loading skeletons */
.is-skeleton{pointer-events:none}
.is-skeleton .sk-photo,.is-skeleton .sk-line{position:relative;overflow:hidden;background:#15283b}
.is-skeleton .sk-photo{aspect-ratio:3/4;width:100%}
.crystal-card.is-skeleton .sk-photo{aspect-ratio:16/9;border-radius:8px}
.ca-card.is-skeleton .sk-photo{aspect-ratio:4/5;max-height:330px}
.is-skeleton .sk-line{height:12px;border-radius:6px;margin:14px 15px 0;width:70%}
.is-skeleton .sk-line.short{width:42%;margin-bottom:16px}
.is-skeleton .sk-photo::after,.is-skeleton .sk-line::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fff0,#7df9ff14,#fff0);transform:translateX(-100%);animation:sk-shimmer 1.3s ease-in-out infinite}
@keyframes sk-shimmer{to{transform:translateX(100%)}}

/* F4 account toolbar, F6 notifications */
.ca-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 14px}
.ca-toolbar .ca-search{flex:1 1 240px;min-width:0}
.ca-toolbar .ca-select{flex:0 1 170px;width:auto}
.ca-dot{position:absolute;top:6px;right:6px;width:9px;height:9px;border-radius:50%;background:#ff7a8a;box-shadow:0 0 0 2px #0b1626,0 0 10px #ff7a8acc}
#ca-account-button{position:relative}
.ca-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:8px;padding:0 6px;border-radius:999px;background:#ff7a8a;color:#1a0b10;font-size:11px;font-weight:700}
.ca-notice-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ca-notice{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid #43566a77;border-radius:14px;background:#101c2caa}
.ca-notice.is-new{border-color:#c9b27888;background:linear-gradient(135deg,#c9b2781a,#101c2caa)}
.ca-notice-icon{flex:none;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#1b3044;color:#ff9fb1}
.ca-notice-body{flex:1;min-width:0}
.ca-notice-body a{color:#e0eaf3;text-decoration:none}
.ca-notice-body a:hover{color:#f3e6c2}
.ca-notice-body time{display:block;margin:4px 0 0}
.ca-new{border-color:#c9b278!important;color:#f3e6c2!important}

/* B4 one footer for every page */
footer.gallery-footer{position:relative;text-align:center;padding:48px 20px 40px;margin-top:60px;background:linear-gradient(#050a14d9,#03060df2);border-top:0;color:#8aa3b8}
footer.gallery-footer::before{content:'';position:absolute;left:50%;top:0;width:min(720px,80%);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,#fff0,#c9b27899,#7df9ff99,#c9b27899,#fff0)}
footer.gallery-footer>h2,footer.gallery-footer>h3{margin:0 0 20px!important;font:600 1.1rem/1.4 'Cinzel','Noto Serif TC',serif!important;letter-spacing:.2em!important;color:#a4e1e9!important}
footer.gallery-footer .footer-links-container{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:0 auto 26px;max-width:1000px}
footer.gallery-footer .footer-links-container a{display:inline-flex;align-items:center;gap:9px;margin:0;padding:10px 18px;border:1px solid #ffffff1a;border-radius:999px;background:#ffffff0d;color:#c9d8e4;font:13px/1.4 'Noto Sans TC',sans-serif;text-decoration:none;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s,color .2s}
footer.gallery-footer .footer-links-container a:hover{background:#2b6aff4d;color:#fff;border-color:#7df9ff;transform:translateY(-3px);box-shadow:0 0 15px #7df9ff66}
footer.gallery-footer .footer-links-container .fa-icon{font-size:1.05rem;color:#7df9ff}
footer.gallery-footer p{margin:6px 0;font-size:12px;color:#7893a9}
footer.gallery-footer .producer-credit{margin:0 0 14px;font-size:13px}
footer.gallery-footer .visitor-counter{display:inline-block;margin:6px 0 16px}
@media(max-width:600px){footer.gallery-footer .footer-links-container{flex-direction:row}footer.gallery-footer .footer-links-container a{font-size:12px;padding:9px 14px}}
.fa-icon{display:inline-block;height:1em;width:1em;vertical-align:-.125em;fill:currentColor;overflow:visible;flex-shrink:0}.fa-icon.fa-w-20{width:1.25em}
@media(prefers-reduced-motion:reduce){.outfit,.outfit:hover{transform:none!important}.outfit:hover .photo::after,.is-skeleton .sk-photo::after,.is-skeleton .sk-line::after{animation:none}}
body[data-motion=reduced] .outfit:hover .photo::after{animation:none}

/* ===== v45 ===== */
/* N1 weekly hot strip + shared mini cards (hot strip, similar outfits, card maker hot tab) */
.hot-strip{margin:0 0 18px;padding:16px 16px 12px;border:1px solid #c9b27855;border-radius:18px;background:linear-gradient(135deg,#c9b2781a,#7df9ff0d 60%,#0b162600),#0d1a29cc}
.hot-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin:0 0 12px}
.hot-head h2{margin:0;font-size:18px;color:#f3e6c2;letter-spacing:.04em}
.hot-head h2::before{content:'✦ ';color:#e5cf93}
.hot-hint{color:#9eb3c7;font-size:12px}
.hot-row,.similar-row{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 2px 10px;scrollbar-width:thin}
.mini-outfit{position:relative;flex:0 0 140px;display:flex;flex-direction:column;padding:0;border:1px solid #58778566;border-radius:14px;overflow:hidden;background:#0b1626;color:#e0eaf3;text-align:left;cursor:pointer;scroll-snap-align:start;transition:transform .18s,border-color .18s,box-shadow .18s}
.mini-outfit:hover{transform:translateY(-3px);border-color:#9ccfd9;box-shadow:0 10px 24px #0008,0 0 16px #7df9ff1f}
.mini-outfit:focus-visible{outline:2px solid #a8e2f7;outline-offset:2px}
.mini-outfit img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;background:#15283b}
.mini-copy{display:grid;gap:2px;padding:8px 10px 10px;min-width:0}
.mini-copy strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini-copy small{color:#9eb3c7;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hot-rank{position:absolute;top:8px;left:8px;z-index:1;min-width:26px;height:26px;display:grid;place-items:center;padding:0 6px;border-radius:999px;background:#06111bdd;border:1px solid #e5cf93aa;color:#f6e9bd;font-weight:700;font-size:12px}
.mini-outfit:nth-child(-n+3) .hot-rank{background:linear-gradient(135deg,#e5cf93,#b8955a);color:#1a1408;border-color:#f6e9bd}
/* N2 similar outfits in the detail dialog / share page */
.detail-similar{margin-top:22px;padding-top:16px;border-top:1px solid #ffffff14}
.detail-similar h3{margin:0 0 10px;font-size:15px;color:#ede2c8}
.detail-similar .mini-outfit{flex-basis:118px}
.share-similar{max-width:960px;margin:28px auto 0;padding:0 16px}
.share-similar h2{font-size:18px;color:#ede2c8;margin:0 0 12px;text-align:center}
.share-similar .similar-row{justify-content:safe center}
a.mini-outfit{text-decoration:none}
/* N5 creator link + profile banner */
.creator-link{display:inline-block;margin:2px 0 8px;padding:0;border:0;background:none;color:#9ccfd9;font:inherit;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.creator-link:hover{color:#f3e6c2}
.creator-profile{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:18px;margin:0 0 18px;padding:16px;border:1px solid #9ccfd955;border-radius:18px;background:linear-gradient(135deg,#7df9ff12,#c9b27812),#0d1a29dd;animation:creator-in .35s ease-out}
@keyframes creator-in{from{opacity:0;transform:translateY(8px)}}
.creator-cover{width:120px;aspect-ratio:3/4;border-radius:14px;overflow:hidden;background:#15283b;border:1px solid #ffffff1c}
.creator-cover img{width:100%;height:100%;object-fit:cover}
.creator-info h2{margin:4px 0 2px;font-size:24px;color:#f6e9bd}
.creator-info p{margin:2px 0;color:#c4d4e2}
.creator-info .creator-where,.creator-info .creator-since{color:#9eb3c7;font-size:13px}
.creator-info .outfit-tags{padding:8px 0 0}
.creator-back{align-self:start;padding:8px 14px;border:1px solid #58778599;border-radius:999px;background:#10233599;color:#cfe6ee;cursor:pointer}
.creator-back:hover{border-color:#c9b278aa;color:#f3e6c2}
@media(max-width:640px){.creator-profile{grid-template-columns:84px 1fr;gap:12px}.creator-cover{width:84px}.creator-back{grid-column:1/-1;justify-self:start}.creator-info h2{font-size:20px}.mini-outfit{flex-basis:118px}}
/* N3 tag suggestions in the editor */
.card-tags .tag-suggest{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 0}
.card-tags .tag-suggest:empty{display:none}
.card-tags .tag-suggest-label{color:#9eb3c7;font-size:12px;margin-right:2px}
.tag-chip.is-suggest{border-style:dashed;border-color:#e5cf9388;color:#f3e6c2;background:#c9b27814}
/* N6 favorite folders, M1 tag admin */
.ca-folder-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px}
.ca-folder-bar .tag-chip .ca-count{margin-left:4px;height:18px;min-width:18px;background:#2a4258;color:#cfe6ee}
.ca-folder-menu{display:grid;gap:6px;min-width:200px}
.ca-folder-menu label{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer}
.ca-folder-menu label:hover{background:#ffffff0d}
.ca-tagadmin{display:grid;gap:8px}
.ca-tagadmin-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto minmax(0,150px);align-items:center;gap:10px;padding:10px 14px;border:1px solid #43566a77;border-radius:12px;background:#101c2caa}
.ca-tagadmin-row.is-hidden{opacity:.55}
.ca-tagadmin-row .ca-tagname{font-weight:600;color:#e0eaf3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ca-tagadmin-row .ca-tagcount{color:#9eb3c7;font-size:12px}
.ca-tagadmin-row input{min-width:0;width:100%}
@media(max-width:640px){.ca-tagadmin-row{grid-template-columns:1fr auto;}.ca-tagadmin-row input{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.mini-outfit,.creator-profile{transition:none;animation:none}.mini-outfit:hover{transform:none}}
body[data-motion=reduced] .mini-outfit:hover{transform:none}
.ca-tagname .ca-badge{margin-left:8px;font-weight:400}
/* S1 tag landing intro (glamours-tag.php) */
.tag-landing{margin:0 0 16px;padding:14px 18px;border:1px solid #c9b27855;border-radius:16px;background:linear-gradient(135deg,#c9b2781a,#7df9ff0a),#0d1a29cc}
.tag-landing h2{margin:0 0 4px;font-size:26px;color:#f6e9bd;letter-spacing:.03em}
.tag-landing p{margin:0;color:#c4d4e2}
.tag-landing ul{margin:10px 0 0;padding-left:18px;columns:2}
.tag-landing a{color:#9ccfd9}

/* ===== v46 ===== */
/* L6 drafts dialog opened from the preview toolbar */
.project-dialog{width:min(560px,calc(100vw - 32px));max-height:min(86vh,760px);overflow:auto;padding:20px 22px!important;box-sizing:border-box}
.project-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
.project-dialog-top h2{margin:0;font-size:20px;color:#f3e6c2}
#project-storage.in-dialog{margin:0;padding:0;border:0;background:none;box-shadow:none}
#project-storage.in-dialog>summary{display:none}
.upgrade-preview-bar .project-open{border-color:#c9b27888!important;color:#f3e6c2!important}
@media(max-width:600px){.upgrade-preview-bar>span:first-of-type{display:none}.upgrade-preview-bar{gap:6px}.upgrade-preview-bar button{padding:7px 8px}}
/* L7: glamour info position now lives in step 03 */
#editor-look #glamour-overlay-controls{margin-top:14px}
/* public hashtags at the end of step 01 */
#editor-data>.card-tags{margin-top:18px}
/* v46 admin tag editing */
.detail-admin-tags,.share-admin-tags{margin:2px 0 10px}
.share-admin-tags{display:flex;justify-content:center}
.ca-admin-tags{border-style:dashed!important;border-color:#e5cf9399!important;color:#f3e6c2!important}
.public-total{color:#e5cf93;font-size:inherit;margin-left:2px}

/* ===== v48 like button: bigger heart + label + pop ===== */
.like-button{gap:6px;font-weight:600}
.like-button .like-heart{position:relative;display:inline-block;font-size:20px;line-height:1;color:#ff8fa3;transition:transform .18s ease}
.like-button:hover .like-heart{transform:scale(1.12)}
.like-button[aria-pressed=true] .like-heart{color:#ff5c7a;text-shadow:0 0 10px rgba(255,92,122,.55)}
.like-button .like-label{letter-spacing:.04em}
.like-button .like-count{font-variant-numeric:tabular-nums;opacity:.8;font-weight:500}
.like-button .like-count::before{content:'· '}
.like-button.like-pop .like-heart{animation:like-pop .6s cubic-bezier(.2,1.6,.4,1)}
.like-button.like-pop .like-heart::after{content:'';position:absolute;left:50%;top:50%;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;border:2px solid #ff5c7a;opacity:0;animation:like-ring .6s ease-out}
@keyframes like-pop{0%{transform:scale(1)}30%{transform:scale(1.55)}60%{transform:scale(.9)}100%{transform:scale(1)}}
@keyframes like-ring{0%{opacity:.8;transform:scale(.3)}100%{opacity:0;transform:scale(1.4)}}
@media(prefers-reduced-motion:reduce){.like-button.like-pop .like-heart,.like-button.like-pop .like-heart::after{animation:none}}
body[data-motion=reduced] .like-button.like-pop .like-heart,body[data-motion=reduced] .like-button.like-pop .like-heart::after{animation:none}

/* ===== v49 motion & interface ===== */
/* D5: soft cross-fade between pages (Chrome/Edge 126+, Safari 18.2+); a dark root avoids white flashes everywhere. */
@view-transition{navigation:auto}
html{background-color:#060b14}
::view-transition-old(root),::view-transition-new(root){animation-duration:.26s;animation-timing-function:ease}
/* A2: thumbnail → detail photo */
::view-transition-group(glam-hero){animation-duration:.42s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}
::view-transition-old(glam-hero),::view-transition-new(glam-hero){height:100%;object-fit:contain;animation-duration:.42s}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}

/* D4: compact frosted header after scrolling */
@media(min-width:761px){.site-header{position:sticky;top:0;z-index:60;transition:padding .25s ease,background-color .25s ease,box-shadow .25s ease}}
@media(min-width:761px){body.is-scrolled .site-header{padding-top:8px!important;padding-bottom:8px!important;background:rgba(6,12,22,.84);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 0 0 100vmax rgba(6,12,22,.84),0 10px 26px rgba(0,0,0,.35);clip-path:inset(0 -100vmax -40px)}
body.is-scrolled .site-header .brand small{display:none}}
.main-navigation{transition:padding .25s ease,background-color .25s ease,box-shadow .25s ease}
body.is-scrolled .main-navigation{padding-top:6px;padding-bottom:6px;background:rgba(5,8,16,.9);box-shadow:0 10px 26px rgba(0,0,0,.35)}
@media(min-width:761px){html{scroll-padding-top:76px}}

/* D2: blur-up placeholders */
.lq-wrap{isolation:isolate}
.lq-wrap>.lq-blur{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(16px) saturate(1.15);transform:scale(1.12);opacity:.75;z-index:0;pointer-events:none}
.lq-wrap>.lq-main{position:relative;z-index:1}
.lq-main{opacity:0;transition:opacity .5s ease}
.lq-main.is-loaded{opacity:1}
.lq-wrap>:not(.lq-blur):not(.lq-main){z-index:2}

/* A1: holographic foil + tilt */
.holo{--rx:0deg;--ry:0deg;--hx:50%;--hy:50%;--ho:0;position:relative;transform:perspective(1000px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .6s cubic-bezier(.2,.8,.2,1);will-change:transform;touch-action:pan-y}
.holo.is-tilting{transition:transform .08s linear}
.holo::before,.holo::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:5;border-radius:inherit;opacity:var(--ho);transition:opacity .45s ease}
.holo::before{background:repeating-linear-gradient(115deg,rgba(255,0,140,.32) 0%,rgba(255,215,0,.26) 7%,rgba(0,255,210,.28) 14%,rgba(0,150,255,.32) 21%,rgba(190,0,255,.28) 28%,rgba(255,0,140,.32) 35%);background-size:280% 280%;background-position:var(--hx) var(--hy);mix-blend-mode:color-dodge;filter:brightness(.85) contrast(1.1)}
.holo::after{background:radial-gradient(circle at var(--hx) var(--hy),rgba(255,255,255,.5) 0%,rgba(255,255,255,.12) 22%,rgba(255,255,255,0) 48%);mix-blend-mode:overlay}
.holo-open{border-color:#b9a6ff88!important;color:#e8ddff!important}
.holo-dialog{width:min(760px,calc(100vw - 24px));max-height:92vh;overflow:auto;padding:18px 20px!important;box-sizing:border-box}
.holo-stage{display:flex;justify-content:center;align-items:center;padding:18px 8px;perspective:1200px}
.holo-card{border-radius:12px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.08)}
.holo-card img{display:block;max-width:100%;max-height:68vh;width:auto;height:auto}
.holo-hint{text-align:center;margin:4px 0 0}

main.shared-card figure.holo{border-radius:10px}
@media(prefers-reduced-motion:reduce){.holo{transform:none!important;transition:none}}
body[data-motion=reduced] .holo{transform:none!important}
#detail .detail-photo{align-items:flex-start;justify-content:center}
#detail .holo-frame{display:inline-block;max-width:100%;border-radius:10px;overflow:hidden;line-height:0;box-shadow:0 18px 40px rgba(0,0,0,.45)}
#detail .holo-frame img,#detail .holo-frame video{width:auto;max-width:100%;height:auto;max-height:70dvh;display:block}
#detail .holo-frame [hidden]{display:none}
#detail-actions .like-button,.outfit-actions .like-button{display:inline-flex;align-items:center;justify-content:center}
.ca-menu-sep{width:100%;height:1px;margin:4px 0;border:0;background:#ffffff1a}
/* v70: keep the page from re-anchoring while the sticky header changes height near the top */
html{overflow-anchor:none}
/* v72: the compact header's full-width backdrop used a 100vmax box-shadow clipped by clip-path; when the header returned to
   normal at the top, the clip vanished instantly while the shadow was still fading out → the whole screen flashed dark.
   The backdrop is now a full-width layer behind the header that simply fades in and out. */
@media(min-width:761px){
 .site-header{transition:padding .25s ease!important}
 body.is-scrolled .site-header{background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;clip-path:none!important}
 .site-header::before{content:'';position:absolute;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);z-index:-1;pointer-events:none;background:rgba(6,12,22,.84);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 10px 26px rgba(0,0,0,.35);opacity:0;transition:opacity .25s ease}
 body.is-scrolled .site-header::before{opacity:1}
}
/* v90: privacy note on sign-in prompts */
.ca-privacy{margin:8px 0 12px;padding:10px 12px;border-radius:12px;border:1px solid #9fe6cf33;background:#9fe6cf0d;color:#c9e4dc;font-size:13px;line-height:1.7}
.ca-dialog .profile-prompt-bunny{display:block;width:96px;height:auto;margin:0 auto 6px;filter:drop-shadow(0 6px 10px rgba(0,0,0,.4))}
a.ca-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
/* v92: 站長數據 + 地點健康檢查 */
.ca-stat-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:12px 0 16px}
.ca-stat-tile{display:grid;gap:2px;padding:14px 16px;border-radius:14px;border:1px solid #c9b27844;background:linear-gradient(135deg,#c9b27812,#0d1a29)}
.ca-stat-tile strong{font-size:24px;color:#f6e9bd}
.ca-stat-tile span{font-size:12px;color:#9eb3c7}
.ca-stat-scroll{overflow-x:auto;border:1px solid #ffffff14;border-radius:14px}
.ca-stat-table{width:100%;border-collapse:collapse;font-size:13px;min-width:640px}
.ca-stat-table th,.ca-stat-table td{padding:8px 10px;text-align:right;border-bottom:1px solid #ffffff0f;white-space:nowrap}
.ca-stat-table thead th{color:#9eb3c7;font-weight:500;background:#ffffff06}
.ca-stat-table tbody th{text-align:left;color:#e7edf5;font-weight:500}
.ca-stat-table td.is-now{color:#9fe6cf;font-weight:700}
.ca-spark-cell{width:96px}
.ca-spark{width:80px;height:24px;display:block;margin-left:auto}
.ca-spark rect{fill:#9ccfd977}.ca-spark rect.is-now{fill:#9fe6cf}
.ca-health{margin-top:18px}
.ca-health-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}
.ca-health-list label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:#ffffff06;cursor:pointer}
.ca-health-list label>div{display:grid;gap:3px;min-width:0}
.ca-health-list a{color:#f6e9bd;font-weight:600}
.ca-health-list small{color:#9eb3c7}
.ca-health-issues{display:flex;flex-wrap:wrap;gap:6px}
.ca-health-tag{padding:2px 8px;border-radius:999px;font-size:12px;border:1px solid #ffffff22;color:#c4d4e2}
.ca-health-tag.is-stale{border-color:#f3c76a77;color:#f6d58b}.ca-health-tag.is-schedule{border-color:#f08fa877;color:#f5a9bc}.ca-health-tag.is-cover{border-color:#9ccfd977;color:#bfe3ea}
/* v94 (a11y): comfortable tap targets for the header navigation on phones */
@media (max-width:700px){.site-header nav a{display:inline-flex;align-items:center;min-height:36px;padding-top:6px;padding-bottom:6px}}
:where(a,button,[role=button],input,select,textarea,summary):focus-visible{outline:2px solid #9ccfd9;outline-offset:2px}
/* v95: site cursors (crystal arrow + link hand) on every page */
html body{cursor:url(cursors/normal.cur),auto!important}
html body :is(a[href],button:not(:disabled),[role=button],[role=tab],summary,label[for],select,input[type=checkbox],input[type=radio],input[type=range],input[type=file],input[type=submit],input[type=button],.cp-card,.cf-tab,.crystal-button,.style-option,.region-btn,.orientation-btn,.share-btn,.download-btn,.flip-btn,.mascot-guide-bunny,.mascot-peek,.mascot-quest,.mascot-pic){cursor:url(cursors/link.cur),pointer!important}
html body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=button]):not([type=submit]):not([type=file]),textarea,[contenteditable=true]){cursor:text!important}
html body :is(button:disabled,[aria-disabled=true]){cursor:not-allowed!important}

/* v97: delete notifications */
.ca-notice-tools{display:flex;justify-content:flex-end;margin:0 0 10px}
.ca-notice{position:relative;align-items:center;transition:opacity .2s,transform .2s}
.ca-notice.is-removing{opacity:.4;transform:translateX(8px)}
.ca-surface .ca-notice-del,.ca-notice-del{flex:none;width:34px;height:34px;min-height:34px!important;padding:0!important;display:grid;place-items:center;border-radius:50%!important;font-size:18px;line-height:1;color:#9fb3c6;background:transparent!important;border:1px solid transparent!important;box-shadow:none!important}
.ca-notice-del:hover,.ca-notice-del:focus-visible{color:#ffb4c0;border-color:#ff7a8a66!important;background:#ff7a8a14!important}
.ca-notice .ca-new{order:0}
@media(max-width:600px){.ca-notice{padding:12px 10px 12px 14px}.ca-notice-del{width:40px;height:40px;min-height:40px!important}}
