:root{
  --bg:#fafafa;--text:#1a1a1a;--muted:#666;--border:#e6e6e6;
  --card:#fff;--shadow:0 2px 12px rgba(0,0,0,.06);
  --primary:#d18700;--primary-ink:#b77500;--accent:#1a1a1a;
  --lb-max-w:820px;--lb-max-h:88dvh;--lb-pad:10px;--lb-info-h:140px;
  --sz-thumb:100px;
}
@media(min-width:480px){:root{--sz-thumb:110px;}}

*{box-sizing:border-box;border-radius:0!important;}
html,body{overflow-x:hidden;scroll-behavior:smooth;}
body{
  background:var(--bg);color:var(--text);
  font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;
  padding-bottom:64px;
}
a{color:inherit;text-decoration:none;}
.save-hint{font-size:12px;margin:4px 0 0;display:none;}
.hint-success{color:#0a7f3f;}
.hint-error{color:#b42318;}

.profile-section{padding:20px 12px;background:var(--card);border-bottom:1px solid var(--border);}
.profile-image img{width:96px;height:96px;object-fit:cover;border:1px solid #ddd;}
.profile-title{font-size:1.8rem;margin:0;line-height:1.2;}
#artist-account{color:var(--muted);font-size:.95rem;}

.segmented-tabs{
  position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:8px;
  padding:6px 10px;background:var(--card);border-top:1px solid var(--border);border-bottom:1px solid var(--border);
  flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;
}
.segmented-tabs::-webkit-scrollbar{display:none;}
.segmented-tabs .seg-tab{
  flex:0 0 auto;padding:10px 12px;font-weight:800;font-size:1.05rem;
  color:var(--text);background:transparent;border:none;cursor:pointer;
}
.segmented-tabs .seg-tab:hover,.segmented-tabs .seg-tab:focus-visible{background:rgba(0,0,0,.04);outline:none;}
.segmented-tabs .seg-tab.is-active{color:var(--primary);border-bottom:2px solid var(--primary);}
@media(max-width:400px){.segmented-tabs{gap:6px;}.segmented-tabs .seg-tab{padding:8px;font-size:.95rem;}}

.tab-content{padding:16px 12px 20px;background:var(--card);}
.tab-pane[hidden]{display:none!important;}

.bio-wrap{max-width:980px;margin:8px auto 0;padding:0 8px;}
.bio-stack{display:flex;flex-direction:column;gap:22px;}
.bio-item{padding:0;}
.bio-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:8px;}
.bio-title{font-size:1.125rem;font-weight:800;margin:0;display:flex;align-items:center;gap:4px;}
.bio-edit{
  width:22px;height:22px;color:#9a9a9a;opacity:.6;background:transparent;border:1px solid #dcdcdc;
  display:none;align-items:center;justify-content:center;transition:all .15s ease;
}
body.is-self .bio-edit{display:inline-flex;}
.bio-edit:hover{opacity:1;color:var(--primary);border-color:var(--primary);transform:scale(1.05);}
.bio-body{line-height:1.9;}
.bio-text,.bio-list li{font-size:1.05rem;line-height:1.9;}
.bio-list{list-style:none;padding:0;margin:0;}
.bio-list li.is-empty,.bio-text.is-empty{color:var(--muted);font-style:italic;opacity:.85;}
.bio-item.editing .bio-body{background:#fff8ec;border:1px dashed #f0ddbd;padding:10px;}
.inline-editor textarea,.inline-editor input[type=text]{
  width:100%;min-height:96px;border:1px solid var(--border);
  background:var(--card);color:var(--text);
  padding:10px 12px;font-size:1rem;line-height:1.6;resize:vertical;
}

.exhibitions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;}
.exhibition-card.card{
  background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden;position:relative;
}
.exhibition-card .card-img{width:100%;height:240px;object-fit:cover;display:block;}
.exhibition-card .card-body{padding:12px;}
.exhibition-card .card-title{font-weight:700;font-size:1rem;margin-bottom:6px;color:var(--accent);}
.exhibition-card .card-text{color:#555;font-size:.95rem;}
.exhibition-card .card-footer{display:flex;justify-content:flex-end;gap:8px;background:#fff;border-top:1px solid var(--border);}
.exhibition-card .days-left{position:absolute;left:10px;top:10px;background:rgba(26,26,26,.8);color:#fff;font-size:.85rem;padding:4px 8px;}
.role-2-only{display:none!important;}

#works-container .article{
  background:var(--card);border:1px solid var(--border);
  box-shadow:0 2px 10px rgba(0,0,0,.04);
  padding:12px 10px;margin-bottom:12px;
  display:flex;align-items:center;gap:12px;position:relative;
}
#works-container .article.row{margin-left:0;margin-right:0;}
#works-container .article.row>[class^=col-],#works-container .article.row>[class*=" col-"]{padding-left:0;padding-right:0;}
#works-container .article .col-3{flex:0 0 var(--sz-thumb);max-width:var(--sz-thumb);}
#works-container .article .col-8{flex:1 1 auto;max-width:100%;min-width:0;}
#works-container .article .thumb{
  width:var(--sz-thumb);height:var(--sz-thumb);overflow:hidden;background:#fff;border:1px solid #ddd;
}
#works-container .article .thumb img{width:100%;height:100%;object-fit:cover;display:block;}
#works-container .article h5{font-weight:800;font-size:1.1rem;margin:0 0 4px;color:var(--accent);}
#works-container .article .description{font-size:.98rem;color:#666;margin:0;}
#works-container .edit-btn,#works-container .delete-btn{
  position:absolute;width:26px;height:26px;
  display:flex;align-items:center;justify-content:center;
  background:#ffffffcc;color:#333;border:1px solid #dcdcdc;
  opacity:0;pointer-events:none;transition:all .15s;
}
#works-container .edit-btn{top:4px;left:4px;}
#works-container .delete-btn{top:4px;right:4px;}
#works-container .article:hover .edit-btn,#works-container .article:hover .delete-btn{opacity:1;pointer-events:auto;}
#works-container .edit-btn:hover,#works-container .delete-btn:hover{background:#fff;border-color:var(--primary);color:var(--primary);transform:scale(1.05);}
@media(max-width:360px){
  #works-container .article{flex-direction:column;align-items:flex-start;}
  #works-container .article .col-3,#works-container .article .col-8{width:100%;max-width:100%;}
}

#favorites-container.favorites-grid{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:2px;width:100%;margin-top:10px;
}
#favorites-container .favorite-item{
  position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;background:#f2f2f2;border:1px solid #eaeaea;
}
#favorites-container .favorite-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
#favorites-container .favorite-item:hover img{filter:brightness(1.03);}
@media(min-width:1200px){#favorites-container.favorites-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
.fav-empty{text-align:center;color:#8a8a8a;padding:40px 0;font-style:italic;}

#following-container,#followers-container{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;
}
.follow-card{
  background:var(--card);border:1px solid var(--border);
  display:flex;align-items:center;gap:10px;padding:10px;
  box-shadow:0 1px 6px rgba(0,0,0,.04);
}
.follow-card .avatar{width:52px;height:52px;object-fit:cover;flex:0 0 auto;border:1px solid #ddd;}
.follow-card .name{font-weight:700;color:var(--accent);font-size:1.02rem;}
.follow-card .account{font-size:.9rem;color:#777;}
#btn-follow,#btn-message{display:none;}

.artwork-detail-dialog{
  padding:0!important;border:0!important;
  max-width:min(92dvw,var(--lb-max-w))!important;
  width:auto!important;max-height:var(--lb-max-h)!important;overflow:hidden!important;
}
.artwork-detail-dialog::backdrop{background:rgba(0,0,0,.4);overscroll-behavior:contain;}
#lbWrap{width:100%!important;height:100%!important;overflow:hidden!important;}
#lbInner{
  width:min(92dvw,var(--lb-max-w))!important;max-height:var(--lb-max-h)!important;
  height:auto!important;margin:0 auto!important;display:grid!important;
  grid-template-rows:1fr auto!important;padding:var(--lb-pad) var(--lb-pad) 0 var(--lb-pad)!important;box-sizing:border-box!important;
}
#lbImageBox{
  min-height:0!important;
  max-height:calc(var(--lb-max-h) - var(--lb-info-h) - var(--lb-pad))!important;
  background:#000!important;overflow:hidden!important;
}
#detailImage{display:block!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;}
#lbInfo{
  max-height:var(--lb-info-h)!important;overflow:auto!important;background:#fff;border-top:1px solid #efefef;padding-top:10px;
}
.artwork-detail-dialog .detail-close-x{
  position:absolute!important;top:calc(var(--lb-pad) + 2px)!important;right:calc(var(--lb-pad) + 2px)!important;
  width:32px;height:32px;background:#fff!important;color:#333!important;border:1px solid rgba(0,0,0,.1)!important;box-shadow:0 2px 8px rgba(0,0,0,.12)!important;cursor:pointer;
}
body.no-scroll{overflow:hidden!important;}

