/*
Theme Name: QuotesDose
Theme URI: https://quotesdose.com/
Description: A daily-dose pharmacy of quotes. Warm paper background, serif quote slips with a coloured dose line, capsule-shaped vibe chips, a dose-of-the-day dispenser on the home page that changes with the date, and a quote card maker.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: quotesdose
*/

/* Fonts: Literata, Inter Tight and Noto families (SIL OFL), served locally. */
@font-face{font-family:"Literata";src:url(assets/fonts/literata-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Literata";src:url(assets/fonts/literata-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Literata";src:url(assets/fonts/literata-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Literata";src:url(assets/fonts/literata-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Inter Tight";src:url(assets/fonts/inter-tight-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Inter Tight";src:url(assets/fonts/inter-tight-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Inter Tight";src:url(assets/fonts/inter-tight-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Noto Sans Devanagari";src:url(assets/fonts/noto-sans-devanagari-devanagari-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Noto Sans Devanagari";src:url(assets/fonts/noto-sans-devanagari-devanagari-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Noto Sans Gurmukhi";src:url(assets/fonts/noto-sans-gurmukhi-gurmukhi-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
:root{
	--bg:#f7f4ec;--panel:#fffefb;--card:#fffefb;--edge:#e5dfcf;--edge2:#d3cab2;
	--ink:#1e2520;--ink2:#4c5449;--faint:#8a8d7e;
	--card-ink:#1e2520;--card-ink2:#5d6355;
	--hot:#0f766e;--amber:#b45309;--rose:#9d2449;--navy:#44557d;--st:#0f766e;
	--indic:"Noto Sans Devanagari","Noto Sans Gurmukhi";
	--disp:"Literata",Georgia,serif;
	--ui:"Inter Tight",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
	--shadow:0 1px 2px rgba(30,37,32,.07),0 14px 30px -20px rgba(30,37,32,.3);
	--r:12px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:86px;overflow-x:clip}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16.5px/1.65 var(--ui);overflow-x:clip}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;background:
	radial-gradient(1.5px 1.5px at 14% 22%,rgba(15,118,110,.28),transparent 60%),
	radial-gradient(1.5px 1.5px at 78% 12%,rgba(180,83,9,.25),transparent 60%),
	radial-gradient(1.5px 1.5px at 42% 74%,rgba(157,36,73,.2),transparent 60%),
	radial-gradient(1.5px 1.5px at 90% 58%,rgba(68,85,125,.25),transparent 60%)}
img{max-width:100%;height:auto}
a{color:var(--hot)}
h1,h2,h3{font-family:var(--disp);letter-spacing:-.2px}
[lang="hi"],[lang="mr"],[lang="sa"]{font-family:"Noto Sans Devanagari",var(--ui)}
[lang="pa"]{font-family:"Noto Sans Gurmukhi",var(--ui)}

/* ------------------------------------------------------------------ header */
.qd-skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fffefb;padding:8px 14px;border-radius:10px;z-index:99}
.qd-skip:focus{left:8px}
.qd-wrap{max-width:1120px;margin:0 auto;padding:0 18px}
.qd-top{position:sticky;top:0;z-index:40;background:rgba(255,254,251,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--edge)}
.qd-top-row{display:flex;align-items:center;gap:16px;min-height:62px}
.qd-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:none}
.qd-logo span{font:600 21px/1 var(--disp);letter-spacing:-.4px}
.qd-logo b{font-weight:700;color:var(--hot)}
.qd-nav{display:flex;gap:2px;margin-left:auto}
.qd-nav a{color:var(--ink2);text-decoration:none;font:600 14px/1 var(--ui);padding:10px 12px;border-radius:999px}
.qd-nav a:hover{background:var(--bg);color:var(--hot)}
.qd-menubtn{display:flex;align-items:center;gap:8px;border:0;background:var(--hot);color:#fffefb;font:700 13.5px/1 var(--ui);border-radius:999px;padding:10px 16px;cursor:pointer}
.qd-menubtn-bars{width:15px;height:2px;background:currentColor;position:relative;display:inline-block}
.qd-menubtn-bars::before,.qd-menubtn-bars::after{content:"";position:absolute;left:0;right:0;height:2px;background:currentColor}
.qd-menubtn-bars::before{top:-5px}.qd-menubtn-bars::after{top:5px}
.qd-drawer{border-top:1px solid var(--edge);background:var(--panel);box-shadow:var(--shadow)}
.qd-drawer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:18px;padding:20px 18px 24px}
.qd-drawer-h{margin:0 0 7px;font:700 11.5px/1 var(--ui);letter-spacing:2px;text-transform:uppercase;color:var(--st)}
.qd-drawer-col ul{list-style:none;margin:0;padding:0}
.qd-drawer-col a{display:block;color:var(--ink2);text-decoration:none;font:600 14.5px/1.3 var(--ui);padding:6px 0;border-bottom:1px dotted var(--edge)}
.qd-drawer-col a:hover{color:var(--st)}

/* -------------------------------------------------------------------- hero */
.qd-hero{padding:46px 0 30px}
.qd-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:40px;align-items:start}
.qd-pill{display:inline-flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--edge2);color:var(--amber);border-radius:999px;padding:8px 14px;font:700 12.5px/1 var(--ui);letter-spacing:1px;text-transform:uppercase;margin:0 0 16px}
.qd-pill::before{content:"";width:16px;height:9px;border-radius:999px;background:linear-gradient(90deg,var(--hot) 50%,#fffefb 50%);border:1.5px solid var(--hot)}
.qd-hero h1{margin:0 0 14px;font:700 clamp(30px,4.4vw,46px)/1.12 var(--disp)}
.qd-hero-lede{margin:0 0 18px;font-size:17.5px;color:var(--ink2);max-width:52ch}
.qd-tryvibes{display:flex;flex-wrap:wrap;gap:8px}
.qd-tryvibes button{border:1px solid var(--edge2);background:var(--panel);color:var(--ink2);font:600 13px/1 var(--ui);border-radius:999px;padding:8px 14px;cursor:pointer}
.qd-tryvibes button[aria-pressed=true]{background:var(--hot);border-color:var(--hot);color:#fffefb}

/* dose of the day */
.qd-phone{position:relative}
.qd-phone-shell{position:relative;background:var(--panel);border:1px solid var(--edge);border-radius:18px;box-shadow:var(--shadow);padding:22px 24px 16px;text-align:center}
.qd-phone-shell::before{content:"";position:absolute;left:24px;right:24px;top:0;height:5px;border-radius:0 0 6px 6px;background:linear-gradient(90deg,var(--hot),var(--amber),var(--rose))}
.qd-phone-pic{width:72px;height:72px;margin:0 auto 10px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#d8efe8,#8fc6ba);position:relative}
.qd-phone-pic span{position:absolute;inset:18px;border-radius:50%;background:#fffefb;box-shadow:inset 0 0 0 3px var(--hot)}
.qd-phone-user{margin:0 0 8px;font:700 10.5px/1 var(--ui);letter-spacing:2.6px;text-transform:uppercase;color:var(--faint)}
.qd-phone-caption{margin:0 auto 12px;font:400 italic 20px/1.55 var(--disp);color:var(--card-ink);min-height:92px;max-width:34ch;white-space:pre-line}
.qd-phone-use{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0;border-top:1px dotted var(--edge2);padding-top:10px;font:600 13px/1.3 var(--ui);color:var(--faint)}
.qd-phone-use a{color:var(--amber);text-decoration:none;font-weight:700}
.qd-phone-acts{display:flex;gap:9px;margin-top:14px;justify-content:center}

/* ----------------------------------------------------------------- buttons */
.qd-btn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--edge2);background:var(--panel);color:var(--ink);font:700 14px/1 var(--ui);border-radius:999px;padding:10px 17px;cursor:pointer;text-decoration:none}
.qd-btn:hover{border-color:var(--hot);color:var(--hot)}
.qd-btn--hot{background:var(--hot);border-color:var(--hot);color:#fffefb}
.qd-btn--hot:hover{background:#0b5d57;border-color:#0b5d57;color:#fffefb}

/* ----------------------------------------------------------------- streams */
.qd-stream{padding:26px 0 8px}
.qd-stream-h{margin:0 0 16px;font:700 24px/1.15 var(--disp);display:flex;align-items:center;gap:11px}
.qd-stream-h::before{content:"";width:20px;height:11px;border-radius:999px;background:linear-gradient(90deg,var(--st) 50%,#fffefb 50%);border:2px solid var(--st)}
.qd-tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:15px}
.qd-tile a{display:flex;flex-direction:column;gap:10px;height:100%;background:var(--panel);border:1px solid var(--edge);border-radius:var(--r);padding:13px;text-decoration:none;color:var(--card-ink);box-shadow:var(--shadow);transition:transform .14s ease,border-color .14s ease}
.qd-tile a:hover{transform:translateY(-4px);border-color:var(--st)}
.qd-tile-bubble{position:relative;border-radius:8px;padding:16px 14px 14px;font:400 italic 16px/1.55 var(--disp);color:var(--card-ink);background:color-mix(in srgb,var(--st) 7%,#fffefb);border-top:3px solid var(--st);white-space:pre-line}
.qd-tile-meta{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.qd-tile-meta b{font:700 15.5px/1.3 var(--ui);color:var(--card-ink)}
.qd-tile-meta small{color:var(--card-ink2);font-size:12px;flex:none}

/* ------------------------------------------------------------- page header */
.qd-pagehead{padding:40px 0 10px;border-bottom:1px solid var(--edge);background:linear-gradient(180deg,color-mix(in srgb,var(--st) 7%,var(--bg)) 0%,var(--bg) 100%)}
.qd-trail{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0 0 12px;padding:0;font:600 12.5px/1 var(--ui);color:var(--faint)}
.qd-trail a{color:var(--faint);text-decoration:none}
.qd-trail a:hover{color:var(--st)}
.qd-trail li+li::before{content:"\203A";margin-right:6px}
.qd-pagehead h1{margin:0 0 10px;font:700 clamp(27px,3.8vw,40px)/1.14 var(--disp)}
.qd-pagehead-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.qd-pagehead-meta span{background:var(--panel);border:1px solid var(--edge2);border-radius:999px;color:var(--ink2);font:700 12px/1 var(--ui);letter-spacing:.8px;text-transform:uppercase;padding:7px 12px}

/* ---------------------------------------------------------- bar and chips */
.qd-opening{max-width:72ch}
.qd-opening p{margin:0 0 12px;color:var(--ink2)}
.qd-bar{position:sticky;top:62px;z-index:30;display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:rgba(255,254,251,.94);backdrop-filter:blur(8px);border:1px solid var(--edge);border-radius:999px;box-shadow:var(--shadow);padding:9px 14px;margin:20px 0}
.qd-view{display:inline-flex;border:1px solid var(--edge2);border-radius:999px;overflow:hidden;flex:none}
.qd-view button{border:0;background:transparent;color:var(--ink2);font:700 12.5px/1 var(--ui);padding:8px 13px;cursor:pointer}
.qd-view button[aria-pressed=true]{background:var(--ink);color:#fffefb}
body[data-qd-view=roman] .qd-row-roman{display:block}
body[data-qd-view=roman] .qd-row-text:has(+ .qd-row-roman){display:none}
.qd-row-roman{display:none}
.qd-vibes{display:flex;flex-wrap:wrap;gap:6px}
.qd-chip{border:1px solid var(--edge2);background:transparent;color:var(--ink2);font:600 12.5px/1 var(--ui);border-radius:999px;padding:7px 12px;cursor:pointer}
.qd-chip span{opacity:.6}
.qd-chip[aria-pressed=true]{background:var(--hot);border-color:var(--hot);color:#fffefb}
.qd-jumps{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 6px}
.qd-jumps a{background:var(--panel);border:1px solid var(--edge);border-radius:999px;color:var(--ink2);text-decoration:none;font:600 13px/1 var(--ui);padding:8px 13px}
.qd-jumps a:hover{border-color:var(--st);color:var(--st)}

/* -------------------------------------------------------------------- rows */
.qd-part{padding:8px 0 4px}
.qd-part h2{margin:18px 0 6px;font:700 22px/1.2 var(--disp)}
.qd-part>p{margin:0 0 12px;color:var(--ink2);max-width:72ch}
.qd-rows{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:13px;margin:14px 0 8px}
.qd-row{position:relative;display:flex;flex-direction:column;gap:9px;background:var(--panel);border:1px solid var(--edge);border-radius:var(--r);box-shadow:var(--shadow);padding:18px 18px 13px;text-align:left}
.qd-row::before{content:"\201C";position:absolute;left:14px;top:2px;font:700 40px/1 var(--disp);color:var(--st);opacity:.35}
.qd-row[hidden]{display:none}
.qd-row-text,.qd-row-roman{margin:0;padding-left:16px;font:400 italic 18px/1.6 var(--disp);color:var(--card-ink);white-space:pre-line;overflow-wrap:break-word}
.qd-row-by{margin:0;padding-left:16px;font:600 13px/1.3 var(--ui);color:var(--amber)}
.qd-row-by::before{content:"\2014\00a0"}
.qd-row-acts{display:flex;gap:7px;order:3;padding-left:16px}
.qd-do{border:1px solid var(--edge2);background:transparent;color:var(--ink);font:700 12.5px/1 var(--ui);border-radius:999px;padding:7px 14px;cursor:pointer}
.qd-do:hover{border-color:var(--hot);color:var(--hot)}
.qd-do--card{color:var(--amber)}
.qd-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font:600 12px/1 var(--ui);order:2;padding-left:16px}
.qd-vibe{background:color-mix(in srgb,var(--st) 9%,#fffefb);border:1px solid color-mix(in srgb,var(--st) 30%,#fffefb);color:var(--st);border-radius:999px;padding:5px 10px;letter-spacing:.7px;text-transform:uppercase;font-weight:700;font-size:10.5px}
.qd-use{color:var(--faint)}
.qd-tags{display:none}
.qd-tool{display:none}

/* ------------------------------------------------------------ prose, guide */
.qd-read{display:grid;grid-template-columns:minmax(0,1fr);gap:26px;padding:26px 0 10px}
.qd-read--narrow{max-width:820px}
.qd-prose{max-width:72ch}
.qd-prose p{margin:0 0 13px;color:var(--ink2)}
.qd-prose h2{margin:26px 0 10px;font:700 23px/1.2 var(--disp);color:var(--ink)}
.qd-prose h3{margin:18px 0 8px;font:700 18px/1.25 var(--disp)}
.qd-prose ul,.qd-prose ol{margin:0 0 13px;padding-left:22px;color:var(--ink2)}
.qd-prose li{margin:0 0 6px}
.qd-guide{border-top:1px solid var(--edge);margin-top:18px;padding-top:6px;max-width:72ch}
.qd-guide h2{font:700 23px/1.2 var(--disp)}
.qd-guide p,.qd-guide li{color:var(--ink2)}
.qd-guide ul,.qd-guide ol{padding-left:22px}
.qd-table{overflow-x:auto;margin:0 0 14px}
.qd-table table{border-collapse:collapse;width:100%;background:var(--panel);border:1px solid var(--edge);border-radius:10px;font-size:15px}
.qd-table th,.qd-table td{text-align:left;border-bottom:1px solid var(--edge);padding:10px 13px;color:var(--ink2)}
.qd-table th{font:700 12.5px/1.2 var(--ui);letter-spacing:.8px;text-transform:uppercase;color:var(--ink)}
.qd-faq{max-width:72ch;padding:4px 0 10px}
.qd-faq h2{font:700 23px/1.2 var(--disp)}
.qd-faq details{background:var(--panel);border:1px solid var(--edge);border-radius:10px;margin:0 0 9px;box-shadow:var(--shadow)}
.qd-faq summary{cursor:pointer;font:700 15.5px/1.35 var(--ui);padding:13px 16px;color:var(--ink)}
.qd-faq-a{padding:0 16px 13px;color:var(--ink2)}
.qd-faq-a p{margin:0 0 8px}

/* ------------------------------------------------------------ photo cards */
.qd-cards{padding:8px 0 20px}
.qd-cards-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 12px}
.qd-cards-head h2{margin:0;font:700 23px/1.2 var(--disp)}
.qd-cards-head p{margin:0;color:var(--faint);font-size:14px}
.qd-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:13px;overflow:clip;padding:2px}
.qd-cards-grid figure{margin:0;background:var(--panel);border:1px solid var(--edge);border-radius:12px;padding:7px;box-shadow:var(--shadow)}
.qd-cards-grid img{display:block;width:100%;border-radius:8px}
.qd-cards-grid figcaption{font:600 12px/1.4 var(--ui);color:var(--faint);padding:7px 3px 1px}

/* ---------------------------------------------------------------- related */
.qd-related{padding:6px 0 26px}
.qd-related h2{font:700 23px/1.2 var(--disp)}
.qd-related ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:9px}
.qd-related a{display:inline-block;background:var(--panel);border:1px solid var(--edge2);border-radius:999px;color:var(--ink2);text-decoration:none;font:700 13.5px/1 var(--ui);padding:9px 15px}
.qd-related a:hover{border-color:var(--st);color:var(--st)}

/* ------------------------------------------------------- posts, blog lists */
.qd-latest{padding:10px 0 30px}
.qd-latest h2{font:700 23px/1.2 var(--disp)}
.qd-latest ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.qd-latest a{display:flex;justify-content:space-between;gap:14px;background:var(--panel);border:1px solid var(--edge);border-radius:12px;padding:13px 16px;text-decoration:none;color:var(--ink)}
.qd-latest b{font:700 15.5px/1.35 var(--ui)}
.qd-latest small{color:var(--faint);flex:none}
.qd-latest-more{display:inline-block;margin-top:12px;color:var(--hot);font-weight:700}
.qd-postlist{display:grid;gap:11px;padding:4px 0 26px}
.qd-postrow{background:var(--panel);border:1px solid var(--edge);border-radius:12px;padding:15px 18px;box-shadow:var(--shadow)}
.qd-postrow h2{margin:0 0 5px;font:700 18px/1.3 var(--disp)}
.qd-postrow a{color:var(--ink);text-decoration:none}
.qd-postrow a:hover{color:var(--st)}
.qd-date{color:var(--faint);font-size:13px}
.qd-list-title{padding:34px 0 6px}
.qd-list-title h1{margin:0;font:700 clamp(26px,3.5vw,36px)/1.15 var(--disp)}
.qd-pager{display:flex;gap:10px;justify-content:center;padding:4px 0 30px}
.qd-pager a,.qd-pager span{background:var(--panel);border:1px solid var(--edge);border-radius:10px;padding:9px 14px;color:var(--ink2);text-decoration:none;font:600 14px/1 var(--ui)}
.qd-pager .current{background:var(--hot);border-color:var(--hot);color:#fffefb}

/* --------------------------------------------------------------------- ad */
.qd-ad{margin:18px auto;text-align:center}

/* ------------------------------------------------------------------ toast */
.qd-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);z-index:90;background:var(--ink);color:#fffefb;font:600 14px/1 var(--ui);border-radius:999px;padding:12px 20px;box-shadow:var(--shadow)}

/* ----------------------------------------------------------------- footer */
.qd-foot{margin-top:34px;border-top:1px solid var(--edge);background:var(--panel)}
.qd-foot-grid{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(auto-fit,minmax(150px,1fr));gap:26px;padding:34px 18px 26px}
.qd-foot-brand p{margin:0 0 8px;color:var(--ink2);font-size:14.5px;max-width:40ch}
.qd-logo--foot{margin:0 0 10px}
.qd-logo--foot span{font:600 20px/1 var(--disp)}
.qd-foot-h{margin:0 0 8px;font:700 11.5px/1 var(--ui);letter-spacing:2px;text-transform:uppercase;color:var(--st)}
.qd-foot-col ul{list-style:none;margin:0;padding:0}
.qd-foot-col a{display:block;color:var(--ink2);text-decoration:none;font:600 14px/1.4 var(--ui);padding:5px 0}
.qd-foot-col a:hover{color:var(--st)}
.qd-foot-legal{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;border-top:1px solid var(--edge);padding:14px 18px 18px;font-size:13px;color:var(--faint)}
.qd-foot-legal a{color:var(--faint)}

/* ------------------------------------------------------------- responsive */
@media (max-width:900px){
	.qd-hero-grid{grid-template-columns:1fr;gap:26px}
	.qd-nav{display:none}
}
@media (max-width:640px){
	.qd-hero{padding:30px 0 20px}
	.qd-bar{position:static;border-radius:18px}
	.qd-rows{grid-template-columns:1fr}
	.qd-tiles{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
	.qd-foot-grid{grid-template-columns:1fr 1fr}
}
