/* compute page styles — owned by the compute page owner. Shared rules stay in ../pages.css (read-only for page owners). */
.compute-showcase{position:relative;isolation:isolate;overflow:hidden;contain:paint;padding:20px 16px 12px;margin-bottom:16px;border-radius:0 0 22px 22px;background:linear-gradient(155deg,#F6F9FF,#E6F1FF)}
.compute-showcase .lt{position:relative;z-index:1;margin:0;padding:0}
.compute-showcase .lt h1{font-size:clamp(22px,5.7vw,26px);line-height:1.3}
.compute-showcase .lt p{font-size:14px;line-height:1.55;margin-top:8px}
.compute-visual{position:relative;height:178px;margin:8px -16px 0;overflow:hidden}
.compute-network{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.compute-network--motion{visibility:hidden}
.compute-showcase[data-ambient="running"] .compute-network--motion{visibility:visible}
.compute-showcase[data-ambient="running"] .compute-network--still{visibility:hidden}
@media (prefers-reduced-motion:reduce){.compute-showcase .compute-network--motion{display:none}.compute-showcase .compute-network--still{visibility:visible}}
.page-compute .cp-hero{padding:16px}
.page-compute .cp-token .btn-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.page-compute .cp-token .btn{display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;height:auto;padding:10px 8px;font-size:var(--fs-13);line-height:1.3;gap:6px;text-align:center;box-shadow:none}
.page-compute .cp-token .btn>span{min-width:0}
.page-compute .cp-token .btn--glass{border:1px solid var(--blue-line)}
.page-compute .cp-token .btn::after{content:"";position:absolute;inset:-2px 0}
.page-compute .cp-token .btn .ico{width:16px;height:16px;flex:none;margin:0}
.page-compute .cp-flow{gap:8px}
.page-compute .dev-img,.sheet--compute .dev-img{background:#fff;border-radius:14px}
.page-compute .dev-img img,.sheet--compute .dev-img img{object-fit:contain;padding:3px}
.page-compute .cp-live{margin-top:var(--gap)}
.page-compute .cp-cats{margin:0 0 12px}
.page-compute .cp-cats .chips{padding-top:4px;padding-bottom:4px;gap:6px;flex-wrap:wrap;overflow:visible;margin:0;padding-inline:0}
.page-compute .cp-cats .chip{padding-inline:10px;gap:4px}
@media (max-width:359px){.page-compute .cp-cats .chip{padding-inline:8px}}
.page-compute .dev-list{margin-top:2px}
.page-compute .dev-name{overflow-wrap:anywhere}
.page-compute .dev-nums{flex-wrap:wrap}
.page-compute .dev-yield b{white-space:nowrap}
.page-compute .cp-order .row-main{min-width:0}
.page-compute .cp-order .row-sub{overflow-wrap:anywhere}
.page-compute .cp-more{display:flex;justify-content:center;border-top:1px solid var(--hairline);margin-top:2px}

/* sheets: compute confirmation and redeem */
.sheet--compute .cp-qc:not(:empty),.sheet--compute .cp-err:not(:empty),
.sheet--redeem .cp-qc:not(:empty),.sheet--redeem .cp-err:not(:empty){margin-bottom:12px}
.sheet--compute .sheet-dev > div{min-width:0}
.sheet--compute .sheet-dev .fine{display:block;margin-top:2px}
.sheet--compute .dev-img.sm .img-todo{border-radius:inherit}
.sheet--compute .cp-card,.sheet--redeem .cp-card{margin-top:14px}
.sheet--redeem .cp-card--rd{margin-top:12px}
.sheet--compute .reason + .reason{margin-top:6px}
.sheet--redeem .cp-rdnote{margin-top:10px}
.cp-order{width:100%;text-align:left}
.cp-order > .ico{flex:none;color:var(--ink-3)}
.cp-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0}
.cp-detail-head h3{min-width:0;overflow-wrap:anywhere}
.cp-detail-card .kv{align-items:flex-start;gap:12px}
.cp-detail-card .kv > span{flex:1;min-width:0}
.cp-detail-card .kv > b{flex:1;min-width:0;text-align:right;overflow-wrap:anywhere}
.cp-detail-card .kv:first-child{flex-direction:column;gap:0}
.cp-detail-card .kv:first-child > b{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;text-align:left}
.cp-detail-note{margin:12px 0;line-height:1.6}
.sheet--compute-order .row{align-items:flex-start}
.sheet--compute-order .row-sub{overflow-wrap:anywhere}
.sheet--compute-order .row-end{max-width:45%;overflow-wrap:anywhere}
