@charset "utf-8";

/* CIIoT 產品頁：所有規則都限定在 .pd 裡，不影響網站其他頁面 */
.pd{
	--band:#12344D; --band-2:#0C2638; --ink:#1D2630; --muted:#5B6773; --line:#DCE1E6;
	--ground:#EEF1F4; --white:#FFFFFF; --cta:#E8940F; --cta-ink:#221400; --link:#0F7584; --ok:#1C8C5E;
	--f:"Noto Sans","Segoe UI",Arial,sans-serif; --mono:"Noto Sans Mono",Consolas,monospace;
	--head-h:85px; /* Centos 固定頁首高度 */
	padding-top:var(--head-h);
	background:var(--white); color:var(--ink); font:400 15px/1.7 var(--f);
}
.pd, .pd *{box-sizing:border-box}
.pd a{color:var(--link);text-decoration:none}
.pd a:hover{text-decoration:underline}
.pd :focus-visible{outline:2px solid var(--cta);outline-offset:2px}
.pd h1,.pd h2,.pd h3,.pd h4{margin:0;text-wrap:balance}
.pd p{margin:0}
.pd .wrap{max-width:1200px;margin:0 auto;padding-inline:20px}

/* band */
.pd .band{background:var(--band);color:#fff}
.pd .band .wrap{padding-block:18px 40px}
.pd .crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:13.5px;color:#B9CAD8}
.pd .crumbs a{color:#B9CAD8}
.pd .crumbs span+span::before{content:"›";margin-right:6px;color:#7F97AB}
.pd .crumbs b{color:#fff;font-weight:600}
.pd .band h1{font:700 clamp(30px,4vw,42px)/1.2 var(--f);margin-top:34px}
.pd .band .tag{font-size:17px;color:#D6E2EC;margin-top:8px}
.pd .ciiot-badge{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:5px 14px 5px 6px;background:#fff;border-radius:999px;color:var(--band);font-size:13.5px;font-weight:600}
.pd .ciiot-badge:hover{text-decoration:none;box-shadow:0 0 0 2px var(--cta)}
.pd .ciiot-badge img{width:22px;height:22px}

/* hero */
.pd .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:48px;padding-block:40px 36px}
.pd .gallery .main{background:var(--white);border:1px solid var(--line);aspect-ratio:4/3;display:grid;place-items:center;padding:14px;max-width:100%}
.pd .gallery .main img{max-width:100%;max-height:100%;object-fit:contain}
.pd .thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.pd .thumbs button{width:72px;height:56px;padding:3px;border:1px solid var(--line);background:var(--white);cursor:pointer}
.pd .thumbs button[aria-pressed="true"]{border:2px solid var(--link)}
.pd .thumbs img{width:100%;height:100%;object-fit:contain;display:block}
.pd .fb h2{font-size:19px;font-weight:700;margin-bottom:10px}
.pd .checks{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.pd .checks li{display:grid;grid-template-columns:20px 1fr;gap:10px;font-size:15px;line-height:1.55}
.pd .checks li::before{content:"";width:17px;height:17px;margin-top:2px;border-radius:50%;border:2px solid var(--ok);background:
	linear-gradient(135deg,transparent 45%,var(--ok) 45% 58%,transparent 58%) 3px 5px/5px 5px no-repeat,
	linear-gradient(45deg,transparent 42%,var(--ok) 42% 58%,transparent 58%) 6px 2px/7px 9px no-repeat}
.pd .cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;align-items:center}
.pd .btn{font:600 15px var(--f);padding:11px 22px;border-radius:3px;cursor:pointer;border:1.5px solid var(--cta);display:inline-block}
.pd .btn.solid{background:var(--cta);color:var(--cta-ink)}
.pd .btn.solid:hover{background:#D48407;text-decoration:none}
.pd .btn.ghost{background:var(--white);color:var(--link);border-color:var(--link)}
.pd .btn.ghost:hover{background:#EAF5F6;text-decoration:none}
.pd .cta-note{font-size:13.5px;color:var(--muted);width:100%}
.pd .cta-note[hidden]{display:none}

/* tabs：黏在 Centos 頁首下方 */
.pd .tabs{position:sticky;top:var(--head-h);z-index:5;background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pd .tabs .wrap{display:flex;align-items:stretch;gap:0;overflow-x:auto}
.pd .tabs a{display:block;padding:15px 34px;color:var(--muted);font-size:15.5px;border-bottom:3px solid transparent;white-space:nowrap}
.pd .tabs a:hover{text-decoration:none;color:var(--ink)}
.pd .tabs a.on{color:var(--ink);border-color:var(--link);font-weight:600}
.pd .tabs .sp{flex:1}
.pd .tabs .sales{align-self:center;font-weight:600;white-space:nowrap;padding-left:20px;border:none}
.pd .tabs .sales::after{content:" ›"}

/* workspace */
.pd .ground{background:var(--ground);padding-block:28px 56px}
.pd .ground .wrap{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px;align-items:start}
.pd .card{background:var(--white);border:1px solid var(--line);padding:30px 34px;scroll-margin-top:calc(var(--head-h) + 70px)}
.pd .card+.card{margin-top:20px}
.pd .card h2{font-size:22px;font-weight:700;margin-bottom:14px}
.pd .card h3{font-size:16.5px;font-weight:700;margin:26px 0 10px}
.pd .card p{color:#3A4550;max-width:60em}
.pd .card p+p{margin-top:12px}
.pd .bul{margin:0;padding-left:20px;color:#3A4550;display:grid;gap:5px}
.pd .bul li{list-style-type:disc}       /* page.css 把 li 的符號拿掉了，這裡加回來 */
.pd .apps{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin-top:6px}
.pd .apps div{border:1px solid var(--line);padding:12px 14px;min-width:0}
.pd .apps b{display:block;font-size:14.5px}
.pd .apps span{font-size:13.5px;color:var(--muted);line-height:1.5}
.pd .spec-group{margin-top:22px}
.pd .spec-group:first-of-type{margin-top:4px}
.pd .spec-group h3{margin:0 0 6px;font-size:15px;color:var(--band);text-transform:uppercase;letter-spacing:.05em}
.pd .spec{width:100%;border-collapse:collapse;font-size:14.5px}
.pd .spec th,.pd .spec td{text-align:left;vertical-align:top;padding:9px 12px;border-bottom:1px solid var(--line)}
.pd .spec th{width:34%;font-weight:500;color:var(--muted);background:#F7F9FA}
.pd .spec code,.pd .card code{font:500 13px var(--mono);background:#F1F4F6;padding:1px 5px;border-radius:3px}
.pd .tblwrap{overflow-x:auto}
.pd .ciiot-intro{display:flex;gap:16px;align-items:center}
.pd .ciiot-intro img{width:48px;height:48px;flex:none}
.pd .setup{display:grid;grid-template-columns:240px minmax(0,1fr);gap:26px;align-items:start}
.pd .shot{margin:0;border:1px solid var(--line);background:#F7F9FA;padding:8px}
.pd .shot img{display:block;width:100%;height:auto}
.pd .steps{margin:0;padding-left:20px;color:#3A4550;display:grid;gap:8px}
.pd .steps li{list-style-type:decimal}
.pd .docs{list-style:none;margin:10px 0 0;padding:0}
.pd .docs li{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.pd .docs li:last-child{border-bottom:none}
.pd .docs .ic{width:30px;height:36px;border:1.5px solid #9AA6B1;border-radius:2px;position:relative;font:600 8px/1 var(--mono);color:#7A8793;display:grid;place-items:end center;padding-bottom:4px}
.pd .docs .ic::before{content:"";position:absolute;right:-1.5px;top:-1.5px;border-left:9px solid #9AA6B1;border-bottom:9px solid var(--white);border-top:0}
.pd .docs b{font-size:15px;display:block}
.pd .docs span{font-size:13px;color:var(--muted)}
.pd .docs em{font-style:normal;font-size:13px;color:var(--muted);white-space:nowrap}
.pd pre.code{background:#15222E;color:#D5E3EC;padding:14px 16px;overflow-x:auto;font:13px/1.7 var(--mono);margin:12px 0 0}
.pd pre.code .c{color:#7F97AB}
.pd .note{font-size:13px;color:var(--muted);margin-top:16px}

/* sidebar */
.pd .side{display:grid;gap:14px;position:sticky;top:calc(var(--head-h) + 72px)}
.pd .side .box{background:var(--white);border:1px solid var(--line);padding:18px}
.pd .side h4{font-size:14px;margin-bottom:10px}
.pd .side ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:14px}
.pd .side .alt{display:block;border:1px solid var(--line);padding:14px;background:var(--white)}
.pd .side .alt small{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.pd .side .alt b{display:block;color:var(--ink);margin-top:2px}
.pd .side .alt span{display:block;font-size:13px;color:var(--muted)}
.pd .side .alt:hover{border-color:var(--link);text-decoration:none}
.pd .side .buy{background:var(--band);color:#fff;border:none}
.pd .side .buy p{font-size:13.5px;color:#C9D7E3;margin-top:4px}

/* login */
.pd .login-ground{padding-block:56px 80px}
.pd .login-ground .wrap{display:block}
.pd .login{max-width:420px;margin:0 auto;display:grid;gap:6px}
.pd .login-logo{width:48px;height:48px;margin-bottom:6px}
.pd .login h1{font-size:24px;font-weight:700}
.pd .login > p{font-size:14px;margin-bottom:10px}
.pd .login label{font-size:14px;font-weight:600;margin-top:8px}
.pd .login input[type=text],.pd .login input[type=password]{font:15px var(--f);padding:10px 12px;border:1px solid #B8C2CC;border-radius:3px;width:100%;-webkit-appearance:none}
.pd .login input:focus{outline:2px solid var(--link);outline-offset:0;border-color:var(--link)}
.pd .login .btn{margin-top:18px;width:100%}
.pd .login-error{background:#FDECEC;border-left:3px solid #C62828;color:#8E1B1B !important;padding:10px 12px;font-size:14px}
.pd .login-help{font-size:13px;color:var(--muted) !important;margin-top:12px;text-align:center}

/* RWD：900px 以下與 page.css 的手機版斷點一致 */
@media (max-width:899px){
	.pd{--head-h:65px}
	.pd .hero{grid-template-columns:1fr;gap:28px}
	.pd .ground .wrap{grid-template-columns:1fr}
	.pd .side{position:static}
}
@media (max-width:620px){
	.pd .setup{grid-template-columns:1fr}
	.pd .shot{max-width:260px}
}
@media (max-width:520px){
	.pd .card{padding:22px 18px}
	.pd .tabs a{padding:13px 16px}
	.pd .tabs .sales{display:none}
	.pd .spec th{width:40%}
}
