/* ====================================================================
 * 速链静态工具类（由 tailwind-browser 运行时编译预生成，替代 275KB JIT）
 * 仅包含本页实际用到的类；顺序在 quick.css 之后，保持工具类优先级
 * ==================================================================== */

/* display */
.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.hidden{display:none}

/* layout */
.relative{position:relative}.absolute{position:absolute}.left-3{left:12px}.top-1\/2{top:50%}
.pointer-events-none{pointer-events:none}
.overflow-hidden{overflow:hidden}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.flex-1{flex:1 1 0%}
.mx-auto{margin-left:auto;margin-right:auto}.mx-1{margin-left:4px;margin-right:4px}
.ml-2{margin-left:8px}.ml-auto{margin-left:auto}.mr-2{margin-right:8px}
.mt-0\.5{margin-top:2px}.mt-1{margin-top:4px}.mt-1\.5{margin-top:6px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-8{margin-top:32px}
.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-5{margin-bottom:20px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}
.p-1\.5{padding:6px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.p-5{padding:20px}
.px-1\.5{padding-left:6px;padding-right:6px}.px-2{padding-left:8px;padding-right:8px}.px-4{padding-left:16px;padding-right:16px}
.py-0\.5{padding-top:2px;padding-bottom:2px}.py-1{padding-top:4px;padding-bottom:4px}.py-2{padding-top:8px;padding-bottom:8px}.py-3{padding-top:12px;padding-bottom:12px}.py-10{padding-top:40px;padding-bottom:40px}.py-12{padding-top:48px;padding-bottom:48px}
.pl-9{padding-left:36px}

/* flex/grid 对齐 */
.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}
.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}
.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-cols-\[minmax\(0\,1fr\)_100px_140px_140px_120px\]{grid-template-columns:minmax(0,1fr) 100px 140px 140px 120px}

/* space-y */
.space-y-2>*+*{margin-top:8px}.space-y-3>*+*{margin-top:12px}.space-y-4>*+*{margin-top:16px}.space-y-5>*+*{margin-top:20px}

/* sizing */
.w-3\.5{width:14px}.w-4{width:16px}.w-10{width:40px}.w-12{width:48px}
.h-3\.5{height:14px}.h-4{height:16px}.h-10{height:40px}.h-12{height:48px}
.max-w-xl{max-width:576px}

/* typography */
.text-xs{font-size:12px;line-height:16px}.text-sm{font-size:14px;line-height:20px}.text-base{font-size:16px;line-height:24px}
.text-lg{font-size:18px;line-height:28px}.text-2xl{font-size:24px;line-height:32px}.text-3xl{font-size:30px;line-height:36px}.text-4xl{font-size:36px;line-height:40px}
.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-normal{font-weight:400}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}
.tracking-tight{letter-spacing:-0.025em}.tracking-wider{letter-spacing:0.05em}
.text-center{text-align:center}.text-right{text-align:right}.uppercase{text-transform:uppercase}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}

/* borders/effects */
.rounded{border-radius:6px}.rounded-lg{border-radius:8px}.rounded-xl{border-radius:12px}
.transition{transition-property:color,background-color,border-color,text-decoration-color,opacity,box-shadow,transform,filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.-translate-y-1\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x,0),var(--tw-translate-y,-50%))}

/* hover */
.hover\:underline:hover{text-decoration-line:underline}
.hover\:bg-muted:hover{background-color:rgba(255,255,255,.48)}
.hover\:bg-white\/30:hover{background-color:rgba(255,255,255,.3)}
.hover\:bg-white\/50:hover{background-color:rgba(255,255,255,.5)}
.hover\:bg-rose-500\/10:hover{background-color:rgba(244,63,94,.1)}

/* sm ≥640 */
@media (min-width:640px){
  .sm\:flex-row{flex-direction:row}
}

/* md ≥768 */
@media (min-width:768px){
  .md\:grid{display:grid}
  .md\:inline{display:inline}
  .md\:hidden{display:none}
  .md\:mt-6{margin-top:24px}
  .md\:p-5{padding:20px}
  .md\:text-lg{font-size:18px;line-height:28px}
  .md\:text-3xl{font-size:30px;line-height:36px}
  .md\:text-4xl{font-size:36px;line-height:40px}
  .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
}
