:root{font-family:Arial,Helvetica,sans-serif;color:#293b40;background:#f2efe6;font-size:16px;color-scheme:light}*{box-sizing:border-box}body{margin:0;background-image:linear-gradient(#263a3010 1px,transparent 1px),linear-gradient(90deg,#263a3010 1px,transparent 1px);background-size:32px 32px}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a,input{touch-action:manipulation}button,.button{border:1px solid #cdd1c5;background:#fffdf8;color:#293b40;border-radius:9px;padding:10px 16px;cursor:pointer;text-decoration:none;min-height:44px}button:hover,.button:hover{border-color:#237985;background:#edf5f6}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #7b54c9;outline-offset:3px}.primary{background:#dcecef}header{min-height:76px;display:flex;gap:20px;align-items:center;padding:14px max(24px,calc((100vw - 1360px)/2));background:#faf7efeb;border-bottom:1px solid #d6d7cb;position:relative;z-index:3}header .brand{margin-right:auto}header img{max-width:32vw;height:auto}header .language-picker{order:1}.intro{max-width:1360px;margin:0 auto;padding:52px 24px 32px}.eyebrow{font-size:12px;letter-spacing:.13em;color:#59685e}h1{font-size:clamp(28px,4vw,48px);letter-spacing:-.04em;margin:12px 0}p{line-height:1.65}.intro p{max-width:600px;color:#536157}.search{display:flex;align-items:center;gap:12px;max-width:700px;background:#fff;border:1px solid #bcc6b6;border-radius:12px;padding:0 16px;margin-top:28px}.search svg{width:23px;fill:none;stroke:currentColor;stroke-width:1.7;flex-shrink:0}.search input{width:100%;border:0;background:none;height:54px;min-width:0;color:inherit}.layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:36px;max-width:1360px;margin:auto;padding:0 24px 60px}aside{position:relative}#contents{position:sticky;top:20px;max-height:calc(100dvh - 40px);overflow:auto;padding:8px 8px 20px 0}#contents>a{display:block;padding:10px 12px;margin-bottom:4px;border-radius:8px;text-decoration:none;font-size:14px}#contents>a[aria-current=page]{background:#dcecef;font-weight:600}#contents details{border-top:1px solid #deded3;padding:8px 0}#contents summary{cursor:pointer;font-weight:600;padding:8px;font-size:14px}#contents details a{display:block;font-size:13px;line-height:1.4;padding:9px 10px 9px 20px;text-decoration:none;border-radius:6px}#contents a:hover{background:#fff9}#contents details a[aria-current=page]{background:#e6dfef;color:#4f3684}main{min-width:0;scroll-margin-top:20px}main:focus{outline:none}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.topic{display:flex;align-items:center;gap:18px;min-height:102px;padding:20px;background:#fffcf6;border:1px solid #d7dacd;border-radius:14px;text-decoration:none}.topic:hover{border-color:#8f9c88;box-shadow:0 8px 24px #263a3010}.topic .num{color:#237985;font-size:25px;font-weight:400;min-width:34px}.topic strong{font-size:17px;line-height:1.35}.topic small{display:block;margin-top:7px;font-size:12px;color:#657365}.group-title{font-size:20px;margin:32px 0 16px}.group-title:first-child{margin-top:10px}.article{background:#fffdf9;border:1px solid #d7dacd;border-radius:18px;padding:30px;box-shadow:0 10px 34px #263a3007}.article h2{font-size:clamp(25px,3vw,36px);letter-spacing:-.03em;margin:14px 0}.back{font-size:13px;color:#4e6656;text-decoration:none}.where{padding:12px 16px;border-left:3px solid #b3c7a3;background:#f1f4eb;margin:24px 0;font-size:14px;line-height:1.6}.where strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.visual{position:relative;border:1px solid #d9dcd1;border-radius:12px;overflow:hidden;background:#f2efe6;margin:24px 0}.visual .screen{display:block;width:100%;height:auto;aspect-ratio:1080/720;object-fit:contain}.visual button.enlarge{position:absolute;top:8px;right:8px;min-height:36px;padding:5px 10px;background:#fffdf4ef;z-index:1}.player{display:flex;gap:12px;align-items:center;padding:10px;background:#faf8f2;border-top:1px solid #d9dcd1}.player button{width:44px;padding:4px}.player input{flex:1;min-width:0;accent-color:#237985}.player output{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.steps{list-style:none;padding:0;margin:28px 0;counter-reset:step}.steps li{display:flex;gap:15px;align-items:flex-start;padding:14px 0;border-bottom:1px solid #ecece2;line-height:1.65;font-size:16px}.steps li:before{counter-increment:step;content:counter(step);display:grid;place-items:center;border-radius:50%;background:#e8e0f2;color:#573b88;width:30px;height:30px;flex:0 0 30px;font-size:14px}.details{font-size:14px;padding:18px 20px;background:#f6f2e9;border-radius:10px;line-height:1.7}.details h3{font-size:14px;margin:0 0 8px}.details p{margin:0}.article-actions{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:26px}.article-actions a{font-size:14px}.video{width:100%;display:block;aspect-ratio:16/9;background:#b9d8e9}.device-grid{display:grid;grid-template-columns:1.6fr 1fr .55fr;gap:10px;padding:18px;align-items:center}.device-grid img{width:100%;height:auto;display:block;border:1px solid #d1d5cd}.empty{padding:32px;border:1px dashed #b8c1ae;border-radius:12px}.status-legend{display:flex;gap:16px;flex-wrap:wrap;margin:18px 0}.status-legend img{width:40px;height:40px}footer{max-width:1360px;margin:auto;padding:32px 24px;display:flex;align-items:center;gap:24px;justify-content:space-between;border-top:1px solid #d1d5c8;font-size:13px}footer p{margin:6px 0}dialog{padding:14px;border:1px solid #bbc4b4;border-radius:14px;max-width:96vw;max-height:96dvh;background:#fffdf6}dialog::backdrop{background:#1c302cbb}dialog img{display:block;max-width:90vw;max-height:83dvh;object-fit:contain}#close-image{display:block;margin-left:auto;font-size:24px}#search-results{font-size:14px;color:#536157}[hidden]{display:none!important}@media(max-width:850px){header{padding:12px 16px;gap:10px}.intro{padding:30px 16px 20px}.layout{grid-template-columns:1fr;padding:0 12px 36px;gap:18px}#contents{position:static;max-height:240px;background:#fff8;border:1px solid #d5d9ca;border-radius:12px;padding:8px}#contents details:not([open]){display:inline-block;border:0}#contents details[open]{display:block}.article{padding:20px}.cards{gap:10px}.topic{padding:14px}.topic .num{font-size:20px;min-width:26px}footer{flex-wrap:wrap;padding:24px 16px}}@media(max-width:480px){header{flex-wrap:wrap}.brand{flex:1}header .button{font-size:13px;padding:10px}header .language-picker{order:0}.cards{grid-template-columns:1fr}.intro h1{font-size:30px}.article{padding:16px;border-radius:12px}.steps li{font-size:15px}.device-grid{gap:5px;padding:8px}.player{gap:7px}.player output{font-size:11px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{header,aside,.search,.player,.enlarge,.article-actions,.back{display:none!important}.layout{display:block}.article{border:0;box-shadow:none}body{background:white}footer{font-size:11px}}

.quick-demos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:26px}.quick-demos a{border:1px solid #d4d7cc;border-radius:12px;overflow:hidden;background:#fffdf8;text-decoration:none}.quick-demos img{width:100%;height:auto;display:block}.quick-demos span{display:block;padding:12px;font-size:13px;line-height:1.5}.device-grid img{cursor:zoom-in}@media(max-width:500px){.quick-demos{grid-template-columns:1fr}.quick-demos a{display:flex;align-items:center}.quick-demos img{width:45%}.quick-demos span{flex:1}}
/* Constrain WebKit's invisible native select, including its intrinsic option width. */
header .language-picker{overflow:hidden}header .language-select{min-width:0;max-width:100%}
