/* Lubna School - Risala Litamayuzik. Scoped to plugin shortcodes. */
.lsr-shell,.lsr-dashboard{direction:rtl;box-sizing:border-box;font-family:Tahoma,'Segoe UI',Arial,sans-serif;color:#76334d}
.lsr-shell *,.lsr-dashboard *{box-sizing:border-box}
.lsr-shell{width:100%;max-width:1040px;margin:18px auto;border-radius:20px;overflow:hidden;background:#f9d7e5;box-shadow:0 8px 36px #9b45632b}
.lsr-splash,.lsr-welcome{position:relative;width:100%;}
.lsr-cover{display:block;width:100%;height:auto;object-fit:contain}
/* Button in the approved image is artwork, so a real transparent accessible button sits over it. */
.lsr-cover-button{position:absolute;left:29%;top:62.4%;width:42%;height:13%;background:transparent!important;border:0!important;padding:0!important;opacity:1;cursor:pointer;border-radius:48px;box-shadow:none!important;outline-offset:3px}
.lsr-cover-button:hover{background:#fff1!important}
.lsr-cover-button:focus-visible{outline:3px solid #8c174b!important;background:#fff2!important}
.lsr-welcome-note{background:#fffafc;margin:0;padding:18px 20px;text-align:center;font-size:16px;color:#8e3156}
.lsr-secondary-link{display:block;text-align:center;padding:12px;background:#fffafc;color:#a0225b;text-decoration:underline}
.lsr-reveal{min-height:560px;position:relative;display:flex;align-items:center;justify-content:center;padding:55px 20px;background:radial-gradient(circle at 20% 15%,#fff8fa,transparent 35%),radial-gradient(circle at 80% 95%,#ffd0e1,transparent 38%),#f9d8e5;isolation:isolate}
.lsr-reveal[hidden]{display:none!important}
.lsr-letter{position:relative;z-index:2;width:min(100%,690px);border:3px double #d4a24d;border-radius:28px;background:linear-gradient(160deg,#fffdfb,#fff7f8);box-shadow:0 15px 45px #a93c6133;padding:48px 42px;text-align:center;animation:lsr-letter-enter .8s ease-out both}
.lsr-letter:before,.lsr-letter:after{content:'✧';position:absolute;color:#d5a75a;font-size:26px;top:18px}
.lsr-letter:before{right:23px}.lsr-letter:after{left:23px}
.lsr-letter-icon{font-size:51px}.lsr-eyebrow{font-size:17px;color:#ba5b7a;margin:10px 0}.lsr-letter h1{font-size:clamp(25px,4vw,37px);color:#ab1e54;margin:12px 0 28px;line-height:1.45}
.lsr-letter-message{text-align:center;font-size:clamp(17px,2.5vw,21px);line-height:2.05;color:#6f3f50;overflow-wrap:anywhere;white-space:normal}
.lsr-letter-message p{margin:0 0 1em}.lsr-signature{margin:30px 0 6px;color:#a32b58;font-weight:bold;font-size:19px}
.lsr-petals{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:3}
.lsr-petal{position:absolute;top:-10%;width:12px;height:18px;border-radius:75% 0 72% 25%;background:var(--petal-color,#f58bb0);opacity:0;transform:rotate(30deg);animation:lsr-petal-fall var(--duration,3.6s) ease-in var(--delay,0s) forwards;filter:drop-shadow(0 2px 2px #a9415a35)}
@keyframes lsr-petal-fall{0%{transform:translate3d(0,-25px,0) rotate(0);opacity:0}10%{opacity:.95}85%{opacity:.85}100%{transform:translate3d(var(--drift,45px),650px,0) rotate(var(--spin,520deg));opacity:0}}
@keyframes lsr-letter-enter{from{opacity:0;transform:translateY(32px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
.lsr-dashboard{max-width:1060px;margin:26px auto;padding:28px;border:1px solid #f0c8d4;border-radius:22px;background:radial-gradient(circle at top right,#fff1f6,transparent 45%),#fce0eb;box-shadow:0 9px 30px #aa49642b}
.lsr-dashboard-header{text-align:center;margin-bottom:24px}.lsr-dashboard-header h1{font-size:clamp(24px,4vw,36px);color:#a52358;margin:0 0 8px}.lsr-dashboard-header p{margin:0;color:#96546a}
.lsr-dashboard .lsr-panels{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.lsr-panel{border:1px solid #e5bdc9;background:#fffdfd;border-radius:16px;padding:24px;margin:0 0 20px;box-shadow:0 3px 14px #93435a12}
.lsr-panel h2{font-size:22px;color:#9b2451;margin:0 0 19px}
.lsr-form{display:grid;gap:16px}.lsr-form label{display:grid;gap:7px;font-weight:600;color:#8f3555;font-size:15px}
.lsr-form input,.lsr-form textarea,.lsr-dashboard input[type=text],.lsr-dashboard input[type=password],.lsr-dashboard input[type=email]{max-width:100%;width:100%;border:1px solid #e6b5c6!important;border-radius:10px!important;background:#fff!important;padding:12px!important;font-size:16px!important;min-height:42px;box-shadow:none!important;color:#4e2e38}
.lsr-form textarea{resize:vertical;line-height:1.8}.lsr-form input:focus,.lsr-form textarea:focus{outline:2px solid #d46c93;outline-offset:1px}
.lsr-btn,.lsr-mini-btn{cursor:pointer;border:1px solid #c79b54!important;background:linear-gradient(145deg,#d74b7c,#a61f51)!important;color:white!important;border-radius:10px!important;padding:11px 20px!important;font-weight:700;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center;line-height:1.3}
.lsr-inline{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.lsr-link{color:#a62356;text-decoration:underline}.lsr-dashboard-actions{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 22px}.lsr-dashboard-actions a{color:#a52358}
.lsr-notice{padding:14px 18px;background:#fff7fc;border-right:4px solid #ca6387;margin:14px 0 22px;color:#843551;border-radius:7px}
.lsr-counter{font-size:14px;background:#f9dfeb;color:#a22355;padding:5px 10px;border-radius:25px}
.lsr-message-list{display:grid;gap:14px}.lsr-message-item{background:#fff8fb;border:1px solid #f3dce5;border-radius:14px;padding:19px}
.lsr-message-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.lsr-message-top strong{font-size:18px;color:#84264c}
.lsr-status{font-size:13px;border-radius:40px;padding:5px 10px}.lsr-active{background:#e7f4e8;color:#28643b}.lsr-inactive{background:#f4e9e9;color:#8a4150}
.lsr-preview{font-size:15px;line-height:1.7;color:#7a5964;margin:12px 0;overflow-wrap:anywhere}
.lsr-share-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.lsr-share-row input{flex:1 1 220px;direction:ltr;text-align:left;min-width:0;font-size:13px!important;padding:9px!important}
.lsr-mini-btn{font-size:13px;padding:10px 12px!important}.lsr-whatsapp{background:#26875e!important;border-color:#26875e!important}.lsr-controls{margin-top:14px;font-size:14px}.lsr-controls form{display:inline;margin:0}
.lsr-text-btn{border:0!important;background:none!important;padding:4px!important;cursor:pointer!important;text-decoration:underline;color:#a62356!important;font-size:14px!important;box-shadow:none!important}.lsr-danger{color:#b0202a!important}
.lsr-dashboard .login-username,.lsr-dashboard .login-password,.lsr-dashboard .login-remember,.lsr-dashboard .login-submit{margin:0 0 14px}.lsr-dashboard #loginform label{display:block;color:#8f3555;margin-bottom:5px}
@media(max-width:680px){.lsr-shell{margin:6px auto;border-radius:12px}.lsr-dashboard{padding:14px;margin:8px auto}.lsr-dashboard .lsr-panels{grid-template-columns:1fr}.lsr-panel{padding:17px}.lsr-reveal{min-height:480px;padding:26px 11px}.lsr-letter{padding:33px 18px;border-radius:18px}.lsr-share-row input{flex-basis:100%}.lsr-cover-button{top:61.5%;height:15%;left:28%;width:44%}}
@media(prefers-reduced-motion:reduce){.lsr-petal,.lsr-letter{animation:none!important}.lsr-petal{display:none}}

/* 1.0.3: Full-screen floating flowers. Avoid !important on opacity: it blocks keyframe opacity changes. */
.lsr-flower-overlay{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:2147483000!important;overflow:hidden!important;pointer-events:none!important;isolation:isolate!important}
.lsr-falling-flower{position:absolute!important;top:-60px!important;display:block!important;line-height:1.2!important;opacity:0;filter:drop-shadow(0 2px 3px rgba(130,40,80,.2));will-change:transform,opacity;animation:lsr-flower-rain var(--flower-duration,4s) linear var(--flower-delay,0s) both!important}
@keyframes lsr-flower-rain{0%{transform:translate3d(0,-30px,0) rotate(0deg);opacity:0}8%{opacity:1}80%{opacity:1}100%{transform:translate3d(var(--flower-drift,40px),calc(100vh + 140px),0) rotate(var(--flower-turn,350deg));opacity:0}}
@media(prefers-reduced-motion:reduce){.lsr-falling-flower{animation:none!important;display:none!important}}
