:root{--navy:#0a294a;--blue:#1559a1;--red:#e31b3d;--bg:#f2f5f7;--line:#dce3e8;--muted:#667585}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:#142435;font-family:Arial,sans-serif}
a{text-decoration:none;color:inherit}
button,.button{background:var(--blue);border:0;border-radius:5px;color:white;padding:11px 16px;font-weight:700;cursor:pointer;display:inline-block}
button.danger,.danger{background:#bd263c}
input,textarea,select{width:100%;padding:11px;border:1px solid #cbd6dd;border-radius:5px;font:inherit;background:white}
textarea{min-height:110px;resize:vertical}
label{display:block;font-size:13px;font-weight:700;margin-bottom:16px}
label small{display:block;color:var(--muted);font-weight:400;margin-top:5px}
.auth-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),#1964a8)}
.auth-card{width:min(440px,calc(100% - 28px));background:white;padding:42px;border-radius:10px;box-shadow:0 25px 70px rgba(0,0,0,.25)}
.auth-card h1{margin:4px 0 12px}
.auth-mark{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:white;font-weight:800}
.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--red);font-size:11px;font-weight:700;margin:20px 0 0}
.muted,.hint{color:var(--muted)}
.alert{padding:12px 15px;border-radius:5px;margin:15px 0}
.alert.error{background:#fce6e8;color:#8f1730}
.alert.success{background:#e2f5e8;color:#176532}
.admin-shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh}
.sidebar{background:var(--navy);color:white;padding:25px 18px;position:sticky;top:0;height:100vh}
.sidebar-brand{padding:10px 10px 28px;font-weight:800}
.sidebar-brand small{display:block;color:#91a7bc;font-weight:400;margin-top:5px}
.sidebar nav{display:grid;gap:5px}
.sidebar nav a{padding:11px 12px;border-radius:5px;color:#c7d4df;font-size:14px}
.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.1);color:white}
.sidebar .site-link{margin-top:25px;border:1px solid #44617c}
.admin-main{padding:35px}
.admin-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:28px}
.admin-top h1{margin:0;font-size:29px}
.admin-top p{color:var(--muted);margin:6px 0}
.panel{background:white;border:1px solid var(--line);border-radius:8px;padding:24px;margin-bottom:20px}
.panel h2{font-size:19px;margin:0 0 20px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.full{grid-column:1/-1}
.toggle{display:flex;align-items:center;gap:9px}
.toggle input{width:auto}
.item-row{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:15px;padding:14px 0;border-top:1px solid var(--line)}
.item-thumb{width:65px;height:55px;object-fit:cover;border-radius:4px;background:#e9eef2}
.item-row h3{font-size:15px;margin:0}
.item-row p{color:var(--muted);font-size:12px;margin:4px 0}
.actions{display:flex;gap:7px}
.actions a,.actions button{padding:8px 11px;font-size:12px}
.preview-image{max-width:170px;max-height:100px;margin:5px 0 12px}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.tabs a{background:white;border:1px solid var(--line);padding:8px 13px;border-radius:30px;font-size:13px}
.tabs a.active{background:var(--navy);color:white}
.empty{padding:25px;text-align:center;color:var(--muted);border:1px dashed #bbc8d1}
.inline-form{display:inline}
.code-note{background:#f5f7f8;padding:12px;font-size:13px;border-left:3px solid var(--blue)}
@media(max-width:760px){.admin-shell{grid-template-columns:1fr}
.sidebar{position:static;height:auto}
.sidebar nav{grid-template-columns:repeat(2,1fr)}
.admin-main{padding:20px 14px}
.form-grid{grid-template-columns:1fr}
.full{grid-column:auto}
.item-row{grid-template-columns:1fr}
.admin-top{flex-direction:column;gap:10px}
}
.search-form{display:flex;gap:8px}.search-form input{max-width:500px}.table-panel{padding:20px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}td small{display:block;color:var(--muted);margin-top:3px}.registration-detail{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.registration-detail>div{padding:14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.registration-detail span,.registration-detail strong{display:block}.registration-detail span{font-size:11px;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.document-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px}.document-grid a{border:1px solid var(--line);padding:15px;color:var(--blue);font-weight:700}.document-grid img{max-width:100%;height:180px;object-fit:contain;margin-bottom:10px}@media(max-width:760px){.search-form{flex-wrap:wrap}.registration-detail,.document-grid{grid-template-columns:1fr}}
.record-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.record-toolbar>div{display:flex;gap:8px}.button.secondary{background:#65798b}.button.download-button{background:#148153}@media(max-width:760px){.record-toolbar{align-items:stretch;flex-direction:column}.record-toolbar>div{flex-wrap:wrap}}
.notice-admin-grid{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(440px,1.18fr);gap:22px;align-items:start}.notice-editor{position:sticky;top:24px}.panel-title-row{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:22px}.panel-title-row h2{margin:3px 0 0;font-size:22px}.panel-kicker{margin:0;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.14em}.small-link{color:var(--blue);font-size:12px;font-weight:700}.required-mark{color:#d71d3c}.link-option{display:flex;gap:11px;align-items:start;background:#f1f6fa;border:1px solid #d6e2eb;border-radius:6px;padding:14px;cursor:pointer}.link-option input{width:auto;margin-top:3px}.link-option span,.link-option strong,.link-option small{display:block}.notice-link-fields{display:none;background:#fafcfd;border:1px solid var(--line);border-top:3px solid var(--blue);padding:16px;margin:-5px 0 16px}.notice-link-fields.is-visible{display:block}.link-preview-label{margin-bottom:0}.notice-button-preview{display:inline-block;margin-top:7px;background:var(--blue);color:#fff;padding:8px 13px;border-radius:4px;font-size:12px}.notice-options{display:grid;grid-template-columns:1fr 1fr;gap:15px}.publish-toggle{height:66px;background:#f3f7f9;border-radius:5px;padding:11px}.publish-toggle span,.publish-toggle strong,.publish-toggle small{display:block}.notice-submit{width:100%;display:flex;justify-content:space-between;font-size:14px;padding:13px 16px}.count-badge{background:#edf3f7;color:#445b6e;border-radius:20px;padding:6px 11px;font-size:11px;font-weight:700}.notice-admin-list{display:grid;gap:12px}.notice-admin-card{border:1px solid var(--line);border-left:4px solid var(--blue);padding:17px 18px;border-radius:5px;background:#fff}.notice-card-top,.notice-card-top>div{display:flex;align-items:center;gap:10px}.notice-card-top{justify-content:space-between}.notice-card-top time,.notice-card-top small{font-size:11px;color:var(--muted)}.status-dot{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.status-dot::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px;background:#8795a1}.status-dot.live{color:#1b7541}.status-dot.live::before{background:#22a65a}.status-dot.hidden{color:#8b5260}.notice-admin-card h3{font-size:17px;margin:12px 0 6px}.notice-admin-card>p{color:var(--muted);font-size:13px;line-height:1.5;margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.stored-link{color:var(--blue);font-size:12px;font-weight:700}.no-link{font-size:11px;color:#919da7}.notice-card-actions{display:flex;gap:7px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.notice-card-actions form{margin:0}.notice-card-actions .button,.notice-card-actions button{padding:7px 12px;font-size:11px}@media(max-width:1050px){.notice-admin-grid{grid-template-columns:1fr}.notice-editor{position:static}}@media(max-width:560px){.notice-options{grid-template-columns:1fr}.panel-title-row{align-items:start}.notice-card-top{align-items:start;flex-direction:column}}
.document-upload-box{position:relative;display:flex;align-items:center;gap:12px;border:2px dashed #afc0cd;background:#fff;padding:15px;border-radius:6px;cursor:pointer}.document-upload-box:hover{border-color:var(--blue);background:#f4f9fd}.document-upload-box>input{position:absolute;width:1px;height:1px;opacity:0}.document-upload-box>span,.document-upload-box strong,.document-upload-box small,.document-upload-box em{display:block}.document-upload-box small{color:var(--muted);font-weight:400}.document-upload-box em{width:max-content;margin-top:7px;background:#e6f0f8;color:var(--blue);padding:5px 9px;border-radius:3px;font-size:11px;font-style:normal}.document-icon{width:42px;height:42px;border-radius:50%;display:grid!important;place-items:center;background:var(--blue);color:#fff;font-size:22px;flex:none}.current-document{display:flex;justify-content:space-between;gap:12px;background:#eaf7ef;border:1px solid #bfdfca;padding:9px 11px;margin-bottom:14px;font-size:12px}.current-document span{color:#4c6a58}.current-document a{color:#187142;font-weight:700;word-break:break-all}.link-divider{display:flex;align-items:center;gap:8px;margin:15px 0;color:#8796a2;font-size:9px;letter-spacing:.12em}.link-divider::before,.link-divider::after{content:"";height:1px;background:var(--line);flex:1}
