*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;height:100%;background:#17120e;color:#2b2520}
body{font-family:"PMingLiU","新細明體","Noto Serif TC","Songti TC","Noto Serif CJK TC",serif;overflow:hidden;-webkit-tap-highlight-color:transparent}
button{font:inherit;cursor:pointer}
[hidden]{display:none!important}


.desk-viewport{position:fixed;inset:0;background:radial-gradient(ellipse at 50% 40%,#2a2019,#0f0b08 75%)}
.desk-scroller{position:absolute;inset:0;overflow:hidden;display:flex;align-items:center;justify-content:center;scrollbar-width:none}
.desk-scroller::-webkit-scrollbar{display:none}
.desk-viewport.is-pan .desk-scroller{overflow-x:auto;overflow-y:hidden;justify-content:flex-start;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.desk-sizer{position:relative;flex:none}
.desk-stage{position:absolute;left:0;top:0;width:1672px;height:941px;transform-origin:0 0;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.desk-photo{display:block;width:1672px;height:941px;user-select:none;-webkit-user-drag:none}
.desk-note{position:absolute;left:1038px;top:373px;width:105px;height:105px;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-drag:none}
.desk-hotspots{position:absolute;inset:0;width:100%;height:100%}
.desk-hotspots .hot{fill:transparent;stroke:transparent;cursor:pointer;outline:none}.desk-hotspots .hot:active,.desk-hotspots .hot:focus{fill:transparent;stroke:transparent;outline:none}
.desk-hotspots .hot:hover{fill:transparent;stroke:transparent}
.desk-hotspots .hot:focus-visible{fill:rgba(255,255,255,.10)}
.monitor-screen{position:absolute;left:0;top:0;width:1024px;height:620px;transform-origin:0 0;overflow:hidden;pointer-events:none;background:#fff}
.monitor-screen::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(255,255,255,.18),transparent 38%,rgba(0,0,0,.05));}
.desk-pan-hint{display:none;position:fixed;top:max(14px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);margin:0;color:#f6ead9;font-size:13px;letter-spacing:.1em;opacity:.75;pointer-events:none;transition:opacity 1s}
.desk-viewport.is-pan .desk-pan-hint{display:block}
.desk-pan-hint.is-gone{opacity:0}


.layer{position:fixed;inset:0;z-index:10;overflow:auto;background:rgba(14,10,7,.86);backdrop-filter:blur(3px);animation:layerIn .35s ease}
@keyframes layerIn{from{opacity:0}to{opacity:1}}
.layer-close{position:fixed;z-index:30;top:max(12px,env(safe-area-inset-top));right:14px;padding:8px 16px;color:#fff8ec;border:1px solid rgba(255,255,255,.4);border-radius:22px;background:rgba(30,20,14,.6);font-size:14px;letter-spacing:.1em}
.layer-close:hover{background:rgba(60,40,28,.8)}


.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nb-scroll{min-height:100%;display:flex;align-items:center;justify-content:center;padding:64px 12px 26px}
.nb-spread{display:flex;width:min(1240px,96vw,calc((100svh - 96px)*1.5));box-shadow:0 20px 50px #0008}
.nb-page{margin:0;flex:0 0 50%;min-width:0;aspect-ratio:3/4;background:#f6f5e9}
.nb-page img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:760px),(orientation:portrait){.nb-spread{flex-direction:column-reverse;width:min(580px,94vw);gap:14px;box-shadow:none}.nb-page{flex:0 0 auto;width:100%;box-shadow:0 12px 30px #0008}}


.pc-layer{padding:0;background:#fff;overflow:hidden;backdrop-filter:none;animation:none}
.bw{width:100%;height:100%;background:#fff;font-family:"Segoe UI",Tahoma,"Microsoft JhengHei","PMingLiU",sans-serif;font-size:13px}
.bw-view{position:relative;width:100%;height:100%;overflow:auto;background:#fff;outline:none;-webkit-overflow-scrolling:touch}


.qq-page{min-height:100%;background:#fff;color:#222;font:13px Arial,"Microsoft JhengHei",sans-serif}
.qq-home{display:flex;flex-direction:column;align-items:center;padding:75px 20px 28px;min-height:100%}
.qq-logo{margin:0 0 12px;font:400 82px/1.05 Georgia,"Times New Roman",serif;letter-spacing:-5px;user-select:none}
.qq-logo span:nth-child(1),.qq-logo span:nth-child(4){color:#1763cf}.qq-logo span:nth-child(2),.qq-logo span:nth-child(6){color:#d13c30}.qq-logo span:nth-child(3){color:#efb600}.qq-logo span:nth-child(5){color:#289445}
.qq-logo small{display:block;margin:-7px 1px 0;text-align:right;color:#777;font:14px Arial,sans-serif;letter-spacing:0}
.qq-form{width:min(560px,100%);margin-top:18px;text-align:center}
.qq-form input[type=text]{width:100%;height:31px;padding:4px 8px;border:1px solid #bbb;border-top-color:#999;background:#fff;font:16px Arial,"Microsoft JhengHei",sans-serif;border-radius:0;outline:none;box-shadow:inset 0 1px 2px #0001}
.qq-form input[type=text]:focus{border-color:#4d90fe}
.qq-form .btns{margin-top:16px}
.qq-form button{margin:0 4px;padding:7px 13px;border:1px solid #d9d9d9;border-radius:2px;background:linear-gradient(#f5f5f5,#ededed);color:#444;font:bold 12px Arial,"Microsoft JhengHei",sans-serif}
.qq-form button:hover{background:#f6f6f6;color:#111}
.qq-language{margin:24px 0 0;font-size:12px}.qq-page a{cursor:pointer}.qq-language a,.qq-foot a,.qq-info a{color:#1122cc}
.qq-foot{margin-top:70px;text-align:center;color:#777;font-size:12px;line-height:1.8}.qq-foot p{margin:0 0 8px}.qq-foot small,.qq-foot small a{color:#777;font-size:11px}
.qq-res-head{display:flex;align-items:center;gap:24px;padding:20px 20px 16px;background:#f5f5f5;border-bottom:1px solid #ddd}
.qq-res-head .qq-logo{font-size:38px;letter-spacing:-2px;margin:0;cursor:pointer}
.qq-res-head form{display:flex;gap:8px;flex:1;max-width:590px;min-width:0}
.qq-res-head input{flex:1;min-width:0;height:30px;padding:4px 6px;border:1px solid #b9b9b9;outline:none;font:16px Arial,"Microsoft JhengHei",sans-serif}
.qq-res-head input:focus{border-color:#4d90fe}.qq-res-head button{padding:4px 20px;border:1px solid #3079ed;border-radius:2px;background:linear-gradient(#4d90fe,#4787ed);color:white;font:bold 12px Arial,sans-serif}
.qq-result-layout{display:flex}.qq-side{flex:none;width:140px;padding:24px 18px;color:#666;font-size:12px}.qq-side strong{display:block;color:#dd4b39;padding-bottom:16px}.qq-side span{display:block;margin:0 0 14px}
.qq-result-main{flex:1;min-width:0;padding:0 24px 30px 4px}.qq-stats{margin:0;padding:14px 0 0;color:#888;font-size:11px;line-height:1.7;font-weight:normal}.qq-stats b{font-weight:normal}
.qq-results{max-width:620px;padding:0 0 12px}.qq-r{margin:22px 0}.qq-r h2{font-size:16px;font-weight:normal;margin:0 0 3px;line-height:1.35}
.qq-r a{color:#1122cc;text-decoration:underline;cursor:pointer}.qq-r a:visited{color:#551a8b}.qq-r p{margin:3px 0;font-size:13px;line-height:1.5;color:#333}
.qq-r cite{color:#00802a;font-style:normal;font-size:12px}.qq-result-tools{color:#777;font-size:11px}.qq-none{padding:16px 0}.qq-end{font-size:12px;color:#777}.qq-info{padding:38px 24px}.qq-info h1{font-size:20px;font-weight:normal}
@media(max-width:760px){.qq-home{padding:75px 18px 25px}.qq-logo{font-size:72px}.qq-foot{margin-top:55px}.qq-side{display:none}.qq-res-head{gap:10px;padding:16px 10px}.qq-res-head .qq-logo{font-size:27px;letter-spacing:-2px}.qq-res-head button{padding:4px 10px}.qq-result-main{padding:0 14px 30px}.qq-stats{font-size:10px}.qq-r{margin:20px 0}}


.sch{min-height:100%;background:#e6f2f6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M0 8L8 0' stroke='%23d3e8ee' stroke-width='1'/%3E%3C/svg%3E");font:13px/1.6 "PMingLiU","新細明體","Noto Serif TC","Noto Serif CJK TC",serif;color:#333;padding:0 0 24px}
.sch a{color:#1d5aa6;cursor:pointer}
.sch a:hover{color:#d2491b}
.sch-wrap{width:min(960px,100%);margin:0 auto;background:#fff;border:1px solid #9cc7d6;border-top:0;box-shadow:0 0 10px rgba(80,140,160,.25)}
.sch-banner{position:relative;display:flex;align-items:center;gap:16px;height:118px;padding:0 22px;background:linear-gradient(180deg,#bfe5f2 0%,#e9f7f0 62%,#cde9c8 100%);border-bottom:3px solid #6fb37c;overflow:hidden}
.sch-banner::after{content:"";position:absolute;right:-30px;bottom:-40px;width:420px;height:140px;border-radius:50%;background:radial-gradient(ellipse at 50% 30%,rgba(110,175,110,.55),rgba(110,175,110,0) 70%)}
.sch-badge{flex:none;width:84px;height:84px;position:relative;z-index:1}
.sch-name{position:relative;z-index:1}
.sch-name h1{margin:0;color:#174f7a;font:700 30px/1.15 "DFKai-SB","BiauKai","標楷體","Kaiti TC",serif;letter-spacing:.12em;text-shadow:1px 1px 0 #fff,2px 2px 2px rgba(0,60,90,.25)}
.sch-name p{margin:2px 0 0;color:#2f7a52;font:italic 700 13px Georgia,serif;letter-spacing:.06em}
.sch-date{position:absolute;right:14px;top:8px;z-index:1;color:#2f5c74;font-size:12px}
.sch-marquee{overflow:hidden;white-space:nowrap;background:#fdf9d8;border-bottom:1px dashed #d7c96b;color:#b0391b;font-size:13px;line-height:26px}
.sch-marquee span{display:inline-block;padding-left:100%;animation:marquee 34s linear infinite}
@keyframes marquee{to{transform:translateX(-100%)}}
.sch-cols{display:flex;align-items:flex-start}
.sch-side{flex:none;width:190px;padding:10px;background:#f2f9f4;border-right:1px solid #cfe6d6;align-self:stretch}
.sch-menu{margin:0 0 12px;padding:0;list-style:none}
.sch-menu li{margin:0 0 4px}
.sch-menu a{display:block;padding:6px 10px 5px 24px;border:1px solid #9fcfae;border-radius:3px;background:linear-gradient(#ffffff,#d9efdf);color:#245d3a;font-weight:700;text-decoration:none;position:relative}
.sch-menu a::before{content:"▶";position:absolute;left:8px;top:7px;font-size:9px;color:#6fb37c}.sch-menu a.on{background:linear-gradient(#fffbe5,#ffe9a8);color:#8a4b00;border-color:#e0bf63}
.sch-menu a:hover{background:linear-gradient(#fffbe5,#ffe9a8);color:#8a4b00}
.sch-box{margin:0 0 12px;border:1px solid #a9d3e0;background:#fff}
.sch-box h3{margin:0;padding:3px 8px;background:linear-gradient(#7cc0d8,#4a9cbc);color:#fff;font-size:13px;letter-spacing:.1em}
.sch-box .in{padding:8px}
.sch-box input[type=text]{width:100%;padding:2px 4px;border:1px solid #8bb;font-size:13px}
.sch-box button{margin-top:6px;padding:1px 10px;border:1px solid #7a9;border-radius:2px;background:linear-gradient(#fff,#dde);font-size:12px}
.sch-counter{display:inline-block;margin-top:2px;padding:1px 4px;background:#111;color:#4cff4c;font:700 14px/1.2 "Courier New",monospace;letter-spacing:2px;border:2px inset #777}
.sch-main{flex:1;min-width:0;padding:12px 16px 20px}
.sch-h2{margin:0 0 10px;padding:4px 10px;border-left:6px solid #4a9cbc;background:linear-gradient(90deg,#dff1f7,#fff);color:#175a7c;font-size:16px;letter-spacing:.1em}
.sch-table{width:100%;border-collapse:collapse;font-size:13px}
.sch-table th{padding:4px 6px;background:#d4ecd9;border:1px solid #a9cfb2;color:#245d3a;font-weight:700}
.sch-table td{padding:5px 6px;border:1px solid #cfe1d4;vertical-align:top}
.sch-table tr:nth-child(even) td{background:#f6fbf7}
.sch-table .unit{color:#8a4b00;white-space:nowrap}
.sch-new{display:inline-block;margin-left:4px;padding:0 3px;background:#e33;color:#fff;font:700 10px/14px Arial,sans-serif;border-radius:2px;animation:blink 1s steps(2) infinite}
@keyframes blink{50%{opacity:.2}}
.sch-art{max-width:640px}
.sch-art h2{margin:0 0 4px;color:#174f7a;font-size:20px;letter-spacing:.05em}
.sch-meta{margin:0 0 14px;padding-bottom:8px;border-bottom:1px dashed #9cc7d6;color:#777;font-size:12px}
.sch-art .body p{margin:0 0 .9em;font-size:15px;line-height:1.9;text-indent:2em}
.sch-art .body.noindent p{text-indent:0}
.sch-art img{max-width:100%;height:auto;border:4px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.35)}
.sch-board{margin-top:26px;border:1px solid #e3c98c;background:#fffaf0}
.sch-board h3{margin:0;padding:4px 10px;background:linear-gradient(#ffe9b0,#f7d27a);color:#7a4a00;font-size:13px}
.sch-msg{padding:8px 12px;border-bottom:1px dotted #e3c98c}
.sch-msg .who{color:#b0391b;font-weight:700}
.sch-msg .when{margin-left:8px;color:#999;font-size:11.5px}
.sch-msg .txt{margin:4px 0 0;white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.7}
.sch-msg-none{padding:10px 12px;color:#999}
.sch-form{padding:10px 12px;background:#fff6e0}
.sch-form label{display:block;margin:0 0 6px;font-size:12.5px;color:#7a4a00}
.sch-form input,.sch-form textarea{width:100%;max-width:420px;padding:3px 5px;border:1px solid #cfb37a;font:14px "PMingLiU","新細明體",serif;background:#fff}
.sch-form textarea{height:64px;resize:vertical;display:block}
.sch-form button{margin-top:6px;padding:2px 14px;border:1px solid #b88a2e;border-radius:2px;background:linear-gradient(#fffbe9,#f3d58f);color:#6a3e00;font-size:13px}
.sch-foot{padding:10px;border-top:3px solid #6fb37c;background:#eef7f0;color:#557;text-align:center;font-size:12px;line-height:1.7}
.sch-song{white-space:pre-line;font-size:16px;line-height:2.1;text-align:center;font-family:"DFKai-SB","BiauKai","標楷體","Kaiti TC",serif}
.sch-motto{display:flex;gap:12px;justify-content:center;margin:20px 0;flex-wrap:wrap}
.sch-motto b{display:grid;place-items:center;width:72px;height:72px;border:3px double #4a9cbc;border-radius:50%;color:#174f7a;font:700 30px "DFKai-SB","BiauKai","標楷體","Kaiti TC",serif;background:#f4fbfd}
.sch-back{margin-top:16px;font-size:12.5px}
@media (max-width:760px){
  .sch-banner{height:86px;gap:10px;padding:0 10px}
  .sch-badge{width:58px;height:58px}
  .sch-name h1{font-size:19px;letter-spacing:.06em}
  .sch-name p{font-size:10.5px}
  .sch-date{display:none}
  .sch-cols{flex-direction:column}
  .sch-side{width:100%;border-right:0;border-bottom:1px solid #cfe6d6;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .sch-menu{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:0}
  .sch-menu li{margin:0}
  .sch-menu a{padding:6px 4px 5px 16px;font-size:12px}
  .sch-menu a::before{left:4px}
  .sch-box{margin:0}
  .sch-main{padding:12px 10px 18px}
  .sch-table .hide-m{display:none}
}


.alex{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px 10px;background:#1b1b1b;font-family:Verdana,"Microsoft JhengHei","PingFang TC","Noto Sans CJK TC",sans-serif}
.alex-box{position:relative;margin:0 auto;width:min(640px,100%);aspect-ratio:4/3;overflow:hidden;border:1px solid #444;background:#000;color:#fff}
.alex-load{position:absolute;inset:0;display:grid;place-content:center;gap:10px;text-align:center;font-size:12px;color:#ccc}
.alex-bar{width:220px;height:10px;border:1px solid #888;background:#111}
.alex-bar i{display:block;height:100%;width:0;background:linear-gradient(#ffd34d,#e38b00)}
.alex-title{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 120%,#3a0a0a,#090512 70%)}
.alex-title canvas{position:absolute;inset:0;width:100%;height:100%}
.alex-title h2{position:relative;margin:0;font:900 clamp(30px,8vw,54px)/1.1 "Microsoft JhengHei","PingFang TC","Noto Sans CJK TC",sans-serif;color:#ffe066;letter-spacing:.12em;text-shadow:0 0 18px #ff5b2e,3px 3px 0 #b3001b}
.alex-title p{position:relative;margin:10px 0 22px;color:#ffd8c9;letter-spacing:.3em;font-size:13px}
.alex-title button{position:relative;padding:8px 26px;border:2px solid #ffe066;border-radius:4px;background:#c4161c;color:#fff;font:700 15px "Microsoft JhengHei","PingFang TC","Noto Sans CJK TC",sans-serif;letter-spacing:.2em;box-shadow:0 3px 0 #6d0a0e}
.alex-credit{position:absolute;right:8px;bottom:6px;color:#aaa;font-size:10.5px}
.alex-note{margin:12px auto 0;width:min(640px,100%);color:#888;font-size:11.5px;text-align:center}


.tbc-layer{z-index:40;display:grid;place-items:center;padding:20px;background:rgba(8,6,5,.92)}
.tbc-card{max-width:420px;padding:34px 28px;text-align:center;color:#f7eddc;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(40,28,20,.7)}
.tbc-kicker{margin:0;color:#d9b88c;font-size:13px;letter-spacing:.2em}
.tbc-card h2{margin:10px 0 14px;font-size:32px;letter-spacing:.3em}
.tbc-card p{line-height:1.9}
.tbc-card button{margin-top:10px;padding:8px 22px;border:1px solid #d9b88c;border-radius:20px;background:transparent;color:#f7eddc}

button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}


.qq-logo-link{text-decoration:none!important;color:inherit;flex:none}
.qq-query{position:relative;min-width:0;flex:1;text-align:left}
.qq-query input{display:block;width:100%}
.qq-history{position:absolute;z-index:50;top:100%;left:0;right:0;border:1px solid #aaa;border-top:0;background:#fff;box-shadow:0 3px 5px #0003;max-height:240px;overflow-y:auto;color:#000;font:16px/1.4 Arial,"Microsoft JhengHei",sans-serif}
.qq-history-row{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:5px 8px;cursor:default;min-height:31px}
.qq-history-row>span{overflow-wrap:anywhere}.qq-history-row[aria-selected=true]{background:#eee}
.qq-history-row:hover{background:#eee}
.qq-history-row button{flex:none;margin:0;padding:1px 0;border:0;background:transparent;color:#777;font:11px Arial,"Microsoft JhengHei",sans-serif;box-shadow:none;text-decoration:underline;cursor:pointer}.qq-history-row button:hover{flex:none;margin:0;padding:1px 0;background:transparent;color:#777;font:11px Arial,"Microsoft JhengHei",sans-serif;text-decoration:underline;cursor:pointer}
.qq-info{max-width:850px;margin:0 auto;color:#333;font:13px/1.7 Arial,"Microsoft JhengHei",sans-serif}
.qq-info .qq-logo{font-size:48px;letter-spacing:-3px;display:inline-block}
.qq-info h1{margin:20px 0;border-bottom:1px solid #ccc;padding-bottom:8px;color:#333;font-size:24px}
.qq-info h2{font-size:16px;margin:24px 0 6px;color:#333}
.qq-info-back{margin-top:32px}.qq-info .qq-foot{margin-top:36px;border-top:1px solid #ccc;padding-top:15px}.qq-policy-date{color:#777}
.qq-r cite{overflow-wrap:anywhere}.qq-none{font-size:13px;line-height:1.8}.qq-none ul{padding-left:24px}
.quantum-page{max-width:740px;margin:70px auto;padding:20px 30px;color:#333;font:14px/1.8 "PMingLiU","新細明體",serif;text-align:center}
.quantum-page header{font-size:26px;letter-spacing:.12em;color:#163852;text-align:left}.quantum-rule{height:5px;background:#254c67;margin:10px 0 60px}
.quantum-page h1{font-size:24px;font-weight:normal}.quantum-en{font:12px Georgia,serif;letter-spacing:2px;color:#777;margin:24px 0 65px}.quantum-page hr{border:0;border-top:1px solid #aaa}.quantum-page small{color:#777;font-size:12px}

.win-menu{position:fixed;z-index:1000;min-width:238px;max-width:calc(100vw - 6px);max-height:calc(100svh - 6px);overflow-y:auto;padding:2px;border:1px solid #979797;background:#f0f0f0;box-shadow:2px 3px 5px #0006;color:#111;font:12px/1.2 "Segoe UI",Tahoma,"Microsoft JhengHei",sans-serif;user-select:none}
.win-menu::before{content:"";position:absolute;left:28px;top:2px;bottom:2px;border-left:1px solid #ddd;border-right:1px solid #fff;pointer-events:none}
.win-menu button{position:relative;display:flex;align-items:center;width:100%;height:25px;padding:0 8px 0 31px;border:1px solid transparent;border-radius:2px;background:transparent;text-align:left;font:inherit;color:inherit;white-space:nowrap;gap:28px;outline:none}.win-menu button:focus-visible{border-color:#9ac2e8;background:linear-gradient(#edf6ff,#d9eafb);box-shadow:inset 0 0 0 1px #fffa}
.win-menu button:hover:not(:disabled){background:linear-gradient(#edf6ff,#d9eafb)}
.win-menu button:disabled{color:#888;text-shadow:1px 1px #fff}
.win-menu kbd{margin-left:auto;font:inherit;color:inherit}
.wm-separator{margin:3px 0 3px 29px;border-top:1px solid #ddd;border-bottom:1px solid #fff}
.wm-icon{position:absolute;left:7px;width:12px;height:12px;font-style:normal;color:#286299;text-align:center}
.wm-icon.back::before{content:"";display:block;width:8px;height:8px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:1px 0 0 3px}
.wm-icon.forward::before{content:"";display:block;width:8px;height:8px;border-right:2px solid currentColor;border-top:2px solid currentColor;transform:rotate(45deg);margin:1px 3px 0 0}
.wm-icon.refresh::before{content:"↻";font:bold 17px/12px Arial;color:#45814b}
.win-menu button:disabled .wm-icon{color:#999}
@media(max-width:480px){.qq-history{font-size:14px}.qq-history-row{padding:6px}.qq-info{padding:30px 18px}.quantum-page{margin-top:45px;padding:20px}.win-menu{min-width:220px}.win-menu button{gap:20px}}


.sch{background-color:#d6edf7;background-image:repeating-linear-gradient(90deg,transparent 0 7px,#fff5 7px 8px),linear-gradient(#b4dbe9,#eaf7ec 420px);padding:8px 0 26px}
.sch-wrap{width:min(1040px,100%);border:1px solid #669fbd;border-top:1px solid #fff;box-shadow:0 0 0 4px #fff8,0 3px 12px #42778c3b}
.sch-utility{display:flex;justify-content:space-between;gap:10px;padding:3px 12px;background:#f1faff;border-bottom:1px solid #b5d5e4;color:#4d7289;font-size:11px}
.sch-utility nav{white-space:nowrap}.sch-utility a{text-decoration:none}
.sch-banner{height:218px;padding:0 28px;gap:15px;background:linear-gradient(90deg,#f4fff2ed 0%,#f4fff2c9 32%,#fff2 59%,transparent 78%),#dfebdd url('../assets/i-8f5707f0768069.webp') center 49%/cover no-repeat;border-bottom:0}
.sch-banner::after{display:none}.sch-badge-link{align-self:center;filter:drop-shadow(1px 2px 1px #fff)}.sch-badge{width:80px;height:80px}
.sch-name{align-self:center;margin-bottom:13px}.sch-name h1{color:#154f89;font-size:39px;letter-spacing:.08em;text-shadow:2px 2px 0 #fff,-1px -1px 0 #fff,3px 3px 1px #85bfc0}
.sch-name h1 small{display:block;margin-bottom:8px;font-size:19px;letter-spacing:.22em;color:#265f75}.sch-name p{font:700 11px/1.5 Georgia,serif;letter-spacing:.01em;color:#215c78;text-shadow:1px 1px #fff}
.sch-slogan{display:inline-block;margin-top:12px;padding:2px 10px;border-top:1px solid #fff;border-bottom:1px solid #fff;background:#ffffffe0;color:#357a32;font:700 14px/1.4 'DFKai-SB','標楷體',serif;letter-spacing:.15em}
.sch-date{top:9px;right:12px;padding:2px 7px;background:#fff9;border:1px solid #fff;color:#345a67;font-size:11px}
.sch-weather{position:absolute;right:15px;top:41px;padding:1px 8px;color:#976514;background:#ffffeabf;font-size:12px}
.sch-welcome-strip{display:flex;justify-content:space-between;padding:3px 16px;background:linear-gradient(#68b9ca,#2b87ab);border-top:1px solid #dcfafd;border-bottom:1px solid #165e87;color:white;font-size:12px;text-shadow:1px 1px #386978}
.sch-welcome-strip strong{font:700 11px/1.8 Verdana,sans-serif;letter-spacing:.12em}.sch-welcome-strip span{letter-spacing:.2em}
.sch-marquee{border-bottom:1px solid #e0c771;background:#fffbcf;line-height:25px}.sch-cols{background:linear-gradient(90deg,#eaf5fe 175px,#fff 175px)}
.sch-side{width:175px;padding:10px 9px;border-right:1px solid #a9cede;background:#edf7fc}.sch-side-heading{margin:0 0 7px;padding:4px;background:linear-gradient(#318fc0,#17649f);border:1px solid #fff;outline:1px solid #65aaca;color:#fff;text-align:center;font-size:13px;letter-spacing:.15em;text-shadow:1px 1px #185273}
.sch-menu a{border-radius:0;border:1px solid #82adc7;border-top-color:#fff;border-left-color:#fff;box-shadow:1px 1px #9db5c0;padding:5px 5px 5px 23px;background:linear-gradient(#fafdff,#cde5f4);color:#245375}
.sch-menu li:nth-child(3n+2) a{background:linear-gradient(#fffef5,#f9e5a6);color:#80521c;border-right-color:#d9bd81;border-bottom-color:#d9bd81}
.sch-menu li:nth-child(3n) a{background:linear-gradient(#fcfff9,#dcebbe);color:#456822;border-right-color:#a8c388;border-bottom-color:#a8c388}.sch-menu a.on{background:linear-gradient(#fff9e5,#ffd391);color:#a4430b;outline:1px solid #e0a157}
.sch-menu a:hover{background:linear-gradient(#fff9e5,#ffd391);color:#a4430b}.sch-menu a::before{color:#f29925}
.sch-box{border-color:#9dc4d5}.sch-box h3{background:linear-gradient(#87c5e2 0%,#579cc6 48%,#3485b5 49%,#64a9cd);border-top:1px solid #e5f7ff;text-shadow:1px 1px #396c86;font-size:12px;padding:3px 7px}
.sch-visitors{text-align:center}.sch-visitors .in{font-size:11px;color:#55738a}.sch-search-box .in{padding:7px}.sch-search-box button{float:right;margin:5px 0 0}.sch-search-box .in::after{content:'';display:block;clear:both}
.sch-side-banners{display:grid;gap:9px;margin-top:10px}.sch-side-banners a{text-decoration:none;text-align:center;padding:8px 3px;border:2px ridge #e9bdbb;background:linear-gradient(135deg,#fffbe8,#ffd6d9);color:#a8375b;line-height:1.5}.sch-side-banners a:nth-child(2){border-color:#a7c7e6;background:linear-gradient(135deg,#edfeff,#c7dfff);color:#1768a2}.sch-side-banners span{display:block;font:700 22px 'DFKai-SB','標楷體',serif;text-shadow:1px 1px #fff}.sch-side-banners small{font-size:11px}
.sch-main{padding:12px 13px 20px}.sch-event-banner{display:flex;align-items:center;justify-content:space-between;gap:13px;position:relative;overflow:hidden;margin:0 0 12px;padding:10px 18px;border:3px double #fff;outline:1px solid #dea846;background:repeating-linear-gradient(120deg,transparent 0 25px,#fff3 25px 44px),linear-gradient(110deg,#fff28c,#ffeeb0 60%,#fac18b);color:#8e4417!important;text-decoration:none;text-shadow:1px 1px white}
.sch-event-year{font:900 39px/.8 Georgia,serif;transform:rotate(-5deg);color:#e27919}.sch-event-year small{display:block;margin-top:7px;font:12px/1.3 'PMingLiU',serif;letter-spacing:.1em}.sch-event-banner>span:nth-child(2){flex:1}.sch-event-banner strong{display:block;margin:1px 0;font:700 26px/1.25 'DFKai-SB','標楷體',serif;letter-spacing:.05em;color:#b34619}.sch-event-banner small{font-size:11px}.sch-event-banner em{font-size:11px;font-style:normal}.sch-event-banner>b{font:italic 900 31px Georgia,serif;color:#fff;text-shadow:2px 2px #df7d29;transform:rotate(8deg)}
.sch-home-layout{display:grid;grid-template-columns:minmax(0,1fr) 166px;gap:12px}.sch-home-center{min-width:0}.sch-right{min-width:0}.sch-panel{margin-bottom:13px;border:1px solid #9fc5df;background:#fff}.sch-panel-title{display:flex;align-items:center;justify-content:space-between;padding:4px 9px;border-top:1px solid #e7f6ff;border-bottom:1px solid #8eafc8;background:linear-gradient(#d8eeff,#b7d8f0);color:#20557b}
.sch-panel-title h2{margin:0;font-size:15px;letter-spacing:.18em;text-shadow:1px 1px #fff}.sch-panel-title h2::before{content:'◆';margin-right:7px;color:#ee9d22;font-size:11px}.sch-panel-title>span{font:italic 700 11px Georgia,serif;color:#4c83a7}.sch-panel-title>a{font-size:11px}
.sch-panel-orange{border-color:#dfb76e}.sch-panel-orange .sch-panel-title{background:linear-gradient(#fff0c2,#f8d896);border-bottom-color:#ddba78;color:#995c14}
.sch-table{font-size:12px}.sch-table th{background:linear-gradient(#eff8e9,#dcebc9);border-color:#b9ceb0;color:#476734;padding:4px}.sch-table td{padding:6px 5px;border-color:#d1dfe5;line-height:1.65}.sch-table tr:nth-child(even) td{background:#f0f7fc}.sch-table tr:nth-child(odd) td{background:#fffdf1}.sch-table a{text-decoration:underline}.sch-news-table{font-size:12px}.sch-news-table th{background:#f3f9fc;color:#607f93;border-color:#d4e3ee}.sch-news-table .unit{font-size:11px;color:#a76125}.sch-new{font-size:9px;margin-left:3px}
.sch-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:12px}.sch-photo-card{min-width:0;display:block;text-decoration:none!important;font-size:12px}.sch-photo-mat{display:block;position:relative;border:1px solid #adb8bf;padding:5px;background:white;box-shadow:2px 2px 0 #dde3e8}.sch-photo-mat img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.sch-photo-open{position:absolute;bottom:5px;right:5px;background:#fffd;padding:1px 5px;font-size:10px;color:#335877}.sch-photo-card strong{display:block;margin:6px 0 0;font-size:12px;line-height:1.5}.sch-photo-card small{color:#85857e;font-size:10px}.sch-photo-card:hover .sch-photo-mat{background:#fffbda}.sch-photo-card:hover strong{text-decoration:underline}
.sch-home-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sch-home-links a{display:block;border:2px ridge #bfd2df;padding:7px 10px;text-align:center;text-decoration:none;background:linear-gradient(#eef6ff,#d5e8ff)}.sch-home-links a:nth-child(2){border-color:#c7d9af;background:linear-gradient(#f8ffe7,#dfedbd);color:#52722b}.sch-home-links b{display:block;font:700 20px 'DFKai-SB','標楷體',serif;letter-spacing:.15em}.sch-home-links span{display:block;font-size:11px;margin-top:3px}
.sch-calendar .sch-month{text-align:center;margin:5px 0;color:#417797;font-size:11px}.sch-calendar table{width:calc(100% - 12px);margin:0 6px;border-collapse:collapse;text-align:center;font:11px/1.7 Arial,sans-serif}.sch-calendar th{font-weight:400;color:#38708e;border-bottom:1px solid #bfd6e1}.sch-calendar td{border:1px solid #e2edf1;background:#fff}.sch-calendar th:first-child,.sch-calendar td:first-child{color:#c55451}.sch-calendar .today{background:#fce885;font-weight:700;outline:1px solid #d5b944}.sch-calendar .event-day{background:#e2efd1;color:#4e7732}.sch-calendar-note{font-size:11px;line-height:1.9;margin:7px;color:#658071}.sch-small-more{display:block;padding:0 8px 5px;text-align:right;font-size:11px}
.sch-promo{display:block;margin:12px 0;padding:12px 5px;text-align:center;text-decoration:none;border:3px double white;outline:1px solid #a6b98b;background:linear-gradient(135deg,#f7ffe0,#c6e498);color:#4d741d!important;box-shadow:1px 2px 1px #b9cbb4}.sch-promo small{display:block;font:10px Georgia,serif;letter-spacing:.1em}.sch-promo strong{display:block;margin:3px 0 6px;font:700 23px/1.3 'DFKai-SB','標楷體',serif;text-shadow:1px 1px white}.sch-promo span{font-size:12px;line-height:1.6}.sch-promo b{display:block;margin-top:5px;font:700 25px Georgia,serif;color:#78a740;letter-spacing:.14em;text-shadow:2px 2px #fff9}.sch-promo-safety{outline-color:#b8abcc;background:linear-gradient(135deg,#f9f1ff,#d9cdec);color:#70598e!important}.sch-promo-safety strong{font-size:21px}
.sch-h2{border:1px solid #adc9da;border-left:6px solid #5599c0;background:linear-gradient(#eaf6ff,#d2e7f7);font-size:16px}.sch-art{max-width:750px}.sch-art h2{font-size:20px;line-height:1.6}.sch-art .body p{font-size:15px;line-height:1.95}.sch-foot{border-top:4px double #8fbdbd;background:linear-gradient(#e4f2f8,#f5fbec);color:#587e91;font-size:11px;line-height:1.9}.sch-foot strong{font-size:12px;letter-spacing:.14em}
.sch-album h2{font-size:20px;color:#2a6086;line-height:1.6}.sch-album figure{margin:14px 0}.sch-album-photo{display:block;width:100%;height:auto;border:6px solid #fff;outline:1px solid #adb9c4;box-shadow:2px 3px #dde5eb}.sch-album figcaption{margin:14px 3px;font-size:14px;line-height:1.8;color:#60745a}.sch-album-nav{display:flex;justify-content:space-between;gap:15px;border-top:1px dotted #a8c3d0;padding-top:10px;font-size:12px}.sch-album-intro{font-size:13px;color:#738168}
@media(max-width:900px) and (min-width:761px){.sch-home-layout{grid-template-columns:minmax(0,1fr) 144px}.sch-side{width:160px}.sch-event-banner strong{font-size:23px}.sch-photo-grid{gap:9px;padding:9px}.sch-news-table .hide-m{display:none}}
@media(max-width:760px){.sch{padding:0 0 16px}.sch-wrap{border-left:0;border-right:0;box-shadow:none}.sch-utility{padding:3px 8px;justify-content:flex-end}.sch-utility>span{display:none}.sch-banner{height:160px;padding:0 12px;gap:8px;background-position:60% bottom}.sch-badge{width:52px;height:52px}.sch-name{margin-bottom:4px}.sch-name h1{font-size:27px;letter-spacing:.05em}.sch-name h1 small{font-size:14px;margin-bottom:4px}.sch-name p{max-width:260px;font-size:9px}.sch-slogan{margin-top:7px;font-size:11px;padding:2px 5px;letter-spacing:.07em}.sch-date{display:none}.sch-weather{top:5px;right:8px;font-size:10px}.sch-welcome-strip{padding:3px 8px}.sch-welcome-strip strong{font-size:9px}.sch-welcome-strip span{font-size:10px;letter-spacing:0}.sch-cols{background:white;flex-direction:column}.sch-side{width:100%;padding:8px;border-right:0;border-bottom:1px solid #a9cede;display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:8px}.sch-side-heading,.sch-side-banners{display:none}.sch-menu{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0}.sch-menu a{font-size:11px;padding:4px 3px 4px 12px}.sch-menu a::before{left:3px;top:6px;font-size:7px}.sch-box{margin:0}.sch-visitors .in{padding:4px;line-height:1.3}.sch-visitors .in br{display:none}.sch-counter{font-size:12px;margin:3px 0}.sch-search-box .in form{display:flex;align-items:center;gap:5px}.sch-search-box input{min-width:0}.sch-search-box button{float:none;margin:0;white-space:nowrap;padding:2px 5px}.sch-main{width:100%;padding:10px 8px 18px}.sch-event-banner{padding:8px;gap:8px}.sch-event-year{font-size:30px}.sch-event-year small{font-size:10px}.sch-event-banner strong{font-size:20px}.sch-event-banner em{font-size:10px}.sch-event-banner>b{display:none}.sch-home-layout{display:block}.sch-right{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;align-items:start}.sch-right .sch-calendar{grid-row:span 2}.sch-promo{margin:0;padding:7px 4px}.sch-promo strong{font-size:19px}.sch-promo b{display:none}.sch-promo-safety strong{font-size:17px}.sch-photo-grid{padding:10px;gap:9px}.sch-photo-open{font-size:9px}.sch-photo-card strong{font-size:11px}.sch-photo-card small{font-size:9px}.sch-art h2,.sch-album h2{font-size:18px}.sch-table{font-size:12px}.sch-table td{padding:5px 4px}.sch-album-nav{font-size:11px}.sch-album-photo{border-width:4px}.sch-foot{font-size:10px;padding:10px 7px}}
@media(prefers-reduced-motion:reduce){.sch-marquee span{animation:none;padding-left:8px}.sch-new{animation:none}}


.sch-album-nav{flex-wrap:wrap}.sch-art img{display:block}.sch-photo-mat img{object-position:center 38%}
@media(max-width:760px){.sch-banner{background-position:center,58% 48%}}


.sch-selection-count{position:fixed;z-index:1600;padding:3px 6px;border:1px solid rgba(124,112,96,.3);border-radius:4px;background:rgba(255,253,246,.96);color:#6b6257;box-shadow:0 1px 4px rgba(54,44,30,.12);font:400 11px/1.4 "Microsoft JhengHei",sans-serif;white-space:nowrap;writing-mode:horizontal-tb;pointer-events:none;user-select:none;-webkit-user-select:none}
.sch-selection-count[hidden]{display:none}


.sch-banner{background-position:center center;background-size:cover}.sch-badge{width:92px;height:92px}.sch-name{position:relative;z-index:1}
@media(max-width:760px){.sch-banner{background-position:right center}.sch-badge{width:55px;height:55px}.sch-name{max-width:63%}.sch-name h1{font-size:24px}.sch-name p{max-width:220px}}


.sch-mailbox{font-family:PMingLiU,serif}.sch-mail-intro{line-height:1.9}.sch-mailbox form{display:grid;grid-template-columns:120px minmax(0,1fr);gap:0;border:1px solid #b4c9d4;background:#fffcf4}.sch-mailbox label{padding:14px 12px;border-bottom:1px solid #d8e1e4;color:#275d79}.sch-mailbox input,.sch-mailbox textarea{font:15px Arial,sans-serif;margin:9px 12px;padding:8px;min-width:0;border:1px solid #b1c0c7;background:white;color:#222;border-radius:0;resize:vertical}.sch-mailbox .required{color:#b42222}.sch-mail-privacy,.sch-mail-status,.sch-mail-actions{grid-column:1/-1;margin:12px;line-height:1.8}.sch-mail-privacy{font:12px/1.7 Arial,sans-serif;color:#666}.sch-mail-actions button{font:15px PMingLiU,serif;background:linear-gradient(#fff,#dcead9);border:1px solid #819d78;padding:6px 25px;margin-right:10px;color:#2e6128;cursor:pointer}.sch-mail-actions button:disabled{opacity:.6;cursor:default}.sch-mail-status{color:#275d79;overflow-wrap:anywhere}.sch-mail-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:760px){.sch-mailbox form{grid-template-columns:1fr}.sch-mailbox label{padding:8px 12px 0;border:0}.sch-mailbox input,.sch-mailbox textarea{margin-top:5px}}


.sch-banner{background-color:#f1fcf5;background-image:linear-gradient(90deg,#f4fff2ed 0%,#f4fff2c9 32%,transparent 70%),url('../assets/i-8f5707f0768069.webp');background-size:100% 100%,auto 100%;background-position:center,right center;background-repeat:no-repeat}
.sch-song-player{display:flex;align-items:center;flex-direction:column;gap:8px;margin:24px auto 16px}.sch-song-player audio{width:min(100%,420px)}.sch-song-player>a{font-size:13px}


.sch .sch-art .body a.sch-clue-link,.sch .sch-art .body a.sch-clue-link:active,.sch .sch-art .body a.sch-clue-link:visited{color:inherit;font:inherit;text-decoration:none;background:none;border:0;padding:0;margin:0;cursor:pointer;user-select:text;-webkit-user-select:text}.sch .sch-art .body a.sch-clue-link:hover{color:inherit;font:inherit;text-decoration:none;background:none;padding:0;margin:0;cursor:pointer;user-select:text;-webkit-user-select:text}
.sch .sch-art .body a.sch-clue-link:focus-visible{outline:1px dotted currentColor;outline-offset:1px}


.sch-letter-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:26px 0 12px;color:#777;font:13px Arial,"Microsoft JhengHei",sans-serif}
.sch-letter-footer time{font-variant-numeric:tabular-nums}
.sch-letter-footer button{padding:4px 18px;border:1px solid #a88e52;background:linear-gradient(#fffdf3,#f3e5b8);color:#604821;cursor:pointer}
#pc.closing-flash{opacity:0}
#pc.ending-fade-out::after{content:"";position:absolute;inset:0;z-index:5000;background:#fff;pointer-events:auto;animation:ending-page-out 2500ms ease-in-out both}
.promise-ending.is-fading-in .ending-content{animation:ending-page-in 2500ms ease-in-out both}
@keyframes ending-page-out{from{opacity:0}to{opacity:1}}
@keyframes ending-page-in{from{opacity:0}to{opacity:1}}
.promise-ending{position:fixed;inset:0;z-index:2000;display:flex;overflow:auto;background:#fff;color:#929292;padding:32px;text-align:center}
.promise-ending[hidden],.ending-details[hidden]{display:none}
.ending-content{width:min(860px,100%);margin:auto}
.ending-logo{display:block;width:112px;max-width:100%;height:auto;margin:0 auto 28px}
.ending-line{min-height:3.6em;margin:0 0 38px;font:clamp(21px,3.5vw,32px)/1.8 "Noto Serif TC","PMingLiU",serif;letter-spacing:.12em;text-shadow:0 0 12px #9aabbd55,0 0 26px #bbc5d455}
.ending-details{font:13px/1.9 "Microsoft JhengHei",sans-serif;animation:ending-links-in 1.2s ease both}
.ending-author{margin:0 auto 20px;max-width:600px}
.ending-links{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 28px;font-size:14px}
.ending-details a{display:inline-block;color:#999;text-decoration:none;border-bottom:1px solid #dedede}
.ending-details a:focus-visible{color:#555;border-color:#999}
.ending-details a:hover{color:#555}
.ending-feedback{max-width:600px;margin:26px auto 20px}
.ending-contact-links{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 28px}
@keyframes ending-links-in{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.ending-details,#pc.ending-fade-out::after,.promise-ending.is-fading-in .ending-content{animation:none}}


.sch-signal-line{display:block;position:relative;isolation:isolate}
.sch-signal-line::before,.sch-signal-line::after{content:attr(data-echo);position:absolute;inset:0;pointer-events:none;opacity:0;overflow:hidden}
.sch-signal-line.is-glitching{animation:signal-rattle .21s steps(2,end) both}
.sch-signal-line.is-glitching::before{opacity:.85;color:#dd3030;transform:translate(calc(-1 * var(--signal-shift,2px)),-1px);clip-path:inset(var(--signal-top,20%) 0 var(--signal-bottom,55%) 0)}
.sch-signal-line.is-glitching::after{opacity:.8;color:#00a7c4;transform:translate(var(--signal-shift,2px),1px);clip-path:inset(var(--signal-bottom,55%) 0 var(--signal-top,20%) 0)}
@keyframes signal-rattle{0%{transform:translateX(0);opacity:1}25%{transform:translateX(var(--signal-shift,2px));opacity:.45}50%{transform:translateX(0);opacity:.95}75%{transform:translateX(calc(-1 * var(--signal-shift,2px)));opacity:.6}100%{transform:translateX(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.sch-signal-line.is-glitching{animation:none}.sch-signal-line::before,.sch-signal-line::after{display:none}}

.desk-power{position:absolute;z-index:2;left:1289px;top:279px;width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;background:none;cursor:pointer;box-shadow:none}
.power-key{display:block;width:23px;height:23px;border-radius:50%;background:transparent;pointer-events:none}
.power-key svg,.power-key i{display:none}
#desk[data-power=off] .power-key{backdrop-filter:grayscale(1) brightness(.55)}
#desk[data-power=booting] .power-key{animation:power-led .7s steps(1) infinite}
#desk[data-power=off] .monitor-screen::after,#desk[data-power=shutting-down] .monitor-screen::after{background:linear-gradient(155deg,#ffffff08,transparent 55%)}
@keyframes power-led{50%{backdrop-filter:brightness(.6)}}
@media(prefers-reduced-motion:reduce){#desk[data-power=booting] .power-key{animation:none}}

button:focus:not(:focus-visible),a:focus:not(:focus-visible),[role=button]:focus:not(:focus-visible){outline:none}
.desk-power:hover,.desk-power:active{outline:none;border:0;box-shadow:none;background:none}
.desk-power:focus-visible{outline:2px solid #b4d4eb;outline-offset:1px;border-radius:50%}