/* 갤럭시 퀵쉐어 체험 이벤트 — 개인정보 공개 페이지(1029). 체험 앱 app.css의 개인정보 팝업 규칙을 privacy_pages.py가 그대로 뽑아 씀 */
@font-face{
    font-family:'SamsungSSHeadKR';
    src:url('font/SamsungSSHeadKR-Regular.woff2') format('woff2');
    font-weight:400 499; font-style:normal; font-display:swap;
  }
@font-face{
    font-family:'SamsungSSHeadKR';
    src:url('font/SamsungSSHeadKR-Medium.woff2') format('woff2');
    font-weight:500 650; font-style:normal; font-display:swap;
  }
@font-face{
    font-family:'SamsungSSHeadKR';
    src:url('font/SamsungSSHeadKR-Bold.woff2') format('woff2');
    font-weight:651 900; font-style:normal; font-display:swap;
  }
:root{
    --studio-1:#e9eaee; --studio-2:#f5f6f8;
    --ink:#16171a; --ink-soft:#5b5e66; --ink-faint:#9a9da6;
    --line:#d9dbe1; --card:#ffffff;
    
    --bg:#050506; --s1:#101012; --s2:#17181b; --s3:#202127;
    --fg:#ffffff; --fg-2:#b7b9c0; --fg-3:#7c7e87; --fg-4:#4a4c54;
    --brd:#2b2c33; --brd-2:#3a3b44;
    --accent:#ffffff; --danger:#ff5b5b;
  }
*{ margin:0; padding:0; box-sizing:border-box; }
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:.5em; cursor:pointer;
    border:1px solid transparent; font-weight:600; font-size:.95em; padding:.85em 1em; border-radius:999px;
    transition:.16s; width:100%; white-space:nowrap; }
