:root{font-family:"DM Sans","Noto Sans KR",sans-serif;color:#17233b;background:#f5f7fb;font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}
body{margin:0;min-width:320px}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.app-shell{min-height:100vh}
.sidebar{position:fixed;inset:0 auto 0 0;width:250px;padding:27px 18px;background:#fff;border-right:1px solid #e8ecf3;display:flex;flex-direction:column;z-index:2}
.brand{display:flex;align-items:center;gap:12px;padding:0 12px 35px}
.brand>span:last-child{display:grid;gap:2px;letter-spacing:.08em}
.brand strong{font-size:16px}.brand small{font-size:10px;color:#8b96aa;letter-spacing:.2em}
.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#315cf5;color:white;font-weight:800;font-size:23px;box-shadow:0 7px 15px #315cf533}
.nav-caption{padding:0 13px 10px;color:#a1aabc;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.sidebar nav{display:grid;gap:5px}
.sidebar nav a{height:44px;padding:0 13px;border-radius:9px;display:flex;align-items:center;gap:12px;font-size:15px;color:#66728a;font-weight:500;transition:.15s}
.sidebar nav a span{width:18px;text-align:center;font-size:20px}
.sidebar nav a:hover,.sidebar nav a.active{background:#edf2ff;color:#315cf5}
.sidebar nav a.active{font-weight:700}
.sidebar-bottom{margin-top:auto;padding:16px 12px;color:#8995a8;font-size:13px;border-top:1px solid #edf0f5}
.online-dot{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:#26bd82}
.main{margin-left:250px;min-height:100vh}
.topbar{height:68px;padding:0 42px;background:#fff;border-bottom:1px solid #e8ecf3;display:flex;justify-content:space-between;align-items:center;font-size:14px}
.breadcrumb{color:#939eb0}.separator{padding:0 11px;color:#c5cbd6}
.content{max-width:1450px;margin:auto;padding:36px 42px 25px}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:25px}
.eyebrow{margin:0 0 8px;color:#315cf5;font-size:10px;font-weight:700;letter-spacing:.16em}
h1,h2,h3,p{margin-top:0}
.page-heading h1{margin:0;font-size:30px;letter-spacing:-.04em}
.date-chip{padding:9px 13px;border:1px solid #e6eaf1;border-radius:8px;background:#fff;color:#748097;font-size:13px}
.welcome-card{min-height:190px;padding:29px 34px;border-radius:15px;background:linear-gradient(112deg,#244cdb,#4778ff);color:#fff;display:flex;justify-content:space-between;align-items:center;overflow:hidden;position:relative}
.welcome-card:after{content:"";position:absolute;width:270px;height:270px;border:1px solid #ffffff20;border-radius:50%;right:110px;top:-118px;box-shadow:0 0 0 35px #ffffff0c,0 0 0 70px #ffffff08}
.welcome-label{font-size:10px;letter-spacing:.18em;color:#d7e2ff}
.welcome-card h2{margin:13px 0 8px;font-size:26px;letter-spacing:-.04em}
.welcome-card p{margin:0;color:#dbe4ff;font-size:14px}
.welcome-art{width:150px;height:120px;padding:23px;border:1px solid #ffffff40;border-radius:14px;background:#ffffff12;font-size:14px;line-height:1.6;z-index:1}
.welcome-art b{float:right;font-size:41px}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0 33px}
.stat-card{padding:19px 20px;background:#fff;border:1px solid #e9edf4;border-radius:12px;box-shadow:0 4px 14px #1c315207}
.stat-card span,.stat-card small{display:block;color:#8994a8;font-size:13px}
.stat-card strong{display:block;margin:10px 0 6px;font-size:32px;letter-spacing:-.04em}
.section-title{display:flex;justify-content:space-between;align-items:end;margin:0 0 14px}
.section-title h2,.panel-heading h2{margin:0;font-size:17px;letter-spacing:-.025em}
.section-title p,.panel-heading p{margin:5px 0 0;color:#939eb0;font-size:13px}
.roadmap{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.roadmap article{display:flex;align-items:flex-start;gap:14px;padding:18px;background:#fff;border:1px solid #e9edf4;border-radius:11px}
.quarter{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:11px;font-size:13px;font-weight:700}
.q1{background:#eaf1ff;color:#3964ed}.q2{background:#e8f8f2;color:#1c9a70}.q3{background:#fff3e7;color:#e59337}.q4{background:#f1edff;color:#825ce0}
.roadmap h3{margin:1px 0 6px;font-size:14px}.roadmap p{margin:0;color:#8a95a8;font-size:12px;line-height:1.7}
.content-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:16px;align-items:start}
.panel{margin-bottom:16px;padding:21px 22px;background:#fff;border:1px solid #e8ecf3;border-radius:12px;box-shadow:0 4px 14px #1c315205}
.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
label{display:grid;gap:7px;color:#5f6c83;font-size:13px;font-weight:600}
input,select,textarea{width:100%;padding:10px 11px;border:1px solid #e1e6ef;border-radius:7px;background:#fff;color:#233049;font-size:14px;outline:none}
input:focus,select:focus,textarea:focus{border-color:#6382fa;box-shadow:0 0 0 3px #315cf514}
textarea{resize:vertical;line-height:1.6}
.span-2{grid-column:span 2}
.button{display:inline-flex;justify-content:center;align-items:center;min-height:36px;padding:0 14px;border:0;border-radius:7px;cursor:pointer;font-size:13px;font-weight:700}
.button.primary{background:#315cf5;color:#fff;box-shadow:0 4px 10px #315cf526}
.button.primary:hover{background:#234bd8}
.button.ghost{background:transparent;color:#66728a}
.button.ghost:hover{background:#f2f4f8}
.inline-form{display:flex;align-items:center;gap:6px}
.inline-form select{min-width:100px;padding:7px 8px;font-size:12px}
.wide{width:100%;min-height:42px}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}
th{padding:10px 12px;border-bottom:1px solid #edf0f5;color:#929db0;font-size:12px;font-weight:600}
td{max-width:290px;padding:12px;border-bottom:1px solid #f0f2f6;color:#59667d;font-size:13px}
tbody tr:last-child td{border-bottom:0}
td strong{color:#27344e}
.empty{text-align:center;color:#a2acbc;padding:22px}
.memo-cell{white-space:normal;min-width:240px;line-height:1.6}
.status{display:inline-block;padding:5px 9px;border-radius:30px;background:#edf2ff;color:#315cf5;font-size:12px}
.alert{padding:11px 13px;margin:0 0 15px;border-radius:8px;font-size:14px}
.alert.success{background:#eaf8f1;color:#128357}
.alert.error{background:#fff0ee;color:#cb5242}
.footer{margin-top:25px;padding:17px 2px;color:#a0a9b8;font-size:10px;letter-spacing:.04em}
.footer span{float:right;letter-spacing:0}
.login-wrap{min-height:100vh;padding:24px;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 20%,#e9efff,transparent 58%),#f5f7fb}
.login-card{width:min(420px,100%);padding:38px;background:#fff;border:1px solid #e7ebf3;border-radius:18px;box-shadow:0 18px 60px #293e7112}
.login-card .brand-mark{margin-bottom:23px}
.login-card h1{margin:0 0 8px;font-size:26px;letter-spacing:-.04em}
.login-card>.muted{margin:0 0 25px;color:#8994a8;font-size:14px}
.login-card .stack{display:grid;gap:14px}
.installer-card .brand{padding:0 0 24px}
.installer-form{margin-top:20px}
.danger-zone{display:grid;gap:11px;margin-top:8px;padding:15px;border:1px solid #f1d5d2;border-radius:9px;background:#fff9f8}
.danger-zone strong{font-size:14px;color:#a33d34}
.danger-zone p{margin:0;color:#9c6a65;font-size:12px;line-height:1.6}
.button.danger{background:#b83d34;color:#fff}
.button.danger:hover{background:#9e3029}
.installer-back{margin:22px 0 0;text-align:center;font-size:13px;color:#7e899c}
.installer-back a:hover,.install-link:hover{color:#315cf5;text-decoration:underline}
.install-link{display:inline-block;margin:9px 0 0 15px;color:#8995a8;font-size:12px}
.muted{color:#8994a8}
@media(max-width:1050px){.sidebar{width:220px}.main{margin-left:220px}.content{padding:30px 24px}.topbar{padding:0 24px}.stat-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}}
@media(max-width:680px){.sidebar{position:static;width:auto;padding:14px 12px;border-right:0;border-bottom:1px solid #e8ecf3}.brand{padding:0 8px 13px}.nav-caption,.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow-x:auto;gap:4px}.sidebar nav a{flex:none;padding:0 10px;font-size:12px}.sidebar nav a span{display:none}.main{margin-left:0}.topbar{height:52px;padding:0 15px}.content{padding:24px 14px}.page-heading h1{font-size:25px}.welcome-card{min-height:165px;padding:23px}.welcome-card h2{font-size:21px;max-width:230px}.welcome-art{width:80px;height:92px;padding:14px}.stat-grid{gap:9px;margin:14px 0 25px}.stat-card{padding:14px}.stat-card strong{font-size:26px}.roadmap{grid-template-columns:1fr;gap:9px}.panel{padding:17px 14px}.form-grid{gap:11px}.date-chip{font-size:10px}.footer span{display:block;float:none;margin-top:8px}}

.public-body{--ink:#17263a;--muted:#758194;--paper:#f6f7f4;--blue:#314fdb;--line:#e4e8e4;background:var(--paper);color:var(--ink);font-family:"Noto Sans KR","DM Sans",sans-serif}
.public-container{width:min(1160px,calc(100% - 64px));margin-inline:auto}
.public-topline{height:33px;background:#17263a;color:#c5d0dc;font-size:10px;letter-spacing:.08em}
.topline-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.public-topline a{color:#fff}.public-topline a span{padding-left:5px;color:#a8b8fc}
.public-header{position:relative;z-index:5;background:#fbfcfa;border-bottom:1px solid #e9ece8}
.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between}
.public-brand{display:flex;align-items:center;gap:11px;flex:none}
.public-brand>span:last-child{display:grid;gap:3px}
.public-brand strong{font-family:"DM Sans",sans-serif;font-size:17px;letter-spacing:.08em}
.public-brand small{color:#929a9e;font-size:9px;letter-spacing:.07em}
.public-brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--blue);color:white;font-family:"DM Sans",sans-serif;font-size:21px;font-weight:700}
.public-nav{height:100%;display:flex;align-items:center;gap:3px}
.nav-group{position:relative;height:100%;display:flex;align-items:center}
.nav-group-title{height:100%;padding:0 15px;display:flex;align-items:center;gap:7px;color:#536073;font-size:14px;font-weight:600}
.nav-group-title>span{font-size:14px;color:#929bad;transition:transform .18s}
.nav-group:hover .nav-group-title,.nav-group:focus-within .nav-group-title,.nav-current .nav-group-title{color:var(--blue)}
.nav-group:hover .nav-group-title>span,.nav-group:focus-within .nav-group-title>span{transform:rotate(180deg)}
.nav-dropdown{position:absolute;top:calc(100% - 3px);left:0;min-width:190px;padding:9px;background:#fff;border:1px solid #e8ece8;border-radius:10px;box-shadow:0 16px 34px #16274718;display:grid;opacity:0;visibility:hidden;transform:translateY(7px);transition:.18s}
.nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.nav-dropdown a{padding:10px 11px;border-radius:6px;color:#687487;font-size:13px}
.nav-dropdown a:hover,.nav-dropdown a:focus{background:#f1f3ff;color:var(--blue)}
.nav-consult{margin-left:12px;padding:11px 15px;border-radius:6px;background:#17263a;color:#fff;font-size:13px;font-weight:600}
.nav-consult span{padding-left:10px;color:#bbc8ff}
.mobile-menu-toggle{display:none}
.home-hero{position:relative;min-height:550px;background:#f0f2ed;overflow:hidden}
.hero-grid{min-height:508px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:38px}
.hero-copy{padding:30px 0 20px}
.hero-kicker,.section-eyebrow{display:flex;align-items:center;gap:9px;color:#5a6c85;font-family:"DM Sans",sans-serif;font-size:10px;font-weight:700;letter-spacing:.16em}
.hero-kicker i{width:7px;height:7px;border-radius:50%;background:#4f6ae7;box-shadow:0 0 0 4px #4f6ae71a}
.hero-copy h1{margin:24px 0 18px;font-size:clamp(39px,5vw,63px);font-weight:600;line-height:1.28;letter-spacing:-.07em}
.hero-copy h1 em,.intro-grid h2 em{color:var(--blue);font-style:normal}
.hero-copy>p{margin:0;color:#778294;font-size:15px;line-height:2}
.hero-actions{display:flex;align-items:center;gap:23px;margin-top:28px}
.public-button{min-height:45px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:22px;border:1px solid transparent;border-radius:6px;font-size:13px;font-weight:600;transition:background .15s,transform .15s}
.public-button:hover{transform:translateY(-2px)}
.public-button span{font-size:17px}
.public-button.dark{background:#17263a;color:#fff}
.public-button.dark:hover{background:#263e5f}
.text-link,.under-link{color:#45546a;font-size:13px;font-weight:600}
.text-link span,.under-link span{padding-left:6px;color:var(--blue)}
.hero-footnote{display:flex;align-items:center;gap:11px;margin-top:48px;color:#9aa3ae;font-size:12px}
.hero-footnote span{color:#3856e3;font-family:"DM Sans",sans-serif;font-size:13px;font-weight:700}
.hero-visual{position:relative;width:min(100%,490px);aspect-ratio:1/1;margin:auto;display:grid;place-items:center}
.visual-orbit{position:absolute;border:1px solid #d5dad6;border-radius:50%}
.orbit-one{inset:10%}.orbit-two{inset:20%;border-style:dashed;border-color:#cdd4db}
.visual-center{z-index:1;width:43%;aspect-ratio:1;border-radius:50%;background:#fff;box-shadow:0 16px 45px #26375215;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.visual-center span{color:#8290a4;font-family:"DM Sans",sans-serif;font-size:9px;letter-spacing:.16em}
.visual-center strong{margin:12px 0;color:#233b67;font-family:"DM Sans",sans-serif;font-size:clamp(23px,3vw,34px);line-height:.98;letter-spacing:.04em}
.visual-center small{color:#a1aabb;font-family:"DM Sans",sans-serif;font-size:8px;letter-spacing:.12em}
.visual-node{position:absolute;z-index:2;width:70px;height:70px;border-radius:50%;background:#fff;box-shadow:0 8px 24px #26375212;display:grid;place-content:center;justify-items:center;gap:3px}
.visual-node i{color:#405edd;font-family:"DM Sans",sans-serif;font-size:12px;font-style:normal;font-weight:700}
.visual-node span{color:#788498;font-size:12px}
.node-1{top:12%;left:44%}.node-2{right:10%;top:43%}.node-3{bottom:11%;left:44%}.node-4{left:10%;top:43%}
.visual-label{position:absolute;color:#8b96a5;font-family:"DM Sans",sans-serif;font-size:9px;letter-spacing:.16em}
.visual-label b{padding-left:9px;color:#4862d8;font-size:14px}
.label-top{top:7%;right:1%}.label-bottom{bottom:6%;left:3%}
.visual-note{position:absolute;right:-2%;bottom:22%;display:flex;align-items:center;gap:9px;padding:11px 13px;border:1px solid #e7e9e3;border-radius:8px;background:#ffffffdf;box-shadow:0 8px 24px #2637520b}
.note-dot{width:7px;height:7px;border-radius:50%;background:#38a67a}
.visual-note b,.visual-note small{display:block}.visual-note b{font-size:10px}.visual-note small{margin-top:4px;color:#929baa;font-size:9px}
.hero-bottomline{height:42px;border-top:1px solid #e2e6df}
.hero-bottomline>div{height:100%;display:flex;align-items:center;gap:12px;color:#99a2ad;font-size:9px;letter-spacing:.08em}
.hero-bottomline>div>span:first-child{color:#4c5f7c;font-family:"DM Sans",sans-serif}
.hero-bottomline .line{width:46px;height:1px;background:#aeb8c4}
.hero-scroll{margin-left:auto}
.public-section{padding:82px 0}
.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end}
.section-eyebrow{margin-bottom:16px;color:#5970b1}
.intro-grid h2,.section-heading h2,.board-feature-copy h2,.cta-inner h2{margin:0;font-size:clamp(25px,3.3vw,38px);font-weight:600;line-height:1.48;letter-spacing:-.055em}
.intro-text p{margin:0 0 18px;color:#707d8e;font-size:14px;line-height:2}
.under-link{padding-bottom:6px;border-bottom:1px solid #c8cfd5}
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:52px;border-top:1px solid #dfe4df;border-bottom:1px solid #dfe4df}
.value-grid article{position:relative;padding:25px 28px 27px 0}
.value-grid article+article{padding-left:28px;border-left:1px solid #dfe4df}
.value-grid article>span{color:#8994a4;font-family:"DM Sans",sans-serif;font-size:9px;letter-spacing:.13em}
.value-icon{position:absolute;right:24px;top:27px;color:#385bd8;font-size:24px}
.value-grid h3{margin:27px 0 8px;font-size:16px;letter-spacing:-.03em}
.value-grid p{max-width:290px;margin:0;color:#818b99;font-size:12px;line-height:1.8}
.home-roadmap{background:#edf0eb}
.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}
.section-heading .section-eyebrow{margin-bottom:12px}
.section-heading h2{font-size:33px}
.home-quarter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.home-quarter{position:relative;min-height:218px;padding:21px;background:#fafbf8;border:1px solid #e2e7e0;border-radius:8px;transition:transform .2s,box-shadow .2s}
.home-quarter:hover{transform:translateY(-4px);box-shadow:0 12px 25px #283b5510}
.hq-number{display:block;margin-bottom:20px;color:#3e5bda;font-family:"DM Sans",sans-serif;font-size:24px;font-weight:600}
.home-quarter small{color:#97a0aa;font-family:"DM Sans",sans-serif;font-size:9px;letter-spacing:.14em}
.home-quarter h3{margin:10px 0 8px;font-size:15px}
.home-quarter p{margin:0;color:#7e8997;font-size:12px;line-height:1.8}
.home-quarter>b{position:absolute;right:20px;bottom:17px;color:#4e65d1;font-size:16px}
.home-board{background:#fbfcfa}
.board-feature-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}
.board-feature-copy h2{margin-bottom:12px}
.board-feature-copy>p:not(.section-eyebrow){max-width:300px;margin:0 0 22px;color:#778394;font-size:13px;line-height:1.9}
.public-button.outline{border-color:#dbe0e6;color:#293a52;background:transparent}
.public-button.outline:hover{border-color:#8795da;background:#f3f5ff}
.board-feature-list{border-top:1px solid #dfe4e5}
.feature-row{min-height:59px;display:grid;grid-template-columns:90px 1fr 22px;gap:12px;align-items:center;border-bottom:1px solid #e6e9e8}
.feature-tag{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 9px;border-radius:3px;background:#eef1fb;color:#5065bd;font-size:10px;white-space:nowrap}
.feature-title{overflow:hidden;color:#354257;font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.feature-arrow{color:#8796b7;text-align:right}
.sample-note{margin:12px 0 0;color:#a0a8b2;font-size:10px}
.home-cta{position:relative;overflow:hidden;background:#1a2a41;color:#fff}
.cta-inner{position:relative;min-height:215px;display:flex;justify-content:space-between;align-items:center}
.cta-inner .section-eyebrow{color:#aebdf8}
.cta-inner h2{font-size:33px}
.public-button.light{position:relative;z-index:1;background:#fff;color:#233852}
.cta-decoration{position:absolute;right:20%;bottom:-95px;color:#ffffff08;font-family:"DM Sans",sans-serif;font-size:290px;font-weight:700;line-height:1}
.public-footer{background:#fbfcfa}
.footer-main{min-height:95px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7ebe7}
.footer-brand .public-brand-mark{width:32px;height:32px;border-radius:9px;font-size:17px}
.footer-brand strong{font-size:14px}
.footer-links{display:flex;gap:24px;color:#778294;font-size:12px}
.footer-links a:hover{color:var(--blue)}
.footer-bottom{min-height:47px;display:flex;align-items:center;justify-content:space-between;color:#9aa3ac;font-size:10px}
.subpage-hero{padding:37px 0 40px;background:#eff1ed;border-bottom:1px solid #e3e7e1}
.crumb{display:flex;gap:9px;align-items:center;margin-bottom:34px;color:#8c96a3;font-size:10px}
.crumb b{color:#4e5b6d;font-weight:600}
.subpage-hero .section-eyebrow{margin-bottom:10px}
.subpage-hero h1{margin:0;font-size:40px;font-weight:600;letter-spacing:-.06em}
.subpage-hero>div>p:last-child{max-width:700px;margin:12px 0 0;color:#758192;font-size:14px;line-height:1.9}
.subpage-layout{display:grid;grid-template-columns:190px 1fr;gap:55px;min-height:430px;padding-top:45px;padding-bottom:75px}
.subpage-sidebar{align-self:start;display:grid}
.subpage-sidebar>p{margin:0 0 10px;padding-bottom:12px;border-bottom:1px solid #dfe4e1;color:#596980;font-size:13px;font-weight:700}
.subpage-sidebar>a{display:flex;justify-content:space-between;padding:11px 8px;border-bottom:1px solid #e9ece8;color:#7e8998;font-size:12px}
.subpage-sidebar>a span{color:#a0aabb}
.subpage-sidebar>a:hover,.subpage-sidebar>a.selected{color:#3454d5;font-weight:600}
.subpage-sidebar>a.selected span{color:#3454d5}
.subpage-content{min-width:0}
.content-sections{display:grid}
.content-section{display:grid;grid-template-columns:46px 1fr;gap:16px;padding:0 0 28px;margin-bottom:26px;border-bottom:1px solid #e1e6e1}
.content-section-number{color:#4b61d1;font-family:"DM Sans",sans-serif;font-size:13px;font-weight:600}
.content-section h2{margin:0 0 10px;font-size:18px;letter-spacing:-.04em}
.content-section p{margin:0;color:#737f8f;font-size:13px;line-height:2}
.content-section ul{display:grid;gap:9px;margin:17px 0 0;padding:0;list-style:none}
.content-section li{position:relative;padding-left:14px;color:#526174;font-size:12px;line-height:1.7}
.content-section li:before{content:"";position:absolute;left:0;top:6px;width:5px;height:5px;border-radius:50%;background:#7183e3}
.content-callout{display:flex;gap:17px;padding:17px 19px;border-left:3px solid #536bdd;background:#edf0f9}
.content-callout>span{flex:none;color:#5267ca;font-family:"DM Sans",sans-serif;font-size:10px;font-weight:700;letter-spacing:.1em}
.content-callout p{margin:0;color:#59677e;font-size:12px;line-height:1.8}
.content-cta{margin-top:24px}
.board-intro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}
.board-intro .section-eyebrow{margin-bottom:8px}
.board-intro h2{margin:0 0 7px;font-size:23px;letter-spacing:-.04em}
.board-intro p{margin:0;color:#7c8796;font-size:12px;line-height:1.8}
.board-count{flex:none;color:#909aaa;font-family:"DM Sans",sans-serif;font-size:10px;letter-spacing:.12em}
.board-search{display:flex;max-width:390px;margin:0 0 15px auto}
.board-search input{height:38px;border:1px solid #e0e5e0;border-radius:5px 0 0 5px;background:#fff;font-size:12px}
.board-search button{flex:none;padding:0 15px;border:0;border-radius:0 5px 5px 0;background:#1c2b43;color:white;font-size:12px;cursor:pointer}
.board-search button span{padding-left:7px}
.board-table-wrap{overflow-x:auto;border-top:1px solid #596477}
.public-board-table{width:100%;border-collapse:collapse;text-align:left;white-space:normal}
.public-board-table th{padding:12px 10px;border-bottom:1px solid #e5e9e4;color:#8994a2;font-size:10px}
.public-board-table td{padding:14px 10px;border-bottom:1px solid #e8ece8;color:#748091;font-size:12px;line-height:1.7}
.public-board-table th:first-child,.public-board-table td:first-child{width:100px}
.public-board-table th:last-child,.public-board-table td:last-child{width:95px}
.board-title-link{display:block;color:#35435a;font-size:13px;font-weight:600}
.board-title-link:hover{color:#3857d4}
.board-title-link small{display:block;margin-top:4px;color:#a0a8b2;font-size:9px;font-weight:400}
.board-empty{text-align:center;padding:35px!important;color:#969fac!important}
.board-sample-note{text-align:right;margin-top:13px}
.post-detail{padding-top:2px}
.back-to-board{display:inline-flex;gap:6px;margin-bottom:20px;color:#66758a;font-size:12px}
.back-to-board:hover{color:#3857d4}
.post-detail-meta{display:flex;align-items:center;gap:11px;color:#929baa;font-size:10px}
.post-detail h2{margin:18px 0 10px;font-size:26px;line-height:1.5;letter-spacing:-.05em}
.post-summary{padding-bottom:23px;border-bottom:1px solid #dfe4e1;color:#657287;font-size:14px;line-height:1.9}
.post-body{min-height:180px;padding:10px 0 22px;color:#697789;font-size:13px;line-height:2}
.post-tip{margin-top:25px;padding:15px 17px;background:#f0f2ef}
.post-tip b{color:#495ac0;font-size:12px}
.post-tip p{margin:6px 0 0;font-size:12px}
.bottom-back{padding-top:18px;border-top:1px solid #e0e5e1}
.bottom-back span{color:#4964d6}
.error-page{min-height:450px;padding-top:100px;padding-bottom:100px}
.error-page h1{font-size:37px;letter-spacing:-.05em}
.error-page>p:not(.section-eyebrow){margin-bottom:25px;color:#788495;font-size:14px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:950px){
    .public-container{width:min(100% - 42px,760px)}
    .header-inner{height:70px}
    .mobile-menu-toggle{display:inline-flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid #e0e5e3;border-radius:5px;background:#fff;color:#35445a;font-size:13px}
    .public-nav{position:absolute;top:100%;left:0;right:0;height:auto;padding:12px 21px 18px;background:#fbfcfa;border-bottom:1px solid #e4e8e4;box-shadow:0 10px 18px #17263a0a;display:none;align-items:stretch}
    .nav-open .public-nav{display:grid}
    .nav-group{height:auto;display:block;border-bottom:1px solid #e9ece8}
    .nav-group-title{height:auto;min-height:41px;padding:0 4px;justify-content:space-between}
    .nav-dropdown{position:static;min-width:0;padding:0 0 8px 11px;border:0;border-radius:0;box-shadow:none;display:none;opacity:1;visibility:visible;transform:none}
    .nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown{display:grid}
    .nav-open .nav-dropdown{display:grid}
    .nav-dropdown a{padding:8px 9px}
    .nav-consult{margin:11px 0 0;text-align:center}
    .hero-grid{gap:14px;min-height:440px}
    .visual-note{right:-2%}
    .intro-grid{gap:36px}
    .home-quarter-grid{grid-template-columns:repeat(2,1fr)}
    .subpage-layout{grid-template-columns:155px 1fr;gap:30px}
}
@media(max-width:650px){
    .public-container{width:calc(100% - 34px)}
    .public-topline{height:29px;font-size:9px}
    .header-inner{height:64px}
    .public-brand-mark{width:34px;height:34px}
    .public-brand strong{font-size:15px}
    .public-brand small{font-size:8px}
    .home-hero{min-height:auto}
    .hero-grid{min-height:0;padding-top:52px;padding-bottom:12px;grid-template-columns:1fr;gap:5px}
    .hero-copy{padding:0}
    .hero-copy h1{margin:19px 0 12px;font-size:49px}
    .hero-copy>p{font-size:13px}
    .hero-actions{gap:16px;margin-top:20px}
    .public-button{min-height:42px;padding:0 13px;gap:13px;font-size:12px}
    .hero-footnote{margin-top:25px;font-size:10px}
    .hero-visual{width:min(100%,390px);margin-top:2px}
    .visual-center strong{font-size:32px}
    .visual-note{right:-1%;bottom:19%;padding:8px 10px}
    .visual-note b{font-size:9px}.visual-note small{font-size:8px}
    .visual-node{width:58px;height:58px}
    .hero-bottomline{height:36px}
    .hero-bottomline>div{font-size:8px}
    .hero-scroll{display:none}
    .public-section{padding:55px 0}
    .intro-grid{grid-template-columns:1fr;gap:19px}
    .intro-grid h2,.section-heading h2,.board-feature-copy h2,.cta-inner h2{font-size:29px}
    .intro-text p{font-size:13px}
    .value-grid{grid-template-columns:1fr;margin-top:31px}
    .value-grid article,.value-grid article+article{padding:19px 8px;border-left:0}
    .value-grid article+article{border-top:1px solid #dfe4df}
    .value-grid article>span{font-size:9px}
    .value-icon{right:10px;top:20px}
    .value-grid h3{margin:15px 0 6px;font-size:15px}
    .value-grid p{font-size:12px}
    .section-heading{align-items:flex-start;gap:14px}
    .section-heading h2{max-width:235px;line-height:1.45}
    .section-heading .under-link{flex:none;margin-top:28px;font-size:10px}
    .home-quarter-grid{gap:8px}
    .home-quarter{min-height:191px;padding:15px}
    .hq-number{margin-bottom:15px;font-size:21px}
    .home-quarter h3{font-size:14px}
    .home-quarter p{font-size:10px}
    .home-quarter>b{right:14px;bottom:12px}
    .board-feature-grid{grid-template-columns:1fr;gap:28px}
    .board-feature-copy h2{margin-bottom:10px}
    .board-feature-copy>p:not(.section-eyebrow){font-size:12px}
    .feature-row{min-height:54px;grid-template-columns:73px 1fr 16px;gap:7px}
    .feature-tag{font-size:9px}
    .feature-title{font-size:10px}
    .cta-inner{min-height:210px;align-items:flex-start;justify-content:center;flex-direction:column;gap:18px}
    .cta-inner h2{font-size:29px}
    .cta-decoration{right:0;bottom:-45px;font-size:180px}
    .footer-main{min-height:80px;gap:15px}
    .footer-links{gap:11px;font-size:9px}
    .footer-bottom{align-items:flex-start;justify-content:center;flex-direction:column;gap:5px;padding:12px 0;font-size:9px}
    .subpage-hero{padding:25px 0 27px}
    .crumb{gap:6px;margin-bottom:25px;font-size:9px}
    .subpage-hero h1{font-size:31px}
    .subpage-hero>div>p:last-child{font-size:12px}
    .subpage-layout{grid-template-columns:1fr;gap:25px;padding-top:24px;padding-bottom:48px}
    .subpage-sidebar{display:flex;overflow:auto;gap:4px;padding-bottom:4px}
    .subpage-sidebar>p{display:none}
    .subpage-sidebar>a{flex:none;padding:9px 10px;border:1px solid #e4e8e3;border-radius:4px;font-size:10px}
    .subpage-sidebar>a span{display:none}
    .content-section{grid-template-columns:29px 1fr;gap:9px;padding-bottom:21px;margin-bottom:19px}
    .content-section h2{font-size:16px}
    .content-section p{font-size:12px}
    .content-section li{font-size:10px}
    .content-callout{gap:10px;padding:13px}
    .content-callout p{font-size:10px}
    .board-intro{align-items:flex-start}
    .board-intro h2{font-size:20px}
    .board-count{font-size:8px}
    .board-search{max-width:none}
    .public-board-table{min-width:600px}
    .public-board-table td,.public-board-table th{padding:11px 8px}
    .board-sample-note{text-align:left;line-height:1.6}
    .post-detail h2{font-size:22px}
    .post-summary{font-size:12px}
    .post-body{font-size:12px}
}

:root{font-family:"Noto Sans KR","Apple SD Gothic Neo",sans-serif;color:#1b2940;background:#f4f6fa}
body{line-height:1.55}
.panel,.stat-card,.roadmap article{transition:border-color .18s,box-shadow .18s,transform .18s}
.panel:hover,.stat-card:hover,.roadmap article:hover{border-color:#dbe3f4;box-shadow:0 8px 24px #1c31520b}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid #315cf54d;outline-offset:3px}
input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:#6382fa;box-shadow:0 0 0 3px #315cf51c}
tbody tr:hover td{background:#f8faff}
.public-board-table tbody tr:hover td{background:#f4f6f1}
.home-quarter,.public-button,.nav-dropdown a{transition:transform .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease}
@media(prefers-reduced-motion:reduce){
    *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}
.catalog-import-note,.catalog-import-warning{color:#697789;font-size:14px;line-height:1.8}
.catalog-template{display:flex;align-items:center;gap:14px;margin:18px 0;padding:14px 16px;border:1px solid #e8ecf3;border-radius:9px;background:#f8faff;color:#6d7990;font-size:13px}
.catalog-upload-form{margin-top:18px}
.catalog-import-warning{margin:18px 0 0;color:#8a95a8;font-size:12px}
.university-finder{margin-top:30px}
.university-search{display:grid;grid-template-columns:minmax(180px,1fr) minmax(140px,.45fr) minmax(130px,.4fr) auto;gap:9px;margin:0 0 18px}
.university-search input,.university-search select{min-width:0;height:44px;font-size:14px}
.university-search button{padding:0 19px;border:0;border-radius:6px;background:#17263a;color:#fff;font-size:14px;font-weight:600;cursor:pointer}
.university-search button:hover{background:#263e5f}
.university-results{min-width:760px}
.university-results td{white-space:normal;line-height:1.65}
.university-results td:first-child{min-width:150px;color:#354257;font-weight:600}
.university-results .university-department{min-width:190px}
.university-official-link{color:#3857d4;font-weight:600;white-space:nowrap}
.catalog-pagination{display:flex;justify-content:center;gap:6px;margin-top:18px}
.catalog-pagination a{min-width:36px;padding:8px 10px;border:1px solid #e2e7e2;border-radius:5px;color:#647188;text-align:center;font-size:13px}
.catalog-pagination a[aria-current=page]{border-color:#314fdb;background:#314fdb;color:white}
@media(max-width:650px){
    .catalog-template{align-items:flex-start;flex-direction:column;gap:8px}
    .university-search{grid-template-columns:1fr 1fr}
    .university-search input{grid-column:span 2}
    .university-search button{min-height:44px}
}