@keyframes fadeIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}
.ig-comment.new{animation:fadeIn .3s ease;}
@media(max-width:768px){.bio-wrap{padding:0 6px;}.profile-title{font-size:1.4rem;}.exhibitions-grid{grid-template-columns:1fr;}}

/* === HOTFIX === */
#works-container .article.row{display:flex;flex-wrap:nowrap!important;align-items:center;gap:12px;margin-left:0;margin-right:0;}
#works-container .article.row>[class^="col-"],
#works-container .article.row>[class*=" col-"]{padding-left:0!important;padding-right:0!important;}
#works-container .article .col-3{flex:0 0 var(--sz-thumb)!important;width:var(--sz-thumb)!important;max-width:var(--sz-thumb)!important;}
#works-container .article .col-8{flex:1 1 auto!important;width:auto!important;max-width:100%!important;min-width:0!important;}
#works-container .article .thumb{width:var(--sz-thumb)!important;height:var(--sz-thumb)!important;}
#works-container .article .thumb img{width:100%;height:100%;object-fit:cover;display:block;}
@media(max-width:360px){
  #works-container .article.row{flex-wrap:wrap!important;}
  #works-container .article .col-3,#works-container .article .col-8{width:100%!important;max-width:100%!important;flex:0 0 100%!important;}
}
