:root{--ink:#12313c;--deep:#0b232d;--teal:#178d8a;--coral:#d95e48;--paper:#fffdf9;--mist:#edf5f3;--line:#d5d9d2;--sun:#f8c962;--blue:#dcebff;--muted:#5c7076}*{box-sizing:border-box}body{margin:0;background:#f7f3ec;color:var(--ink);font:16px/1.65 "Microsoft JhengHei","Noto Sans TC",system-ui,sans-serif}.shell{max-width:1160px;margin:auto;padding-left:24px;padding-right:24px}.mast{background:var(--deep);color:#fff;border-bottom:4px solid var(--coral)}.identity{padding-top:13px;padding-bottom:13px;font-size:.86rem;letter-spacing:.04em;display:flex;justify-content:space-between;gap:18px}.identity span{color:#bfe4df}.hero{padding:56px 24px 48px}.hero h1{font-size:clamp(2.6rem,6vw,5rem);line-height:1.03;letter-spacing:-.06em;margin:.15em 0}.hero p:last-child{max-width:680px;color:#d7e7e4;font-size:1.05rem}.eyebrow,.chapter{font-weight:900;letter-spacing:.12em;font-size:.78rem;color:var(--sun)}.landing{padding-top:46px}.landing h2,.page-head h1{font-size:clamp(1.9rem,4vw,3.3rem);line-height:1.15;margin:.15em 0 .5em}.chapter-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0 42px}.chapter-cards a{display:flex;flex-direction:column;min-height:210px;padding:23px;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 24px rgba(18,49,60,.08);color:inherit;text-decoration:none}.chapter-cards a:hover,.chapter-cards a:focus-visible{outline:4px solid var(--teal);outline-offset:3px}.chapter-cards span{font-weight:900;font-size:.8rem;letter-spacing:.1em;color:var(--coral)}.chapter-cards strong{font-size:1.35rem;line-height:1.3;margin:18px 0}.chapter-cards small{color:var(--muted);margin-top:auto}.notice,.concept,.case,.card,.work,.canvas{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px}.notice{margin-bottom:48px;background:#fff3d9}.site-nav{position:sticky;top:0;z-index:5;background:rgba(255,253,249,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}.site-nav .shell{display:flex;gap:8px;align-items:center;min-height:60px}.site-nav a{color:var(--ink);font-weight:800;text-decoration:none;padding:8px 10px;border-radius:8px}.site-nav a:hover,.site-nav a:focus-visible{background:#dcefed}.page{padding-top:36px;padding-bottom:68px}.page-head{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}.page-head .chapter{color:var(--coral)}.page-head p{max-width:720px;color:var(--muted);font-size:1.05rem}.concept-grid,.work-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin:18px 0 28px}.concept{background:#e7f4f1;border-left:5px solid var(--teal)}.case{background:#fff3db;border-color:#ead29b}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:42px}.section-head h2{font-size:1.65rem;margin:.2em 0}.checkpoint{font-size:.85rem;font-weight:800;color:#08726f;background:#dff3f0;padding:4px 10px;border-radius:999px}.quiz{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.question{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px}.question legend{font-weight:900;padding:0 4px}.question label{display:block;padding:8px 10px;margin:7px 0;border-radius:8px;border:1px solid #e4e7e2;cursor:pointer}.question label:has(input:checked){border-color:var(--teal);background:#edf9f7}.question input{margin-right:8px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.btn{min-height:44px;padding:9px 14px;border:0;border-radius:9px;background:var(--teal);color:white;font:inherit;font-weight:800;cursor:pointer}.btn:hover,.btn:focus-visible{filter:brightness(.9);outline:3px solid var(--ink);outline-offset:2px}.btn.alt{background:#e4efed;color:var(--ink)}.btn.danger{background:var(--coral)}.feedback{display:none;padding:13px 15px;border-radius:10px;background:#e7f4f1;color:#075b58;font-weight:800}.feedback.show{display:block}.form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}label{font-weight:900;font-size:.9rem}input,textarea{font:inherit;color:var(--ink);border:1px solid #becbc8;border-radius:8px;padding:10px;background:#fff;min-height:44px}textarea{min-height:92px;resize:vertical}input:focus,textarea:focus{outline:3px solid rgba(23,141,138,.22);border-color:var(--teal)}.helper{font-size:.86rem;color:var(--muted)}.canvas{margin-top:22px;background:#f6fcfb}.canvas h3{margin:.15em 0}.canvas-help{background:#fff3db;border-radius:10px;padding:12px 15px}.canvas-help ol{margin:.35em 0;padding-left:1.3em}.canvas-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0}.canvas-tools select{min-height:44px;border:1px solid #becbc8;border-radius:8px;padding:8px;background:white;font:inherit}.board-wrap{overflow:auto}.board{display:grid;grid-template-columns:145px repeat(5,1fr);min-width:940px;border-top:2px solid var(--ink);border-left:2px solid var(--ink);background:#fff}.board-head,.lane,.zone{border-right:1px solid #a8babc;border-bottom:1px solid #a8babc;padding:9px;min-height:108px}.board-head{background:var(--deep);color:white;font-weight:900}.lane{background:#e2f2f0;font-weight:900;font-size:.88rem}.lane.customer{background:#fff0b7}.lane.risk{background:#ffdcd5}.zone{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px;cursor:crosshair}.zone.selected{outline:4px solid var(--teal);outline-offset:-4px}.zone:focus-visible{outline:4px solid var(--coral);outline-offset:-4px}.sticky{width:116px;min-height:70px;padding:8px;background:var(--sun);box-shadow:2px 4px 8px rgba(13,35,45,.18);font-size:.8rem;line-height:1.38;overflow-wrap:anywhere}.sticky.teal{background:#a9ded7}.sticky.blue{background:var(--blue)}.sticky.coral{background:#ffc7bb}.sticky:focus{outline:3px solid var(--ink)}.board-status{font-size:.9rem;color:var(--muted);margin:0}.foot{background:var(--deep);color:#d4e1df;padding:24px}.foot p{margin:0}.back{font-weight:800;color:var(--teal);text-decoration:none}@media(max-width:780px){.identity{flex-direction:column;gap:3px}.chapter-cards,.concept-grid,.work-grid,.quiz,.form{grid-template-columns:1fr}.site-nav .shell{overflow:auto}.field.full{grid-column:auto}.page{padding-top:25px}.canvas{padding:15px}.board{min-width:880px}}@media print{.mast,.site-nav,.section-head,.concept-grid,.quiz,.actions,.canvas-help,.canvas-tools,.foot,.work:not(.print-work){display:none!important}.page{padding:0}.canvas{border:0}.board{min-width:0;width:100%;grid-template-columns:110px repeat(5,1fr)}.board-head,.lane,.zone{min-height:84px}}
.hero-cta,.text-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 16px;border-radius:9px;font-weight:900;text-decoration:none}.hero-cta{margin-top:10px;background:var(--sun);color:var(--deep)}.text-link{background:var(--teal);color:#fff}
.course-portal{grid-template-columns:repeat(2,1fr);max-width:790px}.course-portal a{min-height:245px}.course-portal b{margin-top:22px;color:var(--teal);font-size:.95rem}@media(max-width:780px){.course-portal{grid-template-columns:1fr}}

/* Course network design system: adult-learning clarity, keyboard visibility, and mobile-first rhythm. */
:root{--surface:#fff;--surface-soft:#f2fbfa;--focus:#0d9488;--shadow-1:0 8px 24px rgba(11,35,45,.08);--shadow-2:0 16px 40px rgba(11,35,45,.12);--radius-lg:20px;--radius-md:14px}
body{min-height:100dvh;background:radial-gradient(circle at 12% 0,#e6f7f4 0,transparent 30rem),#f7f8f5;letter-spacing:.01em}
.shell{width:min(100%,1160px);padding-left:clamp(18px,4vw,32px);padding-right:clamp(18px,4vw,32px)}
.skip-link{position:absolute;z-index:100;left:12px;top:-56px;padding:10px 14px;border-radius:10px;background:#fff;color:var(--deep);font-weight:800;box-shadow:var(--shadow-2)}.skip-link:focus{top:12px}
a,button,input,textarea,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.mast,.course-mast{box-shadow:inset 0 -1px rgba(255,255,255,.16)}.hero,.course-hero{position:relative}.hero:after,.course-hero:after{content:"";position:absolute;right:6%;bottom:20px;width:84px;height:84px;border:1px solid rgba(255,255,255,.35);border-radius:50%;box-shadow:22px -16px 0 -18px rgba(248,201,98,.95),-22px 16px 0 -18px rgba(248,201,98,.8);pointer-events:none}
.chapter-cards{gap:20px}.chapter-cards a{border-color:#c8ddda;box-shadow:var(--shadow-1);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.chapter-cards a:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--teal)}.chapter-cards a:active{transform:translateY(-1px)}
.course-portal{max-width:860px}.course-portal a{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff 0%,#f1fbf9 100%)}.course-portal a:nth-child(2){background:linear-gradient(145deg,#fff 0%,#f6effd 100%)}.course-portal a:after{content:"";position:absolute;right:-34px;bottom:-34px;width:120px;height:120px;border-radius:50%;background:rgba(23,141,138,.11)}.course-portal a:nth-child(2):after{background:rgba(75,44,103,.12)}.course-portal b{position:relative;z-index:1}.notice{box-shadow:var(--shadow-1);border-color:#edd69f}
.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.hero-tags span{padding:5px 10px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.09);color:#fff;font-size:.86rem;font-weight:800}
.marketing-course-mast{background:linear-gradient(124deg,#20112f 0%,#43265d 55%,#6a477d 100%)}.marketing-course .course-hero h1 em{color:#f8c962}.marketing-course .btn{background:#53316d}.marketing-course .btn.alt{color:#321b44;background:#eee3f6}.marketing-course .btn.danger{background:#b8483d}.marketing-course .stamp{border-color:#6f428e;color:#593575}.marketing-course .card-kicker{color:#6f428e}.marketing-course .eyebrow.dark{color:#9d5c24}
.course-ticker{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 clamp(18px,4vw,32px);background:#f8c962;color:#2b1a42;font-weight:900;overflow:hidden}.ticker-track{min-width:0;overflow:hidden;white-space:nowrap;flex:1}.ticker-track span{display:inline-block;padding:12px 0;animation:course-ticker-move 34s linear infinite}.ticker-track.is-paused span,.ticker-track:focus-within span{animation-play-state:paused}.ticker-control{flex:none;min-height:36px;padding:6px 10px;border:1px solid currentColor;border-radius:8px;background:#fff8dc;color:#2b1a42;font:inherit;font-size:.84rem;font-weight:800;cursor:pointer}@keyframes course-ticker-move{from{transform:translateX(100%)}to{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.ticker-track span{transform:none!important}}
@media(max-width:620px){.identity{font-size:.78rem}.hero:after,.course-hero:after{display:none}.course-ticker{align-items:stretch;flex-direction:column;gap:0;padding-top:6px;padding-bottom:8px}.ticker-control{align-self:flex-end}.ticker-track span{white-space:normal;animation:none}.hero-tags{margin-top:16px}}

/* Sport-system layer: track lanes, data panels, and contour cues — no logo assets. */
.mast,.course-mast,.marketing-mast{position:relative;isolation:isolate;overflow:hidden}.mast:before,.course-mast:before,.marketing-mast:before{content:"";position:absolute;z-index:-1;inset:0;opacity:.36;background:repeating-linear-gradient(90deg,transparent 0,transparent 44px,rgba(255,255,255,.16) 45px,transparent 47px),linear-gradient(135deg,transparent 0 61%,rgba(248,201,98,.26) 61% 62%,transparent 62% 100%)}.mast>.shell,.course-mast>.shell,.marketing-mast>.shell{position:relative;z-index:1}.mast:after,.course-mast:after,.marketing-mast:after{content:"";position:absolute;z-index:-1;right:-92px;bottom:-125px;width:310px;height:310px;border:2px solid rgba(255,255,255,.22);border-radius:50%;box-shadow:0 0 0 21px rgba(255,255,255,.06),0 0 0 43px rgba(255,255,255,.04)}.hero:after,.course-hero:after{border-radius:0;border-width:0 2px 0 0;transform:skewX(-20deg);box-shadow:20px -17px 0 -18px rgba(248,201,98,.95),-20px 17px 0 -18px rgba(248,201,98,.8)}
.landing:before,.course-page:before,.game-page:before,.proposal:before{content:"";display:block;width:70px;height:5px;margin-bottom:22px;border-radius:999px;background:repeating-linear-gradient(90deg,var(--teal) 0 12px,transparent 12px 17px,var(--sun) 17px 29px,transparent 29px 34px)}.marketing-course .landing:before,.marketing-course .course-page:before,.marketing-course .game-page:before,.marketing-course .proposal:before{background:repeating-linear-gradient(90deg,#6f428e 0 12px,transparent 12px 17px,#f8c962 17px 29px,transparent 29px 34px)}
.chapter-cards a,.course-card,.game-card,.proposal section{position:relative;overflow:hidden}.chapter-cards a:before,.course-card:before,.game-card:before,.proposal section:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--teal) 0 56%,var(--sun) 56% 72%,var(--coral) 72%)}.marketing-course .course-card:before,.marketing-games .game-card:before,.proposal section:before{background:linear-gradient(90deg,#6f428e 0 56%,#f8c962 56% 72%,#d95e48 72%)}
.card-kicker,.chapter{font-variant-numeric:tabular-nums}.card-kicker{display:inline-flex;align-items:center;gap:7px}.card-kicker:before{content:"";display:inline-block;width:7px;height:7px;border:2px solid currentColor;border-radius:50%;box-shadow:10px 0 0 -2px currentColor}.hero-tags span,.hero-tags a{backdrop-filter:blur(3px)}.game-hero,.proposal-head{background-image:linear-gradient(135deg,rgba(255,255,255,.9),rgba(231,244,241,.9)),repeating-radial-gradient(ellipse at 0 100%,transparent 0 16px,rgba(23,141,138,.11) 17px 18px)}.marketing-games .game-hero,.proposal-head{background-image:linear-gradient(135deg,rgba(255,255,255,.92),rgba(247,240,252,.9)),repeating-radial-gradient(ellipse at 0 100%,transparent 0 16px,rgba(111,66,142,.11) 17px 18px)}
@media(max-width:620px){.mast:after,.course-mast:after,.marketing-mast:after{width:190px;height:190px;right:-75px;bottom:-82px}.landing:before,.course-page:before,.game-page:before,.proposal:before{margin-bottom:16px}}
