:root{--ink:#191919;--navy:#171717;--blue:#c51f2d;--sky:#fff0ee;--surface:#fff;--page:#f5f5f3;--line:#e2dedb;--muted:#625b59;--gold:#875500;--danger:#a63535;--green:#236b55;--radius:14px;font-family:-apple-system,BlinkMacSystemFont,"PingFang TC","Noto Sans TC","Microsoft JhengHei",sans-serif;color:var(--ink);background:var(--page);font-size:16px;line-height:1.6}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--blue)}button,a{transition:background-color .12s}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ce2635;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:1.9rem;line-height:1.4;letter-spacing:.015em;margin-bottom:8px;font-weight:650}h2{font-size:1.14rem;font-weight:650;margin-bottom:14px}h3{font-size:1rem;margin-bottom:6px}p{max-width:75ch}small{font-size:.82rem}fieldset{border:0;padding:0;margin:0;min-width:0}[hidden]{display:none!important}.muted{color:var(--muted);font-size:.9rem}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;line-height:1.4;text-decoration:none;border-radius:5px;padding:10px 18px;font-size:.9rem;font-weight:600;border:1px solid transparent;white-space:normal;text-align:center}.primary{background:var(--blue);color:white}.primary:hover{background:var(--navy)}.secondary{background:white;border-color:var(--line);color:var(--ink)}.secondary:hover{background:var(--sky)}.skip{position:fixed;top:-100px;left:16px;z-index:10;background:white;padding:12px}.skip:focus{top:8px}.site-header{min-height:80px;display:flex;align-items:center;justify-content:space-between;padding:16px 32px;background:var(--surface);border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:12px;background:none;border:0;color:var(--navy);font-size:1.13rem;font-weight:650;line-height:1.5;padding:0;text-align:left;min-width:0}.brand svg{width:38px;height:42px;fill:none;stroke:var(--navy);stroke-width:1.6;flex:none}.brand span{overflow-wrap:anywhere}.header-user{display:flex;gap:18px;align-items:center;flex:none}.header-user>span{font-size:.95rem;max-width:130px;overflow-wrap:anywhere}.header-user small{display:block;color:var(--muted)}.app-shell{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:calc(100vh - 144px)}.sidebar{padding:28px 20px;border-right:1px solid var(--line);background:#fff;display:flex;flex-direction:column;align-items:stretch;gap:22px}.competition-label{font-size:.86rem;color:var(--muted);padding:0 10px;overflow-wrap:anywhere}.sidebar nav{display:flex;flex-direction:column;gap:5px}.nav-link{text-align:left;background:transparent;border:0;padding:12px 14px;border-radius:5px;color:var(--ink);font-size:.95rem;min-height:46px}.nav-link.active{background:var(--navy);color:white;font-weight:600}.nav-link:hover{background:#ffe6e1}.nav-link.active:hover{background:var(--navy)}.sidebar-note{margin-top:auto;padding:15px 10px;color:var(--muted);font-size:.8rem;line-height:1.8}main{min-width:0;padding:36px clamp(22px,4vw,60px) 56px;max-width:1450px;width:100%;margin:0 auto}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.section-head p{color:var(--muted);font-size:.95rem;margin-bottom:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;margin:20px 0}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px;min-width:0;font-size:.92rem}.field>span{font-weight:600}.field input,.field textarea,.field select{width:100%;min-width:0;border:1px solid #bfb5b2;border-radius:4px;padding:10px 12px;background:white;color:var(--ink);min-height:46px}.field textarea{resize:vertical;line-height:1.7}.field input[readonly]{background:var(--page)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.form-grid>button{align-self:end;justify-self:start;margin-bottom:18px}.auth-form{max-width:520px}.auth-form.wide{max-width:800px}.auth-form>button.primary{min-width:150px}.check{display:flex;align-items:flex-start;gap:12px;margin:20px 0;font-size:.9rem}.check input{width:18px;height:18px;flex:none;margin-top:5px}.privacy{margin:24px 0;border:1px solid var(--line);border-radius:5px;background:#fff}.privacy summary{padding:14px 18px;cursor:pointer;font-size:.94rem;font-weight:600}.privacy .prose{padding:4px 20px 10px;font-size:.87rem;color:var(--muted);line-height:1.85}.privacy .prose p{max-width:90ch}.callout{padding:16px 20px;background:#fff6e3;border-left:3px solid var(--gold);border-radius:0 5px 5px 0;margin:22px 0;font-size:.91rem;overflow-wrap:anywhere}.callout.neutral{background:var(--sky);border-color:var(--blue)}.public-intro{display:grid;grid-template-columns:minmax(0,1fr) 290px;background:white;min-height:350px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:8px 0 32px}.intro-copy{padding:38px 36px}.intro-copy h1{font-family:"Microsoft JhengHei","PingFang TC",sans-serif;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.4;margin-top:16px;margin-bottom:16px}.intro-copy>p{font-size:1.04rem;color:var(--muted);line-height:1.9}.intro-copy .actions{margin-top:25px}.opening{display:inline-flex;align-items:center;gap:8px;font-size:.83rem;font-weight:600;color:var(--muted)}.opening:before{content:"";width:7px;height:7px;border-radius:50%;background:#817775}.opening.open{color:var(--green)}.opening.open:before{background:var(--green)}.deadline{background:var(--navy);color:white;padding:35px 28px;font-size:.91rem;display:flex;flex-direction:column;justify-content:center}.deadline>span{color:#cfcac9;font-size:.84rem}.deadline strong{font-size:1.26rem;line-height:1.6;margin:14px 0 8px}.deadline small{color:#cfcac9}.deadline p{margin:6px 0}.rule{height:1px;background:#595454;margin:22px 0 15px}.journey{padding:4px 0 28px;border-bottom:1px solid var(--line);margin-bottom:28px}.journey ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;margin:16px 0 0;counter-reset:steps;gap:20px}.journey li{counter-increment:steps;position:relative;padding-left:32px}.journey li:before{content:counter(steps);position:absolute;left:0;top:0;color:var(--blue);font-weight:700;font-size:1.1rem}.journey strong{display:block;font-size:.94rem}.journey span{display:block;color:var(--muted);font-size:.8rem;margin-top:4px}.announcement{padding:0 0 12px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:white;border:1px solid var(--line);border-radius:var(--radius);padding:22px 0;margin:24px 0}.metrics>div{padding:4px 24px;border-right:1px solid var(--line)}.metrics>div:last-child{border:0}.metrics span{font-size:.83rem;color:var(--muted)}.metrics strong{display:block;font-size:2.15rem;font-weight:550;color:var(--navy);line-height:1.5;font-variant-numeric:tabular-nums}.work-links{display:grid;grid-template-columns:1fr 1fr;gap:18px}.work-links button{background:var(--sky);border:0;border-radius:5px;padding:20px;text-align:left;color:var(--ink)}.work-links strong,.work-links span{display:block}.work-links span{font-size:.83rem;color:var(--muted);margin-top:5px}.audit-list{list-style:none;padding:0;margin:0;font-size:.85rem}.audit-list li{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.audit-list time{color:var(--muted)}.list-toolbar{display:flex;align-items:center;justify-content:space-between;margin:22px 0 14px;font-size:.86rem;color:var(--muted);gap:12px}.list-toolbar select{padding:8px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink)}.paper-list{border-top:1px solid var(--line)}.paper-row{display:grid;grid-template-columns:155px minmax(0,1fr) auto;align-items:center;gap:22px;padding:24px;background:white;border:1px solid var(--line);border-top:0}.paper-id{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums}.paper-copy{min-width:0}.paper-copy h2{font-size:1.07rem;margin-bottom:7px;overflow-wrap:anywhere;line-height:1.6}.paper-copy p{margin-bottom:4px;color:var(--muted);font-size:.83rem;overflow-wrap:anywhere}.paper-copy small{color:var(--muted);overflow-wrap:anywhere}.badge{display:inline-block;font-size:.76rem;line-height:1.6;background:#eef2f5;color:var(--muted);padding:4px 10px;border-radius:4px;font-weight:600}.badge.submitted,.badge.assigned{background:#fff0ed;color:#a31b28}.badge.under_review,.badge.in_progress{background:#fff2d6;color:#835914}.badge.reviewed,.badge.completed{background:#e4f0eb;color:#28614d}.badge.accepted{background:#daeee3;color:#226044}.badge.rejected{background:#f8e8e8;color:#943c3c}.empty{text-align:center;padding:60px 20px;background:white;border:1px solid var(--line);border-top:0}.empty p{margin-left:auto;margin-right:auto;color:var(--muted)}.paper-detail-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:25px 0}.paper-detail-head h1{margin-top:9px;overflow-wrap:anywhere}.paper-detail-head .badge{flex:none}.identifier{font-size:.83rem;color:var(--muted)}.progress{display:flex;list-style:none;padding:16px 0;margin:16px 0 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:16px 22px}.progress li{font-size:.8rem;color:var(--muted);display:flex;align-items:center;gap:7px}.progress span{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;background:#e8e5e2;border-radius:50%;font-size:.75rem}.progress .done{color:var(--green)}.progress .done span{background:#d7e9df;color:var(--green)}.progress .current{color:var(--blue);font-weight:600}.progress .current span{background:var(--blue);color:white}.file-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.file-row>span{min-width:0;overflow-wrap:anywhere}.file-row small{display:block;color:var(--muted);margin-top:5px}.file-row a{flex:none}.upload-form{display:flex;align-items:flex-end;gap:18px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.upload-form .field{flex:1;margin-bottom:0}.upload-form input{font-size:.83rem;padding:8px}.submit-panel{border-top:3px solid var(--blue)}.submit-panel>p{font-size:.93rem;color:var(--muted)}.author-line{display:flex;gap:16px;align-items:center;font-size:.86rem;padding:14px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.author-line span{color:var(--muted)}.review-note{margin:18px 0;padding:20px 0;border-top:1px solid var(--line);font-size:.93rem}.review-title{display:flex;justify-content:space-between;gap:20px}.confidential{background:var(--page);padding:14px;border-left:3px solid #8ca1b0}.user-list{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.user-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;padding:22px 26px;border-bottom:1px solid var(--line)}.user-row:last-child{border:0}.user-row h2{margin-bottom:5px}.user-row h2 small{font-weight:400;color:var(--muted)}.user-row p{color:var(--muted);font-size:.85rem;margin-bottom:0;overflow-wrap:anywhere}.user-permission{display:flex;align-items:flex-end;gap:12px}.user-permission .field{margin:0;font-size:.8rem}.user-permission select{min-height:44px;padding:8px}.settings-save{padding:12px 0}.loading{padding:50px}.result-panel{border-top:3px solid var(--green)}footer{padding:18px 30px;text-align:center;border-top:1px solid var(--line);font-size:.76rem;color:var(--muted);background:white;overflow-wrap:anywhere}#notice{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:20;max-width:calc(100vw - 36px);width:max-content;padding:14px 20px;border-radius:6px;box-shadow:0 4px 20px #19191925;font-size:.9rem;overflow-wrap:anywhere;background:var(--navy);color:white}#notice:empty{display:none}#notice.error{background:#923232}
@media(max-width:1100px){.app-shell{grid-template-columns:190px minmax(0,1fr)}.sidebar{padding:22px 14px}main{padding:28px 24px 44px}.public-intro{grid-template-columns:minmax(0,1fr) 245px}.intro-copy{padding:30px 25px}.deadline{padding:30px 22px}.paper-row{grid-template-columns:120px minmax(0,1fr) auto;gap:16px;padding:20px}.user-row{grid-template-columns:1fr}.user-permission{justify-content:flex-start}.metrics>div{padding:4px 18px}}
@media(max-width:800px){.site-header{padding:14px 22px;min-height:74px}.brand{font-size:1rem}.brand svg{width:32px}.app-shell{display:block}.sidebar{padding:14px 22px;border-right:0;border-bottom:1px solid var(--line);gap:12px;display:block}.competition-label{display:none}.sidebar nav{flex-direction:row;flex-wrap:wrap;gap:6px}.sidebar>.secondary{margin:10px 6px 0 0}.sidebar-note{display:none}.nav-link{padding:10px 12px;min-height:42px;font-size:.87rem}main{padding:26px 22px 40px}.journey ol{grid-template-columns:1fr 1fr;gap:20px}.metrics>div{padding:4px 15px}.metrics span{font-size:.76rem}.metrics strong{font-size:1.9rem}.panel{padding:22px}.paper-row{grid-template-columns:120px minmax(0,1fr)}.paper-row>button{grid-column:2;justify-self:start}.user-permission{flex-wrap:wrap}.audit-list li{flex-wrap:wrap;gap:4px 12px}}
@media(max-width:540px){h1{font-size:1.5rem}.site-header{padding:12px 16px;gap:12px;align-items:flex-start}.brand{font-size:.97rem}.brand svg{width:28px;height:33px}.header-user{gap:8px;align-items:flex-start}.header-user>span{font-size:.8rem;max-width:70px}.header-user small{font-size:.7rem}.header-user .secondary{padding:8px 12px;min-height:40px;font-size:.8rem}.sidebar{padding:12px 16px}.nav-link{padding:8px 11px;font-size:.84rem}main{padding:24px 16px 34px}.section-head{align-items:flex-start;flex-wrap:wrap;gap:14px}.section-head p{font-size:.88rem}.public-intro{grid-template-columns:1fr}.intro-copy{padding:26px 23px}.intro-copy h1{font-size:1.9rem}.intro-copy>p{font-size:.94rem}.deadline{padding:24px}.deadline strong{margin:6px 0;font-size:1.2rem}.deadline .rule{margin:16px 0 10px}.journey li{padding-left:25px}.journey ol{gap:18px 10px}.journey span{font-size:.76rem}.form-grid{grid-template-columns:1fr;gap:0}.panel{padding:20px 18px}.metrics{grid-template-columns:1fr 1fr;padding:0}.metrics>div{padding:16px 20px}.metrics>div:nth-child(2){border-right:0}.metrics>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.work-links{grid-template-columns:1fr;gap:12px}.work-links button{padding:16px}.paper-row{grid-template-columns:1fr;gap:12px;padding:20px 18px}.paper-id{flex-direction:row;align-items:center;justify-content:space-between}.paper-row>button{grid-column:1;justify-self:start}.list-toolbar{align-items:flex-start;flex-wrap:wrap}.paper-detail-head{align-items:flex-start;flex-direction:column;gap:5px}.paper-detail-head h1{font-size:1.45rem}.progress{gap:12px 15px}.progress li{font-size:.75rem}.progress span{width:21px;height:21px}.upload-form{flex-direction:column;align-items:stretch}.upload-form .field{width:100%}.file-row{align-items:flex-start;flex-direction:column;gap:12px}.author-line{align-items:flex-start;flex-direction:column;gap:5px}.user-row{padding:20px 18px}.user-permission{display:grid;grid-template-columns:1fr 1fr;width:100%}.user-permission button{justify-self:start;grid-column:1/-1}.user-row>div{min-width:0}.review-title{flex-wrap:wrap;gap:8px}.privacy .prose{padding-left:16px;padding-right:16px}.auth-form .primary{width:100%}footer{padding:16px;font-size:.72rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.home-media{margin:8px 0 28px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white}.home-media img{display:block;width:100%;height:auto;max-height:640px;object-fit:contain}.home-media figcaption{padding:12px 20px;color:var(--muted);font-size:.88rem;overflow-wrap:anywhere}.home-news{margin:32px 0}.home-news .section-head h2{margin:0}.news-list{border-top:1px solid var(--line)}.news-row{padding:22px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.news-row h3{font-size:1.14rem;margin:10px 0;line-height:1.6}.news-row h3 a{text-decoration:none}.news-row h3 a:hover{text-decoration:underline}.news-row p{color:var(--muted);font-size:.93rem;margin-bottom:8px}.news-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.8rem;color:var(--muted)}.news-meta time{margin-left:auto}.badge.pinned{background:#fff2d6;color:#835914}.badge.published{background:#e4f0eb;color:#28614d}.news-empty{padding:24px 0}.news-filter{display:flex;align-items:center;gap:12px;margin-bottom:20px}.news-filter select{font:inherit;padding:8px 12px;background:white;border:1px solid var(--line);border-radius:4px;min-height:44px}.news-article{max-width:850px;margin:28px auto;background:white;padding:clamp(22px,4vw,42px);border:1px solid var(--line);border-radius:var(--radius);overflow-wrap:anywhere}.news-article h1{font-family:"Microsoft JhengHei","PingFang TC",sans-serif;font-size:clamp(1.65rem,3vw,2.2rem);margin:20px 0}.article-summary{color:var(--muted);padding-bottom:20px;border-bottom:1px solid var(--line)}.news-article figure{margin:26px 0}.news-article img,.media-preview{display:block;max-width:100%;height:auto;max-height:640px;object-fit:contain;margin:20px auto}.article-body{line-height:1.95;font-size:1.02rem}.media-info{padding-top:24px;margin-top:24px;border-top:1px solid var(--line)}
@media(max-width:540px){.home-media figcaption{padding:10px 14px}.news-meta time{margin-left:0;width:100%}.news-row{padding:18px 0}.news-row h3{font-size:1.04rem}.news-article{padding:20px 18px}.news-article .panel{padding:18px 0;border:0;border-top:1px solid var(--line)}.article-body{font-size:.96rem}.home-news .section-head{gap:12px}.home-news .section-head .secondary{font-size:.83rem}}

/* Activity identity: red actions, yellow emphasis, black navigation. */
.site-header{border-top:6px solid #c51f2d;box-shadow:0 3px 18px #19191908}.brand svg{stroke:#c51f2d}.sidebar{background:#191919;border-right:0}.sidebar .competition-label,.sidebar-note{color:#c9c3bf}.sidebar .nav-link{color:#fff}.sidebar .nav-link:hover{background:#36302f}.sidebar .nav-link.active{background:#ffd43b;color:#191919;box-shadow:0 3px 10px #0002}.sidebar>.secondary{background:#2b2726;border-color:#625b59;color:#fff}.sidebar>.secondary:hover{background:#403736}.primary{box-shadow:0 3px 8px #c51f2d20;border-radius:9px}.primary:hover{background:#a01523}.secondary{border-radius:9px}.panel{box-shadow:0 4px 18px #19191904}.public-intro{border-top:5px solid #c51f2d}.intro-copy h1{font-weight:750}.deadline{background:#ffd43b;color:#191919}.deadline>span,.deadline small{color:#544511}.deadline .rule{background:#19191930}.opening.open{color:#b01a28}.opening.open:before{background:#c51f2d}.metrics>div:first-child strong{color:#c51f2d}.work-links button{background:#fff7d2;border:1px solid #eedf9f;border-radius:10px}.callout{background:#fff6ce;border-color:#d7a500}.callout.neutral{background:#fff0ee;border-color:#c51f2d}.progress .current span{background:#c51f2d}.progress .current{color:#b01a28}.badge.submitted,.badge.assigned{background:#fff1bf;color:#6d4900}.badge.under_review,.badge.in_progress{background:#ffe6df;color:#a51d28}.badge.reviewed,.badge.completed{background:#eae7e4;color:#34302e}.badge.accepted{background:#e4f0e5;color:#205a34}.submit-panel{border-top-color:#c51f2d}.result-panel{border-top-color:#d5a900}.field input,.field textarea,.field select{border-radius:8px}.author-response{margin:14px 0;padding:16px 18px;background:#fff8dc;border-left:3px solid #d4a300;border-radius:0 10px 10px 0;overflow-wrap:anywhere}.author-response p{margin:8px 0}.member-actions{margin-top:14px}.notification-list .review-title h2{overflow-wrap:anywhere}.notification-list p{overflow-wrap:anywhere}.panel summary{cursor:pointer;font-weight:650;min-height:32px}.panel details>form,.panel>form{margin-top:18px}.notification-list .badge{flex:none;align-self:flex-start}.news-meta .badge{white-space:nowrap}
@media(max-width:800px){.sidebar{border-bottom:4px solid #ffd43b}.sidebar .nav-link{border:1px solid #474140}.sidebar .nav-link.active{border-color:#ffd43b}.sidebar>.secondary{margin-top:12px}}
@media(max-width:540px){.notification-list .review-title{flex-direction:column}.member-actions{gap:8px}.member-actions button{flex:1}.site-header{border-top-width:5px}.author-response{padding:14px}.notification-list .panel{padding:18px}}
.skip:not(:focus){width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

.mail-connect-page{max-width:900px;margin:28px auto;overflow-wrap:anywhere}.mail-connect-page #redirect-uri{padding:14px;background:#fff7d2;border-radius:8px;user-select:all}.mail-connect-page section,.mail-connect-page form{margin-top:24px}.mail-connect-page button{margin:8px 8px 8px 0}@media(max-width:960px){.mail-connect-page{margin:16px}}
