/* Seoul Vision design system v1.0 — proposal, scoped; not production CSS.
 * Fonts are SIL OFL 1.1; see licenses/NanumSquareRound-OFL.txt.
 */
@font-face{font-family:NanumSquareRound;src:url("assets/fonts/NanumSquareRoundR.woff") format("woff");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:NanumSquareRound;src:url("assets/fonts/NanumSquareRoundB.woff") format("woff");font-style:normal;font-weight:700;font-display:swap}
.sv-system{
 --sv-navy:#142e50;--sv-cream:#fffdf7;--sv-white:#fff;--sv-body:#42677a;--sv-sky:#65add2;--sv-sky-wash:#edf7fb;--sv-border:#cbdfe9;--sv-control-border:#6e899c;
 --sv-naver:#00853c;--sv-naver-hover:#006b30;--sv-naver-pressed:#005525;--sv-navy-hover:#21466c;--sv-navy-pressed:#0d213c;--sv-focus:#1b628c;
 --sv-open:#176444;--sv-open-bg:#edf7f0;--sv-break:#85561a;--sv-break-bg:#fff5e6;--sv-closed:#b42318;--sv-closed-bg:#fff0ee;
 --sv-unknown:#42677a;--sv-unknown-bg:#edf7fb;--sv-disabled:#64748b;--sv-disabled-bg:#e7edf1;
 --sv-space-4:.25rem;--sv-space-8:.5rem;--sv-space-12:.75rem;--sv-space-16:1rem;--sv-space-24:1.5rem;--sv-space-32:2rem;--sv-space-48:3rem;--sv-space-64:4rem;--sv-space-80:5rem;--sv-space-96:6rem;--sv-space-112:7rem;
 --sv-radius-small:12px;--sv-radius-card:24px;--sv-radius-pill:9999px;--sv-fast:150ms;--sv-standard:220ms;--sv-entrance:400ms;--sv-ease:cubic-bezier(.2,0,0,1);--sv-shadow:0 8px 32px rgb(20 46 80 / 8%);
 color:var(--sv-navy);background:var(--sv-cream);font:400 1.125rem/1.7 NanumSquareRound,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-synthesis:none;word-break:keep-all;overflow-wrap:anywhere;
}
.sv-system *{box-sizing:border-box}
.sv-system .sv-container{width:min(100% - 2.5rem,75rem);margin-inline:auto}
.sv-system .sv-hero-title{font-size:2rem;font-weight:700;line-height:1.35;letter-spacing:-.02rem;margin:0;max-width:18em;text-wrap:balance}
.sv-system .sv-section-title{font-size:1.75rem;line-height:1.35;font-weight:700;margin:0 0 1.5rem}
.sv-system .sv-card-title{font-size:1.375rem;line-height:1.4;font-weight:700;margin:0 0 .75rem}
.sv-system .sv-body{font-size:1.125rem;line-height:1.7;color:var(--sv-body);max-width:42.5rem}
.sv-system .sv-label{font-size:1rem;line-height:1.5;font-weight:700}
.sv-system .sv-caption{font-size:.9375rem;line-height:1.6;color:var(--sv-body)}
.sv-system .sv-card{padding:1.5rem;border:1px solid var(--sv-border);border-radius:var(--sv-radius-card);background:var(--sv-white);min-width:0}
.sv-system .sv-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.sv-system .sv-button{display:inline-flex;align-items:center;justify-content:center;gap:.625rem;min-height:3.5rem;min-width:3rem;max-width:100%;padding:.875rem 1.5rem;border:1px solid transparent;border-radius:var(--sv-radius-pill);font:700 1.125rem/1.4 NanumSquareRound,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;text-align:center;text-decoration:none;cursor:pointer;color:var(--sv-white);background:var(--sv-navy);transition:background var(--sv-fast) var(--sv-ease),transform var(--sv-fast) var(--sv-ease)}
.sv-system .sv-button svg{width:1.125rem;height:1.125rem;flex:0 0 auto;stroke:currentColor;fill:none;stroke-width:1.8}
.sv-system .sv-button--naver{background:var(--sv-naver)}
.sv-system .sv-button--secondary{color:var(--sv-navy);border-color:var(--sv-control-border);background:transparent}
.sv-system .sv-button:focus-visible,.sv-system a:focus-visible,.sv-system summary:focus-visible{outline:3px solid var(--sv-focus);outline-offset:4px;box-shadow:0 0 0 3px var(--sv-cream)}
@media(hover:hover){.sv-system .sv-button:hover{background:var(--sv-navy-hover)}.sv-system .sv-button--naver:hover{background:var(--sv-naver-hover)}.sv-system .sv-button--secondary:hover{background:var(--sv-sky-wash)}}
.sv-system .sv-button:active{background:var(--sv-navy-pressed);transform:translateY(1px)}
.sv-system .sv-button--naver:active{background:var(--sv-naver-pressed)}
.sv-system .sv-button--secondary:active{background:var(--sv-sky-wash)}
.sv-system .sv-button:disabled{color:var(--sv-disabled);background:var(--sv-disabled-bg);cursor:not-allowed;transform:none}
.sv-system .sv-status{display:inline-flex;align-items:center;gap:.5rem;border-radius:12px;padding:.5rem .75rem;font-size:1rem;font-weight:700;line-height:1.5;color:var(--sv-unknown);background:var(--sv-unknown-bg)}
.sv-system .sv-status--open{color:var(--sv-open);background:var(--sv-open-bg)}
.sv-system .sv-status--break{color:var(--sv-break);background:var(--sv-break-bg)}
.sv-system .sv-status--closed{color:var(--sv-closed);background:var(--sv-closed-bg)}
.sv-system .sv-status svg{width:1rem;height:1rem;stroke:currentColor;fill:none;stroke-width:1.8}
.sv-system .sv-section{padding-block:4rem}
.sv-system .sv-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem}
@media(min-width:48rem){.sv-system .sv-container{width:min(100% - 4rem,75rem)}.sv-system .sv-hero-title{font-size:2.375rem}.sv-system .sv-section-title{font-size:2.25rem}.sv-system .sv-card-title{font-size:1.5rem}.sv-system .sv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sv-system .sv-card{padding:2rem}}
@media(min-width:75rem){.sv-system .sv-container{width:min(100% - 6rem,75rem)}.sv-system .sv-hero-title{font-size:2.75rem}.sv-system .sv-section{padding-block:6rem}}
@media(prefers-reduced-motion:reduce){.sv-system{--sv-fast:0ms;--sv-standard:0ms;--sv-entrance:0ms}.sv-system .sv-button{transition:none;transform:none}.sv-system [data-sv-motion]{animation:none!important;transition:none!important;transform:none!important}}
