@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,700;1,700&display=swap');

:root{
  --dp-text:#1f1f1f;
  --dp-muted:#555;
  --dp-border:#e9e9e9;
  --dp-bg:#ffffff;
  --dp-reading-size:16px;
}

.dp-card{
  position:relative;
  font-family:Roboto, Arial, sans-serif;
  color:var(--dp-text);
  background:var(--dp-bg);
  border:1px solid var(--dp-border);
  border-radius:18px;
  padding:18px;
  box-shadow:0 6px 18px rgba(0,0,0,0.06);
  max-width:560px;
  margin:0 auto;
}

.dp-loading{ font-size:14px; color:var(--dp-muted); }

.dp-brandblock{ padding-right:78px; }

.dp-brandtitle{
  font-family:'Cormorant Garamond', serif;
  font-weight:700;
  font-style:italic;
  font-size:34px;
  line-height:1.05;
  letter-spacing:0.02em;
  color:#222;
  margin:0;
}

.dp-subtitle{
  font-family:Roboto, Arial, sans-serif;
  font-weight:700;
  font-size:13px;
  letter-spacing:0.18em;
  text-transform:lowercase;
  color:#666;
  margin:6px 0 8px;
}

.dp-divider{
  height:1px;
  background:var(--dp-border);
  width:100%;
  margin:0 0 12px;
}

.dp-texttab{
  position:absolute;
  top:14px;
  right:14px;
  display:flex;
  gap:6px;
  padding:8px;
  border:1px solid var(--dp-border);
  border-radius:14px;
  background:#fafafa;
}

.dp-tabbtn{
  border:1px solid var(--dp-border);
  background:#fff;
  border-radius:10px;
  padding:8px 10px;
  font-weight:900;
  font-size:13px;
  line-height:1;
  cursor:pointer;
  color:var(--dp-text);
}

.dp-tabbtn:hover{ box-shadow:0 4px 12px rgba(0,0,0,0.06); }

.dp-tabbtn-secondary{ background:#f1f1f1; }

.dp-title{
  font-family:Roboto, Arial, sans-serif;
  font-weight:800;
  font-size:20px;
  line-height:1.25;
  margin:4px 0 12px;
  color:var(--dp-text);
}

.dp-readingwrap{
  border:1px solid var(--dp-border);
  border-radius:16px;
  background:#fafafa;
  padding:14px;
}

.dp-content{
  font-size:var(--dp-reading-size);
  line-height:1.65;
  color:var(--dp-text);
  word-wrap:break-word;
}

.dp-content p{ margin:0 0 12px; }
.dp-content p:last-child{ margin-bottom:0; }
.dp-content ul, .dp-content ol{ margin:0 0 12px 22px; }
.dp-content li{ margin:6px 0; }
.dp-content blockquote{
  margin:12px 0;
  padding:10px 14px;
  border-left:4px solid var(--dp-border);
  background:#fff;
  border-radius:12px;
}
.dp-content img{ max-width:100%; height:auto; border-radius:12px; }
.dp-content a{ color:var(--dp-text); text-decoration:underline; }

.dp-pass{
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid var(--dp-border);
}

.dp-pass-label{
  font-size:12px;
  letter-spacing:0.08em;
  font-weight:900;
  color:var(--dp-muted);
  margin-bottom:10px;
}

.dp-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}

.dp-btn{
  padding:12px 14px;
  border-radius:12px;
  border:1px solid var(--dp-border);
  background:#fff;
  color:var(--dp-text);
  text-decoration:none;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
}

.dp-btn:hover{ box-shadow:0 4px 12px rgba(0,0,0,0.06); }

.dp-btn-secondary{ background:#f7f7f7; }

/* Instagram/image-share button, styled like a slightly-accented dp-btn */
.dp-btn-ig{
  background:#fff5f0;
  border-color:#f0d8c8;
  display:inline-flex;
  align-items:center;
  gap:7px;
}

.dp-btn-icon{
  width:15px;
  height:15px;
  display:block;
  flex:0 0 auto;
}

.dp-copied{ font-size:13px; color:var(--dp-muted); font-weight:800; }

.dp-error{
  margin-top:10px;
  color:#7a1b1b;
  font-size:14px;
  font-weight:800;
}

@media (max-width:520px){
  .dp-brandblock{ padding-right:0; }

  .dp-texttab{
    position:static;
    margin:8px 0 6px;
    justify-content:flex-end;
  }

  .dp-brandtitle{ font-size:30px; }
}