/* AC Team Enterprise V4.6 | Cases: master / detail enterprise layout
   ONLY case search/detail pages. No HTML element is hidden or disabled.
   No pointer-events manipulation. All native forms and links remain intact.
   Browsers: Chromium 105+, Firefox 121+, Safari 15.4+ (:has supported).
*/
:root{--v46-ink:#172b3a;--v46-navy:#101f33;--v46-navy2:#162b45;--v46-gold:#d9ac61;--v46-teal:#107c7c;--v46-line:#e1e7ec;--v46-muted:#607486;--v46-paper:#f5f7f9;--v46-radius:16px}
body:has(.case-search-hero),body:has(.progress-detail-layout){background:var(--v46-paper);color:var(--v46-ink);font-family:"Microsoft JhengHei","Noto Sans TC",system-ui,sans-serif}
/* The compact header is only for query + progress pages, not the public home or report form. */
body:has(.case-search-hero) .public-header,body:has(.progress-detail-layout) .public-header{height:auto!important;min-height:78px!important;padding:9px clamp(18px,3.5vw,60px)!important;background:#fff!important;border-bottom:1px solid #e4eaf0;box-shadow:0 1px 10px #1029400c;gap:18px;z-index:80}
body:has(.case-search-hero) .public-header .brand,body:has(.progress-detail-layout) .public-header .brand{gap:13px!important;min-width:0}
body:has(.case-search-hero) .public-header .brand-mark.public-logo,body:has(.progress-detail-layout) .public-header .brand-mark.public-logo{--public-logo-size:65px!important;width:65px!important;height:65px!important;max-width:65px!important;flex:0 0 65px!important;border-radius:10px!important;overflow:hidden}
body:has(.case-search-hero) .brand-mark.public-logo img,body:has(.progress-detail-layout) .brand-mark.public-logo img{width:100%!important;height:100%!important;object-fit:contain!important}
body:has(.case-search-hero) .public-header .brand-copy strong,body:has(.progress-detail-layout) .public-header .brand-copy strong{font-size:clamp(17px,1.4vw,21px)!important;letter-spacing:.015em;line-height:1.3!important;color:#182d40}
body:has(.case-search-hero) .public-header .brand-copy small,body:has(.progress-detail-layout) .public-header .brand-copy small{font-size:11px!important}
body:has(.case-search-hero) .public-header .public-nav,body:has(.progress-detail-layout) .public-header .public-nav{display:flex!important;align-items:center;gap:3px!important;flex-wrap:wrap;justify-content:flex-end;min-width:0}
body:has(.case-search-hero) .public-header .public-nav a,body:has(.progress-detail-layout) .public-header .public-nav a{padding:11px 12px!important;font-size:14px!important;border-radius:9px!important;white-space:normal}
body:has(.case-search-hero) .public-header .public-nav .login-link,body:has(.progress-detail-layout) .public-header .public-nav .login-link{background:#112a44!important;color:#fff!important}
/* Clear, enterprise-like master/detail split: search and instructions at left; results right. */
body:has(.case-search-hero) main{display:grid!important;grid-template-columns:minmax(310px,34%) minmax(0,1fr)!important;align-items:stretch;min-height:calc(100vh - 150px);background:#f7f9fb}
body:has(.case-search-hero) main>.case-search-hero{grid-column:1;grid-row:1;padding:0!important;position:relative!important;isolation:isolate;min-height:630px!important;background:linear-gradient(165deg,#142b45 0%,#11253d 53%,#0d1e33 100%)!important;border:0!important;color:#fff!important;overflow:hidden}
body:has(.case-search-hero) main>.case-search-hero::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,#d9ac61,#86b7ba)}
body:has(.case-search-hero) main>.case-search-hero::after{content:"";width:330px;height:330px;position:absolute;right:-210px;bottom:-160px;border-radius:50%;border:1px solid #d9ac6129;box-shadow:0 0 0 64px #d9ac610a,0 0 0 145px #d9ac6108;pointer-events:none}
body:has(.case-search-hero) .case-search-hero>.case-search-shell{width:auto!important;max-width:none!important;padding:clamp(34px,5vw,86px) clamp(26px,4vw,72px) 40px!important;margin:0!important;position:relative;z-index:1}
body:has(.case-search-hero) .case-search-hero .kicker{color:#dbbb7e!important;display:block;letter-spacing:.16em;font-size:11px;font-weight:900;margin:0 0 17px;line-height:1.65}
body:has(.case-search-hero) .case-search-hero h1{font-size:clamp(31px,3.15vw,50px)!important;line-height:1.25!important;color:#fff!important;letter-spacing:.02em;margin:0 0 20px!important;overflow-wrap:anywhere}
body:has(.case-search-hero) .case-search-hero p{font-size:16px!important;line-height:1.9!important;max-width:440px;color:#cdd9e6!important;opacity:1!important}
body:has(.case-search-hero) .case-search-hero .search-back{display:inline-flex;margin-bottom:35px!important;padding:10px 13px;border:1px solid #ffffff3d;border-radius:9px;color:#f1f6fa!important;text-decoration:none!important;font-size:14px}
body:has(.case-search-hero) .case-search-hero .search-back:hover{background:#ffffff17}
body:has(.case-search-hero) .case-search-hero .unified-case-search{width:100%!important;max-width:480px!important;display:flex!important;flex-direction:column!important;gap:12px!important;margin-top:34px!important;padding:20px!important;border:1px solid #ffffff29;border-radius:16px;background:#ffffff10;box-shadow:0 12px 25px #07142124}
body:has(.case-search-hero) .unified-case-search::before{content:"輸入案件編號";font-size:15px;font-weight:800;letter-spacing:.02em;color:#fff}
body:has(.case-search-hero) .unified-case-search input{width:100%;height:auto!important;min-height:56px!important;background:#fff!important;color:#172b3a!important;border:2px solid transparent!important;border-radius:9px!important;font-size:16px!important;padding:13px 15px!important;box-shadow:none!important}
body:has(.case-search-hero) .unified-case-search input::placeholder{color:#697887!important;opacity:1!important}
body:has(.case-search-hero) .unified-case-search button{width:100%;height:auto!important;min-height:54px!important;background:#d9ac61!important;color:#1c2a3a!important;border:0!important;border-radius:9px!important;font-size:16px!important;font-weight:900!important;cursor:pointer!important;box-shadow:none!important}
body:has(.case-search-hero) .unified-case-search button:hover{background:#efc77e!important}
/* Category selection: two wide editorial service rows, not the old raised tiles. */
body:has(.case-search-hero) main>.split-search-grid{grid-column:2;grid-row:1;width:100%!important;max-width:none!important;margin:0!important;padding:clamp(28px,4.1vw,65px)!important;display:grid!important;grid-template-columns:1fr!important;gap:20px!important;align-content:start}
body:has(.case-search-hero) .split-search-card{width:100%;min-width:0;min-height:238px!important;padding:27px 30px!important;border-radius:19px!important;display:grid!important;grid-template-columns:75px minmax(0,1fr)!important;grid-template-rows:auto 1fr!important;column-gap:26px!important;row-gap:16px!important;align-items:start!important;position:relative!important;box-shadow:0 12px 30px #16263c0e!important;background:#fff!important;border:1px solid #dce4ea!important;transition:transform .16s ease,box-shadow .16s ease}
body:has(.case-search-hero) .split-search-card::before{content:"";position:absolute;top:0;left:0;right:auto;bottom:0;width:6px;height:auto!important;background:#147b9e!important;border-radius:19px 0 0 19px}
body:has(.case-search-hero) .split-search-card.general::before{background:#187d79!important}
body:has(.case-search-hero) .split-search-card::after{content:"01";position:absolute;right:24px;top:15px;color:#eff3f6;font-size:64px;font-weight:900;letter-spacing:-.08em;line-height:1;pointer-events:none}
body:has(.case-search-hero) .split-search-card.general::after{content:"02"}
body:has(.case-search-hero) .split-search-card:hover{transform:translateY(-2px);box-shadow:0 18px 35px #16263c20!important}
body:has(.case-search-hero) .split-search-card .split-icon{grid-column:1;grid-row:1;width:70px!important;height:70px!important;margin:0!important;border-radius:16px!important;background:#e8f3f7!important;font-size:31px!important}
body:has(.case-search-hero) .split-search-card.general .split-icon{background:#e7f4f0!important}
body:has(.case-search-hero) .split-search-card>div{grid-column:2;grid-row:1;position:relative;z-index:1;min-width:0;padding-right:22px}
body:has(.case-search-hero) .split-search-card small{font-size:11px!important;color:#217c91!important;font-weight:900;letter-spacing:.11em!important}
body:has(.case-search-hero) .split-search-card h2{font-size:clamp(23px,2.2vw,30px)!important;line-height:1.38!important;color:#182d43!important;margin:4px 0 10px!important;overflow-wrap:anywhere}
body:has(.case-search-hero) .split-search-card p{font-size:15px!important;line-height:1.75!important;color:#576d7d!important;margin:0!important;max-width:540px}
body:has(.case-search-hero) .split-search-card>strong{grid-column:2;grid-row:2;justify-self:start;align-self:end;background:#162c46!important;color:#fff!important;border-radius:9px!important;padding:13px 22px!important;min-height:49px;display:inline-flex!important;align-items:center;font-size:15px!important;font-weight:900!important}
body:has(.case-search-hero) .split-search-card.general>strong{background:#18736e!important}
/* Actual case lists and lookup panels */
body:has(.case-search-hero) main>.case-results-area{grid-column:2;grid-row:1;width:100%!important;max-width:none!important;padding:clamp(26px,3.65vw,60px)!important;margin:0!important;min-width:0}
body:has(.case-search-hero) .public-case-list-head{border-bottom:1px solid #dde4eb;padding-bottom:16px!important;margin:0 0 18px!important}
body:has(.case-search-hero) .public-case-list-head .kicker{font-size:11px!important;letter-spacing:.12em!important;color:#137e88!important}
body:has(.case-search-hero) .public-case-list-head h2{font-size:clamp(22px,2vw,30px)!important;color:#192e44!important;line-height:1.4!important;margin:6px 0 0!important}
body:has(.case-search-hero) .published-case-list{display:grid!important;gap:12px!important}
body:has(.case-search-hero) .published-case-row{position:relative;min-width:0;display:grid!important;grid-template-columns:minmax(130px,.73fr) minmax(0,1.7fr) minmax(100px,.65fr)!important;align-items:center!important;column-gap:22px!important;padding:21px 22px!important;background:#fff!important;border:1px solid #dce5ed!important;border-radius:14px!important;box-shadow:0 4px 14px #15273a0b!important;color:#1c3447!important;line-height:1.45;transition:border-color .15s ease, box-shadow .15s ease}
body:has(.case-search-hero) .published-case-row::before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:4px;background:#3c8fa3;border-radius:0 5px 5px 0;pointer-events:none}
body:has(.case-search-hero) .published-case-row:hover{background:#fff!important;border-color:#8cb5c3!important;box-shadow:0 8px 20px #15273a18!important}
body:has(.case-search-hero) .published-case-row>div{min-width:0}
body:has(.case-search-hero) .published-case-row small{font-size:12px!important;color:#718292!important;font-weight:650!important;margin-bottom:7px!important}
body:has(.case-search-hero) .published-case-row>div:first-child strong{color:#0e496c!important;font-weight:900!important;font-size:16px!important;word-break:break-word}
body:has(.case-search-hero) .published-case-row .case-location strong{color:#1d3447!important;font-size:15px!important;line-height:1.5;overflow-wrap:anywhere}
body:has(.case-search-hero) .published-case-row .case-location span{color:#6b7d8d!important;font-size:13px!important;line-height:1.6!important;overflow-wrap:anywhere}
body:has(.case-search-hero) .published-case-row .status-capsule{display:inline-block!important;white-space:normal!important;font-weight:800!important;font-size:13px!important;padding:8px 10px!important;border-radius:8px!important}
body:has(.case-search-hero) .lookup-result-card{border-radius:16px!important;background:#fff!important;border:1px solid #dce6ed!important;box-shadow:0 12px 30px #142d450f!important;padding:26px!important;margin-bottom:32px!important}
body:has(.case-search-hero) .lookup-head{border-bottom:1px solid #e5ebf1;padding-bottom:16px!important}
body:has(.case-search-hero) .lookup-head h2{font-size:24px;overflow-wrap:anywhere}
body:has(.case-search-hero) .lookup-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
body:has(.case-search-hero) .lookup-grid>div{background:#f6f8fa!important;border:1px solid #e8eef2!important;border-radius:9px!important;padding:14px!important;min-width:0}
body:has(.case-search-hero) .lookup-grid strong{overflow-wrap:anywhere}
body:has(.case-search-hero) .lookup-progress{gap:6px!important}
body:has(.case-search-hero) .lookup-not-found{border-radius:12px!important}
/* Progress detail pages: tidy enterprise document surface, no progress/acceptance logic changed. */
body:has(.progress-detail-layout) .page-hero{padding:30px clamp(20px,5vw,72px)!important;background:linear-gradient(110deg,#10243b,#1a3853)!important;border-bottom:4px solid #d4aa64!important;color:#fff!important}
body:has(.progress-detail-layout) .page-hero h1{font-size:clamp(27px,3vw,42px)!important;letter-spacing:.025em!important;overflow-wrap:anywhere}
body:has(.progress-detail-layout) .detail-layout{gap:20px!important;padding:0 20px!important;margin-top:30px!important;align-items:start}
body:has(.progress-detail-layout) .panel{border:1px solid #e1e7ec!important;border-radius:16px!important;box-shadow:0 7px 25px #15253a10!important;padding:clamp(18px,2.4vw,32px)!important}
body:has(.progress-detail-layout) .progress-summary{background:#f1f6f9!important;border:1px solid #dce7ed!important;border-radius:12px!important}
body:has(.progress-detail-layout) .progress-stage.current .stage-body{border-color:#b6d7d3!important;background:#ecf7f5!important}
body:has(.progress-detail-layout) .case-info-panel{position:sticky;top:95px}
body:has(.progress-detail-layout) .detail-grid>div{background:#f8fafb!important;border-radius:10px!important}
body:has(.progress-detail-layout) .public-acceptance-entry{max-width:1352px;margin-left:auto!important;margin-right:auto!important;padding:0 20px}
/* Accessibility & mobile layout. */
body:has(.case-search-hero) :is(a,button,input):focus-visible,body:has(.progress-detail-layout) :is(a,button,input):focus-visible{outline:3px solid #e7b75b!important;outline-offset:3px!important}
@media(min-width:950px){body:has(.case-search-hero) main>.case-search-hero>.case-search-shell{position:sticky;top:100px}}
@media(max-width:1190px){body:has(.case-search-hero) main{grid-template-columns:minmax(280px,35%) minmax(0,1fr)!important}body:has(.case-search-hero) .split-search-card{grid-template-columns:60px minmax(0,1fr)!important;padding:24px!important;column-gap:15px!important}body:has(.case-search-hero) .split-search-card .split-icon{width:58px!important;height:58px!important}body:has(.case-search-hero) .published-case-row{grid-template-columns:minmax(105px,.8fr) minmax(0,1.6fr)!important}body:has(.case-search-hero) .published-case-row>div:last-child{grid-column:2}}
@media(max-width:920px){
 body:has(.case-search-hero) main{display:block!important;min-height:0!important}
 body:has(.case-search-hero) main>.case-search-hero{min-height:0!important}
 body:has(.case-search-hero) .case-search-hero>.case-search-shell{padding:30px 24px 35px!important}
 body:has(.case-search-hero) .case-search-hero h1{font-size:clamp(28px,5vw,38px)!important}
 body:has(.case-search-hero) .case-search-hero .unified-case-search{max-width:640px!important;margin-top:22px!important}
 body:has(.case-search-hero) main>.split-search-grid,body:has(.case-search-hero) main>.case-results-area{padding:24px!important}
 body:has(.progress-detail-layout) .case-info-panel{position:static}
}
@media(max-width:650px){
 body:has(.case-search-hero) .public-header,body:has(.progress-detail-layout) .public-header{position:relative!important;flex-direction:column!important;align-items:stretch!important;padding:10px 16px!important;gap:10px!important}
 body:has(.case-search-hero) .public-header .brand-mark.public-logo,body:has(.progress-detail-layout) .public-header .brand-mark.public-logo{--public-logo-size:52px!important;width:52px!important;height:52px!important;max-width:52px!important;flex:0 0 52px!important}
 body:has(.case-search-hero) .public-header .brand-copy strong,body:has(.progress-detail-layout) .public-header .brand-copy strong{font-size:17px!important}
 body:has(.case-search-hero) .public-header .public-nav,body:has(.progress-detail-layout) .public-header .public-nav{width:100%;justify-content:flex-start!important;overflow:visible!important;gap:4px!important}
 body:has(.case-search-hero) .public-header .public-nav a,body:has(.progress-detail-layout) .public-header .public-nav a{padding:8px 10px!important;font-size:13px!important}
 body:has(.case-search-hero) .case-search-hero>.case-search-shell{padding:28px 20px 30px!important}
 body:has(.case-search-hero) .case-search-hero .search-back{margin-bottom:18px!important}
 body:has(.case-search-hero) main>.split-search-grid,body:has(.case-search-hero) main>.case-results-area{padding:18px 15px 32px!important}
 body:has(.case-search-hero) .split-search-card{display:block!important;min-height:0!important;padding:22px!important}
 body:has(.case-search-hero) .split-search-card .split-icon{margin-bottom:16px!important}
 body:has(.case-search-hero) .split-search-card>div{padding:0!important}
 body:has(.case-search-hero) .split-search-card>strong{margin-top:17px!important;min-height:48px!important;width:100%;justify-content:center}
 body:has(.case-search-hero) .split-search-card::after{font-size:51px}
 body:has(.case-search-hero) .published-case-row{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;padding:18px 18px 18px 23px!important}
 body:has(.case-search-hero) .published-case-row>div:last-child{grid-column:auto}
 body:has(.case-search-hero) .lookup-grid{grid-template-columns:1fr!important}
 body:has(.case-search-hero) .lookup-grid .wide{grid-column:1!important}
 body:has(.case-search-hero) .lookup-result-card{padding:18px!important}
 body:has(.case-search-hero) .lookup-head{display:block!important}
 body:has(.case-search-hero) .lookup-progress{display:grid!important;grid-template-columns:1fr!important}
 body:has(.case-search-hero) .lookup-progress .progress-step{display:flex!important;align-items:center!important;gap:12px!important;text-align:left!important}
 body:has(.case-search-hero) .lookup-progress .progress-step span{margin:0!important}
 body:has(.progress-detail-layout) .page-hero{padding:26px 18px!important}
 body:has(.progress-detail-layout) .detail-layout{padding:0 14px!important}
 body:has(.progress-detail-layout) .public-acceptance-entry{padding:0 14px}
}
@media(prefers-reduced-motion:reduce){body:has(.case-search-hero) *,body:has(.progress-detail-layout) *{transition-duration:0.01ms!important;animation-duration:0.01ms!important}}
