.jp{--purple:#630330;--blue:#344b84;--ink:#302731;--muted:#746976;--line:#e9e0e6;--paper:#faf7f9}.jp *{box-sizing:border-box}.jp{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 Arial,sans-serif}.jp button,.jp input,.jp textarea,.jp select{font:inherit}.jp button,.jp a{touch-action:manipulation}.jp button{cursor:pointer}.jp header{background:white;border-bottom:1px solid var(--line)}.jp .header-inner{max-width:1200px;margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.jp .brand{font-family:Perpetua,Georgia,serif;color:var(--purple);font-size:27px;letter-spacing:1px}.jp .motto{font:10px Arial;letter-spacing:1.7px;color:var(--muted)}.jp .toplinks{display:flex;gap:25px;color:var(--muted);font-size:14px}.jp .demo{background:#f0eaf6;color:#59476c;text-align:center;padding:9px 18px;font-size:12px}.jp .wrap{max-width:1200px;margin:auto;padding:40px 28px 70px}.jp .eyebrow{color:var(--purple);font-size:11px;letter-spacing:2px;font-weight:bold}.jp .hero{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:28px}.jp h1{font:52px/1.1 Perpetua,Georgia,serif;color:var(--purple);margin:8px 0 12px}.jp h2{font:28px/1.3 Perpetua,Georgia,serif;margin:0 0 14px}.jp h3{font-size:18px;margin:0 0 10px}.jp p{margin:0 0 14px}.jp .muted{color:var(--muted)}.jp .button{background:var(--purple);color:white;border:1px solid var(--purple);border-radius:8px;padding:11px 18px;font-size:14px}.jp .secondary{background:white;color:var(--purple)}.jp .quiet{border:0;background:transparent;color:var(--purple);padding:9px;font-size:14px}.jp .tabs{display:flex;gap:5px;overflow:auto;border-bottom:1px solid var(--line);margin-bottom:28px}.jp .tabs button{white-space:nowrap;border:0;background:none;padding:14px 16px;color:var(--muted);border-bottom:3px solid transparent}.jp .tabs button[aria-selected=true]{color:var(--purple);border-color:var(--purple)}.jp .grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px}.jp .box{background:white;border:1px solid var(--line);border-radius:14px;padding:26px;margin-bottom:22px}.jp .reflection{background:linear-gradient(115deg,#630330,#39001c);color:white;padding:32px}.jp .reflection .eyebrow{color:#e1bed0}.jp .reflection h2{font-size:32px}.jp .verse{border-left:2px solid #c69caa;padding-left:16px;margin:22px 0 0}.jp .verse small{display:block;color:#e1bed0}.jp .section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:26px 0 16px}.jp .pill{display:inline-block;background:#f2edf5;color:var(--blue);border-radius:25px;padding:4px 12px;font-size:12px}.jp .cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.jp .poster-card{background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden}.jp .poster{width:100%;aspect-ratio:9/16;border:0;display:flex;flex-direction:column;justify-content:space-between;text-align:left;padding:23px;color:white;background:linear-gradient(155deg,#364f87,#16243f);cursor:zoom-in}.jp .poster.purple{background:linear-gradient(155deg,#85355f,#39001c)}.jp .poster.red{background:linear-gradient(155deg,#8b434b,#41252d)}.jp .poster small{font-size:10px;letter-spacing:1.8px;opacity:.8}.jp .poster .symbol{font:48px Georgia;opacity:.55}.jp .poster h3{font:27px/1.35 Perpetua,Georgia,serif}.jp .poster .tamil{font-size:15px;line-height:1.8}.jp .poster-bottom{font-size:11px;opacity:.8}.jp .card-actions{padding:15px}.jp .card-actions button{width:100%;padding:10px;font-size:13px}.jp .card-actions .quiet{margin-bottom:6px}.jp .stat{font:48px Perpetua,Georgia,serif;color:var(--purple)}.jp .stats{display:flex;justify-content:space-between;gap:15px}.jp .side-label{font-size:12px;color:var(--muted)}.jp .pending-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid var(--line)}.jp .pending-row:last-child{border:0}.jp .note{font-size:13px;color:var(--muted)}.jp label{display:block;font-size:14px;margin:16px 0 6px}.jp input,.jp textarea,.jp select{width:100%;padding:11px;border:1px solid #cfc4cd;border-radius:7px;background:white;color:var(--ink)}.jp input[type=checkbox]{width:auto}.jp textarea{min-height:115px;resize:vertical}.jp .form{max-width:720px}.jp .form .button{margin-top:20px}.jp .two{display:grid;grid-template-columns:1fr 1fr;gap:22px}.jp .table-wrap{overflow:auto}.jp table{width:100%;border-collapse:collapse;font-size:14px}.jp th,.jp td{text-align:left;padding:13px;border-bottom:1px solid var(--line)}.jp th{color:var(--muted);font-size:12px}.jp .screen[hidden]{display:none}.jp .toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#302731;color:white;padding:14px 22px;border-radius:10px;max-width:90%;z-index:10}.jp .toast button{color:white;text-decoration:underline;background:none;border:0;margin-left:12px}.jp dialog{border:1px solid var(--line);border-radius:16px;padding:27px;width:min(94vw,470px);color:var(--ink);max-height:92vh;overflow:auto}.jp dialog::backdrop{background:#22172599}.jp .dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.jp .video-space{background:#eceef5;border:1px solid #d7ddeb;padding:25px;border-radius:10px;color:var(--blue);margin:20px 0}.jp .footer{border-top:1px solid var(--line);padding:25px;text-align:center;color:var(--muted);font-size:12px}.jp .empty{padding:30px;background:white;border:1px dashed var(--line);border-radius:12px;grid-column:1/-1}.jp button:focus-visible,.jp a:focus-visible{outline:3px solid #b294cd;outline-offset:3px}@media(max-width:900px){.jp .grid{grid-template-columns:1fr}.jp .aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.jp .toplinks{display:none}.jp .cards{gap:10px}.jp .poster{padding:17px}.jp .poster h3{font-size:23px}}@media(max-width:620px){.jp .wrap{padding:25px 16px 45px}.jp .header-inner{padding:17px 16px}.jp .brand{font-size:22px}.jp .hero{align-items:flex-start}.jp h1{font-size:43px}.jp .hero>.button{padding:9px 12px;font-size:12px}.jp .box{padding:22px}.jp .cards{grid-template-columns:1fr}.jp .poster-card{max-width:340px;width:100%;margin:auto}.jp .poster{padding:27px}.jp .poster h3{font-size:32px}.jp .poster .tamil{font-size:18px}.jp .aside,.jp .two{grid-template-columns:1fr}.jp .section-head h2{font-size:24px}.jp .tabs button{padding:12px;font-size:14px}.jp .pending-row{align-items:flex-start}.jp .motto{font-size:8px}.jp .reflection h2{font-size:28px}}

.jp{margin-top:0}.jp .screen[hidden]{display:none}.jp img{max-width:100%;height:auto}.jp .poster-image{width:100%;display:block}.jp .success{background:#edf5ee;border:1px solid #bad5c0;padding:15px;border-radius:8px;margin-bottom:20px}.jp .error{background:#fff0f0;padding:15px}.jp form{margin:0}.jp .card-actions form .button{width:100%}.jp .page-title{font-family:Perpetua,Georgia,serif}.jp .check-line{display:flex;gap:9px;align-items:baseline}.jp .check-line input{width:auto}.jp .poster-text{background:#f5f0f5;padding:22px;border-radius:8px;white-space:pre-wrap}.jp .history-form{display:inline}.jp .login-username input,.jp .login-password input{display:block}.jp .login-remember input{width:auto}.jp .login-submit input{background:#630330;color:white;cursor:pointer}.jp .poster-dialog{max-width:600px}.jp .poster-dialog img{width:100%;height:auto}.jp .wp-embedded-content{max-width:100%}.jp iframe{max-width:100%;width:100%}.jp .notice a{color:#630330} 

/* Prarthana 0.1.2 — scoped layout and readability refresh. */
body.jp-portal-page{padding-top:0;background:#f8f6fa}
body.jp-portal-page .jireh-header{position:sticky;top:0;box-shadow:0 3px 18px #3d15350a}
body.jp-portal-page.admin-bar .jireh-header{top:32px}
.jp{--purple:#66023c;--blue:#344b84;--ink:#302731;--muted:#665d6d;--line:#e8dfe9;--paper:#f8f6fa;background:radial-gradient(ellipse at 95% 0%,#e9edf680,transparent 48%),radial-gradient(ellipse at 0% 10%,#f1e6ef90,transparent 42%),var(--paper);font-size:16px;line-height:1.7}
.jp .wrap{max-width:1240px;padding:30px 28px 64px}
.jp .hero{margin-bottom:20px;align-items:center;padding:10px 0 20px;border-bottom:1px solid var(--line)}
.jp .hero h1{font-size:clamp(40px,4.5vw,58px);letter-spacing:-.5px;margin:9px 0 12px}
.jp .hero .muted{max-width:600px;margin:0;font-size:16px}
.jp .eyebrow{font-size:11px;letter-spacing:1.8px;line-height:1.7}
.jp .tabs{gap:7px;border:1px solid var(--line);background:#fff;border-radius:16px;padding:7px;margin:16px 0 28px;box-shadow:0 5px 20px #40153605;scrollbar-width:thin}
.jp .tabs button{min-height:48px;border:0;border-radius:11px;padding:12px 18px;font-size:14px;font-weight:600;color:#675c6d;transition:background .18s,color .18s}
.jp .tabs button:hover{background:#f5edf3;color:var(--purple)}
.jp .tabs button[aria-selected=true]{background:var(--purple);color:#fff;box-shadow:0 4px 10px #66023c18}
.jp .grid{grid-template-columns:minmax(0,1fr) 300px;gap:26px;align-items:start}
.jp .grid>div,.jp .grid aside{min-width:0}
.jp .box{border-radius:18px;padding:26px;border-color:var(--line);box-shadow:0 6px 22px #40153604}
.jp .reflection{background:radial-gradient(ellipse at 100% 0%,#8c3b6c80,transparent 65%),linear-gradient(120deg,#66023c,#430129);border-color:transparent;padding:32px;color:#fff;box-shadow:0 10px 28px #66023c12}
.jp .reflection h2{font-family:Arial,sans-serif;font-size:clamp(23px,2vw,30px);line-height:1.7;font-weight:500;overflow-wrap:anywhere;color:#fff}
.jp .reflection [lang=ta]{line-height:1.95}
.jp .reflection .eyebrow{color:#f0dce9;margin-bottom:8px}
.jp .verse{background:#ffffff0c;border-color:#cfacc1;border-radius:0 9px 9px 0;padding:14px 18px;line-height:1.9}
.jp .section-head{margin:28px 0 16px;align-items:center}
.jp .section-head h2{font-size:27px;margin:0}
.jp .pill{background:#eef0f7;color:#344b84;padding:6px 12px;font-size:12px;white-space:nowrap}
.jp .empty{padding:26px 28px;border-style:solid;border-color:#e6dfe9;background:linear-gradient(110deg,#fff,#fcfafc);color:#675c6d;line-height:1.8;min-height:94px;display:flex;align-items:center;border-radius:16px;margin:0}
.jp .stat{font-size:58px;line-height:1.2;margin:12px 0 8px}
.jp aside .box:first-child{border-top:3px solid #66023c}
.jp aside .box h3{font-size:18px;color:#344b84}
.jp .button,.jp .login-submit input{border-radius:10px;min-height:46px;font-weight:600;padding:12px 18px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:background .18s,box-shadow .18s}
.jp .button:hover,.jp .login-submit input:hover{background:#4e022e;color:#fff;box-shadow:0 5px 12px #66023c15}
.jp .button.secondary{background:#fff;color:#66023c;border-color:#d9bfce}
.jp .button.secondary:hover{background:#f5eaf1;color:#66023c}
.jp input,.jp textarea,.jp select{border-color:#d8cdd8;border-radius:10px;min-height:46px;padding:12px 14px}
.jp input[type=checkbox]{min-height:0;width:19px;height:19px;flex:0 0 19px;accent-color:#66023c}
.jp .check-line{align-items:flex-start;line-height:1.6;gap:10px}
.jp .check-line input{margin-top:3px}
.jp label{line-height:1.6;font-weight:500}
.jp .note{font-size:13px;line-height:1.7}
.jp input:focus-visible,.jp textarea:focus-visible,.jp select:focus-visible,.jp button:focus-visible,.jp a:focus-visible{outline:3px solid #7187b7;outline-offset:3px}
.jp .two .box{padding:30px}
.jp .two h2{font-size:30px;color:#66023c}
.jp .two .login-submit input,.jp .two form>.button{width:100%}
.jp .poster-card{border-radius:16px;box-shadow:0 8px 24px #40153606}
.jp .poster-text{border-radius:0;background:#faf8fb;padding:20px;white-space:normal;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.jp .poster-image{object-fit:contain;background:#f6f1f6}
.jp .card-actions{padding:18px}
.jp .poster-dialog{border-radius:20px;padding:24px}
.jp .success{border-radius:12px;line-height:1.7}
.jp .form{max-width:780px}
.jp .footer{padding:30px 20px;background:#fff;border-top:1px solid var(--line)}
footer.jp{margin-top:0}
@media(max-width:1000px){.jp .grid{grid-template-columns:1fr}.jp .grid aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.jp .grid aside .box{margin:0}.jp .cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:782px){body.jp-portal-page.admin-bar .jireh-header{top:46px}}
@media(max-width:620px){.jp .wrap{padding:22px 16px 40px}.jp .hero{gap:12px;padding-top:5px;padding-bottom:20px}.jp .hero h1{font-size:42px}.jp .hero .muted{font-size:14px}.jp .hero>.button{font-size:13px;padding:10px 13px;flex-shrink:0}.jp .tabs{border-radius:13px;margin-bottom:20px}.jp .tabs button{padding:11px 14px;min-height:46px}.jp .grid{gap:22px}.jp .grid aside{grid-template-columns:1fr;gap:18px}.jp .box,.jp .two .box{padding:23px}.jp .reflection{padding:25px 23px}.jp .reflection h2{font-size:24px}.jp .section-head{gap:10px;flex-wrap:wrap}.jp .section-head h2{font-size:25px}.jp .cards{grid-template-columns:1fr}.jp .empty{padding:22px;min-height:86px}.jp .poster-card{max-width:420px}.jp .stat{font-size:50px}}
@media(prefers-reduced-motion:reduce){.jp *{transition:none!important;scroll-behavior:auto!important}}
