
.portal-simulate:has(.mock-refined) .portal-heading{display:none}
.portal-page .mock-refined{display:grid!important;grid-template-columns:minmax(0,900px) 280px;gap:20px;width:100%!important;margin:0!important}
.portal-page .mock-refined>.left{float:none!important;width:auto!important;min-width:0}
.mock-refined .mock-hero{height:240px;background:linear-gradient(120deg,#202d68,#30447d);border-radius:16px;overflow:hidden;position:relative;color:white;text-align:center;margin-bottom:24px;padding:24px 40px 0;box-sizing:border-box}
.mock-refined .mock-hero[hidden]{display:none}
.mock-hero-top{display:flex;justify-content:space-around;align-items:center;color:#aab9e3;font-size:16px}.mock-hero-top strong{font-size:20px;color:#fff}.mock-hero>p{margin:12px 0;color:#fff;font-size:16px}.mock-hero>button{position:absolute;right:12px;top:12px;border:0;border-radius:50%;background:#a2aecb;color:#253557;width:24px;height:24px;font-size:20px;cursor:pointer}.mock-hero-screen{width:46%;min-width:220px;margin:12px auto 0;background:#fff;border:7px solid #1c252d;border-radius:18px 18px 0 0;height:175px;text-align:left;color:#253b48;box-shadow:130px 45px 0 -18px #ffffff55,-130px 45px 0 -18px #ffffff55;padding:18px;box-sizing:border-box}.mock-hero-screen>span{font-size:10px;color:#087d85}.mock-hero-screen h2{font-size:20px;margin:10px 0}.mock-hero-screen p{font-size:12px}.mock-hero-lines{height:40px;margin-top:14px;background:repeating-linear-gradient(#eff3f5 0 5px,white 5px 12px)}
.mock-refined .mock-tabs{display:flex;gap:40px;background:#fff;border:1px solid #dfe5ee;border-radius:12px;padding:0 20px;margin-bottom:16px}.mock-tabs a{position:relative;padding:16px 0;font-size:18px;color:#0f172b}.mock-tabs a.is-active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;border-radius:3px;background:#1769ff}
.portal-page .mock-refined .mokaoContainer{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px!important;padding:0!important;margin:0!important;background:none!important}
.portal-page .mock-refined .mokaoContainer .item{width:auto!important;height:auto!important;min-height:126px;box-sizing:border-box;margin:0!important;padding:16px 20px!important;background:#fff!important;border:1px solid #e1e5ec!important;border-radius:12px!important;box-shadow:none!important;position:relative}
.portal-page .mock-refined .item-header{position:relative;padding:0!important;border:0!important}.portal-page .mock-refined .item-title{font-size:16px!important;font-weight:500!important;line-height:24px;color:#0f172b!important;padding-right:75px}.portal-page .mock-refined .item-date{font-size:12px!important;color:#71849e!important;margin:4px 0 0!important}.portal-page .mock-refined .item-status{position:absolute;top:0;right:0;font-size:12px;padding:3px 7px;border-radius:14px;background:#eef4ff!important;color:#1769ff!important}.mock-refined .status-completed:before,.mock-refined .status-active:before{content:"";display:inline-block;width:14px;height:14px;margin-right:4px;vertical-align:-2px;background:center/contain no-repeat}.mock-refined .status-completed:before{background-image:url("mock/mock-completed.png")}.mock-refined .status-active:before{background-image:url("mock/mock-in-progress.png")}
.portal-page .mock-refined .item-footer{position:relative;margin-top:16px!important;padding:0!important;min-height:32px}.portal-page .mock-refined .progress-bar-text{width:140px;font-size:12px!important;color:#71849e!important;line-height:18px}.mock-refined .progress-bar-text span{float:right}.portal-page .mock-refined .progress-bar{width:140px!important;height:6px!important;background:#f0f2f5!important;border-radius:4px;overflow:hidden;margin-top:7px}.portal-page .mock-refined .progress-fill{height:100%;background:#1769ff!important}.portal-page .mock-refined .item-buttons{position:absolute!important;right:0;bottom:0;display:flex;gap:12px;margin:0!important}.portal-page .mock-refined .item-buttons .btn{width:auto!important;min-width:96px;height:32px!important;line-height:30px!important;box-sizing:border-box;padding:0 16px!important;border:1px solid #1769ff!important;border-radius:18px!important;background:#fff!important;color:#1769ff!important;font-size:14px!important;margin:0!important;cursor:pointer}.portal-page .mock-refined .item-buttons .btn-goon{background:#edf3ff!important;border-color:#edf3ff!important}.portal-page .mock-refined .item-buttons .btn-success,.portal-page .mock-refined .item-buttons .btn-secondary{border-color:#e1e5ec!important;color:#273444!important}.portal-page .mock-refined .item:has(.status-completed) .progress-bar-text,.portal-page .mock-refined .item:has(.status-completed) .progress-bar{visibility:hidden}.portal-page .mock-refined .progress-bar-empty{max-width:45%;font-size:12px;color:#71849e}
.mock-sidebar{display:flex;flex-direction:column;gap:20px;min-width:0}.mock-ad{display:flex;flex-direction:column;justify-content:center;gap:8px;width:100%;height:120px;border:0;border-radius:12px;background:linear-gradient(125deg,#102c50,#263a78);color:white;text-align:left;padding:20px 28px;cursor:pointer}.mock-ad small{font-size:14px}.mock-ad strong{font-size:24px}.mock-ad span{font-size:12px;color:#cad9fc}.mock-quota{background:#344e9a;border-radius:12px;padding:16px;color:#fff}.mock-quota h2{font-size:20px;margin:0 0 4px}.mock-quota>p{color:#b3c4eb;font-size:14px;line-height:20px}.mock-quota-inner{background:#fff;border-radius:8px;margin-top:18px;padding:16px;text-align:center;color:#333}.mock-quota-inner>strong{color:#344e9a;font-size:24px;font-weight:500}.mock-quota-inner p{font-size:16px;margin:6px 0 10px}.mock-refined .mock-quota .buy-btn{border:1px solid #ffe2d4;border-radius:18px;background:#fff5ef;color:#ff703b;font-size:12px;padding:4px 12px;cursor:pointer}.mock-study-tools{border-radius:12px;background:white;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.mock-study-tools h2{grid-column:1/-1;font-size:16px;margin:0;color:#273444}.mock-study-tools a{background:#f7f9fc;border-radius:8px;padding:20px 4px;text-align:center;color:#71849e;font-size:12px}.mock-study-tools a span{display:block;width:56px;height:56px;border-radius:14px;background:#edf3ff;color:#1769ff;font-size:26px;line-height:56px;margin:0 auto 8px}
@media not all /* PC layout: responsive collapse disabled */{.portal-page .mock-refined{grid-template-columns:minmax(0,1fr) 240px}.portal-page .mock-refined .mokaoContainer{grid-template-columns:1fr}}
@media not all /* PC layout: responsive collapse disabled */{.portal-page .mock-refined{grid-template-columns:1fr}.mock-sidebar{display:grid;grid-template-columns:1fr}.mock-refined .mock-hero{height:210px;padding:24px 12px 0}.mock-hero-top{font-size:13px}.mock-hero-top strong{font-size:17px}.portal-page .mock-refined .mokaoContainer .item{padding:16px!important}.mock-refined .mock-tabs{gap:30px}.mock-tabs a{font-size:16px}}
.portal-page .mock-refined .mokaoContainer .item{min-height:126px!important;display:block!important}
.portal-page .mock-refined .item-title{margin:0!important}
.portal-page .mock-refined .item-status{position:absolute!important;margin:0!important;border-radius:14px!important}
.portal-page .mock-refined .mock-quota .buy-btn{border-color:#ffe2d4!important;border-radius:18px!important;background:#fff5ef!important;color:#ff703b!important;padding:4px 12px!important}

.mock-refined .mock-hero>button{display:flex;align-items:center;justify-content:center;padding:4px}.mock-refined .mock-hero>button img{display:block;width:16px;height:16px}

.mock-navigation{background:#fff;border:1px solid #dfe5ee;border-radius:12px;margin-bottom:16px;overflow:hidden}
.mock-refined .mock-navigation .mock-tabs{border:0;border-radius:0;margin:0}
.mock-subject-tabs{display:flex;gap:8px;padding:20px;border-top:1px solid #e7ecf3}
.mock-subject-tabs a{padding:8px 14px;border-radius:8px;font-size:14px;color:#647080}
.mock-subject-tabs a.is-active{background:#eff4ff;color:#1769ff;font-weight:600}
.portal-page .mock-single .s-panel .l-block{width:100%!important;float:none!important}
.portal-page .mock-single .s-panel .itop{display:block!important;margin:0!important}
.portal-page .mock-single .s-panel .cssContinue{border:0!important;box-shadow:none!important;background-image:none!important;width:auto!important;height:auto!important;font-size:12px!important}
.portal-page .mock-single .s-panel .ibottom{display:flex;gap:16px;margin-top:6px;color:#71849e;font-size:12px}
.portal-page .mock-single .s-panel .ibottom label,.portal-page .mock-single .s-panel .ibottom p{float:none!important;margin:0!important;font-size:12px!important}
.portal-page .mock-single .s-panel .r-block{position:absolute!important;right:20px;bottom:16px;width:auto!important;float:none!important;display:flex!important;gap:12px!important;padding:0!important;border:0!important}
.portal-page .mock-single .s-panel .r-block a{display:inline-block!important;width:auto!important;min-width:96px!important;height:32px!important;line-height:30px!important;padding:0 16px!important;box-sizing:border-box;border:1px solid #1769ff!important;border-radius:18px!important;background:#fff!important;color:#1769ff!important;font-size:14px!important;margin:0!important}
.portal-page .mock-single .s-panel .r-block a[data-mode="1"]{background:#edf3ff!important;border-color:#edf3ff!important}
.portal-page .mock-single .s-panel .r-block[data-status="1"] a{border-color:#e1e5ec!important;color:#273444!important}
.mock-sidebar a.mock-ad{box-sizing:border-box;color:#fff!important;text-decoration:none}
.mock-navigation a:focus:not(:focus-visible){outline:none;box-shadow:none}

.mock-single-progress{margin-top:20px;min-height:32px;color:#71849e;font-size:12px}.portal-page .mock-single .s-panel .r-block a[data-mode="2"]{order:2}
.portal-page .mock-single .s-panel .cssContinue::after{content:none}

/* Explicit spacing and transparent list shell override legacy mock styles. */
.portal-page .mock-refined>.left{background:transparent!important;border:0!important;box-shadow:none!important}
.portal-page .mock-refined .mock-navigation{margin:0 0 16px!important}
.portal-page .mock-refined .mokaoContainer{background:transparent!important;border:0!important;box-shadow:none!important;margin:16px 0 0!important}
.portal-page .mock-refined .mock-hero{margin:0 0 24px!important}

/* Three rotating advantages, shared by full and single-subject mock lists. */
.portal-page .mock-refined .mock-carousel{position:relative;height:240px;padding:0!important;background:radial-gradient(ellipse at 50% 80%,#344b85,#20316a 75%);isolation:isolate}
.portal-page .mock-refined .mock-carousel[hidden]{display:none!important;margin:0!important}
.mock-carousel .mock-feature{position:absolute;top:24px;left:50%;width:33.333%;height:100%;transform:translateX(-50%);transition:left .45s ease;pointer-events:none}
.mock-carousel .mock-feature.is-left{left:16.666%;z-index:1}.mock-carousel .mock-feature.is-right{left:83.333%;z-index:1}.mock-carousel .mock-feature.is-center{z-index:2}
.mock-carousel .mock-feature-title{display:block;position:relative;margin:0 auto;padding:0;border:0;background:transparent;color:#9baacd;font:inherit;font-size:16px;line-height:28px;white-space:nowrap;cursor:pointer;pointer-events:auto}
.mock-carousel .is-center .mock-feature-title{font-size:20px;color:#fff;font-weight:500}
.mock-carousel .mock-feature-description{position:absolute;top:36px;left:50%;transform:translateX(-50%);margin:0!important;font-size:16px;line-height:24px;color:#e1e8fa;white-space:nowrap;opacity:0;transition:opacity .3s}
.mock-carousel .is-center .mock-feature-description{opacity:1}
.mock-carousel .mock-feature-art{position:absolute;top:115px;left:50%;width:68%;transform:translateX(-50%);height:auto;aspect-ratio:2;opacity:.5;transition:width .45s,top .45s,opacity .45s}
.mock-carousel .is-center .mock-feature-art{width:102%;top:68px;opacity:1}
.mock-carousel .mock-screen{position:absolute;top:0;left:0;width:100%;height:auto;display:block}
.mock-carousel .mock-tablet{position:absolute;top:-7%;left:-4%;width:108%;height:auto;display:block;opacity:0}
.mock-carousel .is-center .mock-tablet{opacity:1}
.mock-carousel .mock-detail{position:absolute;z-index:2;height:auto;opacity:0;transition:opacity .3s}
.mock-carousel .is-center .mock-detail{opacity:1}
.mock-carousel .mock-detail-left{width:43%;left:-16%;top:43%}.mock-carousel .mock-detail-right{width:43%;right:-15%;top:6%}
.mock-carousel [data-mock-feature="1"] .mock-detail-right{width:29%}
.mock-refined .mock-carousel>button.mock-carousel-close{z-index:5;top:12px;right:12px;left:auto;bottom:auto}
@media(prefers-reduced-motion:reduce){.mock-carousel .mock-feature,.mock-carousel .mock-feature-art,.mock-carousel .mock-detail,.mock-carousel .mock-feature-description{transition:none}}

.portal-page .mock-single .s-panel .item-date{margin:4px 0 0!important;line-height:18px!important}
.portal-page .mock-single .mock-single-progress{margin-top:16px;min-height:32px}
.portal-page .mock-single .mock-card-score{font-size:14px;color:#71849e;line-height:32px}
.portal-page .mock-single .mock-card-score strong{color:#1769ff;font-weight:500}
.portal-page .mock-single .s-panel .r-block[data-status="0"] a[data-mode="0"]{display:none!important}

/* Main artwork, then left and right details; dwell starts after 1.2s entry. */
.mock-carousel .is-center.is-entering .mock-screen,.mock-carousel .is-center.is-entering .mock-tablet{animation:mock-main-enter .45s cubic-bezier(.2,.8,.2,1) both}
.mock-carousel .is-center.is-entering .mock-detail-left{animation:mock-detail-bounce .5s .45s both;transition:none}
.mock-carousel .is-center.is-entering .mock-detail-right{animation:mock-detail-bounce .5s .7s both;transition:none}
@keyframes mock-main-enter{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes mock-detail-bounce{0%{opacity:0;transform:translateY(18px) scale(.82)}55%{opacity:1;transform:translateY(-7px) scale(1.06)}78%{opacity:1;transform:translateY(3px) scale(.98)}100%{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.mock-carousel .is-center.is-entering img{animation:none!important}}

/* Neutralize legacy single-paper hover panels; both card families use the same geometry. */
.portal-page .mock-refined .mokaoContainer>.item{height:128px!important;min-height:128px!important;padding:16px 20px!important;position:relative!important;display:block!important;box-sizing:border-box!important}
.portal-page .mock-refined .mokaoContainer>.item .item-header{position:relative!important;min-height:0!important;height:46px!important;padding:0!important;margin:0!important;float:none!important;transform:none!important}
.portal-page .mock-single .s-panel .itop{min-height:0!important;height:24px!important;position:static!important}
.portal-page .mock-refined .mokaoContainer>.item .item-title{font-size:16px!important;font-weight:500!important;line-height:24px!important;margin:0!important;padding:0 76px 0 0!important}
.portal-page .mock-refined .mokaoContainer>.item .item-footer,.portal-page .mock-refined .mokaoContainer>.item .mock-single-progress{position:static!important;height:32px!important;min-height:32px!important;margin:16px 0 0!important;padding:0!important}
.portal-page .mock-refined .mokaoContainer>.item .item-buttons{position:absolute!important;inset:auto 20px 16px auto!important;min-height:0!important;height:32px!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;transform:none!important;opacity:1!important;visibility:visible!important;display:flex!important;align-items:center!important;gap:12px!important;z-index:2}
.portal-page .mock-single .s-panel .r-block a{top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;opacity:1!important;visibility:visible!important;transform:none!important;float:none!important;font-weight:500!important}
.portal-page .mock-single .cssTpoListContent{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0 0 16px!important}

/* Match the complete list width, overriding inherited legacy tab widths. */
.portal-page .mock-refined .mock-navigation,.portal-page .mock-refined .mock-navigation .mock-tabs{width:100%!important;max-width:none!important;box-sizing:border-box!important;float:none!important}

.portal-page .mock-quota{background:#344e9a url("mock/ets-quota-background.png") center top/100% 100% no-repeat}

/* Keep the quota purchase label and supplied arrow centered together. */
.portal-page .mock-refined .mock-quota .buy-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;vertical-align:middle;line-height:20px}
.mock-quota .buy-btn .mock-quota-arrow{display:block;width:20px;height:20px;flex:0 0 20px;margin:0;object-fit:contain}
