/* RWIA 2024 conference family: compact white layout, blue/orange navigation,
   green-ruled side panels. Text remains live and responsive in both languages. */
:root{--nav:#06f;--heading:#076da8;--active:#f90;--green:#693;--ink:#333;--line:#ccc}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:var(--ink);font:14px/1.8 Arial,"Microsoft YaHei","Noto Sans CJK SC",sans-serif}
a{color:#2676b4;text-decoration:none;overflow-wrap:anywhere}
a:hover{text-decoration:underline}
a:focus-visible{outline:3px solid #b24b00;outline-offset:3px}
.wrap{width:100%;max-width:1250px;margin:0 auto;padding:0 15px}
.skip{position:absolute;left:15px;top:-80px;padding:8px 16px;background:white;z-index:10}
.skip:focus{top:5px}
.utility{background:#143e68;color:#fff;font-size:14px}
.utility .wrap{display:flex;align-items:center;gap:28px;min-height:44px}
.utility a{color:#fff}
.masthead{position:relative;display:flex;align-items:center;gap:20px;min-height:148px;padding-top:12px;padding-bottom:10px}
.masthead img{flex:0 0 auto;object-fit:contain}
.masthead-text{flex:1;min-width:0}
.conference-title{margin:0 72px 5px 0;color:var(--heading);text-align:center;font-size:34px;line-height:1.4;font-weight:700}
.conference-title span{font-size:32px}
.conference-date{margin:3px 0 0;text-align:right;color:#d21c17;font-size:20px;line-height:1.4;font-weight:700}
.language{position:absolute;right:20px;top:17px;font-weight:700}
html[lang=en] .conference-title{font-size:26px}
html[lang=en] .conference-title span{font-size:24px}
.conference-nav{background:var(--nav);border-radius:3px}
.conference-nav .wrap{display:flex;align-items:stretch;justify-content:space-between;gap:20px}
.nav-brand{display:flex;align-items:center;color:#fff;font-size:18px;font-weight:700;white-space:nowrap;min-height:50px}
.nav-links{display:flex;flex-wrap:wrap;justify-content:flex-end}
.conference-nav a{display:flex;align-items:center;padding:12px 15px;min-height:50px;color:#fff;line-height:1.5;text-decoration:none}
.conference-nav a:hover,.conference-nav a:focus-visible,.conference-nav a[aria-current=page]{background:var(--active);color:#222}
.conference-nav a:focus-visible{outline-color:#222;outline-offset:-4px}
.page-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:30px;padding-top:10px;padding-bottom:35px;align-items:start}
.home-page .page-grid{grid-template-columns:minmax(0,1fr) minmax(0,2.105fr) minmax(0,1fr)}
main,aside{min-width:0}
main{padding:0;background:#fff}
main:focus{outline:none}
p{margin:0 0 12px;line-height:25px}
h1,h2{font-size:18px;font-weight:400;line-height:1.5;color:var(--nav);margin:16px 0;padding:0 0 10px;border-bottom:2px solid #ddd}
.page-heading h1{margin-top:7px}
main h1::before,main h2::before{content:"➤";margin-right:8px;font-size:16px}
.lead{font-size:14px;font-weight:400}
.theme p{font-weight:700}
.participate{height:70px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 22px;background:#ff7900;color:#fff;font-size:26px;font-weight:700;border-radius:5px;box-shadow:4px 4px 5px #ddd}
.participate:hover{color:#fff;background:#e86d00;text-decoration:none}
.participate span{border:3px solid #fff;border-radius:50%;font-size:20px;width:35px;height:35px;line-height:29px;text-align:center}
.sidebar{margin:10px 0 0;border:1px solid var(--line);border-radius:5px 5px 0 0;box-shadow:4px 4px 5px #ddd}
.secondary-sidebar .sidebar:first-child{margin-top:0}
.sidebar h2{margin:0;padding:8px 10px;border-bottom:2px solid var(--green);color:var(--ink);font-size:18px}
.sidebar h2::before{content:"▸";margin-right:8px;color:#444}
.sidebar p{padding:10px;margin:0}
.side-links{padding:0 10px;margin:8px 0 12px;list-style:none}
.side-links li{padding:5px 0;border-bottom:1px dotted var(--line);line-height:1.6;overflow-wrap:anywhere}
.sidebar .date-list{padding:0 10px;margin:6px 0 10px}
.date-list{margin:0 0 16px}
.date-list>div{padding:8px 0;border-bottom:1px dotted var(--line)}
.date-list dt{font-weight:400}
.date-list dd{margin:0;font-weight:700}
.date-list>div:first-child dd{color:#c42323}
.topics{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 22px}
.topics li{position:relative;padding-left:13px;line-height:1.7;break-inside:avoid}
.topics li::before{content:"•";position:absolute;left:0}
.topics span{display:none}
.steps{padding-left:24px}
.steps li{margin:7px 0}
.organizations{padding-left:22px}
.committee-list>div,.contact-details>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:15px;border-bottom:1px dotted var(--line);padding:10px 0}
.committee-list dt,.contact-details dt{font-weight:700}
.committee-list dd,.contact-details dd{margin:0}
.contact-box,.key-notice{padding:12px 16px;margin:16px 0;background:#f5f5f5;border-left:3px solid var(--green)}
.contact-box p:last-child{margin-bottom:0}
.key-notice{border-left-color:#ce7911}
.table-wrap{max-width:100%;overflow-x:auto;margin-bottom:16px}
table{width:100%;border-collapse:collapse;text-align:left;line-height:1.7}
th{background:#eee;font-weight:700}
th,td{padding:10px;border:1px solid #ddd;vertical-align:top;overflow-wrap:anywhere}
.fee{white-space:nowrap;color:#b02621;font-weight:700}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.button{display:inline-block;padding:7px 14px;background:var(--nav);color:#fff;border:1px solid var(--nav);border-radius:3px}
.button:hover{background:#0750bd;color:#fff;text-decoration:none}
.button.secondary{background:#fff;color:#2676b4}
.downloads{padding:0;list-style:none;margin:18px 0}
.downloads li{border-bottom:1px dotted var(--line)}
.downloads a{display:flex;justify-content:space-between;gap:20px;padding:12px 0}
.downloads span{flex-shrink:0;color:#666}
footer{background:#333;color:#fff;text-align:center;font-size:13px}
.footer-links{background:#666;padding:9px 0}
.footer-links .wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:25px}
footer a{color:#fff}
.footer-credit{padding-top:7px;padding-bottom:7px}
@media(min-width:801px) and (max-width:1100px){
 .conference-title{font-size:28px}.conference-title span{font-size:26px}
 html[lang=en] .conference-title{font-size:23px}html[lang=en] .conference-title span{font-size:21px}
 .conference-nav .wrap{gap:5px}.nav-brand{font-size:16px}.conference-nav a{padding:10px}
 .home-page .page-grid{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
 .secondary-sidebar{grid-column:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
 .primary-sidebar{grid-row:1 / span 2}.secondary-sidebar .sidebar{margin:0}
}
@media(max-width:800px){
 .wrap{padding-left:15px;padding-right:15px}.utility .wrap{gap:12px;justify-content:space-between;font-size:12px}
 .masthead{gap:12px;min-height:140px;padding-top:36px;padding-bottom:14px}
 .masthead img{width:58px;height:58px}
 .conference-title,.conference-title span{font-size:24px;margin-right:0}
 html[lang=en] .conference-title,html[lang=en] .conference-title span{font-size:21px}
 .conference-date{font-size:16px;text-align:center;margin-top:8px}.language{top:8px;right:15px;font-size:13px}
 .conference-nav .wrap{display:block;padding:0}.nav-brand{padding:0 15px;min-height:40px}
 .nav-links{justify-content:flex-start}.conference-nav a{padding:9px 14px;min-height:44px}
 .page-grid,.home-page .page-grid{grid-template-columns:1fr;gap:20px;padding-top:15px}
 main{grid-row:1}.secondary-sidebar{grid-row:2}.primary-sidebar{grid-row:3}
 .inner-page .primary-sidebar{grid-row:2}
 aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
 .sidebar,.secondary-sidebar .sidebar:first-child{margin:0}.participate{height:65px}
}
@media(max-width:480px){
 .masthead img{width:44px;height:44px}.masthead{gap:9px}
 .conference-title,.conference-title span{font-size:21px;line-height:1.5}
 html[lang=en] .conference-title,html[lang=en] .conference-title span{font-size:18px}
 .conference-date{font-size:14px}.utility span{display:none}
 .nav-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
 .conference-nav a{justify-content:center;text-align:center;padding:8px 6px;font-size:13px}
 .topics,aside{grid-template-columns:1fr}
 .committee-list>div,.contact-details>div{grid-template-columns:1fr;gap:3px}
 th,td{padding:7px 5px}.downloads a{gap:8px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
