@font-face{font-family:Vazir;src:url('assets/vazir.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Naskh;src:url('assets/naskh.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Nastaliq;src:url('assets/noto-nastaliq-urdu.ttf') format('truetype');font-weight:400;font-display:swap}
:root{color-scheme:light;--paper:#faf3e8;--ink:#453a32;--muted:#827367;--line:#e3d4c4;--accent:#966b4f;--focus:#785239;font-family:Vazir,Tahoma,sans-serif;font-size:16px;color:var(--ink);background:var(--paper)}
html,body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}
*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.shell{height:100svh;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:0 6.5vw;max-width:1800px;margin:auto;overflow:hidden}header,footer{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}header{height:112px;border-bottom:1px solid var(--line);flex-shrink:0}.identity{display:flex;gap:15px;align-items:center;font-size:17px}.identity-line{width:22px;height:1px;background:var(--accent)}.header-note{font-size:14px;color:var(--muted)}main{min-height:0;height:100%;display:grid;position:relative;overflow:hidden}.view{grid-area:1/1;animation:appear .35s ease both}.home{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(44px,9vh,100px)}.verse{text-align:center;position:relative}.verse-quote{margin:0;padding:0;border:0}.identity-heading{margin:0;font:inherit;display:inline-flex;align-items:center}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.eyebrow{font-size:13px;color:var(--muted)}.verse-text{font-family:Nastaliq,Naskh,serif;font-weight:400;font-size:clamp(30px,3.9vw,62px);line-height:2.1;margin:18px 0 23px;padding:.08em 0 .22em}.verse-text>span{display:block}.verse-text em{font-style:normal;color:#4f7655}.verse-rule{display:block;width:38px;height:1px;background:#a4ab96;margin:auto}.choices{display:grid;grid-template-columns:repeat(4,1fr);width:min(880px,100%)}.choices button{border:0;border-left:1px solid var(--line);background:transparent;color:var(--ink);padding:8px 16px;display:flex;align-items:center;flex-direction:column;gap:9px;transition:color .2s,transform .2s}.choices button:last-child{border-left:0}.choices button>span{font-size:17px}.choices small{font-size:13px;color:var(--muted)}.choices button:hover{color:var(--accent);transform:translateY(-3px)}footer{height:76px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);flex-shrink:0}.footer-left{font-size:12px}.panel{width:min(550px,100%);margin:auto;max-height:100%;overflow:hidden;padding:20px 10px}.back{display:flex;align-items:center;gap:9px;border:0;background:none;padding:4px 0;color:var(--muted);font-size:14px;margin-bottom:16px}.panel-heading h2{font-size:28px;font-weight:400;margin:7px 0}.panel-heading p{font-size:14px;line-height:1.9;color:var(--muted);margin:0 0 20px}form{display:grid;gap:15px}label{display:grid;gap:7px;font-size:14px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}input:not([type=file]),textarea{width:100%;border:1px solid var(--line);background:#ffffff65;border-radius:3px;color:var(--ink);padding:10px 12px;outline:0;min-width:0}input:not([type=file]){height:44px}textarea{resize:vertical;min-height:92px;max-height:180px;line-height:1.8}input:focus,textarea:focus{border-color:var(--accent)}:focus-visible{outline:2px solid var(--focus);outline-offset:5px}h2:focus{outline:0}.form-meta{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:12px;margin-top:-7px}.form-meta #counter{white-space:nowrap;direction:ltr}.submit-row{display:flex;align-items:center;gap:18px}.submit{display:flex;gap:34px;align-items:center;background:var(--ink);color:var(--paper);border:0;border-radius:3px;padding:12px 19px;font-size:14px}.submit:hover{background:var(--accent)}.preview-note{font-size:12px;color:var(--muted)}.file-label{border:1px dashed #a7ae9b;border-radius:3px;position:relative;display:flex;align-items:center;justify-content:space-between;padding:16px;cursor:pointer;gap:12px}.file-label:focus-within{outline:2px solid var(--focus);outline-offset:3px}.file-label input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.file-format{font-size:12px;color:var(--muted);flex-shrink:0}#file-name{overflow-wrap:anywhere}.field-error{color:#a14034;font-size:12px;margin:5px 0 0}.field-error:empty,.form-status:empty{display:none}.form-status{padding:12px 15px;background:#e9ede2;line-height:1.9;font-size:14px;margin:0;border-right:2px solid var(--accent)}.hafez-panel{width:min(700px,100%);margin:auto;max-height:100%;height:100%;overflow-y:auto;overscroll-behavior:contain;padding:12px 10px 40px;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.hafez-panel::-webkit-scrollbar{width:6px}.hafez-panel::-webkit-scrollbar-track{background:transparent}.hafez-panel::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}.hafez-panel::-webkit-scrollbar-thumb:hover{background:var(--muted)}.hafez-topbar{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:var(--paper);padding:8px 0 12px;z-index:10;border-bottom:1px solid #e3d4c440}.hafez-refresh-btn{display:inline-flex;align-items:center;gap:8px;background:none;border:1px solid var(--line);border-radius:3px;padding:6px 14px;color:var(--ink);font-size:13px;cursor:pointer;white-space:nowrap;transition:all .2s}.hafez-refresh-btn svg{flex-shrink:0;transition:transform .35s ease}.hafez-refresh-btn:hover{border-color:var(--accent);color:var(--accent)}.hafez-refresh-btn:hover svg{transform:rotate(-180deg)}.hafez-card{animation:appear .35s ease both;padding:12px 4px}.hafez-heading{text-align:center;margin-bottom:20px}.hafez-heading h2{font-size:26px;font-weight:400;margin:6px 0 2px;font-family:Nastaliq,Naskh,serif}.hafez-verses{display:flex;flex-direction:column;gap:12px;margin:20px 0 32px;font-size:17px;line-height:2.2}.hafez-bayt{display:flex;justify-content:center;gap:clamp(16px,4vw,34px);color:var(--ink)}.hafez-mesra{flex:1;max-width:320px}.hafez-mesra-1{text-align:left}.hafez-mesra-2{text-align:right}.hafez-interpretation-box{background:rgba(150,107,79,.06);border:1px solid var(--line);border-right:3px solid var(--accent);border-radius:4px;padding:16px 20px;margin:0 0 28px}.hafez-interpretation-badge{display:flex;align-items:center;gap:8px;margin-bottom:8px}.hafez-interpretation-badge .eyebrow{color:var(--accent);font-weight:600;font-size:13px;letter-spacing:.3px}.hafez-interpretation-text{font-size:15px;line-height:2.1;color:var(--ink);margin:0;text-align:justify;text-justify:inter-word}.hafez-footer{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid var(--line);gap:16px;flex-wrap:wrap;margin-top:auto}.ganjoor-link{font-size:13px;color:var(--muted);transition:color .2s}.ganjoor-link:hover{color:var(--accent);text-decoration:underline}.hafez-bottom-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;font-size:13px;white-space:nowrap}.hafez-bottom-btn svg{flex-shrink:0}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.submit:disabled{cursor:wait;opacity:.65}
@keyframes appear{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){h1, .verse-text{font-size:60px}}
@media(max-width:650px){.shell{padding:0 25px}header{height:82px}.header-note{font-size:12px}.identity{font-size:15px}.home{gap:55px}h1, .verse-text{font-size:clamp(23px,5.9vw,37px);line-height:2.2;margin-top:23px}.choices{grid-template-columns:repeat(2,1fr);width:100%}.choices button{padding:10px 6px}.choices button:nth-child(1),.choices button:nth-child(2){border-bottom:1px solid var(--line)}.choices button:nth-child(2),.choices button:nth-child(4){border-left:0}.choices button>span{font-size:14px}.choices small{font-size:12px}footer{height:62px;font-size:12px}.footer-left{display:inline}.panel{padding:15px 4px;overflow-y:auto;overscroll-behavior:contain}.panel-heading h2{font-size:24px}.two-fields{gap:10px}.submit-row{gap:12px;align-items:flex-start;flex-direction:column}.file-label{padding:12px;flex-wrap:wrap}.form-meta{line-height:1.8}.panel-heading p{margin-bottom:14px}form{gap:12px}.hafez-bayt{flex-direction:column;gap:4px;text-align:center;padding:8px 0;border-bottom:1px dashed #e3d4c460}.hafez-bayt:last-child{border-bottom:0}.hafez-mesra{max-width:100%;text-align:center}.hafez-heading h2{font-size:22px}.hafez-interpretation-box{padding:12px 14px;margin-bottom:20px}.hafez-interpretation-text{font-size:14px;line-height:2.0}.hafez-panel{padding:12px 4px 30px}}
@media(max-height:690px){header{height:75px}footer{height:55px}.home{gap:35px}h1, .verse-text{font-size:39px;margin:12px 0}.panel{padding:12px;overflow-y:auto;overscroll-behavior:contain}.panel-heading p{margin-bottom:10px}.back{margin-bottom:5px}form{gap:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

.identity{font-family:Nastaliq,Naskh,serif;font-size:30px;line-height:2;padding-bottom:10px}.poet{display:block;margin:0 0 22px;color:var(--accent)}@media(max-width:650px){.identity{font-size:25px}.poet{margin-bottom:16px}}
