:root{--ink:#172031;--muted:#667085;--line:#e7eaf0;--blue:#155eef;--navy:#102a56;--bg:#f7f9fc}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:sans-serif}.site-header{height:72px;padding:0 max(5vw,32px);display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.brand{font-size:22px;font-weight:800;text-decoration:none;color:var(--navy);letter-spacing:.04em}.brand span{color:var(--blue)}nav{display:flex;gap:28px}nav a{font-size:14px;color:#475467;text-decoration:none}nav a:hover{color:var(--blue)}main{min-height:calc(100vh - 128px)}.hero{padding:76px max(5vw,32px) 84px;color:#fff;background:linear-gradient(110deg,#102a56,#155eef)}.hero>*{max-width:780px}.eyebrow{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.13em;color:#7a9eff}.hero h1{margin:0;font-size:clamp(36px,5vw,58px);letter-spacing:.04em}.hero>p:not(.eyebrow){font-size:17px;opacity:.88}.search{display:flex;margin-top:32px;width:min(600px,100%);height:52px;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 8px 22px #061a452e}.search input{padding:0 18px;flex:1;border:0;outline:0;font-size:15px}.search button{padding:0 25px;border:0;color:#fff;background:#0d4ed8;font-weight:700;cursor:pointer}.notice-section{padding:58px max(5vw,32px);max-width:1320px;margin:auto}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.section-title .eyebrow{color:var(--blue)}h2{margin:0;font-size:28px}.section-title span{font-size:13px;color:var(--muted)}.notice-list{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.notice-card{display:flex;gap:24px;align-items:flex-start;padding:24px;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;transition:background .15s}.notice-card:last-child{border:0}.notice-card:hover{background:#f8faff}.date{flex:0 0 72px;border-right:1px solid var(--line);text-align:center;color:var(--navy)}.date b{display:block;font-size:27px}.date span{font-size:12px}.notice-content{flex:1;min-width:0}.badge{font-size:12px;color:var(--blue);font-weight:700}.notice-content h3{margin:7px 0;font-size:18px}.notice-content p{margin:0;color:var(--muted);font-size:14px;line-height:1.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arrow{color:var(--blue);font-size:22px}.loading,.empty{margin:0;padding:42px;text-align:center;color:var(--muted)}footer{text-align:center;padding:20px;color:#98a2b3;font-size:13px;background:#fff;border-top:1px solid var(--line)}.article{max-width:900px;margin:46px auto;padding:0 28px}.article-box{background:#fff;border:1px solid var(--line);border-radius:10px;padding:52px}.article h1{font-size:30px;line-height:1.4;margin:12px 0}.article-meta{color:var(--muted);font-size:14px;padding-bottom:27px;border-bottom:1px solid var(--line)}.article-body{white-space:pre-wrap;line-height:2;font-size:16px;margin-top:30px}.back{color:var(--blue);text-decoration:none;font-size:14px}.admin{max-width:1050px;margin:45px auto;padding:0 28px}.admin-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:24px}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:25px}.panel h1,.panel h2{margin-top:0}.panel label{display:block;margin:16px 0 6px;font-size:14px;font-weight:700}.panel input,.panel textarea,.panel select{width:100%;padding:11px;border:1px solid #d0d5dd;border-radius:6px;font:inherit}.panel textarea{height:220px;resize:vertical}.primary,.danger{margin-top:20px;padding:11px 17px;border:0;border-radius:6px;color:#fff;background:var(--blue);font-weight:700;cursor:pointer}.danger{background:#b42318;margin:0}.admin-item{padding:14px 0;border-bottom:1px solid var(--line)}.admin-item b{display:block;margin-bottom:9px}.admin-item button{margin-right:8px;padding:5px 8px;border:1px solid #d0d5dd;border-radius:4px;background:#fff;cursor:pointer}.status{font-size:14px;color:var(--muted)}@media(max-width:700px){nav{gap:14px}.hero{padding-top:55px}.notice-card{gap:14px;padding:18px}.date{flex-basis:55px}.date b{font-size:22px}.arrow{display:none}.admin-grid{grid-template-columns:1fr}.article-box{padding:28px 22px}}
