html{scroll-padding-top:0}
.policy-page{--policy-accent:#57dfba;--policy-rgb:87,223,186;--policy-secondary:#6a9ff5;padding:0 0 80px;background:radial-gradient(ellipse at 4% 0%,#173333 0,transparent 35%),radial-gradient(ellipse at 100% 30%,#18243d 0,transparent 40%),#0b101a;background-attachment:fixed}
.policy-client{--policy-accent:#bea4ff;--policy-rgb:190,164,255;--policy-secondary:#79baed;background:radial-gradient(ellipse at 4% 0%,#28223e 0,transparent 35%),radial-gradient(ellipse at 100% 30%,#192c3b 0,transparent 40%),#0b101a;background-attachment:fixed}
.policy-shell{max-width:1480px;margin:28px auto;padding:0 28px}
.policy-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 32px;margin-bottom:24px;border:1px solid rgba(var(--policy-rgb),.25);border-radius:20px;background:linear-gradient(115deg,rgba(var(--policy-rgb),.14),#151e30 65%,#1c2d43);box-shadow:0 16px 50px #0002}
.policy-hero::after{content:"";position:absolute;width:220px;height:220px;border:1px solid rgba(var(--policy-rgb),.14);border-radius:50%;right:-90px;top:-100px;box-shadow:0 0 0 32px rgba(var(--policy-rgb),.035),0 0 0 64px rgba(var(--policy-rgb),.025);pointer-events:none}
.policy-hero h1{font-size:32px;font-weight:750;letter-spacing:-.04em;white-space:nowrap}
.policy-links{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap}
.policy-links a{padding:9px 13px;border:1px solid #ffffff16;background:#10192870;border-radius:9px;font-size:13px;font-weight:600;text-decoration:none;color:#c8d6e9}
.policy-links a:first-child{color:var(--policy-accent);border-color:rgba(var(--policy-rgb),.3)}
.policy-links a:hover{background:rgba(var(--policy-rgb),.12);color:#fff}
.policy-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start}
.policy-sidebar{position:sticky;top:80px;min-width:0;padding:10px;background:linear-gradient(155deg,#1c283c,#121b2b);border:1px solid #344760;border-radius:16px;box-shadow:0 12px 32px #0002}
.policy-menu summary{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 16px;font-size:13px;font-weight:750;color:#aabbd3;list-style:none;pointer-events:none}
.policy-menu summary::-webkit-details-marker{display:none}.policy-menu summary>span{display:none}
.policy-toc{display:flex;flex-direction:column;gap:4px;max-height:calc(100dvh - 166px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#476077 transparent}
.policy-toc a{display:flex;align-items:baseline;gap:12px;position:relative;padding:12px 10px;border:1px solid transparent;border-radius:9px;color:#afc0d7;font-size:13px;line-height:1.55;text-decoration:none;transition:background .15s,color .15s}
.menu-number{font:600 11px/1.8 var(--mono);color:#708ba9;flex-shrink:0}
.policy-toc a:hover{background:#ffffff08;color:#fff}
.policy-toc a.active{background:linear-gradient(105deg,rgba(var(--policy-rgb),.18),rgba(var(--policy-rgb),.045));border-color:rgba(var(--policy-rgb),.23);color:#f2f7ff;box-shadow:inset 3px 0 var(--policy-accent)}
.policy-toc a.active .menu-number{color:var(--policy-accent)}
.policy-doc{min-width:0}
.policy-section{position:relative;scroll-margin-top:80px;margin-bottom:24px;border:1px solid #32415a;border-radius:16px;background:linear-gradient(135deg,#182236,#121b2b);overflow:hidden;box-shadow:0 16px 34px #0002}
.policy-section::before{content:"";position:absolute;left:0;top:0;right:0;height:2px;background:linear-gradient(90deg,var(--policy-accent),var(--policy-secondary),transparent)}
.policy-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;background:linear-gradient(95deg,rgba(var(--policy-rgb),.075),transparent);border-bottom:1px solid #ffffff0f}
.policy-section h2{display:flex;align-items:center;gap:12px;font-size:21px;line-height:1.5;letter-spacing:-.03em}
.section-number{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:35px;height:35px;border:1px solid rgba(var(--policy-rgb),.3);border-radius:10px;background:rgba(var(--policy-rgb),.12);color:var(--policy-accent);font:700 12px var(--mono)}
.source{flex-shrink:0;font-size:12px;color:var(--policy-accent);text-decoration:none;padding:7px 9px;border-radius:6px}.source:hover{background:#ffffff09}
.policy-row{display:grid;grid-template-columns:minmax(140px,23%) minmax(0,1fr);gap:24px;padding:22px 24px;border-bottom:1px solid #ffffff0b;line-height:1.85}.policy-row:last-child{border-bottom:0}
.policy-row h3{font-size:14px;line-height:1.8;font-weight:650;color:#e6eefb}
.policy-row p{font-size:14px;color:#b6c6dd;white-space:pre-line;overflow-wrap:anywhere}
.policy-row small{display:block;margin-top:10px;font-size:11px;color:#849ab7;line-height:1.6}
.policy-row .rflag{display:inline;white-space:normal;line-height:1.9;background:#ffbb7910;color:#efcda4;border-bottom-color:#bc8d5c;text-decoration:none}
.policy-row .rflag-k{color:#ffce8d;background:#ffba6015}
.policy-confirm{color:#ffce8d;font-weight:700;white-space:nowrap}
@media print{.policy-confirm{color:#754100}}
/* 비활성 절: 글은 남기고 취소선 · 흐리게(데이터의 disabled) */
.policy-section.is-disabled h2,.policy-section.is-disabled .policy-row{text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:#9fb1c9;opacity:.58}
.policy-off{margin-right:auto;flex-shrink:0;padding:4px 10px;border:1px solid #ffffff2e;border-radius:999px;background:#ffffff0f;color:#d7e2f2;font-size:12px;font-weight:700;line-height:1.4}
.policy-toc a.is-disabled span:last-child{text-decoration:line-through;opacity:.55}
.policy-page a:focus-visible,.policy-menu summary:focus-visible{outline:2px solid var(--policy-accent);outline-offset:2px}
@media(max-width:1100px){.policy-layout{grid-template-columns:230px minmax(0,1fr);gap:18px}.policy-hero{align-items:flex-start;flex-direction:column}.policy-row{grid-template-columns:1fr;gap:8px}}
@media(max-width:760px){.policy-shell{padding:0 14px;margin:18px auto}.policy-hero{padding:24px 20px;margin-bottom:16px}.policy-hero h1{font-size:27px}.policy-links a{padding:8px 10px}.policy-layout{grid-template-columns:minmax(0,1fr);gap:16px}.policy-sidebar{top:56px;z-index:40;padding:5px 8px;box-shadow:0 8px 24px #0005}.policy-menu summary{padding:10px;pointer-events:auto;cursor:pointer;color:var(--policy-accent)}.policy-menu summary>span{display:inline}.policy-menu[open] summary>span{transform:rotate(180deg)}.policy-toc{max-height:45dvh;padding-bottom:6px}.policy-section{scroll-margin-top:120px}.policy-section-head{padding:18px 16px;gap:8px}.policy-section h2{font-size:18px;gap:9px}.section-number{width:29px;height:29px}.policy-row{padding:18px 16px}.source{font-size:11px;padding:5px}.policy-row p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.policy-toc a{transition:none}}
@media print{.site-nav,.policy-sidebar,.policy-links,.source,#cmt-bar{display:none!important}.policy-page{background:#fff!important;color:#111;padding:0}.policy-shell{margin:0;padding:0}.policy-layout{display:block}.policy-hero,.policy-section,.policy-section-head{background:#fff;border-color:#ccc;box-shadow:none}.policy-row h3,.policy-row p{color:#222}.policy-row small{color:#555}.policy-row{break-inside:avoid}.policy-section{overflow:visible}.policy-row .rflag{color:#754100}.policy-hero::after{display:none}}
