:root{font-family:system-ui,-apple-system,"Noto Sans KR","Malgun Gothic",sans-serif;color:#17243b;background:#fff;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8bb5ff;outline-offset:2px}.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.skip{position:absolute;top:-100px}.skip:focus{top:4px;z-index:40;background:#fff;padding:8px}.header{border-bottom:1px solid #e2e8f0;background:#fff}.header-inner{display:flex;align-items:center;gap:24px;min-height:78px}.brand{font-weight:800;font-size:23px;letter-spacing:-.8px;white-space:nowrap}.brand span{display:block;font-size:11px;letter-spacing:0;font-weight:400;color:#65738b}.top-nav{display:flex;gap:25px;align-items:center;flex:1;justify-content:center}.top-nav a{font-size:14px;padding:28px 0;border-bottom:2px solid transparent;white-space:nowrap}.top-nav a.current{border-color:#1967e8;color:#155ac7;font-weight:700}.account{display:flex;gap:12px;align-items:center;white-space:nowrap}.button{border:1px solid #c8d8ef;border-radius:8px;padding:10px 15px;background:white;color:#1762d4;font-size:14px;font-weight:650;min-height:41px}.button.primary{background:#1967e8;border-color:#1967e8;color:white}.button.outline:hover{background:#f2f6ff}.button.primary:hover{background:#1256c8}.button.small{min-height:33px;padding:6px 10px;font-size:12px}.button.neutral{color:#354c68;border-color:#d7e0eb}.button.danger{color:#b42318;border-color:#ffc4c0}.button.text{border:none;padding:6px;background:transparent}.button.block{width:100%}.muted{color:#65738b}.small{font-size:12px}.tiny{font-size:11px}.section-title{margin:0 0 18px;font-size:23px;letter-spacing:-.5px}.lead{font-size:17px;color:#596b85}.intro{margin:34px 0 34px;background:#f5f8fe;border-radius:10px;padding:34px}.intro h1{margin:0 0 8px;font-size:32px;letter-spacing:-1px}.intro .pills{display:flex;gap:24px;flex-wrap:wrap;margin-top:21px;font-size:13px;color:#3c587d}.pill-tick:before{content:'✓';color:#1967e8;margin-right:7px;font-weight:800}.home-columns{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(260px,.9fr);gap:24px}.panel{border:1px solid #dae3ef;border-radius:9px;background:#fff;padding:20px}.panel+.panel{margin-top:17px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.section-head h2,.panel h2{margin:0;font-size:20px}.section-head a,.link{color:#1863d8;font-size:13px}.program-list{display:grid;gap:11px}.program-item{border:1px solid #dae3ef;border-radius:9px;padding:18px;display:flex;justify-content:space-between;align-items:center;gap:16px}.program-name{font-weight:750;font-size:17px;margin-bottom:5px}.program-desc{color:#607089;font-size:13px}.status{font-size:11px;color:#55708e;border:1px solid #dae3ef;border-radius:99px;padding:3px 8px;white-space:nowrap}.status.good{color:#147453;background:#f1fcf5;border-color:#c6ebd5}.status.warn{color:#92610e;background:#fff8e7;border-color:#f5e1a9}.program-right{display:flex;align-items:center;gap:12px}.side-stack{display:grid;align-content:start;gap:15px}.notice-row,.faq-row{width:100%;border:0;border-bottom:1px solid #e5ebf3;background:white;padding:11px 0;display:flex;text-align:left;gap:12px;justify-content:space-between;font-size:13px}.notice-row:last-child,.faq-row:last-child{border-bottom:none}.notice-row:hover,.faq-row:hover{text-decoration:underline}.helpbox{margin-bottom:10px;color:#5d718c;font-size:13px;line-height:1.6}.page{padding:32px 0 70px}.page .intro{margin:0 0 26px}.breadcrumbs{font-size:13px;color:#5c7089;margin-bottom:16px}.row{display:flex;gap:10px;align-items:center}.row.between{justify-content:space-between}.row.wrap{flex-wrap:wrap}.stack{display:grid;gap:14px}.field{display:grid;gap:6px}.field label{font-size:13px;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid #cad6e7;border-radius:8px;padding:11px;background:#fff;color:#15243b}.field textarea{resize:vertical;min-height:140px;line-height:1.6}.field input[type=checkbox]{width:auto}.form{max-width:700px;display:grid;gap:16px}.form-actions{display:flex;justify-content:flex-end;gap:10px}.error{background:#fff5f4;border:1px solid #ffb6ad;padding:12px 14px;border-radius:8px;color:#a3261b;font-size:13px}.info{background:#eff6ff;border:1px solid #caddf7;padding:12px 14px;border-radius:8px;color:#23507d;font-size:13px}.empty{padding:28px;text-align:center;color:#5a6d86;background:#f7f9fd;border-radius:8px;font-size:14px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}th,td{border-bottom:1px solid #e3eaf2;padding:13px 10px;vertical-align:middle}th{background:#f5f8fd;font-weight:700;white-space:nowrap}td button{white-space:nowrap}.notice-detail{padding:20px;border:1px solid #dae3ef;border-radius:9px;white-space:pre-wrap;line-height:1.7}.faq-item{border-bottom:1px solid #e4eaf2;padding:14px 0}.faq-item summary{cursor:pointer;font-weight:700}.faq-item p{line-height:1.7;white-space:pre-wrap;color:#506783}.tabs{display:flex;gap:10px;border-bottom:1px solid #e1e7f0;margin-bottom:18px}.tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:10px 15px;color:#526985}.tabs button.active{border-color:#1967e8;color:#1967e8;font-weight:700}.muted-card{border:1px dashed #ced8e5;border-radius:8px;padding:18px;color:#64748b}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.footer{border-top:1px solid #e1e8f0;background:#f9fbff}.footer-inner{display:flex;flex-wrap:wrap;gap:16px;align-items:center;min-height:66px;font-size:12px;color:#74839a}.footer strong{color:#23395f}.loading{padding:55px;color:#65738b;text-align:center}.toast{position:fixed;bottom:24px;right:24px;z-index:60;background:#192d4d;color:#fff;border-radius:10px;padding:13px 19px;max-width:420px;box-shadow:0 10px 30px #0002}.dialog{border:1px solid #d6e0ec;border-radius:12px;max-width:460px;width:calc(100% - 35px);padding:25px}.dialog::backdrop{background:#14243e80}.dialog h3{margin:0 0 10px}.dialog p{line-height:1.6;color:#49607d;white-space:pre-line}.dialog-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px}details{border-radius:5px}.privacy{padding:12px;border-left:3px solid #1967e8;background:#f8fbff;font-size:13px;color:#4a607a;line-height:1.6}.admin-tab{display:none}.admin-tab.active{display:block}.flex1{flex:1}main{min-height:65vh}[hidden]{display:none!important}
@media(max-width:1050px){.header-inner{flex-wrap:wrap;justify-content:space-between;padding:15px 0}.top-nav{order:3;width:100%;justify-content:flex-start;overflow-x:auto;gap:24px}.top-nav a{padding:10px 0}.account .small{display:none}}
@media(max-width:780px){.container{width:min(100% - 24px,1180px)}.intro{padding:24px;margin:18px 0}.intro h1{font-size:26px}.home-columns,.admin-grid{grid-template-columns:1fr}.program-item{align-items:flex-start;flex-direction:column}.program-right{justify-content:space-between;width:100%}.header-inner{gap:7px}.brand{font-size:20px}.program-name{font-size:16px}}

.mt12{margin-top:12px}.mt18{margin-top:18px}.mt20{margin-top:20px}

/* 2026-10-12 — Public-portal-only appearance preferences (GAS apps unaffected) */
html{
  --ui-primary:#1967e8;--ui-primary-hover:#1256c8;--ui-link:#1762d4;
  --ui-ink:#17243b;--ui-muted:#65738b;--ui-border:#dae3ef;
  --ui-surface:#f5f8fe;--ui-footer:#f9fbff;
  --ui-radius:9px;--ui-font-scale:1;--ui-panel-pad:20px;
  --ui-program-pad:10px 16px;--ui-program-gap:8px;--ui-intro-pad:16px 32px;
  color:var(--ui-ink);
}
html[data-theme="B"]{
  --ui-primary:#253f6c;--ui-primary-hover:#1b3156;--ui-link:#274b83;
  --ui-ink:#14253c;--ui-muted:#526882;--ui-border:#cfdae9;
  --ui-surface:#edf2f9;--ui-footer:#f6f8fb;
}
html[data-theme="C"]{
  --ui-primary:#0f766e;--ui-primary-hover:#0a5c55;--ui-link:#08756c;
  --ui-ink:#173834;--ui-muted:#54716d;--ui-border:#cbe1da;
  --ui-surface:#edf8f5;--ui-footer:#f5fbf9;
}
html[data-font-size="large"]{--ui-font-scale:1.1}
html[data-font-size="larger"]{--ui-font-scale:1.2}
html[data-card-style="square"]{--ui-radius:2px}
html[data-spacing="compact"]{
  --ui-panel-pad:14px;--ui-program-pad:12px;--ui-program-gap:7px;--ui-intro-pad:22px;
}
body{color:var(--ui-ink)}
.header{border-color:var(--ui-border)}
.top-nav a{font-size:calc(14px * var(--ui-font-scale))}
.top-nav a.current{color:var(--ui-primary);border-color:var(--ui-primary)}
.brand{font-size:calc(23px * var(--ui-font-scale))}
.brand span{font-size:calc(11px * var(--ui-font-scale));color:var(--ui-muted)}
.button{color:var(--ui-link);border-color:var(--ui-border);border-radius:var(--ui-radius);font-size:calc(14px * var(--ui-font-scale))}
.button.primary{background:var(--ui-primary);border-color:var(--ui-primary)}
.button.primary:hover{background:var(--ui-primary-hover);border-color:var(--ui-primary-hover)}
.button.outline:hover{background:var(--ui-surface)}
.button.small{font-size:calc(12px * var(--ui-font-scale))}
.panel,.program-item{border-color:var(--ui-border);border-radius:var(--ui-radius)}
.panel{padding:var(--ui-panel-pad)}
.program-item{padding:var(--ui-program-pad)}
.program-list{gap:var(--ui-program-gap)}
.program-name{font-size:calc(17px * var(--ui-font-scale))}
.program-desc,.helpbox,.privacy,.field label,.notice-row,.faq-row,.section-head a,.link,table{font-size:calc(13px * var(--ui-font-scale))}
.muted,.program-desc,.helpbox,.lead{color:var(--ui-muted)}
.small{font-size:calc(12px * var(--ui-font-scale))}
.tiny{font-size:calc(11px * var(--ui-font-scale))}
.section-title{font-size:calc(23px * var(--ui-font-scale))}
.section-head h2,.panel h2{font-size:calc(20px * var(--ui-font-scale))}
.lead{font-size:calc(17px * var(--ui-font-scale))}
.intro{background:var(--ui-surface);border-radius:var(--ui-radius);padding:var(--ui-intro-pad)}
.intro h1{font-size:calc(32px * var(--ui-font-scale))}
.intro .pills{font-size:calc(13px * var(--ui-font-scale))}
.pill-tick:before{color:var(--ui-primary)}
.notice-row,.faq-row,.faq-item,th,td{border-color:var(--ui-border)}
.section-head a,.link{color:var(--ui-link)}
.field input,.field select,.field textarea{border-radius:var(--ui-radius);border-color:var(--ui-border);color:var(--ui-ink);font-size:calc(14px * var(--ui-font-scale))}
th{background:var(--ui-surface)}
.empty{background:var(--ui-surface);border-radius:var(--ui-radius)}
.tabs{border-color:var(--ui-border)}
.tabs button{font-size:calc(14px * var(--ui-font-scale))}
.tabs button.active{border-color:var(--ui-primary);color:var(--ui-primary)}
.notice-detail,.muted-card,.info,.error,.dialog,.toast{border-radius:var(--ui-radius)}
.privacy{border-color:var(--ui-primary);background:var(--ui-surface)}
.footer{background:var(--ui-footer);border-color:var(--ui-border)}
.footer strong{color:var(--ui-primary)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--ui-primary)}
/* Local-user and site-default setting forms */
.appearance-page .panel{margin-top:18px;max-width:820px}
.appearance-page .panel h2{margin-bottom:18px}
.appearance-form{max-width:none;margin-top:18px}
.appearance-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.appearance-preview{--sample-main:#1967e8;--sample-surface:#f5f8fe;--sample-radius:9px;--sample-scale:1;--sample-padding:20px;
  border:1px solid var(--ui-border);padding:var(--sample-padding);border-radius:var(--sample-radius);
  background:var(--sample-surface);color:#17243b;display:grid;gap:10px}
.appearance-preview[data-theme="B"]{--sample-main:#253f6c;--sample-surface:#edf2f9;color:#14253c}
.appearance-preview[data-theme="C"]{--sample-main:#0f766e;--sample-surface:#edf8f5;color:#173834}
.appearance-preview[data-font-size="large"]{--sample-scale:1.1}
.appearance-preview[data-font-size="larger"]{--sample-scale:1.2}
.appearance-preview[data-card-style="square"]{--sample-radius:2px}
.appearance-preview[data-spacing="compact"]{--sample-padding:12px;gap:6px}
.appearance-preview strong{font-size:calc(17px * var(--sample-scale))}
.appearance-preview .preview-description{font-size:calc(13px * var(--sample-scale))}
.appearance-preview .preview-program{display:flex;justify-content:space-between;align-items:center;gap:12px;
  background:#fff;border:1px solid #d6e1eb;border-radius:var(--sample-radius);padding:var(--sample-padding);font-size:calc(14px * var(--sample-scale))}
.appearance-preview .preview-action{background:var(--sample-main);color:#fff;border-radius:var(--sample-radius);
  padding:10px;white-space:nowrap;font-weight:650;font-size:calc(12px * var(--sample-scale))}
@media(max-width:780px){
  .brand{font-size:calc(20px * var(--ui-font-scale))}
  .intro h1{font-size:calc(26px * var(--ui-font-scale))}
  .program-name{font-size:calc(16px * var(--ui-font-scale))}
  .appearance-fields{grid-template-columns:1fr}
  .appearance-preview .preview-program{flex-wrap:wrap}
  .appearance-form .form-actions{flex-wrap:wrap}
}
/* 2026 event banner and secure participant dashboard. No external assets. */
.event-banner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;border:1px solid var(--ui-border);border-radius:var(--ui-radius);padding:12px 20px;margin:-14px 0 20px;background:var(--ui-surface)}
.event-banner h2{font-size:calc(21px * var(--ui-font-scale));margin:4px 0}.event-banner p{color:var(--ui-muted);font-size:13px;margin:0}
.event-page>.panel{margin-top:16px}.event-page .panel h2{margin:0}
.event-prizes,.event-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.event-prizes>div,.event-stats>div{border:1px solid var(--ui-border);border-radius:var(--ui-radius);padding:15px;display:grid;gap:5px}
.event-prizes span,.event-stats span{font-size:13px;color:var(--ui-muted)}
.event-stats{grid-template-columns:repeat(5,minmax(0,1fr));margin:15px 0}
.event-stats strong{font-size:25px;color:var(--ui-primary)}
.event-score-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.uid-cell{max-width:220px;word-break:break-all;font-size:11px}
@media(max-width:780px){.event-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.event-score-grid{grid-template-columns:1fr}}

/* Optional generic boards, append-only to existing portal styles */
.board-page{display:grid;gap:15px}.board-page .panel{margin:0}.board-list-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.board-list-cards .panel{margin:0}
.board-sortable{display:grid;gap:9px}.board-sort-row{display:flex;align-items:center;gap:10px;border:1px solid var(--ui-border);border-radius:var(--ui-radius);padding:9px;background:#fff}
.board-sort-row:focus-within{outline:1px solid var(--ui-primary)}.board-sort-row[draggable="true"]{cursor:grab}.board-sort-title{flex:1;font-weight:600}.board-sort-row select{width:auto;max-width:130px}.board-grip{font-size:18px;color:var(--ui-muted)}.board-admin-slot{margin-top:15px}.row.wrap{flex-wrap:wrap}
@media(max-width:780px){.board-list-cards{grid-template-columns:1fr}.board-sort-row{flex-wrap:wrap}.board-sort-row select{max-width:100%}}

/* Two-dimensional homepage layout editor. Existing 50/100 saved widths remain compatible. */
.board-grid-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;grid-auto-flow:row;align-items:stretch;padding:12px;border:1px dashed var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface)}
.board-grid-editor .board-sort-row{grid-column:span 2;min-width:0;min-height:95px;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:12px;transition:box-shadow .1s ease,border-color .1s ease}
.board-grid-editor .board-sort-row[data-width="50"]{grid-column:span 1}
.board-sort-header{display:flex;align-items:center;gap:8px;min-width:0}
.board-sort-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.board-sort-controls label{display:flex;gap:6px;align-items:center;margin-right:auto;font-size:12px}
.board-sort-controls select{width:auto;min-width:0;max-width:130px}
.board-grid-editor .board-sort-row.board-dragging{opacity:.45}
.board-grid-editor .board-sort-row[data-drop-position]{outline:3px solid var(--ui-primary);outline-offset:2px;box-shadow:0 2px 14px rgba(22,70,130,.18)}
.board-grid-editor .board-sort-row[data-drop-position="before"]{border-top:5px solid var(--ui-primary)}
.board-grid-editor .board-sort-row[data-drop-position="after"]{border-bottom:5px solid var(--ui-primary)}
@media(max-width:780px){.board-grid-editor{grid-template-columns:minmax(0,1fr)}.board-grid-editor .board-sort-row,.board-grid-editor .board-sort-row[data-width="50"]{grid-column:1/-1}.board-sort-controls select{max-width:100%}}

/* Accessible section colors: quiet backgrounds, visible borders; no text-only color meaning. */
.board-sort-row[data-palette="blue"],.home-layout-section[data-palette="blue"]{--tile-bg:#eef5ff;--tile-accent:#3972c4}
.board-sort-row[data-palette="green"],.home-layout-section[data-palette="green"]{--tile-bg:#eaf6f0;--tile-accent:#368b66}
.board-sort-row[data-palette="orange"],.home-layout-section[data-palette="orange"]{--tile-bg:#fff3e3;--tile-accent:#b97925}
.board-sort-row[data-palette="purple"],.home-layout-section[data-palette="purple"]{--tile-bg:#f2eeff;--tile-accent:#7859bb}
.board-sort-row[data-palette="rose"],.home-layout-section[data-palette="rose"]{--tile-bg:#fff0f5;--tile-accent:#c16687}
.board-sort-row[data-palette="slate"],.home-layout-section[data-palette="slate"]{--tile-bg:#eef1f4;--tile-accent:#687b90}
.board-grid-editor .board-sort-row[data-palette]:not([data-palette="default"]){background:var(--tile-bg);border-left:4px solid var(--tile-accent);color:#233447}
.home-layout-section[data-palette]:not([data-palette="default"]){background:var(--tile-bg);border:1px solid var(--ui-border);border-left:5px solid var(--tile-accent);border-radius:var(--ui-radius);padding:12px;min-width:0}
.home-layout-section[data-palette]:not([data-palette="default"]) .panel{background:transparent}

/* Deferred home layout. Two grid tracks let users choose half/full-width areas. */
.home-layout-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0 22px}.home-layout-section{min-width:0}.home-layout-section .panel{margin:0}.home-layout-section .event-banner{margin:0}.home-layout-section>section{height:100%}.home-layout-section details{border:1px solid var(--ui-border);padding:12px;border-radius:var(--ui-radius)}.home-layout-section details summary{cursor:pointer;font-weight:700}.home-layout-section details>section,.home-layout-section details>.panel{margin-top:12px}.home-layout-grid>.panel{margin:0}
@media(max-width:780px){.home-layout-grid{grid-template-columns:1fr}.home-layout-section,.home-layout-grid>.panel{grid-column:1/-1!important}}
/* Administrator-configurable homepage intro (preset colors, responsive dimensions). */
.intro[data-hero-configured="true"]{max-width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box}
.intro[data-hero-background="blue"]{background:#eaf2ff}
.intro[data-hero-background="green"]{background:#eaf7ef}
.intro[data-hero-background="orange"]{background:#fff2e4}
.intro[data-hero-background="purple"]{background:#f3edff}
.intro[data-hero-background="rose"]{background:#fff0f5}
.intro[data-hero-background="slate"]{background:#eef2f5}
.home-hero-form{max-width:none}
.home-hero-preview{border:1px dashed var(--ui-border,#cad6e7);border-radius:10px;padding:12px;min-width:0;background:#fff}
.home-hero-preview .intro{margin-top:8px;margin-bottom:8px}
@media(max-width:780px){
  .intro[data-hero-configured="true"]{width:100%!important;min-height:0!important}
  .home-hero-form .form-actions{flex-wrap:wrap}
}

/* Keep the home improvement-board writing action above its list on every viewport. */
.home-improvement-actions{display:flex;align-items:center;gap:10px;white-space:nowrap;flex-shrink:0}
.home-improvement-actions .button{font-size:12px;min-height:33px;padding:6px 10px}
@media(max-width:780px){
  .home-improvement-head{align-items:flex-start;flex-wrap:wrap}
  .home-improvement-actions{margin-left:auto}
}

/* Keep approved improvement titles and administrator replies grouped in the public feed. */
.improvement-public-row{align-items:flex-start}
.improvement-public-copy{display:block;flex:1;min-width:0}
.improvement-public-copy>strong{display:block}
.improvement-public-reply{display:block;margin-top:8px;padding-left:10px;border-left:2px solid #c8d8ef;color:#526985;font-size:12px;line-height:1.6;white-space:pre-line}
.improvement-public-detail-response{margin:12px 0 0;line-height:1.6;white-space:pre-line}
.improvement-public-reply strong{color:#365477}
.improvement-public-status{flex-shrink:0}
@media(max-width:780px){.improvement-public-row{display:block}.improvement-public-status{display:block;margin-top:8px}}

.program-order-row[draggable="true"]{cursor:grab}.program-order-row.program-dragging{opacity:.45}.program-order-row[data-drop-position="before"]{box-shadow:inset 0 3px 0 var(--ui-primary,#1d5fd0)}.program-order-row[data-drop-position="after"]{box-shadow:inset 0 -3px 0 var(--ui-primary,#1d5fd0)}.program-grip{color:#8a97a8;letter-spacing:-2px;margin-right:4px;user-select:none}.program-move-group{display:inline-flex;gap:4px;margin-left:10px}.program-move{min-width:36px;min-height:36px;padding:0 8px}.program-order-cell{white-space:nowrap}
.aud-badges{display:inline-block;width:136px;white-space:nowrap}.aud-pill{display:inline-block;margin-right:7px;padding:2px 10px;border-radius:999px;font-size:.78em;font-weight:700;vertical-align:1px;border:1px solid}.aud-kg{color:#b45309;background:#fff4e0;border-color:#f6d9a8}.aud-el{color:#155ac7;background:#eaf2ff;border-color:#c3d8f7}.aud-all{color:#4a5b73;background:#eef1f6;border-color:#d7e0eb}.aud-check{display:inline-flex;align-items:center;gap:4px;margin-right:10px;white-space:nowrap}.aud-cell{white-space:nowrap}@media(max-width:780px){.aud-badges{width:auto;margin-right:4px}}
.bl-panel{padding:6px 14px}.bl-row{gap:12px;align-items:flex-start}.bl-main{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-width:0;flex:1}.bl-no{display:inline-block;min-width:34px;text-align:center}.bl-date{white-space:nowrap}.bl-pinned{background:#fffaf0}.bl-own{background:#f6f9ff}.bl-rejected{background:#fff8f7}.bl-sub{flex-basis:100%;padding-left:42px}.bl-note{padding:0 8px 10px 50px}.bl-count{color:#1967e8;font-weight:700;font-size:13px}
.bl-new{color:#c25e00;border-color:#f3c98b;background:#fff7ea}.bl-notice{color:#b42318;background:#fff3f2;border-color:#f5c2be;font-weight:700}.bl-cat{color:#6a3fb5;background:#f3edfc;border-color:#d9c9f3;font-weight:700}.bl-wait-chip{color:#c25e00;border-color:#f3c98b;background:#fff7ea;font-weight:700}.bl-reject-chip{color:#b42318;background:#fff3f2;border-color:#f5c2be;font-weight:700}
.bl-chips{margin:10px 0}.bl-chip{display:inline-block;border:1px solid #c8d8ef;border-radius:99px;padding:3px 10px;font-size:12px;background:#fff}.bl-chip.on{background:#1967e8;color:#fff;border-color:#1967e8}.bl-more{justify-content:center;margin:14px 0}.bl-more .button{min-width:220px}
@media(max-width:780px){.bl-row{flex-direction:column;gap:4px}.bl-sub{padding-left:0}.bl-note{padding-left:8px}}
.bl-pin-field{margin-top:10px;padding:10px 14px;border:1px solid #f3c98b;background:#fff7ea;border-radius:9px;align-items:flex-start}.bl-reject-box{background:#fff8f7;border:1px solid #f5c2be;margin-bottom:12px}
/* 모바일 프로그램 카드: 한 줄 배치, 운영 중 배지 생략, 카드 전체가 실행 링크 */
@media(max-width:780px){
.program-item{position:relative;flex-direction:row;align-items:center;justify-content:space-between;gap:10px}
.program-item>div:first-child{flex:1;min-width:0}
.program-right{width:auto;flex:none;gap:6px;flex-wrap:nowrap}
.program-right .status.good{display:none}
.program-right .button{padding:6px 10px;font-size:13px;white-space:nowrap}
.program-right a.button::after{content:"";position:absolute;inset:0}
}
/* 모바일 홈: 소개 영역과 공지·개선 요청 카드의 상하 폭을 최소로 줄여 프로그램이 위쪽에 보이도록 */
@media(max-width:780px){
.intro{padding:8px 14px!important;margin:6px 0!important;min-height:0!important}
.intro h1{font-size:18px;line-height:1.25;margin:0}
.intro .lead{font-size:13px;line-height:1.3;margin:2px 0 0}
.intro .pills{margin-top:4px}
.home-layout-section[data-section="notices"] .panel,.home-layout-section[data-section="improvements"] .panel{padding:6px 12px}
.home-layout-section[data-section="notices"] h2,.home-layout-section[data-section="improvements"] h2{font-size:15px;margin:0;line-height:1.2}
.home-layout-section[data-section="notices"] .section-head,.home-layout-section[data-section="improvements"] .section-head{margin:0 0 2px;min-height:0}
.home-layout-section[data-section="notices"] .notice-row,.home-layout-section[data-section="improvements"] .faq-row,.home-layout-section[data-section="improvements"] .notice-row{padding:3px 0;font-size:13px;min-height:0}
.home-layout-section[data-section="notices"] .helpbox,.home-layout-section[data-section="improvements"] .helpbox{padding:4px 0;margin:0;font-size:13px}
.home-layout-section[data-section="improvements"] .button.small{padding:2px 8px;font-size:12px}
.home-layout-grid{gap:6px;margin:8px 0 12px}
}
/* 모바일 홈: 공지·개선 요청 카드를 나란히(반폭) 배치하고 한 줄 요약만 표시 */
@media(max-width:780px){
.home-layout-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-layout-grid>.home-layout-section[data-section="notices"],.home-layout-grid>.home-layout-section[data-section="improvements"]{grid-column:span 1!important}
.intro h1{white-space:normal;overflow:visible}
.intro .lead{display:none}
[data-home-card][data-home-board-ready="1"]{cursor:pointer}
.home-layout-section[data-section="notices"] .notice-row,.home-layout-section[data-section="improvements"] .faq-row{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.home-layout-section[data-section="notices"] .notice-row .tiny{display:none}
.home-layout-section[data-section="notices"] .notice-row span,.home-layout-section[data-section="improvements"] .faq-row span{display:inline;overflow:hidden;text-overflow:ellipsis}
.home-layout-section[data-section="improvements"] .home-improvement-actions .button{display:none}
.home-layout-section[data-section="improvements"] .home-improvement-actions{gap:0}
.home-layout-section[data-section="improvements"] .home-improvement-head{flex-wrap:nowrap}
}
.home-board-title{color:inherit}.home-board-title:hover{text-decoration:underline}
/* 모바일 홈: 일반 게시판 카드를 반폭으로 나란히 배치(자유 게시판 | 프로그램 개선 요청) */
@media(max-width:780px){
.home-layout-grid>.home-layout-section[data-section^="board-"]{grid-column:span 1!important}
.home-layout-section[data-section^="board-"] .panel,.home-layout-section[data-section^="board-"]>section{padding:8px 12px}
.home-layout-section[data-section^="board-"] h2{font-size:15px;margin:0 0 4px;line-height:1.25}
.home-layout-section[data-section^="board-"] .muted.small{display:none}
.home-layout-section[data-section^="board-"] .notice-row{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:3px 0;font-size:13px}
.home-layout-section[data-section^="board-"] .notice-row .tiny{display:none}
.home-layout-section[data-section^="board-"] .helpbox{padding:2px 0;margin:0;font-size:13px}
}
/* 모바일 홈: 반폭 게시판 카드의 긴 제목은 잘리지 않고 줄바꿈 */
@media(max-width:780px){
.home-layout-section[data-section^="board-"] h2{white-space:normal;overflow:visible;overflow-wrap:anywhere;word-break:keep-all}
.home-layout-section[data-section^="board-"] h2 a{white-space:normal}
}

.program-link{color:inherit;cursor:pointer}.program-link:hover{background:#f2f6ff}.program-go{color:#1762d4;font-weight:700;font-size:16px}.program-link:focus-visible{outline:3px solid #8bb5ff;outline-offset:2px}
.status:not(.good),.status.warn{color:#5b6b82;background:#f5f7fa;border-color:#e3e8ef}
@media(max-width:780px){.program-wait{display:none}}
.program-name{display:flex;align-items:center;gap:12px}
.aud-badges{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;width:56px;flex:none;margin-right:0}
.aud-badges .aud-pill{margin-right:0}
.program-item{min-height:82px}
@media(max-width:780px){.program-go{display:none}}
.program-item>div:first-child{min-width:0}
.program-name{align-items:center;margin-bottom:0}
.program-text{min-width:0;flex:1;text-align:left}
.program-text .program-desc{margin-top:4px}
.program-name{word-break:keep-all;line-height:1.4}
.program-item .program-desc{margin-left:68px;word-break:keep-all}
@media(max-width:780px){article.program-item .program-right{position:absolute;right:10px;bottom:8px}article.program-item{padding-bottom:36px}}
.program-name{gap:18px}.aud-badges{width:56px}.program-item .program-desc{margin-left:74px}
.program-name{gap:24px}.aud-badges{align-items:center}.program-item .program-desc{margin-left:80px}
@media(max-width:780px){.program-name{gap:12px}.program-item .program-desc{margin-left:68px}}
.program-go{display:none}
.program-list{margin-left:-8px}
@media(min-width:781px){.program-item{padding-left:28px;padding-right:28px}.program-item .program-desc{margin-left:80px}}
