:root{color:#263445;background:#fff8f2}
body{background:linear-gradient(145deg,#fff8f2 0%,#f5fbff 58%,#fffaf4 100%)}
.sidebar{background:#fffdfa;border-right-color:#f0e8df;box-shadow:5px 0 28px #d7c9ba18}
.brand{color:#223d4c}.brand-mark{background:linear-gradient(135deg,#fb776b,#ffb279);box-shadow:0 8px 24px #fb776b32}
.sidebar-label,.eyebrow{color:#d16d65}.sidebar-bottom{color:#52616e;border-top-color:#eee5dd}.sidebar-bottom small{color:#74818b}
nav button{color:#52616e}nav button.active,nav button:hover{background:var(--user-accent-soft);color:#b84b46}
header p{color:#647582}.icon-button{background:#fff;border-color:#e8ded6;color:#b84b46}.avatar{background:linear-gradient(135deg,#ff8878,#ffc28e);color:#fff}
.hero{background:radial-gradient(circle at 80% 15%,#ffe9c5 0%,transparent 35%),linear-gradient(120deg,#fff2e5,#fbe5de 48%,#e7f5f7);border-color:#f5dccc;color:#263445;box-shadow:0 12px 35px #d8aa881f}
.hero:after{color:#fff9f1a8}.hero .tag{color:#b35d50}.hero p{color:#596d77}.primary{background:#e56a59;color:#fff;box-shadow:0 7px 16px #e56a5933}
.stat,.card,.artist-card,.candidate{background:#fff;border-color:#ecedef;box-shadow:0 5px 18px #58718112}
.stat small,.stat em,.artist-card p,.candidate small{color:#657583}.section-head button{color:#ba5d52}
.pill{background:#edf6f5;color:#246d72}.pill.confirmed{background:#e0f5e9;color:#1f7650}.pill.unverified{background:#fff1d8;color:#8b651d}
.heart{color:#8d9ca5}.heart.saved{color:#dc6474}.artist-line{color:var(--user-accent-dark)}.meta{color:#637582}.meta b{color:#334a58}.lineup{color:#536873}.lineup b{color:#ac6254}
.card-bottom{border-top-color:#edf0f0;color:#657583}.card a,.candidate a{color:#b7554b}
.toolbar input,.toolbar select{background:#fff;border-color:#e0e7e8;color:#263445}.toolbar input:focus,.toolbar select:focus{outline:2px solid #f6a997;outline-offset:1px}
.empty{background:#fff;border-color:#ebdcd3;color:#647583}.empty strong{color:#263445}
.monthbar button{background:#fff;color:#ad554c;border-color:#e9dcd5}.calendar{border-color:#e8e7e3}.day{background:#fff;border-color:#eeebe7}.day.muted{color:#a5b0b5}.day.today{background:var(--user-accent-soft)}.day .event-chip{background:#e7f5f4;color:#236770}.week{background:#fff1e8;color:#a35a52}
.artist-card button{background:#fff4ec;border-color:#f0d9ca;color:#aa554b}.artist-card button.followed{background:#e6f4ed;color:#2d7457;border-color:#bfe2cd}
.notice{background:#fff3e6;border-color:#f2d6bd;color:#775640}footer{color:#7e8a91}
.event-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.event-links a,.artist-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border-radius:9px;padding:8px 11px;font-size:11px;font-weight:700;text-decoration:none}.event-links .link-secondary,.artist-actions a{background:#f2f7f7;color:#26666b;border:1px solid #dceced}.event-links .link-ticket{background:var(--user-accent);color:#fff;border:1px solid var(--user-accent)}.event-links .link-ticket.pending{background:#fff3e9;color:#a75448;border-color:#f4d9c8}.event-links a:hover,.artist-actions a:hover{text-decoration:none;filter:brightness(.96)}.artist-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
@media(max-width:600px){.sidebar{background:#fffdfa;border-top-color:#eee1d8;box-shadow:0 -5px 25px #7b61451a}.card{padding:17px}.event-links a{flex:1 1 auto}}
.artist-actions .schedule-button{flex:1 1 100%;background:var(--user-accent);border-color:var(--user-accent);color:#fff;font-weight:700;padding:10px 12px;text-align:left}
.schedule-intro{background:#fff;border:1px solid #ecedef;border-radius:16px;padding:22px;box-shadow:0 5px 18px #58718112;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.schedule-intro .back-button{border:0;background:#fff3e9;color:#a75448;border-radius:8px;padding:9px 12px}.schedule-heading{display:flex;align-items:center;gap:14px;flex:1}.schedule-heading .artist-dot{width:30px;height:30px;flex-shrink:0}.schedule-heading small{color:#9a6b60}.schedule-heading h2{margin:2px 0;font-size:23px}.schedule-heading p{margin:0;color:#657583;font-size:12px}.schedule-intro>a{background:#f2f7f7;color:#26666b;border:1px solid #dceced;border-radius:9px;padding:10px 13px;text-decoration:none;font-size:12px;font-weight:700}
@media(max-width:600px){.schedule-intro{padding:16px;gap:12px}.schedule-heading{flex-basis:100%}.schedule-intro>a{width:100%;text-align:center}}
.artist-card{overflow:hidden;padding:0 0 18px}.artist-card h3,.artist-card p,.artist-card .artist-actions{margin-left:17px;margin-right:17px}.artist-card .artist-actions{margin-top:14px}.artist-photo.card,.artist-photo-fallback.card{display:block;width:100%;height:150px;object-fit:cover;object-position:center 35%;border:0;border-radius:0;box-shadow:none;padding:0}.artist-photo-fallback.card{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,color-mix(in srgb,var(--artist-color) 20%,white),#f8f4ef);color:#46505a;font-size:clamp(18px,2vw,29px);font-weight:800;letter-spacing:.03em;text-align:center;padding:12px}.artist-photo-fallback[hidden],.artist-photo[hidden]{display:none!important}.artist-card h3{margin-top:14px}.artist-photo.schedule,.artist-photo-fallback.schedule{width:78px;height:78px;object-fit:cover;border-radius:14px;flex-shrink:0}.artist-photo-fallback.schedule{display:grid;place-items:center;background:color-mix(in srgb,var(--artist-color) 22%,white);font-size:12px;font-weight:800;text-align:center;padding:6px}.schedule-heading{min-width:220px}
@media(max-width:600px){.artist-photo.card,.artist-photo-fallback.card{height:115px}.artist-photo-fallback.card{font-size:18px}.artist-card h3,.artist-card p,.artist-card .artist-actions{margin-left:12px;margin-right:12px}}
.artist-card .photo-credit{display:block;margin:2px 17px 0;color:#73818a;font-size:10px;text-decoration:none}
.gender-tabs{display:inline-flex;gap:5px;background:#eef5f6;border:1px solid #dce8ea;border-radius:12px;padding:5px;margin:0 0 19px}.gender-tabs button{border:0;background:transparent;color:#58707c;border-radius:8px;padding:9px 20px;font-size:13px;font-weight:800}.gender-tabs button.active{background:#fff;color:var(--user-accent-dark);box-shadow:0 3px 12px #58718118}.artist-photo-fallback.card{min-height:150px}
.my-intro{background:linear-gradient(120deg,#fff1e5,#f0f9f8);border:1px solid #f0ded2;border-radius:17px;padding:25px;box-shadow:0 5px 18px #58718112}.my-intro h2{margin:4px 0 8px;font-size:21px}.my-intro p{margin:0 0 16px;color:#586d78;font-size:13px;line-height:1.7}.my-star{color:var(--user-accent);font-size:24px}.my-manage{background:#fff;border:1px solid #ead8cf;border-radius:8px;padding:9px 13px;color:var(--user-accent-dark);font-weight:700}.followed-strip{display:flex;gap:12px;overflow-x:auto;padding:18px 1px 5px;scrollbar-width:thin}.followed-artist{flex:0 0 84px;border:0;background:none;color:#3b4f5c;font-size:11px;font-weight:700;text-align:center}.followed-artist .artist-photo.followed,.followed-artist .artist-photo-fallback.followed{width:70px;height:70px;object-fit:cover;border-radius:50%;display:grid;place-items:center;margin:0 auto 6px;background:var(--user-accent-soft);font-size:11px}.followed-artist span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deadline-list{display:grid;gap:9px}.deadline-item{display:flex;align-items:center;gap:13px;min-width:0;background:#fff;border:1px solid #ecedef;border-radius:12px;padding:14px;text-decoration:none;color:#526b76}.deadline-item:hover,.agenda-row:hover{border-color:var(--user-accent-ring);text-decoration:none}.deadline-badge{flex-shrink:0;background:var(--user-accent-soft);color:var(--user-accent-dark);border-radius:7px;padding:7px 9px;font-size:11px;font-weight:800}.deadline-info,.agenda-body{display:grid;gap:4px;min-width:0;flex:1}.deadline-info strong,.agenda-body strong{color:#263445;font-size:13px;line-height:1.4}.deadline-info small,.agenda-body small{color:#667985;font-size:11px}.calendar-agenda{display:none}.agenda-row{display:flex;align-items:center;gap:11px;background:#fff;border:1px solid #ecedef;border-radius:11px;padding:13px;text-decoration:none;color:var(--user-accent-dark)}.agenda-date{flex-shrink:0;font-size:12px;font-weight:800;color:var(--user-accent-dark);background:var(--user-accent-soft);border-radius:7px;padding:7px}
@media(max-width:600px){html,body{max-width:100%;overflow-x:hidden}.sidebar{height:calc(66px + env(safe-area-inset-bottom));padding:5px 5px calc(5px + env(safe-area-inset-bottom))}nav{height:100%}nav button{width:auto;flex:1;min-width:0;justify-content:center;font-size:20px;padding:4px 1px;line-height:1.1}nav button span{font-size:9px;letter-spacing:-.02em}main{min-width:0;padding:22px 15px calc(95px + env(safe-area-inset-bottom))}.header-row{align-items:flex-start}h1{font-size:25px;line-height:1.25}.eyebrow{font-size:9px}.header-actions{flex-shrink:0}.hero{padding:22px;min-height:175px}.hero:after{right:-15%;font-size:180px}.stats{gap:7px}.stat{padding:10px 8px}.stat small{font-size:9px;line-height:1.3}.stat strong{font-size:20px}.toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar input{grid-column:1/-1;width:100%;min-width:0}.toolbar select{width:100%;min-width:0;padding:10px 6px;font-size:11px}.artist-grid{grid-template-columns:1fr}.artist-photo.card,.artist-photo-fallback.card{height:190px}.artist-card h3,.artist-card p,.artist-card .artist-actions{margin-left:17px;margin-right:17px}.calendar{display:none}.calendar-agenda{display:grid;gap:8px}.monthbar{margin-top:14px}.my-intro{padding:19px}.deadline-item{gap:8px;padding:11px}.deadline-badge{font-size:10px;padding:6px}.deadline-info strong,.agenda-body strong{font-size:12px}}
@media(max-width:360px){nav button span{font-size:8px}.stat strong{font-size:18px}.deadline-badge{max-width:57px;text-align:center}}
@media(max-width:600px){.gender-tabs{display:flex;width:100%;position:sticky;top:0;z-index:4;box-shadow:0 5px 18px #58718114}.gender-tabs button{flex:1;padding:9px 8px}}
.prep-button{border:0;background:#263f4b;color:#fff;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:800;white-space:nowrap}.card-bottom{gap:12px}.modal-open{overflow:hidden}.detail-overlay{position:fixed;inset:0;z-index:30;background:#18303c78;display:flex;justify-content:flex-end}.detail-sheet{width:min(620px,100%);height:100%;overflow-y:auto;background:#fffaf6;padding:30px clamp(20px,4vw,38px) 45px;box-shadow:-18px 0 55px #263f4b33;position:relative}.detail-close{position:sticky;top:0;float:right;z-index:2;width:42px;height:42px;border:1px solid #eadfd7;border-radius:50%;background:#fff;color:#435965;font-size:25px}.detail-sheet>h2{font-size:25px;line-height:1.4;margin:17px 50px 5px 0}.detail-sub,.muted-copy,.device-note{color:#6a7a83;font-size:13px;line-height:1.7}.detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0}.detail-actions button,.detail-actions a{border:1px solid #e6d9d0;background:#fff;color:var(--user-accent-dark);border-radius:10px;padding:12px;font-size:13px;font-weight:800;text-align:center;text-decoration:none}.detail-actions button.active{background:#e4f4ec;color:#277255;border-color:#c3e1d0}.detail-actions a{grid-column:1/-1;background:var(--user-accent);color:#fff;border-color:var(--user-accent)}.detail-section{border-top:1px solid #eee3dc;padding:22px 0}.detail-section h3{margin:0 0 15px;font-size:17px}.timeline{display:grid}.timeline-item{display:grid;grid-template-columns:18px 92px 1fr;gap:8px;align-items:center;min-height:44px;position:relative}.timeline-item:before{content:'';position:absolute;left:7px;top:0;bottom:0;width:2px;background:#f0d8cc}.timeline-item:first-child:before{top:50%}.timeline-item:last-child:before{bottom:50%}.timeline-item i{width:16px;height:16px;border:4px solid #fff;background:#e56a59;border-radius:50%;box-shadow:0 0 0 1px #e7b5a5;z-index:1}.timeline-item.past i{background:#9aa8ae;box-shadow:0 0 0 1px #cbd2d5}.timeline-item span{font-size:13px;color:#65757e}.timeline-item strong{font-size:14px;color:#2c414d}.verified-at{margin:8px 0 0;color:#78868d;font-size:11px}.plan-checks{display:grid;gap:9px}.plan-checks label{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e8e8e5;border-radius:10px;padding:12px 14px;font-size:14px}.plan-checks input{width:19px;height:19px;accent-color:var(--user-accent)}.venue-guide>strong{display:block;font-size:16px}.venue-guide>p{color:#667985;font-size:13px}.venue-guide>a{display:inline-block;color:var(--user-accent-dark);font-weight:800;font-size:13px;margin-bottom:18px}.budget-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.budget-grid label{display:grid;gap:6px;background:#fff;border:1px solid #e8e8e5;border-radius:10px;padding:11px;color:#697983;font-size:12px}.budget-grid label span{display:flex;align-items:center;gap:5px;color:#2d414c}.budget-grid input{width:100%;min-width:0;border:0;border-bottom:1px solid #dccfc6;background:transparent;padding:5px;color:#263445;font:inherit;font-size:16px}.budget-total{display:flex;justify-content:space-between;align-items:center;margin-top:11px;background:#263f4b;color:#fff;border-radius:11px;padding:14px 16px;font-size:13px}.budget-total strong{font-size:20px}.device-note{font-size:11px;margin-top:18px}
@media(max-width:600px){.prep-button{padding:8px 10px}.detail-sheet{padding:22px 17px 100px}.detail-sheet>h2{font-size:21px}.detail-actions{grid-template-columns:1fr}.detail-actions a{grid-column:auto}.timeline-item{grid-template-columns:18px 78px 1fr}.budget-grid{grid-template-columns:1fr 1fr}.detail-overlay{align-items:flex-end}.detail-sheet{height:92%;border-radius:20px 20px 0 0}.detail-close{top:1px}}
.transport-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 12px}.transport-grid article{background:#fff;border:1px solid #e8e8e5;border-radius:13px;padding:15px;min-width:0}.transport-icon{display:inline-flex;background:#e4f3f5;color:#276b73;border-radius:20px;padding:5px 9px;font-size:11px;font-weight:800}.transport-icon.car{background:var(--user-accent-soft);color:var(--user-accent-dark)}.transport-grid h4{margin:11px 0 4px;font-size:15px;line-height:1.4}.transport-grid article>strong{display:block;color:#263f4b;font-size:16px}.transport-grid p{color:#657783;font-size:12px;line-height:1.6;margin:8px 0 11px}.transport-grid a{color:var(--user-accent-dark);font-size:12px;font-weight:800;text-decoration:none}.transport-links{display:flex;flex-wrap:wrap;gap:8px}.transport-links a{background:#fff5ef;border:1px solid #efdace;border-radius:8px;padding:7px 8px}.access-note{background:#f5f7f7;border-radius:9px;padding:10px 12px;color:#687a83;font-size:11px;line-height:1.6}.budget-heading{margin-top:23px!important}.venue-guide>a{background:#f1f7f7;border-radius:8px;padding:8px 10px;text-decoration:none}
.hotel-guide{margin-top:22px;padding-top:22px;border-top:1px solid #eee3dc}.hotel-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.hotel-title h3{margin:0 0 4px}.hotel-title p{margin:0;color:#657783;font-size:12px}.hotel-title>span{background:#e7f4ed;color:#277255;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;white-space:nowrap}.hotel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.hotel-grid a{display:flex;flex-direction:column;gap:5px;min-width:0;background:#fff;border:1px solid #e8e8e5;border-radius:12px;padding:13px;text-decoration:none!important}.hotel-grid small{color:#b05a4f;font-size:10px;font-weight:800}.hotel-grid strong{color:#263f4b;font-size:14px;line-height:1.4}.hotel-grid span{color:#6b7b84;font-size:11px;line-height:1.5}.hotel-grid b{color:var(--user-accent-dark);font-size:11px;margin-top:auto;padding-top:5px}.hotel-note{margin:10px 0 0!important;background:#fff7ec;border-radius:9px;padding:10px 12px;color:#7a6a5d!important;font-size:11px!important;line-height:1.6}
@media(max-width:600px){.transport-grid{grid-template-columns:1fr}.transport-grid article{padding:14px}.transport-grid article>strong{font-size:15px}.hotel-grid{grid-template-columns:1fr}.hotel-grid a{min-height:104px}.hotel-grid b{font-size:12px}}
@media(max-width:600px){
  body{overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}
  button,a,input,select{touch-action:manipulation}
  .card-bottom{display:grid;grid-template-columns:1fr;align-items:stretch;gap:10px}
  .prep-button{width:100%;min-height:44px;font-size:13px}
  .event-links{display:grid;grid-template-columns:1fr 1fr}
  .event-links a{min-height:44px;font-size:12px;padding:10px}
  .event-links .link-ticket{grid-column:1/-1}
  .detail-overlay{background:#18303c99;align-items:stretch}
  .detail-sheet{width:100%;height:100dvh;max-height:none;border-radius:0;padding:calc(18px + env(safe-area-inset-top)) 16px calc(88px + env(safe-area-inset-bottom));overscroll-behavior:contain}
  .detail-close{position:sticky;top:0;width:46px;height:46px;background:#fff;box-shadow:0 5px 16px #3249571f}
  .detail-actions button,.detail-actions a{min-height:48px;display:flex;align-items:center;justify-content:center;font-size:14px}
  .plan-checks label{min-height:48px;font-size:15px}
  .transport-grid article{padding:16px}
  .transport-grid a,.transport-links a{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:13px}
  .transport-grid article>a{margin-top:12px;background:#edf6f6;border-radius:8px;padding:8px}
  .transport-links{display:grid;grid-template-columns:1fr 1fr}
  .transport-links a:first-child{grid-column:1/-1}
  .budget-grid label{min-height:72px}
  .budget-grid input{font-size:18px;min-height:36px}
  .budget-total{position:sticky;bottom:calc(6px + env(safe-area-inset-bottom));box-shadow:0 8px 25px #263f4b3d}
}
@media(max-width:370px){.event-links{grid-template-columns:1fr}.event-links .link-ticket{grid-column:auto}.budget-grid{grid-template-columns:1fr}.transport-links{grid-template-columns:1fr}.transport-links a:first-child{grid-column:auto}}
/* Free operation status */
.update-status{display:flex;align-items:center;gap:9px;margin-top:10px;flex-wrap:wrap}.update-status span{background:#e8f7ef;color:#176b46;border:1px solid #bde7d1;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:700}.update-status small{color:#766e68;font-size:11px}.icon-button:disabled{cursor:wait;opacity:.65}
@media(max-width:600px){.update-status{gap:6px}.update-status span,.update-status small{font-size:10px}}
.goods-links{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:14px 17px 0;padding-top:13px;border-top:1px solid #edf0f0}.goods-links a{display:flex;align-items:center;justify-content:center;min-height:40px;border-radius:9px;background:#f1f7f7;color:#276b73!important;text-align:center;font-size:11px!important;font-weight:800;text-decoration:none!important}.goods-links a:last-child{background:#fff3ec;color:var(--user-accent-dark)!important}
.memory-uploader{display:grid;grid-template-columns:auto 1fr;gap:12px 16px;background:linear-gradient(135deg,#064f59,#163f4a);color:#fff;border-radius:20px;padding:24px;margin-bottom:26px;box-shadow:0 14px 35px #17434e20}.memory-mark{grid-row:1;width:45px;height:45px;display:grid;place-items:center;border-radius:13px;background:#fff2;font-size:24px}.memory-uploader h2{margin:0 0 5px;font-size:21px}.memory-uploader p{margin:0;color:#d8e8e9;font-size:12px;line-height:1.6}.memory-uploader label{grid-column:1/-1;display:grid;gap:7px;font-size:12px;font-weight:800}.memory-uploader select,.memory-uploader textarea{width:100%;border:1px solid #ffffff42;border-radius:10px;background:#fff;color:#263f4b;padding:11px 12px;font:inherit}.memory-uploader textarea{min-height:76px;resize:vertical}.memory-file{display:flex!important;align-items:center;justify-content:center;min-height:48px;background:#ff6c5f;border-radius:11px;font-size:14px!important;cursor:pointer}.memory-file input{position:absolute;opacity:0;pointer-events:none}.memory-privacy{grid-column:1/-1!important;font-size:10px!important;color:#bcd2d4!important}.memory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.memory-card{overflow:hidden;background:#fff;border:1px solid #e8e8e5;border-radius:15px;box-shadow:0 5px 18px #58718112}.memory-card img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.memory-card>div{display:grid;gap:5px;padding:13px}.memory-card small{color:var(--user-accent-dark);font-size:10px;font-weight:800}.memory-card strong{font-size:13px;line-height:1.45}.memory-card p{margin:0;color:#657783;font-size:11px;line-height:1.55}.memory-card button{justify-self:start;margin-top:5px;border:0;background:none;color:#8a7770;padding:0;font-size:10px;text-decoration:underline}
@media(max-width:600px){.memory-grid{grid-template-columns:1fr 1fr}.memory-uploader{padding:20px}.goods-links{grid-template-columns:1fr}.sidebar nav button{font-size:17px;padding-left:0;padding-right:0}.sidebar nav button span{font-size:7px}}
@media(max-width:370px){.memory-grid{grid-template-columns:1fr}.sidebar nav button span{font-size:6px}}
.home-dashboard{display:grid;gap:12px}.profile-box{background:#fff;border:1px solid #e7ecec;border-radius:14px;padding:0 15px;box-shadow:0 5px 18px #58718110}.profile-summary{display:flex;align-items:center;gap:10px;padding:11px 0}.profile-editor{display:none}.profile-box.open .profile-editor{display:block}.profile-avatar{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:#07535d;color:#fff!important;font-size:14px!important;font-weight:900}.profile-copy{display:grid;gap:1px;min-width:0;flex:1}.profile-box small{color:var(--user-accent-dark);font-size:9px;font-weight:800;letter-spacing:.1em}.profile-box strong{font-size:14px}.profile-box span{color:#6a7b84;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-summary>button{flex:0 0 auto;min-width:52px;min-height:38px;border:0;border-radius:9px;background:var(--user-accent-soft);color:var(--user-accent-dark);font-size:11px;font-weight:800}.profile-fields{display:flex;gap:7px;padding:11px 0 0;border-top:1px solid #edf0f0}.profile-fields input,.profile-fields select{min-width:0;border:1px solid #dfe6e6;border-radius:8px;background:#f8fbfb;padding:8px;color:#314853;font:inherit;font-size:11px}.profile-fields input{width:150px}.profile-fields select{width:140px}.profile-fields button{border:0;border-radius:8px;background:#07535d;color:#fff;padding:8px 12px;font-size:11px;font-weight:800}.profile-fields .profile-reset{background:#edf2f2;color:#61747d}.profile-note{margin:7px 0 10px;color:#71818a;font-size:9px;line-height:1.5}.home-overview{display:grid;grid-template-columns:1fr 1.35fr;gap:12px;background:#07535d;color:#fff;border-radius:20px;padding:20px;box-shadow:0 14px 35px #17434e20}.home-greeting small{color:#ffb2a8;font-size:9px;font-weight:800;letter-spacing:.14em}.home-greeting h2{margin:6px 0 4px;font-size:22px;line-height:1.3}.home-greeting p{margin:0;color:#c5dadd;font-size:11px}.mini-stats{display:flex;gap:6px;margin-top:18px}.mini-stats button{flex:1;display:grid;gap:1px;border:1px solid #ffffff2b;border-radius:10px;background:#ffffff12;color:#fff;padding:9px 4px}.mini-stats strong{font-size:19px}.mini-stats span{font-size:9px;color:#c7dadd}.priority-feed{grid-row:span 2;background:#fff;color:#263f4b;border-radius:14px;padding:13px}.priority-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.priority-head strong{font-size:13px}.priority-head button{border:0;background:none;color:var(--user-accent-dark);font-size:10px}.priority-row{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;border:0;border-top:1px solid #edf0f0;background:none;color:#263f4b;padding:9px 0;text-align:left}.priority-tag{border-radius:6px;background:#e5f2f3;color:#276b73;padding:4px 6px;font-size:9px;font-weight:800}.priority-tag.sale{background:#fff0dc;color:#9a5b12}.priority-tag.close{background:#ffe7e3;color:#af4d43}.priority-row>span:nth-child(2){display:grid;gap:2px;min-width:0}.priority-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.priority-row small{color:#71818a;font-size:9px}.priority-row i{font-style:normal;color:#b75a4e}.priority-empty{padding:24px 4px;color:#74858c;font-size:11px;text-align:center}.quick-links{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.quick-links button{border:1px solid #ffffff29;border-radius:9px;background:#ffffff10;color:#fff;padding:9px 4px;font-size:10px;font-weight:700}
@media(max-width:600px){body[data-view="home"] main{padding-top:10px}body[data-view="home"] header{margin-bottom:8px}body[data-view="home"] .eyebrow,body[data-view="home"] #page-subtitle,body[data-view="home"] .update-status{display:none}body[data-view="home"] h1{font-size:18px;margin:4px 0}.profile-box{padding:0 10px}.profile-summary{padding:8px 0}.profile-avatar{width:30px;height:30px}.profile-box strong{font-size:12px}.profile-fields{display:grid;grid-template-columns:1fr 1fr;padding-top:8px}.profile-fields input,.profile-fields select{width:100%;padding:7px;font-size:10px}.profile-fields button{padding:7px 10px}.profile-note{margin-bottom:8px}.home-overview{grid-template-columns:1fr;padding:13px;gap:8px}.home-greeting h2{font-size:18px;margin:3px 0}.home-greeting p{font-size:10px}.mini-stats{margin-top:8px}.mini-stats button{padding:6px 3px}.mini-stats strong{font-size:17px}.priority-feed{grid-row:auto;padding:9px 11px}.priority-head{margin-bottom:2px}.priority-row{padding:6px 0}.priority-row:nth-of-type(n+4){display:none}.quick-links button{padding:7px 3px;font-size:9px}body[data-view="home"] .home-dashboard+.section-head{margin-top:20px}}
.home-section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:12px}.home-section-title small{display:block;color:var(--user-accent-dark);font-size:9px;font-weight:900;letter-spacing:.13em}.home-section-title h2{margin:3px 0 0;font-size:18px}.home-section-title>button{border:0;background:none;color:var(--user-accent-dark);font-size:11px;font-weight:800}.attending-panel{background:linear-gradient(135deg,#07535d,#123d48);color:#fff;border-radius:18px;padding:18px;box-shadow:0 12px 30px #17434e20}.attending-panel .home-section-title small{color:#ffb0a6}.attending-panel .home-section-title>button{color:#ffb0a6}.attending-list{display:grid;gap:7px}.attending-list>button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;border:1px solid #ffffff22;border-radius:11px;background:#ffffff12;color:#fff;padding:11px;text-align:left}.attending-date{display:grid;min-width:54px;color:#c8dfe1;font-size:9px}.attending-date b{color:#fff;font-size:16px}.attending-list>button>span:nth-child(2){display:grid;gap:3px;min-width:0}.attending-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.attending-list small{color:#c4d9dc;font-size:9px}.attending-list i{font-style:normal}.attending-empty{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#c9dcde;font-size:11px}.attending-empty button{border:0;border-radius:8px;background:#ff7466;color:#fff;padding:9px 11px;font-size:10px;font-weight:800}.home-fan-section{background:#fff;border:1px solid #e7ecec;border-radius:16px;padding:16px;box-shadow:0 5px 18px #58718110}.home-artist-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.home-artist-strip button{min-width:0;border:0;background:none;padding:0;color:#263f4b}.artist-photo.home,.artist-photo-fallback.home{display:block;width:100%;aspect-ratio:1;border-radius:12px;object-fit:cover}.artist-photo-fallback.home{display:grid;place-items:center;background:color-mix(in srgb,var(--artist-color) 22%,white);font-size:10px;font-weight:800}.home-artist-strip span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:10px;font-weight:800}.home-empty{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px dashed #dfe7e7;border-radius:11px;padding:15px;color:#687a83;font-size:11px}.home-empty button{border:0;background:#07535d;color:#fff;border-radius:8px;padding:8px 10px}.home-news-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.home-news-card{display:grid;gap:10px;border:1px solid #e7ecec;border-radius:12px;padding:12px}.news-artist{display:flex;align-items:center;gap:9px}.artist-photo.news,.artist-photo-fallback.news{width:38px;height:38px;border-radius:10px;object-fit:cover;flex:0 0 auto}.artist-photo-fallback.news{display:grid;place-items:center;background:color-mix(in srgb,var(--artist-color) 22%,white);font-size:7px;font-weight:800}.news-artist>div{display:grid}.news-artist small{color:var(--user-accent-dark);font-size:9px;font-weight:800}.news-artist strong{font-size:11px}.news-title{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:35px;margin:0;color:#2b404b;font-size:11px;line-height:1.6;text-decoration:none}.social-links{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.social-links a{display:grid;place-items:center;min-height:30px;border-radius:7px;background:#f1f6f6;color:#42616b;font-size:9px;font-weight:800;text-decoration:none}.social-links a:first-child{background:#fff0ed;color:#bd5047}.home-overview.compact{grid-template-columns:1fr auto;padding:15px}.home-overview.compact .mini-stats{margin-top:10px}.home-overview.compact .quick-links{grid-template-columns:repeat(2,80px);align-content:center}
@media(max-width:600px){.home-section-title{margin-bottom:8px}.home-section-title h2{font-size:15px}.attending-panel,.home-fan-section{padding:12px}.attending-list>button{padding:8px;gap:8px}.attending-list strong{font-size:11px}.home-artist-strip{display:flex;overflow-x:auto;gap:8px;padding-bottom:2px;scrollbar-width:none}.home-artist-strip button{flex:0 0 67px}.home-news-grid{display:flex;overflow-x:auto;gap:8px;scrollbar-width:none}.home-news-card{flex:0 0 82%;padding:10px}.home-overview.compact{grid-template-columns:1fr;padding:12px}.home-overview.compact .quick-links{grid-template-columns:repeat(4,1fr)}body[data-view="home"] .home-dashboard+.section-head{display:none}body[data-view="home"] .home-dashboard+.section-head+*{display:none}}

/* Swipeable official posts, YouTube style MVs, and concert cheer guide */
.media-section{overflow:hidden}.swipe-hint{color:#819198;font-size:10px;font-weight:800}.youtube-label{border-radius:6px;background:#ff0033;color:#fff;padding:4px 7px;font-size:9px;font-weight:900}.shorts-feed,.instagram-feed,.mv-grid{display:flex;gap:11px;overflow-x:auto;padding:1px 2px 8px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#d4dddd transparent}.short-card,.instagram-card{position:relative;flex:0 0 205px;aspect-ratio:9/15;overflow:hidden;border-radius:16px;background:#152c35;color:#fff;scroll-snap-align:start;text-decoration:none;box-shadow:0 7px 20px #263f4b1d}.artist-photo.short,.artist-photo-fallback.short,.artist-photo.instagram,.artist-photo-fallback.instagram{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.artist-photo-fallback.short,.artist-photo-fallback.instagram{display:grid;place-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--artist-color) 70%,#19333c),#17333c);font-size:18px;font-weight:900}.short-shade,.instagram-shade{position:absolute;inset:0;background:linear-gradient(180deg,#071d2308 30%,#071d23e8 100%)}.short-badge{position:absolute;left:11px;top:11px;border:1px solid #ffffff5c;border-radius:999px;background:#0c242aa8;padding:5px 8px;font-size:8px;font-weight:900;letter-spacing:.08em;backdrop-filter:blur(8px)}.short-copy,.instagram-copy{position:absolute;right:12px;bottom:14px;left:12px;display:grid;gap:5px}.short-copy b{color:#ffb0a6;font-size:10px}.short-copy strong,.instagram-copy strong{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13px;line-height:1.45}.short-copy small,.instagram-copy small{color:#d4e0e2;font-size:9px}.instagram-top{position:absolute;z-index:2;top:10px;right:10px;left:10px;display:flex;align-items:center;gap:6px;border-radius:999px;background:#10191da8;padding:6px 8px;backdrop-filter:blur(8px)}.instagram-top i{font-size:17px;font-style:normal}.instagram-top b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.mv-card{position:relative;display:grid;grid-template-columns:148px minmax(130px,1fr) 16px;align-items:center;gap:11px;flex:0 0 340px;color:#253c47;scroll-snap-align:start}.mv-thumb{position:relative;display:block;overflow:hidden;border-radius:10px;aspect-ratio:16/9;background:#e9eeee}.mv-thumb iframe,.youtube-thumb{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}.artist-photo.mv,.artist-photo-fallback.mv{width:100%;height:100%;object-fit:cover}.artist-photo-fallback.mv{display:grid;place-items:center;background:color-mix(in srgb,var(--artist-color) 22%,white);font-size:11px;font-weight:900}.play-badge{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:36px;height:26px;transform:translate(-50%,-50%);border-radius:8px;background:#ff0033;color:#fff;font-size:11px;font-style:normal;box-shadow:0 3px 10px #0005}.mv-thumb em{position:absolute;z-index:2;right:5px;bottom:5px;border-radius:4px;background:#111c;padding:3px 5px;color:#fff;font-size:8px;font-style:normal;pointer-events:none}.mv-copy{display:grid;gap:5px;color:#253c47;text-decoration:none}.mv-copy strong{font-size:12px}.mv-copy small{color:#73848b;font-size:9px;line-height:1.45}.mv-more{align-self:start;color:#64777f;font-size:18px}.cheer-guide{display:grid;gap:14px}.cheer-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cheer-steps article{display:flex;align-items:flex-start;gap:9px;border-radius:12px;background:#f4f8f8;padding:12px}.cheer-steps article>b{display:grid;place-items:center;flex:0 0 27px;height:27px;border-radius:50%;background:#07535d;color:#fff;font-size:9px}.cheer-steps article>span{display:grid;gap:4px}.cheer-steps strong{font-size:10px}.cheer-steps small{color:#73848b;font-size:9px;line-height:1.5}.chant-links{display:flex;gap:7px;overflow-x:auto;padding-bottom:3px;scroll-snap-type:x mandatory;scrollbar-width:none}.chant-links a{display:grid;gap:3px;flex:0 0 auto;min-width:128px;border:1px solid #dfe8e8;border-radius:10px;padding:9px 11px;color:#263f4b;text-decoration:none;scroll-snap-align:start}.chant-links a{font-size:10px;font-weight:900}.chant-links span{color:var(--user-accent-dark);font-size:8px}.guide-empty{margin:0;color:#73848b;font-size:10px}
.fanclub-strip{display:flex;gap:9px;overflow-x:auto;padding:1px 2px 7px;scroll-snap-type:x mandatory;scrollbar-width:none}.fanclub-strip>a{display:grid;grid-template-columns:58px minmax(125px,1fr) 16px;align-items:center;gap:10px;flex:0 0 260px;border:1px solid #e1e9e9;border-radius:13px;background:linear-gradient(135deg,#fff,#f5f9f9);padding:9px;color:#263f4b;text-decoration:none;scroll-snap-align:start}.club-logo{display:grid!important;place-items:center;width:58px;height:48px;border-radius:11px;background:color-mix(in srgb,var(--artist-color) 13%,white);color:color-mix(in srgb,var(--artist-color) 80%,#142f38);font-family:Georgia,'Times New Roman',serif;font-size:10px;font-weight:900;letter-spacing:-.04em;text-align:center}.fanclub-strip span:not(.club-logo){display:grid;gap:4px}.fanclub-strip b{font-size:11px}.fanclub-strip small{color:#74868d;font-size:8px}.fanclub-strip i{color:var(--user-accent-dark);font-style:normal;font-weight:900}
@media(max-width:600px){.media-section{margin-right:-12px;padding-right:0}.media-section .home-section-title{padding-right:12px}.shorts-feed,.mv-grid{padding-right:12px}.short-card{flex-basis:56vw;max-width:220px}.mv-card{grid-template-columns:42vw minmax(120px,1fr) 12px;flex-basis:82vw}.cheer-steps{grid-template-columns:1fr}.cheer-steps article{padding:10px}.swipe-hint{font-size:8px}}

.instagram-card{flex-basis:145px;aspect-ratio:4/5;border-radius:13px}.instagram-copy{right:9px;bottom:10px;left:9px}.instagram-copy strong{font-size:10px}.instagram-top{top:7px;right:7px;left:7px;padding:5px 7px}.instagram-top i{font-size:13px}@media(max-width:600px){.instagram-card{flex-basis:38vw;max-width:150px}}

.card-buttons{display:flex;gap:6px;align-items:center}.attend-button,.applied-button{border:1px solid #b8cbce;border-radius:8px;background:#fff;color:#07535d;padding:7px 9px;font-size:9px;font-weight:900}.applied-button{color:#9a574a;border-color:#e5c8be}.applied-button.active{border-color:#c76b58;background:#fff1ed;color:#9b4333}.attend-button.active{border-color:#07535d;background:#07535d;color:#fff}.saved-status-section{display:grid;gap:12px;margin-bottom:26px}.saved-status-section>.section-head{margin-bottom:0}.saved-status-section>.section-head span{font-size:11px;font-weight:900;color:#6c7d84}.related-live-strip{display:flex;gap:9px;overflow-x:auto;padding:1px 2px 7px;scroll-snap-type:x mandatory;scrollbar-width:none}.related-live-strip>button{display:grid;grid-template-columns:48px minmax(170px,1fr) 12px;align-items:center;gap:10px;flex:0 0 310px;border:1px solid #e2eaea;border-radius:13px;background:#fff;padding:11px;color:#263f4b;text-align:left;scroll-snap-align:start}.related-date{display:grid;place-items:center;align-self:stretch;border-radius:9px;background:#eef5f5;color:#07535d;padding:6px 3px}.related-date b{font-size:13px}.related-date small{font-size:8px}.related-copy{display:grid;gap:3px;min-width:0}.related-copy small{color:var(--user-accent-dark);font-size:8px;font-weight:900}.related-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.related-copy em{color:#74858c;font-size:8px;font-style:normal}.related-live-strip>button>i{font-style:normal}@media(max-width:600px){.related-live-strip>button{flex-basis:84vw}.card-bottom{align-items:flex-start}.card-buttons{flex-wrap:wrap;justify-content:flex-end}}

.heart{border-color:#d4dfe2;background:#fff;color:#657a84}.heart.saved{border-color:#dc6474;background:#fff0f3;color:#c64f61}

.account-control{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border:1px solid #cbdadd;border-radius:999px;background:#fff;color:#07535d;font-size:11px;font-weight:900;text-decoration:none;white-space:nowrap}@media(max-width:600px){.account-control{min-height:34px;padding:0 10px;font-size:10px;max-width:118px;overflow:hidden;text-overflow:ellipsis}}

.account-backdrop{position:fixed;inset:0;z-index:1000;background:#17353d99;display:grid;place-items:center;padding:18px}.account-modal{width:min(420px,100%);position:relative;border:1px solid #dbe6e8;border-radius:24px;background:#fff;padding:28px;box-shadow:0 24px 70px #16323b40;text-align:center}.account-modal small{display:block;color:#b65d53;font-weight:900;letter-spacing:.13em}.account-modal h2{margin:8px 0}.account-modal p{color:#647780;font-size:13px;line-height:1.7}.account-modal label{display:grid;gap:6px;margin:13px 0;text-align:left;color:#405660;font-size:12px;font-weight:800}.account-modal input{width:100%;border:1px solid #cbdadd;border-radius:11px;padding:12px;font:inherit}.account-logo{display:grid;place-items:center;width:46px;height:46px;margin:0 auto 15px;border-radius:15px;background:#07535d;color:#fff;font-size:24px}.account-close{position:absolute;right:14px;top:14px;border:0;background:#edf3f3;color:#526970;width:34px;height:34px;border-radius:50%;font-size:20px}.account-primary,.account-logout{width:100%;border-radius:12px;padding:12px;font-weight:900}.account-primary{border:0;background:#07535d;color:#fff}.account-logout{margin-top:10px;border:1px solid #d8e2e3;background:#fff;color:#65777e}.account-modal em{display:block;margin-top:12px;color:#8a999f;font-size:10px;font-style:normal}
.media-subtitle{margin:14px 0 8px;color:#4f646d;font-size:12px}.my-page-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0 20px}.my-page-actions button{border:1px solid #d8e3e4;border-radius:12px;background:#fff;color:#07535d;padding:12px;font-weight:900}.home-v2{display:grid;gap:12px}.home-v2 .home-fan-section,.home-v2 .attending-panel{margin:0}.deadline-focus{border-color:#eed6c5;background:#fffaf5}@media(max-width:600px){.sidebar nav button[data-view="favorites"],.sidebar nav button[data-view="memories"],.sidebar nav button[data-view="discoveries"]{display:none}.sidebar nav button{width:20%;flex:1}.home-v2{gap:10px}.home-v2 .home-fan-section,.home-v2 .attending-panel{padding:12px}.my-page-actions{grid-template-columns:1fr}.home-v2 .home-news-grid{margin-top:10px}}
html,body,.shell,main,#content,.home-dashboard,.home-fan-section,.attending-panel,.deadline-list,.deadline-item{max-width:100%;min-width:0}.deadline-info strong,.deadline-info small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-modal{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}.account-modal input{position:relative;z-index:2;min-height:48px;font-size:16px;line-height:1.4;pointer-events:auto;touch-action:manipulation;-webkit-user-select:text;user-select:text}.account-modal label{position:relative;z-index:2}@media(max-width:600px){body{width:100%;overflow-x:clip}.shell,main,#content,.home-v2{width:100%;overflow-x:hidden}.header-row>div:first-child{min-width:0}.header-row h1{overflow-wrap:anywhere}.home-fan-section,.attending-panel{width:100%}.deadline-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;width:100%;overflow:hidden}.deadline-info{width:100%;overflow:hidden}.deadline-info strong{font-size:12px}.mv-grid{width:100%;max-width:100%;overscroll-behavior-inline:contain}.mv-card{grid-template-columns:minmax(118px,42vw) minmax(0,1fr) 12px;flex-basis:calc(100vw - 54px);max-width:340px}.account-backdrop{padding:12px;align-items:center}.account-modal{width:100%;max-width:calc(100vw - 24px);padding:24px 20px;border-radius:20px}.account-modal h2{font-size:24px;overflow-wrap:anywhere}.account-modal p{font-size:12px}.account-close{position:sticky;float:right;top:0;z-index:4}}
/* v32: text-only home artist list and account avatar */
.home-artist-names{display:flex;gap:8px;overflow-x:auto;padding:2px 0 8px;scroll-snap-type:x proximity;scrollbar-width:none}
.home-artist-names::-webkit-scrollbar{display:none}
.home-artist-names button{flex:0 0 auto;display:flex;align-items:center;gap:10px;border:1px solid #dce8e8;border-radius:999px;background:#f7fbfb;color:#173d47;padding:9px 13px;font:inherit;font-size:12px;font-weight:800;scroll-snap-align:start}
.home-artist-names button span{color:#b85c51;font-size:16px}
.video-placeholder{width:100%;aspect-ratio:16/9;display:grid;place-content:center;gap:3px;background:linear-gradient(135deg,#f4f7f7,#e3eeee);color:#07535d;text-align:center}
.video-placeholder b{font-size:15px}.video-placeholder small{font-size:10px;color:#61777d}
.avatar{overflow:hidden;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
.avatar.has-photo{background-color:#e6eeee;background-image:var(--avatar-image)}
.account-photo-field input{padding:10px!important;background:#f7fbfb!important;font-size:14px!important}
@media(max-width:600px){.home-artist-names{margin-right:-2px}.home-artist-names button{font-size:11px;padding:8px 12px}}
/* v33: public and personalized home states */
.public-home-hero{border-radius:22px;padding:28px;background:linear-gradient(135deg,#07535d,#16747b);color:#fff;box-shadow:0 16px 38px #173f491f}
.public-home-hero small{color:#ffb0a4;font-size:10px;font-weight:900;letter-spacing:.16em}.public-home-hero h2{max-width:560px;margin:8px 0;font-size:28px}.public-home-hero p{max-width:620px;margin:0;color:#d8e8e9;line-height:1.7}.public-home-hero>div{display:flex;gap:9px;margin-top:20px}.public-home-hero button,.personalize-invite button,.login-required button{border:0;border-radius:11px;background:#ff8e7c;color:#fff;padding:11px 16px;font:inherit;font-weight:900}.public-home-hero .public-login{background:#fff;color:#07535d}
.personalize-invite,.login-required{border:1px solid #dfeaea;border-radius:18px;background:#f5faf9;padding:22px;text-align:center}.personalize-invite strong,.login-required h2{display:block;margin:0 0 5px;color:#173d47;font-size:18px}.personalize-invite p,.login-required p{margin:0 0 14px;color:#647b83;line-height:1.65}.login-required{max-width:620px;margin:28px auto}.login-required>span{display:grid;place-items:center;width:44px;height:44px;margin:0 auto 10px;border-radius:14px;background:#07535d;color:#fff;font-size:22px}
@media(max-width:600px){.public-home-hero{padding:20px 16px}.public-home-hero h2{font-size:22px}.public-home-hero p{font-size:11px}.public-home-hero>div{display:grid}.public-home-hero button{width:100%;padding:11px}.personalize-invite,.login-required{padding:18px 14px}.personalize-invite strong,.login-required h2{font-size:16px}}
.weekly-mv-note{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 14px;color:#173642}.weekly-mv-note strong{font-size:16px}.weekly-mv-note span{font-size:12px;color:#718087;text-align:right}.weekly-mv-card .mv-copy small{white-space:normal}.weekly-mv-card .mv-thumb em{background:#075b66}.video-placeholder.trending{background:linear-gradient(135deg,#f7dfd5,#d6ece9);color:#173642}.list-mode-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:18px 20px;border-radius:20px;background:#075b66;color:white}.list-mode-banner div{display:grid;gap:4px}.list-mode-banner small{font-size:11px;letter-spacing:.16em;color:#f3c4b4}.list-mode-banner strong{font-size:22px}.list-mode-banner button{border:1px solid rgba(255,255,255,.45);border-radius:999px;background:white;color:#075b66;padding:10px 16px;font-weight:800;cursor:pointer}
@media(max-width:700px){.weekly-mv-note{align-items:flex-start;flex-direction:column;gap:4px}.weekly-mv-note span{text-align:left}.weekly-mv-grid .mv-card{min-width:244px;width:244px}.list-mode-banner{padding:14px 16px}.list-mode-banner strong{font-size:18px}.list-mode-banner button{padding:9px 12px;font-size:12px}}
.account-link{display:flex!important;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}

.account-register{width:100%;margin-top:10px;border:1px solid #a8c1c5;background:#fff;color:#07535d;border-radius:12px;padding:12px;font-weight:900}.account-primary:disabled,.account-register:disabled{opacity:.55;cursor:wait}

.card-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.card-top-actions .attend-button,.card-top-actions .applied-button{min-height:34px}.card-bottom .card-buttons{margin-left:auto}@media(max-width:600px){.card-top{align-items:flex-start;gap:8px}.card-top-actions{max-width:78%;gap:5px}.card-top-actions .heart,.card-top-actions .attend-button,.card-top-actions .applied-button{padding:6px 7px;font-size:8px}.card-top-actions .attend-button,.card-top-actions .applied-button{min-height:30px}.card-bottom .card-buttons{width:100%}.card-bottom .prep-button{width:100%}}
.official-news-list,.official-news-empty{display:grid;gap:8px}.official-news-list>a,.official-news-empty>a{display:grid;gap:4px;padding:12px 14px;border:1px solid #e2eaea;border-radius:13px;background:#fff;color:#263f4b;text-decoration:none}.official-news-list>a:hover,.official-news-empty>a:hover{border-color:#9abfc3;background:#f7fbfb}.official-news-list span{color:#b45e53;font-size:9px;font-weight:900}.official-news-list strong,.official-news-empty strong{font-size:12px;line-height:1.55}.official-news-list small,.official-news-empty small{color:#73858d;font-size:9px}.official-news-section .empty{margin:0}@media(min-width:760px){.official-news-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.compact-home-section{overflow:hidden}.compact-home-section .home-section-title{margin-bottom:10px}.home-tabs{display:flex;gap:4px;width:max-content;margin:0 0 12px;padding:3px;border-radius:10px;background:#eef4f4}.home-tabs button{min-width:98px;border:0;border-radius:8px;background:transparent;color:#64777f;padding:8px 14px;font-size:11px;font-weight:900}.home-tabs button.active{background:#fff;color:#07535d;box-shadow:0 2px 8px #193d4814}.home-event-strip,.home-video-strip{display:flex;gap:10px;overflow-x:auto;padding:1px 2px 8px;scroll-snap-type:x mandatory;scrollbar-width:thin}.home-event-card{position:relative;display:grid;flex:0 0 290px;overflow:hidden;border:1px solid #e2e8e8;border-radius:15px;background:#fff;scroll-snap-align:start}.home-event-main{display:grid;gap:6px;min-height:188px;border:0;background:#fff;padding:18px 16px 13px;text-align:left;color:#263f4b}.home-event-date{color:#b4574d;font-size:20px;font-weight:900}.home-event-main strong{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.45}.home-event-main small{color:#b4574d;font-size:10px;font-weight:800}.home-event-main em{color:#687b84;font-size:10px;font-style:normal}.home-event-main b{margin-top:auto;color:#9e5149;font-size:10px}.home-deadline{position:absolute;z-index:2;top:11px;right:11px;border-radius:999px;background:#fff1df;color:#9c5c25;padding:5px 8px;font-size:9px;font-weight:900}.home-deadline.urgent{background:var(--user-accent);color:#fff}.home-event-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;border-top:1px solid #edf0f0;padding:9px}.home-event-actions button{border:1px solid #dfe8e8;border-radius:9px;background:#f8fbfb;color:#3e6970;padding:9px 6px;font-size:9px;font-weight:900}.home-event-actions button.active{border-color:#e7a493;background:var(--user-accent-soft);color:#ad5147}.home-video-strip>a{display:grid;gap:6px;flex:0 0 230px;color:#263f4b;text-decoration:none;scroll-snap-align:start}.home-video-thumb{position:relative;display:block;overflow:hidden;border-radius:12px;background:#e7eeee;aspect-ratio:16/9}.home-video-thumb img{width:100%;height:100%;object-fit:cover}.home-video-thumb i{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:38px;height:27px;transform:translate(-50%,-50%);border-radius:8px;background:#ff0033;color:#fff;font-size:11px;font-style:normal}.home-video-strip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.home-video-strip small{color:#74858c;font-size:9px}.compact-empty{padding:14px}.home-v2>.compact-home-section:nth-of-type(n+3){margin-top:0}@media(max-width:600px){.home-event-card{flex-basis:calc(100vw - 62px);max-width:315px}.home-event-main{min-height:176px}.home-video-strip>a{flex-basis:72vw;max-width:260px}.home-tabs{width:100%}.home-tabs button{flex:1;min-width:0}}
.video-tabs{width:100%}.video-tabs button{flex:1;min-width:0}.group-video-list{display:grid;gap:20px}.group-video-row{display:grid;gap:9px;min-width:0}.group-video-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.group-video-title strong{font-size:14px;color:#263f4b}.group-video-title a{color:#54747b;font-size:9px;font-weight:900;text-decoration:none}.group-video-row+.group-video-row{border-top:1px solid #edf0f0;padding-top:18px}

.account-back{display:block;margin:-2px 0 8px;border:0;background:none;color:#07535d;padding:4px 0;font-size:12px;font-weight:900}.my-followed-panel{margin-bottom:12px;border:1px solid #dfe9e9;border-radius:16px;background:#fff;padding:16px;box-shadow:0 5px 18px #58718110}.my-followed-panel .artist-name-strip{margin-top:8px}@media(max-width:600px){.my-followed-panel{padding:12px}.account-modal .account-primary,.account-modal .account-register{min-height:50px;font-size:14px}}
.account-settings-modal{width:min(560px,100%)}.account-settings-modal>.profile-box{margin:18px 0;text-align:left;box-shadow:none}.account-settings-modal>.profile-box .profile-summary{padding:10px 0}.account-settings-modal>.profile-box .profile-note{text-align:left}
.account-profile-compact{margin:16px 0 18px;border:1px solid #dfe8e8;border-radius:13px;background:#fff;text-align:left;overflow:hidden}.account-profile-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:#fff;color:#23434e;padding:13px 15px;font-weight:800}.account-profile-toggle span{display:flex;align-items:center;gap:8px}.account-profile-toggle small{color:#74878e;font-size:11px;font-weight:600}.account-profile-toggle i{color:#55717a;font-size:18px;font-style:normal}.account-profile-editor{display:grid;grid-template-columns:1fr 1fr auto auto;gap:8px;padding:12px 15px 15px;border-top:1px solid #e8eeee}.account-profile-editor input,.account-profile-editor select{min-width:0;border:1px solid #d8e3e4;border-radius:9px;background:#f8fbfb;padding:10px;color:#263f4b;font:inherit;font-size:12px}.account-profile-editor button{border:0;border-radius:9px;background:#07535d;color:#fff;padding:10px 13px;font-weight:800}.account-profile-editor .profile-reset{background:#edf2f2;color:#61747d}.account-profile-editor p{grid-column:1/-1;margin:0;color:#71838b;font-size:10px}@media(max-width:600px){.account-profile-editor{grid-template-columns:1fr 1fr}.account-profile-editor button{min-height:42px}.account-profile-toggle{padding:12px 13px}}
.account-profile-editor{position:relative;z-index:5}.account-profile-editor input,.account-profile-editor select{position:relative;z-index:6;min-height:48px;pointer-events:auto;touch-action:auto;-webkit-user-select:text;user-select:text}.account-profile-editor input{font-size:16px}.account-profile-editor select{-webkit-appearance:menulist;appearance:auto;font-size:16px}
.my-saved-summary{display:grid;gap:10px}.my-saved-subhead{margin-top:8px;padding-top:16px;border-top:1px solid #e7eeee}.my-saved-list{display:grid;gap:8px}.my-saved-list>button{display:grid;grid-template-columns:78px minmax(0,1fr) 18px;align-items:center;gap:10px;width:100%;padding:12px;border:1px solid #e1e9e9;border-radius:13px;background:#fff;color:#173744;text-align:left}.my-saved-list>button>span{display:grid;gap:2px;color:#b5554b}.my-saved-list>button>span b{font-size:13px}.my-saved-list>button>span small{color:#72858c;font-size:11px}.my-saved-list>button>strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.my-saved-list>button>i{color:#7a9198;font-style:normal}.my-saved-empty{margin:0;padding:12px;border-radius:12px;background:#f6f9f9;color:#71858c;font-size:13px}.my-page-actions{grid-template-columns:repeat(2,1fr);margin-top:16px}@media(max-width:600px){.my-saved-list>button{grid-template-columns:66px minmax(0,1fr) 14px;padding:10px}.my-page-actions{grid-template-columns:1fr 1fr}.my-page-actions button{padding:11px 8px;font-size:12px}}
.attendance-history-head small{color:#687982}.attendance-history-list>button{background:#f7faf9;border-color:#d8e4e2}.attendance-history-list>button>span{color:#557178}.attendance-history-list>button>strong:after{content:'参戦済み';display:inline-flex;margin-left:8px;border-radius:999px;background:#e5f0ed;color:#397064;padding:3px 6px;font-size:9px;vertical-align:middle}
.history-filters{display:flex;align-items:end;gap:10px;margin:12px 0}.history-filters label{display:grid;gap:5px;min-width:0}.history-filters label:first-child{flex:0 0 110px}.history-filters label:nth-child(2){flex:1}.history-filters label span{font-size:11px;font-weight:800;color:#64777e}.history-filters select{width:100%;min-height:42px;border:1px solid #d3e0de;border-radius:12px;background:#fff;color:#17333c;padding:0 34px 0 12px;font:inherit;font-size:13px}.history-filters>small{flex:0 0 auto;padding-bottom:12px;color:#60757c;font-weight:800}@media(max-width:540px){.history-filters{display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px}.history-filters>small{grid-column:1/-1;padding:0;text-align:right}.history-filters label:first-child{width:auto}}
.venue-capacity{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:4px 12px;margin:14px 0;padding:14px;border-radius:14px;background:#edf7f5;border:1px solid #cfe3df}.venue-capacity>span{grid-row:1/3;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#07636c;color:#fff;font-size:11px;font-weight:800}.venue-capacity>strong{font-size:19px;color:#173a42}.venue-capacity>small{grid-column:2/4;color:#667b80;line-height:1.5}.venue-capacity>a{grid-column:3;grid-row:1;color:#07636c;font-size:12px;font-weight:800}.venue-capacity.unknown{grid-template-columns:auto 1fr}.venue-capacity.unknown>small{grid-column:2}@media(max-width:540px){.venue-capacity{grid-template-columns:auto 1fr}.venue-capacity>a{grid-column:2;grid-row:auto}.venue-capacity>small{grid-column:2}}
.venue-capacity>em{grid-column:2/4;color:#b65043;font-size:12px;font-style:normal;font-weight:900}.setlist-policy{display:block;margin-top:10px;color:#65777e;line-height:1.6}@media(max-width:540px){.venue-capacity>em{grid-column:2}.venue-capacity>span{grid-row:1/4}}
.capacity-chip{display:inline-flex!important;align-items:center;gap:5px;width:max-content;max-width:100%;padding:5px 9px;border-radius:999px;background:#edf7f5;color:#456b70;font-size:11px}.capacity-chip b{color:#075f68}
.seat-panel-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.seat-panel-head small{color:#bd584d;font-weight:900;letter-spacing:.14em}.seat-panel-head h3{margin:3px 0 0}.seat-panel-head>span{padding:5px 9px;border-radius:999px;background:#e5f2ef;color:#287063;font-size:11px;font-weight:900}.seat-panel>p{color:#65777e;font-size:13px}.seat-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.seat-fields label{display:grid;gap:5px;color:#48636a;font-size:11px;font-weight:800}.seat-fields input,.seat-fields select{width:100%;min-height:43px;border:1px solid #d2e0de;border-radius:12px;background:#fff;padding:0 12px;color:#17343d;font:inherit}.seat-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.seat-tags>strong{width:100%;color:#48636a;font-size:12px}.seat-tags label input{position:absolute;opacity:0;pointer-events:none}.seat-tags label span{display:inline-flex;padding:7px 10px;border:1px solid #d4e1df;border-radius:999px;background:#fff;color:#557078;font-size:11px;font-weight:800}.seat-tags label input:checked+span{border-color:#08717a;background:#e5f4f2;color:#075d65}.seat-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.seat-actions button,.seat-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:41px;border-radius:11px;padding:0 13px;font-size:12px;font-weight:900}.seat-actions button{border:0;background:#08636c;color:#fff}.seat-actions .seat-delete{background:#fff0eb;color:#ac5045}.seat-actions a{border:1px solid #cddfdd;background:#fff;color:#08636c}.seat-privacy{display:block;margin-top:10px;color:#8a6560;line-height:1.55}@media(max-width:540px){.seat-fields{grid-template-columns:1fr}.seat-actions>*{width:100%}}
.home-video-rail{display:flex;gap:10px;min-width:0;overflow-x:auto;overscroll-behavior-inline:contain;padding:1px 2px 9px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#d4dddd transparent;-webkit-overflow-scrolling:touch}.home-video-rail>a{display:grid;gap:5px;flex:0 0 220px;min-width:0;color:#263f4b;text-decoration:none;scroll-snap-align:start}.home-video-rail .home-video-thumb{width:100%;aspect-ratio:16/9}.home-video-rail strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.home-video-rail small{color:#74858c;font-size:9px}.video-eyebrow{color:#b45e53;font-size:8px;font-weight:900;letter-spacing:.06em}.group-video-title{justify-content:flex-start}@media(max-width:600px){.home-video-rail>a{flex-basis:58vw;max-width:220px}.home-video-rail{margin-right:-8px}}

/* Ticket status, application tracking and calendar actions */
.card-statuses{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sale-status{display:inline-flex;align-items:center;min-height:25px;border-radius:999px;padding:5px 9px;background:#edf3f3;color:#526b73;font-size:10px;font-weight:900;white-space:nowrap}.sale-status.open,.sale-status.general{background:#e4f5ec;color:#227052}.sale-status.urgent{background:var(--user-accent);color:#fff}.sale-status.before{background:#edf1fb;color:#51689b}.sale-status.closed,.sale-status.ended{background:#eef0f1;color:#7a858a}.ticket-state-control{display:grid;grid-template-columns:auto minmax(120px,1fr);align-items:center;gap:9px;margin-top:15px;border:1px solid #dfe8e8;border-radius:11px;background:#f7fbfb;padding:9px 10px}.ticket-state-control>label{color:#536a73;font-size:11px;font-weight:900}.ticket-state-control select{width:100%;min-width:0;border:1px solid #cbdadc;border-radius:8px;background:#fff;color:#1f414b;padding:9px 30px 9px 10px;font-size:12px;font-weight:900}.ticket-saved{grid-column:2;color:#227052;font-size:10px}.calendar-mini{border:1px solid #c9dcde;border-radius:8px;background:#fff;color:#07535d;padding:8px 10px;font-size:10px;font-weight:900;white-space:nowrap}.detail-ticket-summary{display:flex;align-items:center;gap:10px;margin:16px 0 4px}.detail-ticket-summary .ticket-state-control{flex:1;margin:0}.detail-actions a:nth-of-type(1){grid-column:auto;background:#fff;color:var(--user-accent-dark);border-color:#e6d9d0}.detail-actions a:last-child{grid-column:1/-1;background:var(--user-accent);color:#fff;border-color:var(--user-accent)}
.ticket-state-label{color:#536a73;font-size:11px;font-weight:900}.ticket-state-picker{position:relative;min-width:0}.ticket-state-button{display:flex;width:100%;align-items:center;justify-content:space-between;border:1px solid #cbdadc;border-radius:8px;background:#fff;color:#1f414b;padding:9px 10px;font-size:12px;font-weight:900}.ticket-state-button i{font-style:normal;color:#527078}.ticket-state-menu{position:absolute;z-index:40;top:calc(100% + 6px);right:0;width:min(230px,72vw);max-height:280px;overflow:auto;border:1px solid #cbdadc;border-radius:12px;background:#fff;padding:6px;box-shadow:0 14px 34px rgba(17,57,65,.18)}.ticket-state-menu[hidden]{display:none}.ticket-state-menu button{display:block;width:100%;border:0;border-radius:8px;background:#fff;color:#294852;padding:10px 12px;text-align:left;font-size:12px;font-weight:800}.ticket-state-menu button.selected{background:#e8f5f3;color:#07535d}.ticket-state-menu button:active{background:#f2f7f6}
@media(max-width:600px){.card-statuses{max-width:42%}.card-top-actions{max-width:58%}.ticket-state-control{grid-template-columns:1fr;margin-top:12px}.ticket-state-control>label,.ticket-saved{grid-column:1}.ticket-state-control select{font-size:11px}.card-bottom .card-buttons{display:grid;grid-template-columns:1fr 1.45fr}.card-bottom .calendar-mini,.card-bottom .prep-button{width:100%;min-height:40px}.detail-ticket-summary{align-items:stretch;flex-direction:column}.detail-actions a:last-child{grid-column:auto}}
.official-guide-empty{display:grid;gap:4px;border:1px dashed #d5e0e0;border-radius:12px;background:#f8fbfb;padding:14px}.official-guide-empty strong{color:#405c65;font-size:11px}.official-guide-empty span{color:#7b8b91;font-size:9px}
.video-eyebrow.fan-made{color:#7a687f}

/* Daily ticket tasks and concert-day mode */
.today-tasks{border:1px solid #ead9ca;border-radius:18px;background:#fffaf5;padding:16px;box-shadow:0 5px 18px #6f4a2c12}.today-task-list{display:grid;gap:8px}.today-task-list>button{display:grid;grid-template-columns:54px minmax(0,1fr) 12px;align-items:center;gap:11px;width:100%;border:1px solid #eee4dc;border-radius:12px;background:#fff;padding:10px;color:#263f4b;text-align:left}.today-task-list>button>span:nth-child(2){display:grid;gap:3px;min-width:0}.today-task-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.today-task-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#718188;font-size:12px}.today-task-list i{font-style:normal}.task-date{display:grid;place-items:center;min-height:42px;border-radius:9px;background:#f6eadf;color:#a35443;font-size:12px;font-weight:900}.task-date.urgent{background:var(--user-accent);color:#fff}
.day-mode{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;border-radius:20px;background:linear-gradient(135deg,#07535d,#13737a);padding:20px;color:#fff;box-shadow:0 12px 28px #07535d24}.day-mode small{color:#ffb2a4;font-size:12px;font-weight:900;letter-spacing:.14em}.day-mode h2{margin:5px 0 10px;font-size:24px}.day-mode strong{display:block;font-size:16px;line-height:1.45}.day-mode p{margin:5px 0 0;color:#d8e9ea;font-size:13px}.day-mode-actions{display:grid;grid-template-columns:repeat(3,auto);align-content:center;gap:7px}.day-mode-actions a,.day-mode-actions button{display:grid;place-items:center;min-height:42px;border:1px solid #ffffff66;border-radius:10px;background:#fff;color:#07535d;padding:9px 12px;font:inherit;font-size:12px;font-weight:900;text-decoration:none}
.ticket-task-heading p{margin:4px 0 0;color:#718188;font-size:12px}.ticket-task-list{display:grid;gap:7px;margin:13px 0}.ticket-task-item{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid #dfe8e8;border-radius:11px;background:#f8fbfb;padding:10px}.ticket-task-item>span{display:grid;gap:2px}.ticket-task-item strong{font-size:14px}.ticket-task-item small{color:#6c7e85;font-size:12px}.ticket-task-item.done strong{text-decoration:line-through;color:#7f8d92}.ticket-task-item button{width:32px;height:32px;border:0;border-radius:50%;background:#edf2f2;color:#6c7b80;font-size:18px}.ticket-task-form{display:grid;grid-template-columns:140px minmax(150px,1fr) minmax(190px,1fr);gap:8px;margin-top:12px}.ticket-task-form select,.ticket-task-form input{width:100%;min-height:44px;border:1px solid #cbdadd;border-radius:10px;background:#fff;padding:9px 10px;color:#263f4b;font:inherit;font-size:14px}.ticket-task-form .private-task{display:flex;align-items:center;gap:8px;grid-column:1/3;color:#526a72;font-size:13px}.ticket-task-form .private-task input{width:18px;min-height:18px}.ticket-task-form>button{grid-column:3;border:0;border-radius:10px;background:#07535d;color:#fff;padding:10px 14px;font:inherit;font-size:14px;font-weight:900}
@media(max-width:700px){.today-tasks{padding:13px}.today-task-list>button{grid-template-columns:48px minmax(0,1fr) 10px;padding:9px}.day-mode{grid-template-columns:1fr;padding:17px 14px}.day-mode h2{font-size:21px}.day-mode-actions{grid-template-columns:1fr}.ticket-task-form{grid-template-columns:1fr}.ticket-task-form .private-task,.ticket-task-form>button{grid-column:1}.ticket-task-form select,.ticket-task-form input,.ticket-task-form>button{min-height:48px;font-size:16px}}

/* Setlist速報 */
.setlist-panel{border-color:#d8e7e6;background:linear-gradient(180deg,#fbfefe,#f5faf9)}.setlist-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.setlist-heading small{display:block;margin-bottom:3px;color:#b3564d;font-size:10px;font-weight:900;letter-spacing:.14em}.setlist-heading h3{margin:0}.setlist-status{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;background:#edf2f2;color:#667980;font-size:10px;font-weight:900;white-space:nowrap}.setlist-status.likely{background:#fff1d9;color:#976627}.setlist-status.confirmed{background:#e3f4eb;color:#267052}.setlist-status.corrected{background:#f7e8e5;color:#a14f47}.setlist-empty,.setlist-note{margin:13px 0;color:#60757d;font-size:13px;line-height:1.7}.setlist-search{display:inline-flex;border:1px solid #c7dcdc;border-radius:9px;background:#fff;color:#07535d;padding:9px 11px;font-size:12px;font-weight:900;text-decoration:none}.setlist-songs{display:grid;gap:7px;margin:14px 0;padding:0;list-style:none}.setlist-songs li{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:8px;border:1px solid #dfeaea;border-radius:11px;background:#fff;padding:9px}.setlist-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e9f4f3;color:#07535d;font-size:11px;font-weight:900}.setlist-songs li>div{display:grid;gap:2px;min-width:0}.setlist-songs strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.setlist-songs small{color:#7a8b91;font-size:10px}.setlist-songs a{border-radius:7px;background:#edf5f4;color:#07535d;padding:7px 8px;font-size:10px;font-weight:900;text-decoration:none}.setlist-sources{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:12px}.setlist-sources strong{width:100%;font-size:11px}.setlist-sources a{color:#07535d;font-size:11px;font-weight:800}@media(max-width:600px){.setlist-songs li{grid-template-columns:28px minmax(0,1fr) auto}.setlist-songs li>a:last-child{grid-column:2/4;justify-self:start}.setlist-search{min-height:42px;align-items:center}}

/* Stable form layouts for ticket tasks and history filters */
.history-filters{display:grid;grid-template-columns:110px minmax(220px,320px) auto;justify-content:start}.history-filters label:first-child,.history-filters label:nth-child(2){width:auto;flex:none}.history-filters>small{align-self:end;padding-bottom:12px}
@media(max-width:900px){.ticket-task-form{grid-template-columns:1fr 1fr}.ticket-task-form>input[type=datetime-local]{grid-column:1/-1}.ticket-task-form .private-task{grid-column:1}.ticket-task-form>button{grid-column:2}}
@media(max-width:600px){.ticket-task-form{grid-template-columns:1fr}.ticket-task-form>input[type=datetime-local],.ticket-task-form .private-task,.ticket-task-form>button{grid-column:1}.history-filters{grid-template-columns:1fr 1fr}.history-filters>small{grid-column:1/-1;padding:0;text-align:right}}

/* Keep every event search control aligned */
.toolbar{display:grid;grid-template-columns:minmax(220px,1.35fr) repeat(4,minmax(150px,1fr));gap:12px;align-items:stretch}.toolbar input,.toolbar select{width:100%;min-width:0}
@media(max-width:1300px){.toolbar{grid-template-columns:repeat(2,minmax(0,1fr));max-width:100%}.toolbar input{grid-column:1/-1}}
@media(max-width:600px){.toolbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.toolbar input{grid-column:1/-1}}
@media(max-width:380px){.toolbar{grid-template-columns:1fr}.toolbar input{grid-column:1}}

/* Personal color settings */
:root{--user-accent:#df6557;--user-accent-dark:#a84f47;--user-accent-soft:#fff0e7;--user-accent-ring:#f0c9bc}
:root[data-theme="blue"]{--user-accent:#3977c6;--user-accent-dark:#275b9e;--user-accent-soft:#eaf3ff;--user-accent-ring:#bfd5f2}
:root[data-theme="mint"]{--user-accent:#16877c;--user-accent-dark:#08675f;--user-accent-soft:#e7f7f4;--user-accent-ring:#b9dfd9}
:root[data-theme="pink"]{--user-accent:#cf5d91;--user-accent-dark:#a33d6c;--user-accent-soft:#fff0f6;--user-accent-ring:#efc3d7}
:root[data-theme="purple"]{--user-accent:#7c61bd;--user-accent-dark:#5e449c;--user-accent-soft:#f3efff;--user-accent-ring:#d3c7f2}
:root[data-theme] .brand-mark,:root[data-theme] .avatar{background:linear-gradient(135deg,var(--user-accent),color-mix(in srgb,var(--user-accent) 55%,white))}
:root[data-theme] .eyebrow,:root[data-theme] .sidebar-label,:root[data-theme] .section-head button,:root[data-theme] .my-star{color:var(--user-accent)}
:root[data-theme] nav button.active,:root[data-theme] nav button:hover{background:var(--user-accent-soft);color:var(--user-accent-dark)}
:root[data-theme] .primary,:root[data-theme] .event-links .link-ticket,:root[data-theme] .artist-actions .schedule-button{background:var(--user-accent);border-color:var(--user-accent);color:#fff}
:root[data-theme] .gender-tabs button.active,:root[data-theme] .agenda-date,:root[data-theme] .deadline-badge{color:var(--user-accent-dark);background:var(--user-accent-soft)}
:root[data-theme] .toolbar input:focus,:root[data-theme] .toolbar select:focus{outline-color:var(--user-accent-ring)}
.theme-settings{display:grid;grid-template-columns:minmax(180px,.75fr) minmax(0,1.5fr);gap:22px;align-items:center;margin:28px 0 14px;padding:22px;background:#fff;border:1px solid #e2e8e9;border-radius:16px;box-shadow:0 5px 18px #58718112}.theme-settings small{color:var(--user-accent-dark);font-size:9px;font-weight:900;letter-spacing:.16em}.theme-settings h2{margin:4px 0 5px;font-size:18px}.theme-settings p{margin:0;color:#667983;font-size:12px;line-height:1.6}.theme-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.theme-choice{position:relative;display:grid;justify-items:center;gap:6px;min-width:0;border:1px solid #dce5e7;border-radius:12px;background:#fff;padding:10px 5px 8px;color:#566b76;font-size:10px;font-weight:800}.theme-choice.selected{border-color:var(--user-accent);background:var(--user-accent-soft);color:var(--user-accent-dark);box-shadow:0 0 0 2px color-mix(in srgb,var(--user-accent) 15%,transparent)}.theme-choice b{position:absolute;right:6px;top:4px;color:var(--user-accent-dark);font-size:10px}.theme-swatch{display:block;width:28px;height:28px;border-radius:50%;box-shadow:inset 0 0 0 1px #0000000b}.theme-swatch.coral{background:#df6557}.theme-swatch.blue{background:#3977c6}.theme-swatch.mint{background:#16877c}.theme-swatch.pink{background:#cf5d91}.theme-swatch.purple{background:#7c61bd}
@media(max-width:600px){.theme-settings{grid-template-columns:1fr;padding:17px;gap:14px}.theme-options{gap:5px}.theme-choice{min-height:62px;padding:8px 2px 6px}.theme-choice span{font-size:9px}.theme-swatch{width:25px;height:25px}}

/* Daily fan activity */
.daily-hub{margin:0 0 18px;padding:22px;border:1px solid color-mix(in srgb,var(--user-accent) 28%,#dce7e8);border-radius:18px;background:linear-gradient(135deg,var(--user-accent-soft),#fff 62%);box-shadow:0 8px 25px #58718113}.daily-hub-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.daily-hub-head small{color:var(--user-accent-dark);font-size:9px;font-weight:900;letter-spacing:.15em}.daily-hub-head h2{margin:4px 0;font-size:21px}.daily-hub-head p{margin:0;color:#60747e;font-size:12px}.daily-check-count{display:grid;justify-items:center;flex:0 0 72px;border-radius:13px;background:#fff;padding:9px;color:var(--user-accent-dark);box-shadow:0 4px 14px #58718110}.daily-check-count b{font-size:22px;line-height:1}.daily-check-count span{margin-top:4px;font-size:8px;font-weight:800}.daily-hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0 12px}.daily-hub-grid button{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 8px;min-width:0;border:1px solid #e2e9ea;border-radius:13px;background:#fff;padding:12px;text-align:left;color:#314954}.daily-hub-grid .daily-icon{grid-row:1/4;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--user-accent-soft);color:var(--user-accent-dark);font-size:15px}.daily-hub-grid strong{font-size:20px;line-height:1}.daily-hub-grid small{font-size:10px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.daily-hub-grid em{color:var(--user-accent-dark);font-size:9px;font-style:normal}.daily-check-button{width:100%;min-height:43px;border:0;border-radius:11px;background:var(--user-accent);color:#fff;font-size:12px;font-weight:900}.daily-check-button.done{background:#e9f3ef;color:#31705b}.daily-check-button:disabled{cursor:default}
@media(max-width:600px){.daily-hub{padding:17px;margin-top:0}.daily-hub-head h2{font-size:19px}.daily-hub-grid{grid-template-columns:1fr;gap:7px;margin:14px 0 10px}.daily-hub-grid button{min-height:58px}.daily-check-count{flex-basis:64px}.daily-hub-grid small{font-size:11px}}

/* Daily artist note, missions and streak */
.daily-level{display:grid;justify-items:center;flex:0 0 76px;border:0;border-radius:13px;background:#fff;padding:9px;color:var(--user-accent-dark);box-shadow:0 4px 14px #58718110}.daily-level b{font-size:16px}.daily-level span{margin-top:3px;font-size:9px;font-weight:900}.daily-artist{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:16px;border:1px solid color-mix(in srgb,var(--user-accent) 22%,#dce7e8);border-radius:15px;background:#fff;padding:12px}.daily-artist-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--artist-color),color-mix(in srgb,var(--artist-color) 45%,white));color:#fff;font-size:18px;font-weight:900}.daily-artist>div:nth-child(2){display:grid;gap:2px;min-width:0}.daily-artist small{color:var(--user-accent-dark);font-size:8px;font-weight:900;letter-spacing:.12em}.daily-artist strong{font-size:16px}.daily-artist p{margin:0;color:#6b7e86;font-size:11px}.daily-artist-actions{display:flex;gap:6px}.daily-artist-actions a{display:inline-flex;align-items:center;min-height:38px;border:1px solid #dce6e7;border-radius:10px;background:#f8fbfb;padding:0 10px;color:#31525b;font-size:10px;font-weight:900;text-decoration:none}.daily-missions{margin:0 0 10px;border:1px solid #e2e9ea;border-radius:13px;background:#fff;padding:12px}.daily-missions>div:first-child{display:flex;justify-content:space-between;color:#314954;font-size:11px}.daily-missions>div:first-child span{color:var(--user-accent-dark);font-weight:900}.mission-progress{height:6px;margin:8px 0 10px;overflow:hidden;border-radius:99px;background:#edf1f2}.mission-progress i{display:block;height:100%;border-radius:inherit;background:var(--user-accent);transition:width .25s ease}.mission-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.mission-actions button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:36px;border:1px solid #e0e7e8;border-radius:9px;background:#f8fbfb;color:#667a81;font-size:10px;font-weight:900}.mission-actions button.done{border-color:#cce2d8;background:#edf7f2;color:#32705b}.mission-actions button:disabled{opacity:1}.mission-actions span{font-size:12px}.daily-reward{margin:8px 0 0;color:#78888e;font-size:9px;text-align:center}
.daily-detail{margin:0 0 12px;border:1px solid #dce7e8;border-radius:14px;background:#fff;padding:14px;box-shadow:0 6px 18px #5871810d}.daily-detail-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px}.daily-detail-head small{color:var(--user-accent-dark);font-size:8px;font-weight:900;letter-spacing:.12em}.daily-detail-head h3{margin:2px 0 0;font-size:16px}.daily-detail-head>button{width:30px;height:30px;border:0;border-radius:50%;background:#eef3f3;color:#64767c}.daily-detail-list,.daily-update-tabs{display:grid;gap:7px}.daily-detail-list>button,.daily-update-tabs>button,.daily-update-tabs>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;border:1px solid #e2e9ea;border-radius:10px;background:#fbfdfd;padding:9px;color:#314954;text-align:left;text-decoration:none}.daily-detail-list>button span,.daily-update-tabs span{border-radius:7px;background:var(--user-accent-soft);padding:6px;color:var(--user-accent-dark);font-size:9px;font-weight:900}.daily-detail-list strong,.daily-update-tabs b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.daily-detail-list small,.daily-update-tabs small{color:#72838a;font-size:9px}.daily-update-tabs>strong{margin-top:4px;color:#536a72;font-size:10px}.daily-update-tabs p,.daily-detail-list p{margin:4px 0;color:#718289;font-size:11px}.daily-alert{margin-bottom:8px;border-radius:9px;background:var(--user-accent-soft);padding:8px;color:#a24e43;font-size:10px;font-weight:900}.daily-more{width:100%;min-height:38px;margin-top:10px;border:1px solid #dce6e7;border-radius:9px;background:#fff;color:var(--user-accent-dark);font-size:10px;font-weight:900}.activity-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.activity-stats span{display:grid;justify-items:center;border-radius:11px;background:#f7faf9;padding:11px;color:#506871;font-size:10px}.activity-stats b{color:var(--user-accent-dark);font-size:20px}.activity-stats small{margin-top:3px;color:#73848a;font-size:8px;letter-spacing:0}
@media(max-width:600px){.daily-artist{grid-template-columns:auto minmax(0,1fr)}.daily-artist-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.daily-artist-actions a{justify-content:center}.mission-actions{grid-template-columns:1fr}.mission-actions button{justify-content:flex-start;padding:0 10px}.daily-level{flex-basis:68px}.daily-detail-list>button,.daily-update-tabs>button,.daily-update-tabs>a{grid-template-columns:auto minmax(0,1fr)}.daily-detail-list small,.daily-update-tabs small{grid-column:2}.activity-stats{gap:5px}.activity-stats b{font-size:17px}}

.footer-links{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:8px}.footer-links a{color:inherit;text-decoration:underline;font-size:11px}footer p{margin:0}
.legal-page{max-width:760px}.legal-block{background:#fff;border:1px solid #eee3dc;border-radius:14px;padding:18px 20px;margin:0 0 12px}.legal-block h2{font-size:15px;margin:0 0 8px}.legal-block p,.legal-block li,.legal-block dd{font-size:13px;line-height:1.8;color:#4b5559}.legal-block ul{padding-left:1.2em;margin:6px 0}.legal-date{color:#7e8a91!important;font-size:12px!important}.legal-dl{display:grid;grid-template-columns:8em 1fr;gap:6px 12px;margin:0}.legal-dl dt{font-size:12px;color:#7e8a91}.legal-dl dd{margin:0}
.discovery-note{font-size:12px;color:#7e8a91;margin:-4px 0 12px;line-height:1.7}
.section-head [data-toggle-past]{border:1px solid #e3d6cd;background:#fff;border-radius:999px;padding:6px 12px;font-size:12px;color:#7a4b3a}
.card-title-link{all:unset;cursor:pointer;display:block}.card-title-link:hover,.card-title-link:focus-visible{text-decoration:underline;text-underline-offset:3px}.card-title-link:focus-visible{outline:2px solid #0b6b73;outline-offset:3px;border-radius:4px}
.detail-sheet .event-links{margin:12px 0}
.artist-scope{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:space-between;margin:16px 0 4px;font-size:12px;color:#5f6b70}.artist-scope button{border:1px solid #e3d6cd;background:#fff;border-radius:999px;padding:6px 12px;font-size:12px;color:#7a4b3a}
.avatar[hidden]{display:none!important}
.news-badge{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:var(--user-accent-soft);color:#a4502f;font-size:11px;font-weight:700}
.new-badge{display:inline-block;margin:0 0 6px;padding:2px 8px;border-radius:999px;background:#0b6b73;color:#fff;font-size:11px;font-weight:800;letter-spacing:.02em}

.view-tabs{display:flex;gap:6px;margin:12px 0 4px;flex-wrap:wrap}.view-tabs button{border:1px solid #e3d6cd;background:#fff;border-radius:999px;padding:7px 14px;font-size:13px;color:#5f6b70;font-weight:700}.view-tabs button.active{background:#0b6b73;border-color:#0b6b73;color:#fff}
.compare-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #eee3dc;border-radius:14px;background:#fff}.compare-table{border-collapse:collapse;min-width:720px;width:100%;font-size:12px}.compare-table th,.compare-table td{padding:10px 12px;border-bottom:1px solid #f1e8e2;text-align:left;vertical-align:top;line-height:1.6}.compare-table thead th{background:#faf5f1;color:#7e8a91;font-weight:700;white-space:nowrap}.compare-table tbody th button{all:unset;cursor:pointer;font-weight:800;color:#263f4b}.compare-table tbody th button:hover{text-decoration:underline}.compare-table small{color:#a4502f}
.attendance-stats{background:#fff;border:1px solid #eee3dc;border-radius:16px;padding:16px;margin:0 0 14px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.stats-grid div{background:#faf5f1;border-radius:12px;padding:12px}.stats-grid small{display:block;color:#7e8a91;font-size:11px}.stats-grid strong{font-size:22px;color:#263f4b}.stats-grid em{font-style:normal;font-size:11px;margin-left:3px;color:#7e8a91}.stats-artists{font-size:12px;color:#5f6b70;margin:10px 0 0}@media(max-width:600px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.share-plan{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin:12px 0}.share-plan button{border:0;background:#0b6b73;color:#fff;border-radius:10px;padding:10px 14px;font-weight:800}.share-plan small{color:#7e8a91;font-size:12px}
.shared-head{background:#fff;border:1px solid #eee3dc;border-radius:16px;padding:16px;margin:0 0 14px}.shared-head h2{margin:0 0 4px}.shared-head p{margin:0 0 10px;color:#5f6b70;font-size:13px}.shared-head button{border:0;background:#0b6b73;color:#fff;border-radius:10px;padding:10px 14px;font-weight:800;margin-right:8px}.shared-head .link-button{background:none;color:#0b6b73;padding:10px 0}
.ticket-schedule{display:grid;gap:8px}.ticket-schedule button{display:flex;gap:12px;align-items:center;text-align:left;background:#fff;border:1px solid #eee3dc;border-radius:12px;padding:10px 12px}.ticket-schedule .task-date{min-width:56px;text-align:center;font-weight:800;color:#263f4b}.ticket-schedule .task-date small{display:block;font-weight:400;color:#7e8a91}.ticket-schedule span:nth-child(2){flex:1;display:grid;gap:2px}.ticket-schedule strong{font-size:13px}.ticket-schedule small{font-size:11px;color:#7e8a91}.schedule-label{font-style:normal;font-size:11px;font-weight:800;padding:1px 8px;border-radius:999px;justify-self:start;background:#eef3f3;color:#0b6b73}.schedule-close{background:var(--user-accent-soft);color:#a4502f}.schedule-open{background:#e8f5ee;color:#1d7a4a}

.consent-banner{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;max-width:720px;margin:auto;background:#263f4b;color:#fff;border-radius:14px;padding:14px 16px;box-shadow:0 10px 30px #0003;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.consent-banner p{margin:0;flex:1 1 320px;font-size:13px;line-height:1.7}.consent-banner a{color:#ffd9c7}.consent-banner button{border:0;border-radius:10px;padding:9px 14px;font-weight:800}.consent-banner [data-consent=granted]{background:#fff;color:#263f4b}.consent-banner [data-consent=denied]{background:transparent;color:#fff;border:1px solid #ffffff80;margin-left:6px}@media(max-width:600px){.consent-banner{bottom:72px}}
.survey-card{background:#fff;border:1px solid #eee3dc;border-radius:16px;padding:16px;margin:0 0 14px}.survey-card p{font-size:12px;color:#7e8a91;margin:4px 0 10px}.survey-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.survey-fields label{display:grid;gap:4px;font-size:12px;color:#5f6b70}.survey-fields select{padding:9px;border:1px solid #e3d6cd;border-radius:10px;background:#fff}.survey-actions{display:flex;gap:10px;align-items:center;margin-top:12px}.survey-actions button{border:0;background:#0b6b73;color:#fff;border-radius:10px;padding:10px 16px;font-weight:800}.survey-actions .link-button{background:none;color:#0b6b73}@media(max-width:600px){.survey-fields{grid-template-columns:1fr}}
.legal-button{border:1px solid #e3d6cd;background:#fff;border-radius:999px;padding:7px 14px;font-size:12px;color:#7a4b3a}

.music-wins{background:linear-gradient(135deg,#fff7ec,#fff);border:1px solid #f1dcc3;border-radius:18px;padding:16px;margin:0 0 16px}.music-wins h2{margin:2px 0 0}.wins-updated{font-size:11px;color:#a4502f;font-weight:700}
.wins-list{display:grid;gap:6px;margin-top:10px}.win-row{display:grid;grid-template-columns:78px 118px 1fr auto;gap:10px;align-items:center;background:#fff;border:1px solid #f3e6d8;border-radius:12px;padding:9px 12px;font-size:13px}.win-row.is-new{border-color:#e9a46a;box-shadow:0 2px 10px #e9a46a22}.win-row.no-show{color:#9aa4a8;background:#fbf8f5}
.win-date{font-weight:800;color:#263f4b;white-space:nowrap}.win-date b{margin-left:6px;font-size:10px;color:#fff;background:#e0602e;border-radius:6px;padding:1px 5px;vertical-align:1px}.win-show{font-size:12px;color:#7a4b3a;font-weight:700}
.win-main{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.win-artist{all:unset;cursor:pointer;font-weight:800;color:#0b6b73}button.win-artist:hover{text-decoration:underline}span.win-artist{cursor:default;color:#263f4b}
.win-crown{font-size:12px;font-weight:800;color:#a4502f;background:var(--user-accent-soft);border-radius:999px;padding:3px 10px;white-space:nowrap}.win-crown.multi{background:#e0602e;color:#fff}
.wins-source{font-size:11px;color:#9aa4a8;margin:10px 0 0;line-height:1.6}
@media(max-width:600px){.win-row{grid-template-columns:auto 1fr auto;grid-template-areas:"date show crown" "main main main";row-gap:4px}.win-date{grid-area:date}.win-show{grid-area:show}.win-crown{grid-area:crown}.win-main{grid-area:main;white-space:normal}}
.artist-wins{display:grid;gap:8px}.artist-win-song{background:#fff;border:1px solid #eee3dc;border-radius:12px;padding:10px 12px;display:grid;gap:3px}.artist-win-song strong{font-size:14px}.artist-win-song em{font-style:normal;margin-left:8px;font-size:12px;color:#fff;background:#e0602e;border-radius:999px;padding:2px 9px}.artist-win-song small{font-size:12px;color:#7e8a91;line-height:1.6}
.wins-skipped{font-size:12px;color:#7e8a91;margin:8px 0 0}.win-row{grid-template-columns:104px 118px 1fr auto}@media(max-width:600px){.win-row{grid-template-columns:auto 1fr auto}}
.win-main{white-space:normal;overflow:visible}
.my-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 14px}.my-shortcuts button{display:grid;gap:4px;justify-items:center;background:#fff;border:1px solid #eee3dc;border-radius:14px;padding:12px 6px;font-size:20px;color:#0b6b73}.my-shortcuts span{font-size:11px;font-weight:800;color:#263f4b;line-height:1.4;text-align:center}

.home-extra{background:#fff;border:1px solid #eee3dc;border-radius:18px;padding:16px;margin:0 0 16px}.section-link{border:0;background:none;color:#0b6b73;font-weight:800;font-size:12px;white-space:nowrap}
.anniv-list,.release-list{display:grid;gap:6px;margin-top:10px}.anniv-row{display:grid;grid-template-columns:90px 28px 1fr auto;gap:8px;align-items:center;background:#fffaf5;border:1px solid #f3e6d8;border-radius:12px;padding:8px 12px}.anniv-row.mine{border-color:#e9a46a;background:#fff4ea}.anniv-row.today{box-shadow:0 0 0 2px #e0602e inset}
.anniv-date{font-weight:800;color:#263f4b;font-size:13px;white-space:nowrap}.anniv-date b{margin-left:5px;font-size:10px;color:#fff;background:#e0602e;border-radius:6px;padding:1px 5px}.anniv-icon{font-size:18px;text-align:center}.anniv-main{display:grid}.anniv-main strong{font-size:14px}.anniv-main small{font-size:11px;color:#7e8a91}.anniv-link{border:0;background:none;font-size:20px;color:#0b6b73}
.member-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.member-card{background:#fff;border:1px solid #eee3dc;border-radius:12px;padding:10px 12px;display:grid;gap:2px}.member-card strong{font-size:14px}.member-card small{font-size:11px;color:#7e8a91}.member-card em{font-style:normal;font-size:12px;color:#a4502f}
.release-row{display:grid;grid-template-columns:90px 44px 1fr auto;gap:8px;align-items:center;background:#fff;border:1px solid #eee3dc;border-radius:12px;padding:8px 12px}.release-row.mine{border-color:#e9a46a;background:#fff4ea}.release-row.past{opacity:.55}.release-date{font-weight:800;color:#263f4b;font-size:13px;display:grid}.release-date small{font-weight:400;font-size:11px;color:#7e8a91}
.release-market{font-size:11px;font-weight:800;border-radius:999px;padding:2px 8px;text-align:center}.release-market.kr{background:#eef3ff;color:#3453a8}.release-market.jp{background:#ffeef2;color:#b0305a}.release-main{min-width:0;display:grid}.release-main strong{font-size:13px}.release-main small{font-size:11px;color:#7e8a91}.release-src{font-size:11px;color:#7e8a91}
.show-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.show-card{background:#fff;border:1px solid #eee3dc;border-radius:16px;padding:14px}.show-card.off{background:#fbf8f5}.show-head{display:grid;gap:2px}.show-day{font-size:12px;font-weight:800;color:#a4502f}.show-head h3{margin:0;font-size:17px}.show-head small{color:#7e8a91;font-size:12px}
.show-next{font-size:13px;margin:8px 0 2px;font-weight:700}.show-next b{margin-left:8px;color:#fff;background:#7e8a91;border-radius:6px;padding:1px 7px;font-size:11px}.show-next em{display:block;font-style:normal;font-weight:400;font-size:11px;color:#7e8a91}.show-last{font-size:12px;color:#5f6b70;margin:2px 0 8px}
.show-japan{list-style:none;margin:0;padding:0;display:grid;gap:6px}.show-japan a{display:grid;grid-template-columns:auto auto 1fr;gap:4px 6px;align-items:center;text-decoration:none;color:inherit;background:#faf5f1;border-radius:10px;padding:8px 10px}.show-japan strong{font-size:13px}.show-japan small{grid-column:1/-1;font-size:11px;color:#7e8a91}
.tag{font-size:10px;font-weight:800;border-radius:6px;padding:1px 6px}.tag-live{background:#e0602e;color:#fff}.tag-delayed{background:#eef3ff;color:#3453a8}.tag-clips{background:#eef3f3;color:#0b6b73}.tag-paid{background:var(--user-accent-soft);color:#a4502f}.tag-free{background:#e8f5ee;color:#1d7a4a}
@media(max-width:600px){.anniv-row{grid-template-columns:auto 24px 1fr auto}.release-row{grid-template-columns:auto auto 1fr;}.release-src{display:none}}

.award-flash{background:linear-gradient(135deg,#fff8e8,#fff);border-color:#f0d9a8}.award-sub{font-size:13px;margin:12px 0 6px;color:#7a4b3a}
.award-list{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}.award-list li{display:grid;grid-template-columns:minmax(120px,38%) 1fr;gap:10px;align-items:center;background:#fff;border:1px solid #f1e6d8;border-radius:10px;padding:8px 12px;font-size:13px}.award-list li.daesang{border-color:#e0b24a;background:#fffaf0}.award-list li.mine{border-color:#e9a46a;background:#fff4ea}
.award-cat{font-size:12px;font-weight:800;color:#7a4b3a}.award-win{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}.award-win small{font-size:11px;color:#7e8a91}
.award-soon{display:grid;gap:6px;margin-top:10px}.award-soon div{display:grid;grid-template-columns:1fr auto;gap:2px 10px;background:#fffaf5;border:1px solid #f3e6d8;border-radius:12px;padding:10px 12px}.award-soon span{grid-column:1;font-size:12px;color:#7e8a91}.award-soon b{grid-row:1/span 2;grid-column:2;align-self:center;color:#e0602e;font-size:14px}
.award-edition{background:#fff;border:1px solid #eee3dc;border-radius:14px;padding:10px 14px;margin:0 0 10px}.award-edition summary{cursor:pointer;display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}.award-edition summary span{font-size:12px;color:#7e8a91}
@media(max-width:600px){.award-list li{grid-template-columns:1fr}}

.photo-frame{position:relative;display:block;overflow:hidden;background:#efe7df}.photo-frame::before{content:'';position:absolute;inset:-24px;background-image:var(--photo);background-size:cover;background-position:center;filter:blur(20px) brightness(.85) saturate(1.1)}
.photo-frame-card{width:100%;aspect-ratio:16/10;height:auto}.artist-photo.framed{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain;object-position:center;border-radius:0;box-shadow:none}
.photo-frame-schedule{width:min(100%,560px);aspect-ratio:16/9;border-radius:16px;flex:0 0 auto}.schedule-heading{flex-wrap:wrap}.schedule-heading .photo-frame-schedule+div,.schedule-heading>div{min-width:200px}
.photo-credit{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.photo-frame .artist-photo.framed{position:relative!important;z-index:1;display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;background:transparent!important;object-fit:contain!important;border-radius:0!important;box-shadow:none!important;aspect-ratio:auto!important}
.artist-card>.photo-frame-card{margin:0}

.photo-frame[data-photo-open]{cursor:zoom-in}.photo-frame[data-photo-open]:focus-visible{outline:3px solid #0b6b73;outline-offset:2px}
.photo-zoom-hint{position:absolute;right:8px;bottom:8px;z-index:2;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#0008;color:#fff;font-size:15px;line-height:1;pointer-events:none}
.photo-lightbox{position:fixed;inset:0;z-index:100;background:#0b1418e8;display:grid;place-items:center;padding:56px 16px 24px;cursor:zoom-out;animation:photo-fade .15s ease-out}
.photo-lightbox figure{margin:0;max-width:min(1200px,100%);max-height:100%;display:grid;gap:10px;cursor:default}.photo-lightbox img{max-width:100%;max-height:calc(100vh - 150px);width:auto;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 20px 60px #0008;justify-self:center}
.photo-lightbox figcaption{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;justify-content:center;color:#fff;text-align:center}.photo-lightbox figcaption strong{font-size:18px}.photo-lightbox figcaption a{color:#ffd9c7;font-size:12px}
.photo-lightbox-close{position:fixed;top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:0;background:#fff2;color:#fff;font-size:28px;line-height:1;cursor:pointer}.photo-lightbox-close:hover{background:#fff4}
body.photo-open{overflow:hidden}@keyframes photo-fade{from{opacity:0}to{opacity:1}}

.follows-page{display:grid;gap:14px}.follow-back{justify-self:start;background:none;border:0;color:var(--user-accent-dark);font-weight:700;padding:4px 0;cursor:pointer}
.follow-list{display:grid;gap:9px}.follow-row{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #ecedef;border-radius:12px;padding:10px 12px;min-width:0}
.follow-row .artist-photo.followed,.follow-row .artist-photo-fallback.followed{flex:0 0 52px;width:52px;height:52px;object-fit:cover;border-radius:50%;display:grid;place-items:center;background:var(--user-accent-soft);font-size:9px;overflow:hidden}
.follow-info{display:grid;gap:3px;min-width:0;flex:1}.follow-info strong{color:#263445;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.follow-info small{color:#667985;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.follow-buttons{display:flex;gap:6px;flex-shrink:0}.follow-buttons button{min-height:40px;border-radius:9px;padding:0 13px;font-weight:700;font-size:12px;cursor:pointer}
.follow-small{background:#fff;border:1px solid #d9e3e6;color:#3b5663}.follow-remove{background:#fff;border:1px solid var(--user-accent-ring);color:var(--user-accent-dark)}.follow-remove:hover{background:var(--user-accent-soft)}.follow-add{background:var(--user-accent);border:1px solid var(--user-accent);color:#fff}
.follow-undo{position:sticky;top:8px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#263445;color:#fff;border-radius:11px;padding:10px 12px;font-size:13px;box-shadow:0 6px 18px #0003}.follow-undo button{background:#fff;color:#263445;border:0;border-radius:8px;padding:8px 12px;font-weight:800;cursor:pointer;flex-shrink:0}
.follow-search{width:100%;box-sizing:border-box;border:1px solid #d9e3e6;border-radius:10px;padding:12px 14px;font-size:16px;background:#fff}.follow-hint{margin:0;color:#667985;font-size:12px;line-height:1.7}

/* カスタマイズ */
.customize .custom-grid{display:grid;gap:12px;margin-top:14px}.custom-card{background:#fff;border:1px solid #ecedef;border-radius:14px;padding:14px}.custom-card h3{margin:0 0 4px;font-size:15px}.custom-card>p{margin:0 0 10px;color:#667985;font-size:12px;line-height:1.6}
.theme-settings.customize{display:block}.customize .theme-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(68px,1fr));gap:7px}.customize .theme-choice{cursor:pointer}
.theme-custom input{width:28px;height:28px;border:0;padding:0;border-radius:50%;background:none;cursor:pointer}.theme-custom input::-webkit-color-swatch-wrapper{padding:0}.theme-custom input::-webkit-color-swatch{border:0;border-radius:50%}
.bias-group{display:grid;gap:6px;padding:8px 0;border-top:1px dashed #ecedef}.bias-group strong{font-size:13px}.bias-chips{display:flex;flex-wrap:wrap;gap:6px}.bias-chip{border:1px solid #e2e9ea;border-radius:999px;background:#fff;padding:7px 12px;font-size:12px;color:#314954;cursor:pointer;min-height:34px}.bias-chip.selected{background:var(--user-accent-soft);border-color:var(--user-accent);color:var(--user-accent-dark);font-weight:800}
.bias-star{color:var(--user-accent);margin-right:2px}
.home-layout-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.home-layout-list li{display:grid;grid-template-columns:1fr 40px 40px 72px;gap:6px;align-items:center;border:1px solid #ecedef;border-radius:10px;padding:6px 6px 6px 12px;font-size:13px;font-weight:700;color:#263445}.home-layout-list li.is-hidden span{color:#9aa4a8;text-decoration:line-through}
.home-layout-list button{min-height:36px;border:1px solid #e2e9ea;border-radius:8px;background:#fff;color:#3b5663;cursor:pointer}.home-layout-list button:disabled{opacity:.35;cursor:default}.home-layout-list .home-toggle.on{background:var(--user-accent-soft);border-color:var(--user-accent-ring);color:var(--user-accent-dark);font-weight:800}
.home-reset{margin-top:10px;border:0;background:none;color:var(--user-accent-dark);font-weight:700;cursor:pointer;padding:4px 0}
.font-options{display:flex;gap:8px}.font-options button{flex:1;min-height:40px;border:1px solid #e2e9ea;border-radius:10px;background:#fff;font-weight:700;color:#314954;cursor:pointer}.font-options button.selected{background:var(--user-accent);border-color:var(--user-accent);color:#fff}
html[data-font="large"] #content{zoom:1.12}
@media(min-width:900px){.customize .custom-grid{grid-template-columns:1fr 1fr}}
/* ホームの並び替え */
.home-stack{display:flex;flex-direction:column;gap:14px}.home-stack>.home-v2{display:contents}.home-stack>.home-block>*,.home-stack>.home-v2>.home-block>*,.home-stack [data-home-block]{margin-top:0;margin-bottom:0}
/* 今日の推し活 */
.daily-invite{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;background:#fff;border:1px dashed var(--user-accent-ring);border-radius:12px;padding:10px 12px;font-size:12px;color:#4d626d}.daily-invite button{border:0;border-radius:8px;background:var(--user-accent);color:#fff;font-weight:800;padding:8px 12px;cursor:pointer}
.daily-celebrate{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-top:14px;background:linear-gradient(120deg,#fff6d9,#fff);border:1px solid #f1d98c;border-radius:14px;padding:12px 14px}.daily-celebrate-icon{font-size:30px}.daily-celebrate small{display:block;color:#a0781a;font-size:9px;font-weight:900;letter-spacing:.15em}.daily-celebrate strong{font-size:15px;line-height:1.5}.daily-celebrate-share{background:#111;color:#fff;border-radius:999px;padding:9px 14px;font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap}
.daily-next{display:flex;align-items:center;gap:8px;width:100%;margin-top:14px;border:1px solid #f1e3c0;border-radius:12px;background:#fffdf5;padding:10px 12px;font-size:13px;color:#4d4128;text-align:left;cursor:pointer}.daily-next span:nth-child(2){flex:1;min-width:0}.daily-next b{flex-shrink:0;color:#a0781a}
.daily-countdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:12px}.daily-countdown button{display:grid;gap:2px;text-align:left;border:1px solid #e2e9ea;border-radius:12px;background:#fff;padding:10px 12px;min-width:0;cursor:pointer}.daily-countdown small{font-size:10px;font-weight:800;color:#667985}.daily-countdown b{font-size:20px;color:var(--user-accent-dark);line-height:1.1}.daily-countdown span{font-size:11px;color:#4d626d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.daily-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:10px;margin-top:12px}
.daily-song,.daily-quiz{background:#fff;border:1px solid #e2e9ea;border-radius:14px;padding:12px;min-width:0}.daily-song{display:grid;grid-template-columns:132px minmax(0,1fr);gap:12px;align-items:center}
.daily-song-thumb{position:relative;display:block;border-radius:10px;overflow:hidden;aspect-ratio:16/9;background:#eef3f3}.daily-song-thumb img{width:100%;height:100%;object-fit:cover;display:block}.daily-song-thumb span{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:22px;background:#0003}
.daily-song-body{display:grid;gap:3px;min-width:0}.daily-song-body small,.daily-quiz>small{color:var(--user-accent-dark);font-size:9px;font-weight:900;letter-spacing:.15em}.daily-song-body strong{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daily-song-body>span{font-size:12px;color:#667985}
.daily-song-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.daily-song-links a,.listen-menu a{border:1px solid #e2e9ea;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:800;color:#314954;text-decoration:none;background:#fff;white-space:nowrap}.daily-song-links a:first-child,.listen-menu a:first-child{background:#ff0033;border-color:#ff0033;color:#fff}
.daily-quiz{display:grid;gap:8px;align-content:start}.daily-quiz strong{font-size:15px;line-height:1.5}.quiz-choices{display:grid;gap:6px}.quiz-choices button{min-height:40px;border:1px solid #e2e9ea;border-radius:10px;background:#fff;text-align:left;padding:8px 12px;font-size:13px;font-weight:700;color:#263445;cursor:pointer}.quiz-choices button:not(:disabled):hover{border-color:var(--user-accent);background:var(--user-accent-soft)}.quiz-choices button:disabled{cursor:default;opacity:.7}.quiz-choices button.is-answer{opacity:1;background:#e8f7ee;border-color:#3c9a5f;color:#1d5e36}.quiz-choices button.is-wrong{opacity:1;background:#fdeceb;border-color:#d0584e;color:#8f2f28}
.quiz-result{margin:0;font-size:12px;line-height:1.7;color:#4d626d}.quiz-result b{margin-right:6px;color:#263445}.quiz-more{border:0;background:none;color:var(--user-accent-dark);font-weight:800;cursor:pointer;padding:0}.quiz-foot{margin:0;font-size:11px;color:#8a979d}
@media(max-width:700px){.daily-pair{grid-template-columns:minmax(0,1fr)}.daily-song{grid-template-columns:112px minmax(0,1fr)}.daily-celebrate{grid-template-columns:auto 1fr}.daily-celebrate-share{grid-column:1/-1;justify-self:start}}
/* ♪ 聴く */
details.listen{display:inline-block;vertical-align:middle;margin-left:6px}details.listen summary{list-style:none;display:inline-flex;align-items:center;border:1px solid var(--user-accent-ring);border-radius:999px;padding:3px 10px;font-size:11px;font-weight:800;color:var(--user-accent-dark);background:#fff;cursor:pointer;white-space:nowrap}details.listen summary::-webkit-details-marker{display:none}details.listen[open] summary{background:var(--user-accent-soft)}
.listen-menu{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.setlist-songs li>details.listen{margin-left:0}.setlist-playall{display:inline-block;margin:10px 0 4px;background:#ff0033;color:#fff;border-radius:999px;padding:9px 14px;font-size:12px;font-weight:800;text-decoration:none}
.artist-win-song details.listen{margin-left:0;justify-self:start}
.setlist-songs li>details.listen{justify-self:end}.setlist-songs li>details.listen[open]{grid-column:2/-1;justify-self:stretch;text-align:right}.setlist-songs li>details.listen[open] .listen-menu{justify-content:flex-end}
.win-main details.listen[open],.release-main details.listen[open]{display:block;margin-left:0}

/* 推しクイズ（5問・難易度） */
.quiz-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.quiz-top>small{color:var(--user-accent-dark);font-size:9px;font-weight:900;letter-spacing:.15em}
.quiz-levels{display:flex;gap:4px;flex-wrap:wrap}.quiz-levels button{border:1px solid #e2e9ea;border-radius:999px;background:#fff;padding:5px 11px;font-size:11px;font-weight:800;color:#4d626d;cursor:pointer;display:inline-flex;gap:4px;align-items:center;min-height:30px}.quiz-levels button.active{background:var(--user-accent);border-color:var(--user-accent);color:#fff}.quiz-levels button small{font-size:10px;opacity:.85}
.quiz-progress{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;color:#667985}.quiz-progress i{flex:1;height:6px;border-radius:9px;background:#eef3f3;overflow:hidden}.quiz-progress b{display:block;height:100%;background:var(--user-accent);border-radius:9px}
.quiz-q{font-size:15px;line-height:1.5}.quiz-next{justify-self:end;border:0;border-radius:10px;background:var(--user-accent);color:#fff;font-weight:800;padding:10px 16px;cursor:pointer;min-height:40px}
.quiz-summary{display:grid;gap:8px;text-align:center}.quiz-summary>b{font-size:34px;color:var(--user-accent-dark);line-height:1.1}.quiz-summary>b small{font-size:13px;color:#667985;margin-left:4px}.quiz-summary>p{margin:0;font-weight:800;color:#263445}
.quiz-summary-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.quiz-summary-actions a{background:#111;color:#fff;border-radius:999px;padding:9px 14px;font-size:12px;font-weight:800;text-decoration:none}.quiz-summary-actions button{border:1px solid var(--user-accent-ring);border-radius:999px;background:#fff;color:var(--user-accent-dark);padding:9px 14px;font-size:12px;font-weight:800;cursor:pointer}
.quiz-review{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:5px;text-align:left}.quiz-review li{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;font-size:12px;color:#314954;background:#f8fbfb;border-radius:9px;padding:7px 10px}.quiz-review li span{grid-row:1/3}.quiz-review li small{color:#667985}
.quiz-wide{max-width:640px}.group-quiz-start{background:#fff;border:1px solid #ecedef;border-radius:14px;padding:14px;display:grid;gap:10px}.group-quiz-start p{margin:0;font-size:13px;color:#4d626d;line-height:1.6}.group-quiz-start .quiz-levels button{padding:9px 16px;font-size:13px;min-height:40px}

.brand-mark svg{display:block}
#page-title{white-space:pre-line}

/* 会員登録・ログイン */
.account-check{display:flex!important;gap:8px;align-items:flex-start;text-align:left;font-size:12px;line-height:1.6;color:#4d626d;margin:6px 0}.account-check input{width:18px!important;height:18px!important;min-height:0!important;padding:0!important;margin:2px 0 0!important;flex:0 0 18px;accent-color:var(--user-accent)}.account-check a{color:var(--user-accent-dark)}
.google-signin{display:flex;justify-content:center;min-height:44px;margin:12px 0 6px;font-size:12px;color:#667985;align-items:center}
.account-note{font-size:12px;color:#4d626d;background:var(--user-accent-soft);border-radius:10px;padding:10px 12px}
.account-admin{display:block;text-align:center;text-decoration:none}
.account-delete{margin-top:14px;border:0;background:none;color:#a33a32;font-size:12px;text-decoration:underline;cursor:pointer}

/* かんたんログイン */
.account-divider{display:flex;align-items:center;gap:10px;margin:16px 0 8px;color:#8a979d;font-size:11px}.account-divider::before,.account-divider::after{content:'';flex:1;height:1px;background:#e3e9ea}
.account-legal{font-size:11px!important}.account-legal a{color:var(--user-accent-dark)}
.account-section{text-align:left;border-top:1px solid #eef1f2;margin-top:12px;padding-top:12px}.account-section h3{margin:0 0 4px;font-size:14px}.account-section p{margin:0 0 8px;font-size:12px;color:#4d626d;line-height:1.7}
.transfer-code{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--user-accent-soft);border:2px dashed var(--user-accent-ring);border-radius:12px;padding:12px 14px;margin:6px 0 8px}.transfer-code b{font:800 20px/1.2 ui-monospace,Consolas,monospace;letter-spacing:.08em;color:#263445}.transfer-code button{border:0;border-radius:8px;background:var(--user-accent);color:#fff;font-weight:800;padding:8px 12px;cursor:pointer;flex-shrink:0}
#transfer-code{font:700 18px ui-monospace,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase;text-align:center}
.account-id{display:block;margin-top:10px;color:#9aa4a8;font-size:10px;word-break:break-all}
.transfer-code b{white-space:nowrap;font-size:clamp(15px,4.6vw,20px)!important;letter-spacing:.04em!important}
.account-modal .account-id{color:#9aa4a8!important;letter-spacing:0!important;font-weight:400!important}

/* ① 報告・お問い合わせ */
.report-button{display:block;margin:14px auto 4px;border:1px solid #e3e9ea;background:#fff;color:#4d626d;border-radius:999px;padding:9px 16px;font-size:12px;font-weight:700;cursor:pointer}.report-button:hover{border-color:var(--user-accent-ring);color:var(--user-accent-dark)}
.message-dialog{position:fixed;inset:0;z-index:120;background:#0b1418b3;display:grid;place-items:center;padding:16px;overflow-y:auto}
.message-form{position:relative;width:min(460px,100%);background:#fff;border-radius:18px;padding:22px 20px;display:grid;gap:10px;box-shadow:0 20px 50px #0005;color:#263445}
.message-form>small{color:var(--user-accent-dark);font-size:9px;font-weight:900;letter-spacing:.15em}.message-form h2{margin:0;font-size:19px}.message-form p{margin:0;font-size:12px;color:#4d626d;line-height:1.7}
.message-event{background:var(--user-accent-soft);border-radius:9px;padding:8px 10px;font-weight:700;color:#263445!important}
.message-form label{display:grid;gap:5px;font-size:12px;font-weight:700;color:#314954}.message-form select,.message-form textarea,.message-form input{width:100%;box-sizing:border-box;border:1px solid #d9e3e6;border-radius:10px;padding:10px 12px;font:inherit;font-size:16px;font-weight:400;background:#fff;color:#263445}
.message-form textarea{resize:vertical;min-height:110px}.message-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}
.message-kids{font-size:11px!important;color:#8a979d!important;margin-top:-4px!important}.message-note{font-size:11px!important;color:#8a979d!important}
.message-submit{border:0;border-radius:12px;background:var(--user-accent);color:#fff;font-weight:800;font-size:15px;padding:13px;cursor:pointer}.message-submit:disabled{opacity:.6}
.message-close{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;border:0;background:#f1f4f5;font-size:20px;cursor:pointer;color:#4d626d}
/* ② ホーム画面に追加 */
.install-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--user-accent-ring);border-radius:16px;padding:12px 14px;margin:0 0 14px}.install-card img{border-radius:12px}.install-card strong{font-size:14px}.install-card p{margin:2px 0 0;font-size:12px;color:#4d626d;line-height:1.6}
.install-actions{display:flex;gap:6px;align-items:center}.install-actions .primary{border-radius:10px;padding:9px 14px;font-weight:800}.install-later{border:0;background:none;color:#8a979d;font-size:12px;cursor:pointer}
@media(max-width:600px){.install-card{grid-template-columns:auto 1fr}.install-actions{grid-column:1/-1;justify-content:flex-end}}
.install-help ol{margin:0;padding-left:20px;display:grid;gap:8px;font-size:14px;line-height:1.7}

/* ③ お知らせ */
.push-settings .push-kinds{display:grid;gap:2px;margin:4px 0 8px}.push-on{background:var(--user-accent)!important;color:#fff!important;border-color:var(--user-accent)!important}

/* ⑥ アフィリエイト */
.pr-label{display:inline-block;margin-left:6px;border:1px solid #c9d3d6;border-radius:4px;padding:0 5px;font-size:10px;font-weight:700;color:#8a979d;vertical-align:middle}
details.listen.buy summary{border-color:#e3d6cd;color:#7a4b3a}details.listen.buy[open] summary{background:#fff4ea}
.release-main details.listen.buy[open]{display:block;margin-left:0}
@media(max-width:600px){.hotel-grid{grid-template-columns:1fr}}

/* アカウントのアイコン */
.account-logo-img{display:block;width:56px;height:56px;margin:0 auto 12px;border-radius:16px;box-shadow:0 6px 18px #05343c33}
.account-avatar{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 12px;border-radius:50%;background:linear-gradient(135deg,var(--user-accent),color-mix(in srgb,var(--user-accent) 55%,white));color:#fff;font-size:28px;font-weight:900;background-size:cover;background-position:center 25%;box-shadow:0 0 0 4px #fff,0 0 0 6px var(--user-accent-ring)}
.avatar{cursor:pointer;background-size:cover;background-position:center 25%}.avatar:focus-visible{outline:3px solid var(--user-accent);outline-offset:2px}
.avatar-choices{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 6px;scrollbar-width:thin}
.avatar-choice{flex:0 0 64px;display:grid;justify-items:center;gap:4px;border:0;background:none;padding:0;cursor:pointer;color:#4d626d}
.avatar-choice img,.avatar-choice-initial{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:center 25%;display:grid;place-items:center;background:linear-gradient(135deg,var(--user-accent),color-mix(in srgb,var(--user-accent) 55%,white));color:#fff;font-weight:900;font-size:20px;box-shadow:0 0 0 2px #fff,0 0 0 3px #e3e9ea}
.avatar-choice.selected img,.avatar-choice.selected .avatar-choice-initial{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--user-accent)}
.avatar-choice small{font-size:10px;max-width:64px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-choice.selected small{color:var(--user-accent-dark);font-weight:800}

/* 総点検の修正 */
#page-title,.public-home-hero h2,.home-section-title h2,.section-head h2{word-break:auto-phrase}
.card h3{min-height:0!important}
.card-top-actions button{font-size:12px!important;min-height:36px}.card-top-actions .heart span{white-space:nowrap}
.daily-countdown span{white-space:normal!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
@media(max-width:600px){.daily-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.daily-hub-grid button{grid-template-columns:1fr!important;justify-items:center;text-align:center;padding:10px 6px!important;min-height:0!important}.daily-hub-grid .daily-icon{grid-row:auto!important;width:28px;height:28px}.daily-hub-grid small{white-space:normal!important;font-size:10px!important;line-height:1.3}}
.artist-tools{margin:0 0 12px}.artist-tools button{width:100%;border:1px solid var(--user-accent-ring);background:#fff;color:var(--user-accent-dark);border-radius:12px;padding:12px;font-weight:800;cursor:pointer}
.artist-actions .follow-main{background:var(--user-accent)!important;border-color:var(--user-accent)!important;color:#fff!important;font-weight:800}.artist-actions .follow-main.followed{background:var(--user-accent-soft)!important;color:var(--user-accent-dark)!important}
.artist-actions .schedule-button{background:#fff!important;color:var(--user-accent-dark)!important;border:1px solid var(--user-accent-ring)!important}.artist-actions .schedule-button.muted{color:#667985!important;border-color:#e3e9ea!important}
.artist-card .photo-credit{display:block;background:none!important;border:0!important;padding:0!important;margin:2px 0 6px!important;font-size:10px!important;font-weight:400!important;color:#8a979d!important;text-align:left}
.agenda-row{width:100%;border:1px solid #ecedef;background:#fff;text-align:left;cursor:pointer;font:inherit}.agenda-row.past,.event-chip.past{opacity:.55}.agenda-date small{display:block;font-size:9px;color:#8a979d}
.event-chip{display:block;width:100%;border:0;text-align:left;cursor:pointer;font:inherit}
.nowrap{white-space:nowrap}
.more-button{display:block;margin:14px auto;border:1px solid var(--user-accent-ring);background:#fff;color:var(--user-accent-dark);border-radius:999px;padding:10px 20px;font-weight:800;cursor:pointer}
.theme-custom:not(.selected) input::-webkit-color-swatch{background:conic-gradient(#f55,#fb4,#6c6,#4cf,#66f,#d5f,#f55)!important}
@media(max-width:600px){.compare-table thead{display:none}.compare-table,.compare-table tbody,.compare-table tr,.compare-table th,.compare-table td{display:block;width:auto}.compare-table tr{border:1px solid #ecedef;border-radius:12px;padding:10px 12px;margin-bottom:8px;background:#fff}.compare-table th{border:0;padding:0 0 6px}.compare-table td{border:0;padding:2px 0;font-size:12px}.compare-table td::before{display:inline-block;min-width:64px;color:#8a979d;font-weight:700}.compare-table td:nth-of-type(1)::before{content:'日時'}.compare-table td:nth-of-type(2)::before{content:'会場'}.compare-table td:nth-of-type(3)::before{content:'料金'}.compare-table td:nth-of-type(4)::before{content:'申込締切'}.compare-table td:nth-of-type(5)::before{content:'状況'}.compare-table td br{display:none}}
.show-next b{margin:0 6px}

/* ① カレンダー購読 */
.calendar-links{display:grid;gap:6px;margin:6px 0}.calendar-links a{display:block;text-align:center;text-decoration:none}
/* ② 推しカード */
.oshi-card-open{margin-left:6px}.oshi-card-dialog{max-height:92vh;overflow-y:auto}.oshi-card-preview{width:100%;border-radius:14px;box-shadow:0 6px 20px #0002}
.oshi-card-actions{display:grid;gap:8px}.oshi-card-actions a{display:block;text-align:center;text-decoration:none}

/* ③ 週間クイズランキング */
.quiz-ranking-open{justify-self:start;border:1px solid var(--user-accent-ring);background:#fff;color:var(--user-accent-dark);border-radius:999px;padding:7px 14px;font-size:12px;font-weight:800;cursor:pointer;margin-top:4px}
.ranking-list{list-style:none;margin:4px 0;padding:0;display:grid;gap:6px}.ranking-list li{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:8px;border:1px solid #ecedef;border-radius:10px;padding:8px 12px;font-size:14px}
.ranking-list li.top{background:var(--user-accent-soft);border-color:var(--user-accent-ring)}.ranking-medal{font-size:18px;text-align:center;font-weight:800;color:#667985}.ranking-list b{color:var(--user-accent-dark)}
.ranking-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-me{background:#f6f8f8;border-radius:10px;padding:10px 12px;font-size:13px;text-align:center}.ranking-me b{color:var(--user-accent-dark);font-size:16px}

.nickname-edit{border:0;background:none;color:var(--user-accent-dark);font-size:12px;font-weight:700;text-decoration:underline;cursor:pointer;margin:-4px 0 6px}
.nickname-form{display:flex;gap:6px;margin:4px 0}.nickname-form input{flex:1;min-width:0;border:1px solid #d9e3e6;border-radius:10px;padding:9px 12px;font-size:16px}.nickname-form button{border:0;border-radius:10px;background:var(--user-accent);color:#fff;font-weight:800;padding:0 14px;cursor:pointer}.nickname-form .nickname-cancel{background:#f1f4f5;color:#4d626d}

.age-chips{display:flex;flex-wrap:wrap;gap:6px}

/* ⑤ 音楽番組の出演予定 */
.show-lineup{margin:6px 0 8px;display:grid;gap:6px}.show-lineup strong{font-size:12px;color:#4d626d}.show-lineup.muted{font-size:11px;color:#8a979d;margin:4px 0 8px}
.lineup-chips{display:flex;flex-wrap:wrap;gap:5px}.lineup-chip{border:1px solid #e3e9ea;background:#fff;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700;color:#314954;cursor:pointer}.lineup-chip.mine{background:var(--user-accent-soft);border-color:var(--user-accent);color:var(--user-accent-dark)}.lineup-chip.other{cursor:default;color:#667985}
.daily-onair{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;width:100%;margin-top:12px;border:1px solid var(--user-accent-ring);background:#fff;border-radius:12px;padding:10px 12px;text-align:left;font-size:13px;color:#263445;cursor:pointer}.daily-onair>span:first-child{font-size:22px}.daily-onair em{font-style:normal;font-size:11px;color:var(--user-accent-dark);font-weight:800;white-space:nowrap}

/* 一般公開の準備：外部送信の表、Amazon の文言 */
.legal-table-wrap{overflow-x:auto}.legal-table{width:100%;border-collapse:collapse;font-size:12px;min-width:560px}.legal-table th,.legal-table td{border:1px solid #eee3dc;padding:8px;text-align:left;vertical-align:top;line-height:1.6}.legal-table thead th{background:#faf6f3;font-size:11px;color:#4d626d}.legal-table tbody th{font-weight:700;color:#263445;width:24%}
.footer-amazon{font-size:11px;color:#8a979d;margin-top:6px}

/* ハングル「최애 예보」 */
.ko{font-family:'Apple SD Gothic Neo','Malgun Gothic','Noto Sans KR','Noto Sans CJK KR',sans-serif;letter-spacing:.06em}
.brand-ko{display:block;margin-top:3px;font-size:10px;font-weight:700;letter-spacing:.14em;color:var(--user-accent-dark,#d16d65);font-family:'Apple SD Gothic Neo','Malgun Gothic','Noto Sans KR','Noto Sans CJK KR',sans-serif}
.eyebrow .ko{letter-spacing:.12em}.eyebrow-sep{margin:0 .6em;opacity:.6}
.public-home-hero small .ko{margin-left:.5em;opacity:.85}

/* ホームのお知らせバナー */
.home-alerts{display:grid;gap:8px;margin:0 0 14px}
.home-alert{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;width:100%;border:1px solid var(--user-accent-ring,#f3c4bd);background:#fff;border-radius:14px;padding:11px 14px;text-align:left;font-size:13px;color:#263445;cursor:pointer}
.home-alert>span:first-child{font-size:22px}.home-alert b{display:block;font-size:12px;color:var(--user-accent-dark,#c94f45);margin-bottom:2px}
.home-alert em{font-style:normal;font-size:11px;font-weight:800;color:var(--user-accent-dark,#c94f45);white-space:nowrap}
.home-alert.urgent{background:#fff6f4;border-color:#f3b7ad}.home-alert.streak{background:#fffaf0;border-color:#f5d9a8}

/* ① 新着 */
.daily-new{margin-top:12px;border:1px solid var(--user-accent-ring,#f3c4bd);background:#fff;border-radius:14px;padding:10px 12px;display:grid;gap:6px}
.daily-new-head{display:flex;justify-content:space-between;align-items:center}.daily-new-head strong{font-size:13px;color:var(--user-accent-dark,#c94f45)}
.daily-new-head button{border:0;background:none;font-size:11px;font-weight:800;color:#667985;cursor:pointer}
.daily-new-item{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;text-align:left;border:0;border-top:1px solid #f1e8e4;background:none;padding:8px 2px 2px;font-size:12px;color:#263445;text-decoration:none;cursor:pointer}
.daily-new-item>span:first-child{font-size:18px}.daily-new-item b{display:block;font-size:11px;color:#8a979d;margin-bottom:1px}
/* ② セトリの行と、聴くの吹き出し */
.setlist-songs li{grid-template-columns:28px minmax(0,1fr) auto!important}
.song-actions{display:flex;gap:6px;align-items:center;justify-self:end}
.setlist-songs .song-actions>a.cheer-link,.cheer-link{display:inline-flex;align-items:center;border:1px solid #cfe3e1;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:800;color:#07535d;background:#fff;text-decoration:none;white-space:nowrap}
.cheer-link.official{background:#edf8f6;border-color:#8fc9c1}
details.listen{position:relative}
details.listen[open]{grid-column:auto!important;justify-self:auto!important;text-align:left!important}
details.listen .listen-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;display:flex;flex-direction:column;gap:6px;min-width:150px;margin:0;padding:8px;background:#fff;border:1px solid #e3e9ea;border-radius:12px;box-shadow:0 10px 30px #1a2b3a26;justify-content:flex-start!important}
details.listen .listen-menu a{text-align:center;padding:8px 12px!important;font-size:12px!important;border-radius:999px!important}
.setlist-songs .listen-menu a{background:#fff;color:#314954}.setlist-songs .listen-menu a:first-child{background:#ff0033;color:#fff}
/* ③ メンバーのプロフィール */
.member-note{font-size:12px;color:#667985;margin:-4px 0 10px}.member-source{font-size:10px;color:#8a979d;margin-top:8px}
details.member-card{border:1px solid #eee3dc;border-radius:12px;background:#fff;padding:0;display:block}
details.member-card>summary{list-style:none;cursor:pointer;padding:10px 12px;display:grid;gap:2px}
details.member-card>summary::-webkit-details-marker{display:none}
details.member-card[open]{grid-column:1/-1;border-color:var(--user-accent-ring,#f3c4bd)}
details.member-card.bias{border-color:var(--user-accent,#df6557);background:var(--user-accent-soft,#fff0e7)}
.member-profile{padding:0 12px 12px;display:grid;gap:8px}
.member-profile dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:12px}.member-profile dt{color:#8a979d;font-weight:700}.member-profile dd{margin:0;color:#263445}
.member-roles{display:flex;flex-wrap:wrap;gap:5px}.member-roles span{border-radius:999px;background:#f3f6f7;padding:3px 9px;font-size:11px;font-weight:700;color:#4d626d}
.member-bias{justify-self:start;border:1px solid var(--user-accent-ring,#f3c4bd);background:#fff;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:800;color:var(--user-accent-dark,#c94f45);cursor:pointer}.member-bias.selected{background:var(--user-accent,#df6557);color:#fff}
/* ④ お知らせの案内 */
.home-alert.invite{background:#f6fbfb;border-color:#cfe3e1}.home-alert.invite em{display:flex;gap:6px;align-items:center}
.home-alert.invite em button{border:1px solid #8fc9c1;background:#fff;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:800;color:#07535d;cursor:pointer}.home-alert.invite em .invite-off{border:0;background:none;color:#8a979d;font-size:16px;padding:0 4px}

/* ① カウントダウン */
.daily-countdown button{gap:3px;padding:12px 14px}
.daily-countdown small{display:flex;align-items:center;gap:5px;font-size:11px;color:#4d626d}.daily-countdown small i{font-style:normal;font-size:15px}
.daily-countdown b{font-size:13px;font-weight:800;color:#4d626d}.daily-countdown b strong{font-size:24px;color:var(--user-accent-dark);margin:0 2px}
.daily-countdown em{font-style:normal;font-size:11px;font-weight:700;color:#8a979d}
.daily-countdown span{font-size:12px;color:#263445;font-weight:700}
/* ② クイズの記録 */
.quiz-foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.quiz-history-open{border:1px solid #e2e9ea;background:#fff;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:800;color:#314954;cursor:pointer}
.quiz-history{margin-top:10px;border-top:1px solid #eee3dc;padding-top:10px}
.quiz-history-head{display:flex;align-items:center;gap:10px}.quiz-history-head span{font-size:11px;color:#8a979d;flex:1}.quiz-history-head button{border:0;background:none;font-size:18px;color:#8a979d;cursor:pointer}
.quiz-history ol{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px;max-height:420px;overflow:auto}
.qh-date{font-size:11px;font-weight:800;color:#8a979d;margin-top:6px}
.qh-item{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start;border:1px solid #f1e8e4;border-radius:10px;padding:8px 10px;background:#fff}
.qh-item small{display:block;font-size:10px;color:#8a979d}.qh-item b{display:block;font-size:12px;color:#263445}.qh-item em{display:block;font-style:normal;font-size:11px;color:#16877c;margin-top:2px}.qh-item.ng em{color:#c94f45}
.quiz-history-note{font-size:10px;color:#8a979d;margin:8px 0 0}

/* メンバーの写真・ポジション */
details.member-card>summary{grid-template-columns:auto 1fr;align-items:center;gap:10px}
.member-head{display:grid;gap:2px;min-width:0}.member-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.member-photo{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:50% 22%;background:#f3f6f7;flex:none}
.member-photo.placeholder{display:grid;place-items:center;font-weight:900;font-size:20px;color:#fff;background:linear-gradient(135deg,var(--user-accent,#df6557),#f6b39a)}
.member-photo.placeholder[hidden]{display:none}
.member-pos{color:var(--user-accent-dark,#c94f45)!important;font-weight:800}
details.member-card[open] .member-photo{width:72px;height:72px}
.member-profile .photo-credit{font-size:10px;color:#8a979d;text-decoration:none}

/* すぐに聴ける（試聴） */
.play-preview{display:inline-grid;place-items:center;width:28px;height:28px;flex:none;border:0;border-radius:50%;background:var(--user-accent,#df6557);color:#fff;font-size:11px;font-weight:900;cursor:pointer;vertical-align:middle;margin-right:4px;box-shadow:0 2px 6px #df655740}
.play-preview.playing{background:#263445;box-shadow:0 0 0 4px var(--user-accent-soft,#fde3dc)}.play-preview.loading{opacity:.7}
.listen-note{display:block;font-size:10px;color:#8a979d;text-align:center;margin-top:2px}

/* 詳細画面を開いているときも、お知らせを画面の下に浮かせて見えるようにする */
body.modal-open #notice:not(.hidden){position:fixed;left:12px;right:12px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:60;margin:0;box-shadow:0 8px 24px #0003}

/* 全曲試聴 */
.playall-btn{display:inline-flex;align-items:center;gap:6px;margin:4px 0 2px;border:0;border-radius:999px;background:var(--user-accent,#df6557);color:#fff;font-size:13px;font-weight:800;padding:9px 16px;cursor:pointer;box-shadow:0 4px 12px #df655733}
#playall-bar{position:fixed;left:12px;right:12px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:70;display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;background:#263445;color:#fff;border-radius:16px;padding:10px 12px;box-shadow:0 10px 30px #0004}
#playall-bar .pa-icon{font-size:20px}#playall-bar .pa-info{min-width:0;display:grid}#playall-bar small{font-size:10px;opacity:.75}#playall-bar b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#playall-bar button{width:38px;height:38px;border:0;border-radius:50%;background:#ffffff1f;color:#fff;font-size:16px;cursor:pointer}

/* 画面点検の修正：下のメニューの文字を読みやすく、小さいボタンを押しやすく */
@media (max-width:900px){nav button span{font-size:11px!important;letter-spacing:0!important}}
.listen summary,.buy summary{min-height:32px;padding:5px 12px!important;font-size:12px!important}
.play-preview{width:32px;height:32px}

/* ようこそ画面：ニックネームとひきつぎコードを並べて見せる */
.welcome-login{display:grid;gap:6px;margin:12px 0;padding:12px;border-radius:12px;background:var(--soft,#fff4ef)}
.welcome-login>span{font-size:12px;color:var(--muted,#7a6a66)}
.welcome-login>b{font-size:18px}

/* あいことば（비밀번호）：日本語の横にハングルを小さく。韓国アプリ風 */
.pin-label{display:inline-flex;align-items:baseline;gap:6px}
.pin-label i,.home-alert i[lang="ko"],.welcome-ko{font-style:normal;font-size:.78em;font-weight:700;color:var(--user-accent,#df6557);letter-spacing:.02em}
.welcome-ko{display:block;margin-top:2px}
.pin-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.pin-form input{font-size:20px;letter-spacing:.3em;text-align:center;padding:10px;border-radius:10px;border:1px solid var(--line,#e6d9d4)}
.pin-form button{grid-column:1/-1}
.account-modal input[inputmode="numeric"]{letter-spacing:.3em}
.account-switch{background:none;border:0;color:var(--muted,#7a6a66);text-decoration:underline;font-size:13px;padding:8px;cursor:pointer}
.pin-remind{display:flex;align-items:center;gap:10px}
.pin-remind-actions{display:flex;gap:6px;margin-left:auto}
.pin-remind-actions button{border:1px solid var(--line,#e6d9d4);background:#fff;border-radius:999px;padding:6px 12px;font-size:12px;cursor:pointer}
.account-modal input[inputmode="numeric"]::placeholder,.pin-form input::placeholder{letter-spacing:0;font-size:15px}

/* LIVE 最新情報：ホームのいちばん上で自動で横に流れる */
.live-ticker{margin:0 0 14px;padding:12px 0 10px;border-radius:18px;background:linear-gradient(135deg,#fff 0%,#fff4ef 100%);border:1px solid #f3d6cd;overflow:hidden}
.lt-head{display:flex;align-items:center;gap:8px;padding:0 14px 8px;min-width:0}
.lt-head strong{font-size:14px;white-space:nowrap}
.lt-head small{margin-left:auto;font-size:11px;color:var(--muted,#7a6a66);white-space:nowrap}
.lt-live{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;background:#e5484d;color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em}
.lt-live i{width:7px;height:7px;border-radius:50%;background:#fff;animation:lt-pulse 1.4s ease-in-out infinite}
@keyframes lt-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}
.lt-track{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 14px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.lt-track::-webkit-scrollbar{display:none}
.lt-card{flex:0 0 calc(100% - 28px);max-width:420px;scroll-snap-align:start;display:flex;gap:10px;align-items:center;padding:10px;border-radius:14px;background:#fff;border:1px solid #efe2dd;text-align:left;color:inherit;text-decoration:none;font:inherit;cursor:pointer;min-width:0}
.lt-card:active{transform:scale(.98)}
.lt-thumb{width:96px;height:54px;object-fit:cover;border-radius:8px;flex:none;background:#f3ece9}
.lt-emoji{width:54px;height:54px;display:grid;place-items:center;font-size:26px;border-radius:12px;background:#fff1ec;flex:none}
.lt-body{display:grid;gap:2px;min-width:0}
.lt-meta{display:flex;gap:6px;align-items:center;min-width:0}
.lt-tag{font-size:11px;font-weight:800;color:var(--user-accent,#df6557);white-space:nowrap}
.lt-tag.hot{color:#e5484d}
.lt-when{font-size:11px;color:var(--muted,#7a6a66);white-space:nowrap}
.lt-artist{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lt-title{font-size:12.5px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#3a2f2c}
.lt-src{font-size:10.5px;color:var(--muted,#7a6a66)}
.lt-dots{display:flex;justify-content:center;gap:4px;padding-top:8px;flex-wrap:wrap;max-width:100%}
.lt-dots i{width:5px;height:5px;border-radius:50%;background:#e9d3cc;transition:all .3s}
.lt-dots i.on{width:14px;border-radius:3px;background:var(--user-accent,#df6557)}
@media (min-width:900px){.lt-card{flex-basis:340px}}

/* はじめての案内 */
body.onboard-open{overflow:hidden}
.onboard-backdrop{position:fixed;inset:0;z-index:1200;background:rgba(30,22,20,.55);display:flex;align-items:flex-end;justify-content:center}
.onboard-panel{position:relative;width:min(560px,100%);max-height:94dvh;overflow:auto;background:#fffaf7;border-radius:24px 24px 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom));outline:none;box-shadow:0 -10px 40px rgba(0,0,0,.18)}
@media (min-width:700px){.onboard-backdrop{align-items:center}.onboard-panel{border-radius:24px;padding:24px}}
.onboard-panel h2{margin:4px 0 6px;font-size:22px}
.onboard-panel>p{margin:0 0 12px;color:#5c4f4b;font-size:14px;line-height:1.6}
.onboard-kicker{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--user-accent,#df6557)}
.onboard-steps{display:flex;gap:6px;margin-bottom:10px}
.onboard-steps i{flex:1;height:4px;border-radius:2px;background:#eadcd7}
.onboard-steps i.on{background:var(--user-accent,#df6557)}
.ob-tools{position:sticky;top:-18px;z-index:2;background:#fffaf7;padding:6px 0 8px;display:grid;gap:8px}
.ob-tools input{width:100%;padding:11px 14px;border-radius:12px;border:1px solid #e6d9d4;font-size:16px;background:#fff}
.ob-tabs{display:flex;gap:6px}
.ob-tabs button{flex:1;padding:8px;border-radius:999px;border:1px solid #e6d9d4;background:#fff;font-weight:700;font-size:13px;cursor:pointer}
.ob-tabs button.active{background:var(--user-accent,#df6557);border-color:transparent;color:#fff}
.ob-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:4px 0 12px}
@media (min-width:500px){.ob-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ob-tile{display:grid;gap:5px;justify-items:center;background:none;border:0;padding:0;cursor:pointer;font:inherit;color:inherit;min-width:0}
.ob-tile[hidden]{display:none}
.ob-photo{position:relative;width:100%;aspect-ratio:1;border-radius:18px;overflow:hidden;background:#f3e7e2;display:grid;place-items:center;border:3px solid transparent;transition:transform .15s,border-color .15s}
.ob-photo img{width:100%;height:100%;object-fit:cover}
.ob-photo b{font-size:22px;color:#a2857c}
.ob-photo i{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;background:var(--user-accent,#df6557);color:#fff;font-style:normal;font-weight:900;font-size:14px;display:grid;place-items:center;opacity:0;transform:scale(.6);transition:all .15s}
.ob-tile.sel .ob-photo{border-color:var(--user-accent,#df6557);transform:scale(.96)}
.ob-tile.sel .ob-photo i{opacity:1;transform:scale(1)}
.ob-name{font-size:12px;font-weight:700;line-height:1.25;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ob-actions{position:sticky;bottom:calc(-18px - env(safe-area-inset-bottom));background:linear-gradient(transparent,#fffaf7 30%);padding:14px 0 4px;display:grid;gap:4px}
.ob-skip{background:none;border:0;color:#7a6a66;font-size:13px;padding:8px;cursor:pointer;text-decoration:underline}
.ob-hero{font-size:56px;text-align:center;margin:6px 0}
.ob-list{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:8px}
.ob-list li{background:#fff;border:1px solid #efe2dd;border-radius:12px;padding:10px 12px;font-size:14px}
.tour-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:6px -16px 0}
.tour-track::-webkit-scrollbar{display:none}
.tour-card{flex:0 0 100%;scroll-snap-align:center;padding:8px 24px 4px;text-align:center}
.tour-icon{width:88px;height:88px;margin:4px auto 10px;border-radius:26px;display:grid;place-items:center;font-size:44px;background:linear-gradient(135deg,#ffe9e1,#fff6f1);box-shadow:inset 0 0 0 1px #f2d8cf}
.tour-card h3{margin:0 0 8px;font-size:19px}
.tour-card h3 small{display:block;font-size:12px;color:var(--user-accent,#df6557);margin-top:2px}
.tour-card p{margin:0;font-size:14px;line-height:1.7;color:#4c403c}
.tour-dots{display:flex;justify-content:center;gap:5px;margin-top:12px}
.tour-dots i{width:6px;height:6px;border-radius:3px;background:#e9d3cc;transition:all .25s}
.tour-dots i.on{width:18px;background:var(--user-accent,#df6557)}
/* ログインしていない人への、はじめての案内カード */
.first-visit{position:relative;margin:0 0 14px;padding:16px;border-radius:18px;background:linear-gradient(135deg,#004f59,#0b6d77);color:#fff}
.first-visit strong{font-size:16px}
.first-visit strong small{font-size:12px;opacity:.85;margin-left:6px}
.first-visit p{margin:6px 0 12px;font-size:13.5px;line-height:1.6;opacity:.95}
.first-visit b{color:#ffe08a}
.fv-actions{display:flex;gap:8px;flex-wrap:wrap}
.fv-actions button{padding:10px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:transparent;color:#fff;font-weight:700;cursor:pointer}
.fv-actions .primary{background:#fff;color:#004f59;border-color:#fff}
.fv-close{position:absolute;top:8px;right:10px;background:none;border:0;color:#fff;font-size:20px;cursor:pointer;opacity:.8}

/* 画面左上のマーク：新しいロゴ（文字なし） */
.brand-mark,:root[data-theme] .brand-mark{background:none!important;padding:0;overflow:hidden;box-shadow:0 6px 18px #c86bff40}
.brand-mark img{width:100%;height:100%;display:block}
.account-kicker{letter-spacing:.3em}

/* OSHI CAST でできること（ログインしていない人のホーム） */
.feature-showcase{margin:0 0 16px;padding:20px 16px;border-radius:22px;background:#fff;border:1px solid #f0e2dc}
.fs-head small{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--user-accent,#df6557)}
.fs-head h2{margin:4px 0 4px;font-size:22px}
.fs-head p{margin:0 0 14px;color:#5c4f4b;font-size:14px}
.fs-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}
.fs-stats div{background:linear-gradient(135deg,#fff1f7,#f3ecff);border-radius:14px;padding:10px 8px;text-align:center}
.fs-stats b{display:block;font-size:20px;color:#8a3fd1}
.fs-stats span{display:block;font-size:11px;line-height:1.4;color:#5c4f4b}
.fs-grid{display:grid;grid-template-columns:1fr;gap:10px}
@media (min-width:700px){.fs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.fs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.fs-card{position:relative;padding:14px 14px 12px 64px;border-radius:16px;background:#fffaf8;border:1px solid #f2e4df;min-width:0}
.fs-icon{position:absolute;left:12px;top:14px;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:22px;background:linear-gradient(135deg,#ffe3ef,#ece3ff)}
.fs-card h3{margin:0 0 4px;font-size:15px;line-height:1.4}
.fs-card p{margin:0 0 8px;font-size:12.5px;line-height:1.55;color:#6a5c57}
.fs-example{font-size:12px;line-height:1.45;padding:7px 10px;border-radius:10px;background:#fff;border:1px dashed #e7cfe0;color:#4a3d39;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.fs-example i{font-style:normal;font-size:10.5px;font-weight:800;color:#a15acb;margin-right:6px}
.fs-scenes{margin:16px 0 4px}
.fs-scenes h3{margin:0 0 8px;font-size:16px}
.fs-scene{display:grid;gap:2px;padding:10px 12px;border-radius:12px;background:#f8f5ff;margin-bottom:6px;font-size:13px}
.fs-q{color:#6a5c57}
.fs-a b{color:#8a3fd1}
.fs-cta{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.fs-cta button{padding:12px 18px;border-radius:999px;border:1px solid #e6d9d4;background:#fff;font-weight:800;cursor:pointer}
.fs-cta .primary{flex:1 1 220px;background:linear-gradient(135deg,#ff7aa8,#a56bff);border:0;color:#fff}

/* 推し診断・今日の出会い・あなたへのおすすめ */
.quiz-backdrop{z-index:1300}
.quiz-title{font-size:12px;font-weight:800;color:#8a3fd1;letter-spacing:.06em;margin:2px 0 8px}
.quiz-title span{margin-left:6px;opacity:.8}
.quiz-opts{display:grid;gap:10px;margin:14px 0}
.quiz-opts button{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;border:2px solid #efe2f5;background:#fff;font-size:16px;font-weight:700;cursor:pointer;text-align:left}
.quiz-opts button span{font-size:26px}
.quiz-opts button.sel,.quiz-opts button:active{border-color:#b26bff;background:#f8f1ff}
.quiz-colors{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}
.quiz-colors button{display:grid;justify-items:center;gap:6px;padding:10px 4px;border-radius:14px;border:2px solid #efe2f5;background:#fff;font-size:12px;font-weight:700;cursor:pointer}
.quiz-colors i{width:40px;height:40px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.quiz-colors button.sel{border-color:#b26bff}
.quiz-results{display:grid;gap:12px;margin:12px 0}
.quiz-card,.encounter{padding:14px;border-radius:18px;background:#fff;border:1px solid #efe2f5}
.qc-top,.enc-body{display:flex;gap:12px;align-items:center}
.qc-top h3,.enc-body h3{margin:0 0 4px;font-size:17px}
.qc-rank{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#ff7aa8,#a56bff);color:#fff;font-weight:900;display:grid;place-items:center;flex:none;font-size:13px}
.qc-photo,.enc-photo{width:64px;height:64px;border-radius:16px;overflow:hidden;flex:none;background:#f3e7f5;display:grid;place-items:center}
.qc-photo img,.enc-photo img{width:100%;height:100%;object-fit:cover}
.vibe-chips{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.vibe-chip{font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;background:#f6efff;color:#7a3fc4}
.vibe-dot{width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}
.mv-embed{margin:10px 0 0}
.mv-embed small{display:block;font-size:11px;color:#7a6a66;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mv-thumb{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:#000}
.mv-thumb img{width:100%;height:100%;object-fit:cover;opacity:.92}
.mv-play{position:absolute;inset:0;margin:auto;width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;font-size:22px;color:#c03d74}
.mv-embed iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:12px;display:block}
.qc-actions{display:flex;gap:8px;margin-top:10px}
.qc-actions button{flex:1;padding:11px;border-radius:999px;font-weight:800;cursor:pointer;border:1px solid #e6d9f0;background:#fff}
.qc-follow{background:linear-gradient(135deg,#ff7aa8,#a56bff)!important;color:#fff;border:0!important}
.qc-followed{background:#f6efff!important;color:#7a3fc4}
.ob-quiz{display:block;width:100%;margin:-4px 0 10px;padding:10px 12px;border-radius:12px;border:1px dashed #c9a6f0;background:#faf5ff;color:#7a3fc4;font-weight:800;cursor:pointer;text-align:left}
.fs-quiz{display:grid;gap:4px;margin-top:14px;padding:14px;border-radius:16px;background:linear-gradient(135deg,#fff0f7,#f1e9ff)}
.fs-quiz strong span,.dp-quiz strong span{font-size:12px;color:#8a3fd1;margin-left:4px}
.fs-quiz span{font-size:13px;color:#5c4f4b}
.fs-quiz button{justify-self:start;margin-top:6px;padding:10px 16px;border-radius:999px;border:0;background:#fff;color:#8a3fd1;font-weight:800;cursor:pointer;box-shadow:0 2px 8px rgba(138,63,209,.15)}
.discover-panel{margin:0 0 16px}
.dp-quiz{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:16px;border-radius:18px;background:linear-gradient(135deg,#ff7aa8,#a56bff);color:#fff}
.dp-quiz p{margin:4px 0 0;font-size:13px;opacity:.95}
.dp-quiz strong span{color:#fff;opacity:.85}
.dp-quiz button{padding:11px 18px;border-radius:999px;border:0;background:#fff;color:#8a3fd1;font-weight:800;cursor:pointer}
.rec-row{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}
.rec-row::-webkit-scrollbar{display:none}
.rec-card{flex:0 0 132px;display:grid;gap:4px;justify-items:center;text-align:center;padding:10px;border-radius:16px;background:#fff;border:1px solid #efe2f5}
.rec-photo{width:96px;height:96px;border-radius:18px;overflow:hidden;border:0;padding:0;cursor:pointer;background:#f3e7f5;display:grid;place-items:center}
.rec-photo img{width:100%;height:100%;object-fit:cover}
.rec-card strong{font-size:13px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rec-card small{font-size:10.5px;color:#7a6a66;line-height:1.35}
.rec-follow{padding:6px 12px;border-radius:999px;border:1px solid #d9c2f2;background:#faf5ff;color:#7a3fc4;font-weight:800;font-size:12px;cursor:pointer}
.encounter{margin:0 0 14px;background:linear-gradient(135deg,#fff7fb,#f6f0ff)}
.enc-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.enc-badge{font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;background:linear-gradient(135deg,#ff7aa8,#a56bff);color:#fff}
.enc-head small{font-size:11px;color:#7a6a66}
.quiz-results,.quiz-card,.encounter,.mv-embed{min-width:0;max-width:100%}
.quiz-card,.encounter{overflow:hidden}
.dp-quiz button.primary,.dp-quiz button{background:#fff!important;color:#8a3fd1!important;box-shadow:none}
.encounter .mv-thumb{aspect-ratio:auto;height:150px}
.encounter .mv-embed iframe{aspect-ratio:16/9}
.encounter .qc-actions button{padding:9px}

/* ホームのタブ */
.home-tabs-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:0 0 14px;padding:5px;border-radius:16px;background:#f6eff4;position:sticky;top:6px;z-index:5;box-shadow:0 4px 14px rgba(120,60,140,.08)}
.home-tabs-bar button{display:grid;justify-items:center;gap:1px;padding:8px 4px;border:0;border-radius:12px;background:transparent;font-weight:800;font-size:14px;color:#6a5c6a;cursor:pointer}
.home-tabs-bar button small{font-size:10px;font-weight:700;opacity:.7}
.home-tabs-bar button.active{background:linear-gradient(135deg,#ff7aa8,#a56bff);color:#fff;box-shadow:0 4px 12px rgba(165,107,255,.3)}
.home-tab-empty{margin:8px 0 16px;padding:16px;border-radius:14px;background:#fff;border:1px dashed #e5d4ec;color:#6a5c66;font-size:14px;text-align:center}
.home-tab-empty[hidden]{display:none}
/* 当選したら入金期限 */
.payment-prompt{margin:0 0 14px;padding:14px;border-radius:16px;background:linear-gradient(135deg,#fff3f8,#f3ecff);border:1px solid #ecd3ea}
.payment-prompt p{margin:6px 0 10px;font-size:13px;line-height:1.6;color:#5c4f4b}
.payment-prompt small{display:block;margin-top:6px;font-size:11.5px;color:#7a6a66}
.payment-form{display:flex;gap:8px;flex-wrap:wrap}
.payment-form input{flex:1 1 180px;padding:10px;border-radius:10px;border:1px solid #e6d9d4;font-size:15px}
.payment-form button{padding:10px 16px;border-radius:999px;border:0;background:linear-gradient(135deg,#ff7aa8,#a56bff);color:#fff;font-weight:800;cursor:pointer}
/* お祝い画像 */
.celebrate-btn{margin-left:auto;padding:8px 12px;border-radius:999px;border:0;background:linear-gradient(135deg,#ff7aa8,#a56bff);color:#fff;font-weight:800;font-size:12px;cursor:pointer;white-space:nowrap}
.daily-celebrate{flex-wrap:wrap}
.home-tabs-bar button.active,.home-tabs-bar button[aria-pressed="true"]{background:linear-gradient(135deg,#ff7aa8,#a56bff)!important;color:#fff!important}

/* 画面の明るさ */
.mode-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mode-chips button{display:grid;justify-items:center;gap:2px;padding:10px 6px;border-radius:14px;border:2px solid #eadfe6;background:#fff;font-weight:800;cursor:pointer}
.mode-chips button span{font-size:20px}
.mode-chips button.selected{border-color:#b26bff;background:#f8f1ff}
/* 全体の検索 */
.search-open svg{display:block}
.search-backdrop{position:fixed;inset:0;z-index:1400;background:rgba(30,22,30,.45);display:flex;justify-content:center;align-items:flex-start;padding:max(10px,env(safe-area-inset-top)) 10px 10px}
.search-panel{width:min(640px,100%);max-height:calc(100dvh - 20px);display:flex;flex-direction:column;background:#fffaf8;border-radius:22px;box-shadow:0 20px 50px rgba(0,0,0,.25);overflow:hidden}
.search-bar{display:flex;align-items:center;gap:8px;padding:12px 12px 12px 16px;border-bottom:1px solid #f0e2e8;background:#fff}
.search-bar input{flex:1;min-width:0;border:0;outline:0;font-size:17px;background:transparent;padding:6px 0}
.search-cancel{border:0;background:none;color:#8a3fd1;font-weight:800;cursor:pointer;padding:6px 8px}
.search-results{overflow:auto;padding:8px 10px 16px}
.search-hint{margin:10px 8px;color:#6a5c66;font-size:14px;line-height:1.6}
.search-suggest{display:flex;flex-wrap:wrap;gap:8px;padding:0 8px}
.search-suggest button{padding:8px 14px;border-radius:999px;border:1px solid #e6d4ee;background:#fff;font-weight:700;cursor:pointer}
.search-group h3{margin:12px 8px 6px;font-size:13px;color:#8a3fd1}
.search-group h3 small{opacity:.7;margin-left:4px}
.search-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 8px;border:0;border-radius:12px;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit}
.search-item:hover,.search-item:focus-visible{background:#f6effa}
.search-icon{width:42px;height:42px;flex:none;border-radius:12px;display:grid;place-items:center;font-size:20px;background:#f6effa;overflow:hidden}
.search-icon img{width:100%;height:100%;object-fit:cover}
.search-text{display:grid;min-width:0;flex:1}
.search-text b{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.search-text small{font-size:12px;color:#7a6a74;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.search-item i{color:#b9a6c2;font-style:normal}

/* ② ホーム画面に追加（1行の帯） */
.install-bar{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:8px 8px 8px 10px;border-radius:14px;background:#fff;border:1px solid #f0dbe6}
.install-bar img{border-radius:9px;flex:none}
.install-bar span{flex:1;min-width:0;font-size:12.5px;line-height:1.4;color:#5c4f58}
.install-bar b{color:#2a2440}
.install-add{flex:none;padding:7px 14px;border-radius:999px;border:0;background:linear-gradient(135deg,#ff7aa8,#a56bff);color:#fff;font-weight:800;cursor:pointer}
.install-x{flex:none;width:30px;height:30px;border-radius:50%;border:0;background:transparent;color:#9a8a94;font-size:18px;cursor:pointer}
/* ③ カレンダーの開始時刻 */
.agenda-time{display:block;font-size:11px;font-weight:800;opacity:.8}
/* ⑤ LIVE 最新情報の「3 / 24」 */
.lt-count{text-align:center;padding-top:8px;font-size:12px;color:#8a7a84;font-variant-numeric:tabular-nums}
.lt-count b{color:var(--user-accent,#df6557)}
/* ⑥ ログイン中のスマホでは、上の見出しを小さく */
@media (max-width:760px){
  body.signed-in #page-title,body.signed-in header h1{font-size:22px!important;line-height:1.3!important;margin:0!important}
  body.signed-in[data-view="home"] #page-title{white-space:normal!important;font-size:17px!important}
  body.signed-in[data-view="home"] header p,body.signed-in[data-view="home"] header .eyebrow{display:none}
}
/* ⑦ 今日の出会いの MV を小さく */
.encounter .mv-thumb{height:118px}
.encounter .mv-embed small{display:none}
/* ⑧ 右上の名前ボタン：長いニックネームは「…」で */
.account-control{max-width:9.5em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* 新しい版のお知らせ */
.new-version-bar{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:1500;display:flex;gap:12px;align-items:center;padding:12px 18px;border:0;border-radius:999px;background:linear-gradient(135deg,#ff7aa8,#a56bff);color:#fff;font-weight:700;font-size:14px;box-shadow:0 10px 30px rgba(120,60,160,.35);cursor:pointer;white-space:nowrap}
.new-version-bar b{background:rgba(255,255,255,.25);padding:4px 10px;border-radius:999px}
@media (min-width:900px){.new-version-bar{bottom:24px}}
/* スマホでログイン中は、右上はアイコン（頭文字・写真）だけ。見出しが折り返さないように */
@media (max-width:760px){body.signed-in .account-control{display:none}}
/* カレンダー（パソコン幅）：7列を同じ幅に。長い公演名は「…」で */
.calendar{grid-template-columns:repeat(7,minmax(0,1fr))!important}
.day .event-chip{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
