/* Penguin legal documents: the landing palette, with a quiet reading surface. */
:root{--paper:#FDF6D5;--ink:#201E18;--accent:#9579D6;--coral:#FC9462;--teal:#1C3C45;--soft:#eee5fa;--muted:#4c493b;--sans:system-ui,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.8 var(--sans);-webkit-font-smoothing:antialiased}
:lang(ko){word-break:keep-all}
a{color:inherit;text-underline-offset:4px;overflow-wrap:anywhere}
a:hover{text-decoration-thickness:2px}
a,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.family :focus-visible{outline-color:var(--paper)}
[tabindex="-1"]:focus{outline:3px solid var(--teal);outline-offset:5px}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:800;line-height:1.35;letter-spacing:-.025em;overflow-wrap:anywhere;text-wrap:balance}
h1{font-size:clamp(30px,3.2vw,44px);margin:16px 0 20px}
h2{font-size:clamp(22px,2vw,28px)}
h3{font-size:20px;margin:26px 0 12px}
p,li,dt,dd,th,td,caption{overflow-wrap:anywhere}
.wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}
.skip{position:absolute;top:8px;left:16px;transform:translateY(-180%);z-index:50}
.skip:focus{transform:none}
.top{border-bottom:2px solid var(--ink)}
.top-row{display:flex;align-items:center;gap:24px;min-height:88px;padding-block:12px}
.brand{display:flex;align-items:center;gap:10px;min-height:44px;text-decoration:none;font-size:16px;font-weight:800;flex:none}
.brand img{object-fit:contain}
.lang{display:flex;gap:4px;align-items:center;margin-left:auto}
.lang a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;font-size:13px;line-height:1.4;text-decoration:none;border:1px solid transparent;border-radius:3px;white-space:nowrap}
.lang a[aria-current]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 18px;background:var(--accent);color:var(--ink);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);font-weight:800;font-size:15px;line-height:1.5;text-decoration:none;text-align:center;max-width:100%}
.button:hover{background:var(--coral)}
.header-store{font-size:13px;padding:10px 12px;max-width:210px}
.document-nav{display:flex;flex-wrap:wrap;gap:6px 24px;padding-block:18px;border-bottom:1px solid var(--ink)}
.document-nav a{display:flex;align-items:center;min-height:44px;padding:7px 0;font-size:14px;font-weight:700;text-decoration:none}
.document-nav a[aria-current]{text-decoration:underline;text-decoration-thickness:3px;text-decoration-color:var(--teal)}
.document-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:54px;align-items:start;margin-top:40px}
.toc{position:sticky;top:24px;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);background:var(--paper);min-width:0;font-size:14px;line-height:1.55;z-index:10}
.toc summary{min-height:48px;padding:12px 16px;background:var(--soft);font-weight:800;cursor:pointer}
.toc-list{max-height:calc(100vh - 190px);max-height:calc(100dvh - 190px);overflow-y:auto;overscroll-behavior:contain;padding:10px}
.toc ol{list-style:none;margin:0;padding:0}
.toc a{display:flex;align-items:center;min-height:44px;padding:10px;text-decoration:none}
.toc a:hover{background:var(--soft);text-decoration:underline}
.toc .toc-top{padding:12px 16px;border-top:1px solid var(--ink);font-weight:700}
main{min-width:0;max-width:790px}
.document-head{padding:0 0 32px;border-bottom:3px solid var(--ink)}
.eyebrow{color:var(--teal);font-weight:800;font-size:13px;letter-spacing:.09em}
.eyebrow::after{content:"";display:block;width:40px;border-bottom:5px solid var(--coral);margin-top:10px}
.date-row{display:flex;align-items:center;flex-wrap:wrap;gap:4px 24px;margin-bottom:18px;font-size:14px;color:var(--muted)}
.business-jump a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:var(--teal)}
.intro{font-size:18px;line-height:1.85}
.revision{background:var(--soft);border-left:4px solid var(--teal);padding:16px;margin-bottom:20px}
.document section{padding-block:32px;border-bottom:1px solid #b8af8d;scroll-margin-top:24px}
.document section>p,.document section>ul,.document section>ol{margin-top:18px}
.document li+li{margin-top:10px}
.document ul,.document ol{padding-left:26px}
.document a{display:inline-block;min-height:44px;min-width:44px;padding-block:7px}
.company{margin:28px 0 0;border:2px solid var(--ink);background:#fffbed;padding:8px 24px;scroll-margin-top:24px}
.company>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:12px;padding-block:16px}
.company>div+div{border-top:1px solid #b8af8d}
.company dt{font-size:14px;font-weight:700;color:var(--muted)}
.company dd{margin:0;min-width:0}
.back{margin-top:32px}
.back .button{padding:12px 18px}
.lic .meta{display:flex;flex-wrap:wrap;gap:6px 20px;font-size:14px;color:var(--muted)}
.lic .meta span{max-width:100%}
.license-text{border:1px solid var(--ink);margin-top:20px;background:#fffbed}
.license-text summary{cursor:pointer;min-height:48px;padding:12px 16px;background:var(--soft);font-weight:700;font-size:15px}
pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;max-width:100%;min-width:0;margin:0;padding:22px;font:400 14px/1.85 ui-monospace,"SF Mono",Menlo,Consolas,monospace;tab-size:4}
table{width:100%;table-layout:fixed;border-collapse:collapse;margin-top:22px;font-size:15px}
caption{text-align:left;font-weight:700;padding-bottom:12px}
th,td{border:1px solid #b8af8d;padding:14px;text-align:left;vertical-align:top}
th{width:38%;background:var(--soft)}
.foot{margin-top:64px;border-top:2px solid var(--ink);padding-top:28px}
.footer-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;font-size:13px}
.footer-links nav:not(.lang){display:flex;flex-wrap:wrap;gap:8px 20px}
.footer-links a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding-block:8px}
.fine{font-size:12px;line-height:1.9;margin:24px 0 32px;color:var(--muted)}
.family{background:var(--ink);color:var(--paper);padding:24px 0}
.family .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;font-size:12px}
.family span{width:100%;font-weight:700}
.family a{display:flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid #fdf6d54d;border-radius:3px;text-decoration:none}
.family a[aria-current]{background:var(--paper);color:var(--ink)}
@media(max-width:960px){
  html{scroll-padding-top:92px}
  .document-layout{display:block;margin-top:24px}
  .toc{top:8px;display:flex;align-items:flex-start;margin-bottom:32px}
  .toc details{flex:1;min-width:0}
  .toc .toc-top{border-top:0;border-left:1px solid var(--ink);min-height:48px;max-width:42%;font-size:13px}
  .toc-list{max-height:50vh;max-height:50dvh}
  main{max-width:100%}
  .document section,.company{scroll-margin-top:92px}
}
@media(max-width:600px){
  body{font-size:16px}
  .wrap{width:calc(100% - 32px)}
  .top-row{flex-wrap:wrap;gap:8px 14px;padding-block:12px}
  .brand{font-size:14px;flex:1}
  .brand img{width:30px;height:30px}
  .top-row .lang{order:3;justify-content:space-between;flex-basis:100%;margin:2px 0 0}
  .top-row .lang a{flex:1}
  .header-store{max-width:128px;font-size:11px;padding:8px;flex:0 1 128px}
  .document-nav{gap:4px 20px;padding-block:12px}
  .document-nav a{font-size:13px}
  .document-layout{margin-top:20px}
  .toc{margin-bottom:28px}
  .intro{font-size:17px}
  .document section{padding-block:28px}
  .company{padding:4px 18px}
  .company>div{grid-template-columns:1fr;gap:4px}
  .company dt{font-size:13px}
  pre{padding:16px;font-size:13px}
  .footer-links .lang{width:100%;margin-left:0;justify-content:space-between}
}
@media print{
  .top,.document-nav,.toc,.foot,.skip,.business-jump,.back{display:none}
  .document-layout{display:block;width:100%;margin:0}
  main{max-width:none}
  body{background:white;color:#201E18;font-size:11pt}
  .license-text::details-content{display:block}
  .document section{break-inside:auto}
}