.btn-primary{ background:#fff; color:#000; }
.btn-primary:hover{ background:#e3e3e3; }
.form-body, .done-body, .modal{ word-break:keep-all; }
.mdim{ position:absolute; inset:0; background:rgba(0,0,0,.6); backdrop-filter:blur(3px); z-index:40;
    display:none; align-items:center; justify-content:center; padding:1.4em; }
.mdim.show{ display:flex; }
.modal{ background:#fff; color:var(--ink); border:1px solid var(--line); border-radius:1.1em; width:100%; max-width:22em;
    padding:1.6em; max-height:88%; overflow-y:auto; }
.modal h3{ font-size:1.05em; font-weight:800; letter-spacing:-.02em; margin-bottom:.6em; }
.modal p{ font-size:.8em; color:var(--ink-soft); }
.modal b{ color:var(--ink); }
.modal .btn-primary{ background:var(--ink); color:#fff; }
.modal .btn-primary:hover{ background:#33353b; }
.modal .btn-outline{ color:var(--ink); border-color:var(--line); }
.modal .btn-outline:hover{ background:var(--studio-2); }
.modal-doc{ max-width:34em; display:flex; flex-direction:column; overflow:hidden; padding:1.4em 1.4em 1.2em; }
.pv-tabs{ display:grid; grid-template-columns:1fr 1fr; gap:.3em; background:var(--studio-2);
    border:1px solid var(--line); border-radius:.75em; padding:.28em; margin:.2em 0 .9em; flex:none; }
.pv-tab{ padding:.6em .4em; border:none; background:none; border-radius:.55em; font-size:.78em;
    font-weight:800; color:var(--ink-faint); cursor:pointer; font-family:inherit; transition:.15s; }
.pv-tab.on{ background:#fff; color:var(--ink); box-shadow:0 1px 4px rgba(0,0,0,.12); }
.pv-body{ flex:1; min-height:0; overflow-y:auto; margin-right:-1.05em; padding-right:.65em;
    margin-bottom:1.1em; overscroll-behavior:contain; }
.pv-body::-webkit-scrollbar, .pv-scroll::-webkit-scrollbar{ width:.38em; height:.38em; }
.pv-body::-webkit-scrollbar-thumb, .pv-scroll::-webkit-scrollbar-thumb{
    background:var(--line); border-radius:999px; }
.pv-body::-webkit-scrollbar-track, .pv-scroll::-webkit-scrollbar-track{ background:transparent; }
.pv-pane{ display:none; }
.pv-pane.active{ display:block; }
.pv-pane h4{ font-size:.8em; font-weight:800; letter-spacing:-.01em; margin:1.5em 0 .5em;
    padding-top:1em; border-top:1px solid var(--studio-1); }
.pv-pane h4:first-of-type{ margin-top:1.1em; }
.pv-pane p, .pv-pane li{ font-size:.7em; color:var(--ink-soft); line-height:1.65; margin-bottom:.55em; }
.pv-pane ul{ padding-left:1.5em; margin-bottom:.8em; }
.pv-pane li{ margin-bottom:.3em; }
.pv-doc-title{ font-size:.88em !important; font-weight:800; color:var(--ink) !important; margin-bottom:.25em !important; }
.pv-meta{ font-size:.64em !important; color:var(--ink-faint) !important; margin-bottom:1em !important; }
.pv-scroll{ overflow-x:auto; padding-bottom:.6em; margin-bottom:.9em; }
.pv-scroll .ptable{ min-width:36em; margin:.8em 0 0; }
.ptable.cols{ table-layout:fixed; }
.ptable.cols th{ width:auto; white-space:nowrap; }
.ptable{ width:100%; border-collapse:separate; border-spacing:0; font-size:.72em; margin:.8em 0 1em;
    border:1px solid var(--line); border-radius:.7em; overflow:hidden; }
.ptable th, .ptable td{ padding:.7em .8em; text-align:left; vertical-align:top;
    border-bottom:1px solid var(--studio-1); }
.ptable tr:last-child th, .ptable tr:last-child td{ border-bottom:none; }
.ptable th{ background:var(--studio-2); font-weight:700; width:31%; white-space:nowrap; color:var(--ink); }
.ptable td{ color:var(--ink-soft); }
.ptable th b{ font-weight:inherit; }
.ptable td b{ color:var(--ink); font-weight:700; }
.pv-sec em{ font-style:normal; width:1.7em; height:1.7em; border-radius:50%; background:var(--ink); color:#fff;
    font-size:.72em; font-weight:800; display:inline-flex; align-items:center; justify-content:center; vertical-align:middle;
    margin-right:.55em; position:relative; top:-.08em; }
.pv-sec span{ vertical-align:middle; word-break:keep-all; }
.pv-sec i{ display:inline-flex; gap:.15em; vertical-align:middle; margin-left:15px; }
.pv-sec .pv-tail{ white-space:nowrap; }
.pv-ic{ width:1.9em; height:1.9em; object-fit:contain; }
.pv-labels{ display:grid; grid-template-columns:1fr 1fr; gap:.45em; margin:.2em 0 .7em; }
.pv-lb{ display:flex; gap:.55em; align-items:flex-start; padding:.7em .65em; border:1px solid var(--line); border-radius:.8em; background:#fff; }
.pv-lb.wide{ grid-column:1 / -1; }
.pv-lb-ic{ width:2.5em; height:2.5em; object-fit:contain; flex:none; }
.pv-lb > div{ min-width:0; }
.pv-lb b{ display:block; font-size:.66em; font-weight:800; color:var(--ink); line-height:1.35; margin:.15em 0 .25em; word-break:keep-all; }
.pv-lb span{ display:block; font-size:.62em; color:var(--ink-soft); line-height:1.5; word-break:keep-all; overflow-wrap:anywhere; }
.pv-pane p.pv-sub{ font-weight:700; color:var(--ink); margin:.9em 0 .35em; }
.pv-pane p.pv-note{ font-size:.64em; color:var(--ink-faint); }
.pv-pane p.pv-lead{ color:var(--ink); }
.pv-pane ul.pv-dash{ list-style:none; padding-left:1.05em; }
.pv-pane ul.pv-dash li::before{ content:'–'; display:inline-block; width:1.05em; margin-left:-1.05em; color:var(--ink-faint); }
.pv-pane p.pv-confirm{ background:var(--studio-2); border-radius:.65em; padding:.75em .85em; font-weight:700; color:var(--ink); margin-top:.4em; }
.pv-pane p.pv-lg-h{ font-size:.66em; font-weight:800; color:var(--ink); margin:.9em 0 .4em; }
.pv-legend{ display:grid; grid-template-columns:repeat(auto-fill, minmax(4.3em, 1fr)); gap:.7em .35em; margin:0 0 .6em;
    padding:.8em .5em; border:1px solid var(--studio-1); border-radius:.8em; }
.pv-legend figure{ margin:0; text-align:center; }
.pv-lg-ic{ display:block; width:2.3em; height:2.3em; object-fit:contain; margin:0 auto .3em; }
.pv-legend figcaption{ font-size:.54em; color:var(--ink-soft); line-height:1.35; word-break:keep-all; }

/* ---- 단독 페이지 틀 — 앱의 기기 화면(#screen) 대신 브라우저 화면 전체 ---- */
html,body{ height:100%; }
body{ font-family:'SamsungSSHeadKR','Pretendard',-apple-system,BlinkMacSystemFont,system-ui,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;
  background:#fff; color:var(--ink); -webkit-font-smoothing:antialiased; }
.pp-screen{ position:fixed; inset:0; overflow:hidden; background:#fff; line-height:1.5;
  font-size:clamp(9px, max(3.7vw, 1.9vh), 18px); }   /* 앱 fitDevice의 화면 em 계산식 */
.pp-screen .mdim{ display:flex; }
a.pv-tab{ display:block; text-align:center; text-decoration:none; }
.pp-noback #btn-privacy-ok{ display:none; }
.pp-noback .pv-body{ margin-bottom:0; }
