@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap);*{box-sizing:border-box}#root,body,html{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(180deg,#fff,#f7fafc);color:#0f172a;font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial}.container{margin:0 auto;padding:0 20px}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font-family:inherit}@media(max-width:768px){h1{font-size:28px!important}}.container{margin:auto;max-width:1200px;padding:24px}.page-title{color:#1f2a44;font-family:Poppins,sans-serif;font-size:32px;margin-bottom:16px}.section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:24px;padding:20px}.section-title{color:#1f2a44;font-family:Poppins,sans-serif;font-size:20px;margin-bottom:12px}body,html{height:100%}body{background:#f7f8fa;color:#1b1b1b;font-family:Poppins,sans-serif;margin:0}.app-layout{display:flex;flex-direction:column;min-height:100vh}.app-main{flex:1 1;padding-bottom:48px}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.page-actions{display:flex;gap:12px}.footer{background:linear-gradient(180deg,#0f172a,#020617);color:#fff;padding:48px 24px}.footer-inner{display:flex;gap:32px;justify-content:space-between;margin:auto;max-width:1200px}.footer h4{font-family:Poppins,sans-serif;margin-bottom:8px}.footer p{color:#cbd5e1;font-size:14px}@media(max-width:768px){.footer-inner{flex-direction:column;text-align:center}}.btn{font-family:Montserrat,sans-serif;gap:8px;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.btn-primary{background:#0b5fa5;color:#fff}.btn-primary:hover{background:#094f8a}.btn-secondary{background:#0000;border:2px solid #0b5fa5;color:#0b5fa5}.btn-secondary:hover{background:#0b5fa514}.btn-danger{background:#0000;border:2px solid #dc2626;color:#dc2626}.btn-danger:hover{background:#dc262614}.btn-sm{font-size:13px;padding:6px 14px}.badge{border-radius:999px;font-size:12px;font-weight:500;padding:4px 10px}.badge-gold{background:#c9a24d26;color:#c9a24d}.badge-blue{background:#1f2a441a;color:#1f2a44}.table-wrap{overflow-x:auto}.table-modern{background:#fff;border:1px solid #e5e7eb;border-collapse:initial;border-radius:14px;border-spacing:0;overflow:hidden;width:100%}.table-modern th{background:#f9fafb;color:#6b7280;font-size:13px;font-weight:600;padding:14px 16px;text-align:left}.table-modern td{border-top:1px solid #e5e7eb;font-size:14px;padding:16px}.table-modern tr:hover{background:#f8fafc;cursor:pointer}.excel-form{background:#fff;border:1px solid #e5e7eb;border-radius:12px}.excel-form .row{border-bottom:1px solid #e5e7eb;display:grid;grid-template-columns:240px 1fr}.excel-form label{background:#f9fafb;font-size:14px;font-weight:600;padding:14px}.excel-form input{border:none;font-size:14px;padding:14px}.excel-form input:focus{background:#f8fafc;outline:none}.action-bar{border-top:1px solid #e5e7eb;padding:16px 24px;z-index:10}.collapse-header{cursor:pointer;-webkit-user-select:none;user-select:none}.collapse-title{align-items:center;display:flex;gap:10px}.collapse-icon{font-size:13px;transition:transform .2s ease}.collapse-icon.open{transform:rotate(90deg)}.collapse-count{color:#6b7280;font-size:13px;font-weight:500}.collapse-content{padding:16px 20px 20px}.edit-wrapper{display:flex;flex-direction:column;gap:32px;padding-bottom:40px}.wedding-summary{background:linear-gradient(135deg,#15649614,#31c3bb14);border-radius:20px;box-shadow:0 12px 30px #0206170f;padding:24px 28px}.wedding-summary-title{color:#0f172a;font-size:18px}.wedding-summary-couple{color:#156496;font-size:26px;margin-top:6px}.wedding-summary-meta{color:#64748b;margin-top:8px}@media(max-width:640px){.wedding-summary{padding:20px}.wedding-summary-couple{font-size:22px}}.edit-section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden}.edit-section-header{background:linear-gradient(90deg,#15649614,#31c3bb1a);color:#156496;font-size:14px;font-weight:600;padding:14px 20px}.edit-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);padding:24px}@media(max-width:768px){.edit-grid{grid-template-columns:1fr;padding:20px}}.form-field span{color:#374151;font-size:13px;font-weight:600}.form-field input,.form-field select,.form-field textarea{border:1px solid #d1d5db;border-radius:10px;font-size:14px;padding:12px 14px;transition:border .2s ease,box-shadow .2s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#31c3bb;box-shadow:0 0 0 3px #31c3bb33;outline:none}.form-field textarea{min-height:90px;resize:vertical}.song-section{grid-column:1/-1;margin-top:8px;padding-top:16px}.song-section strong{font-size:15px}.song-card{background:#f9fafb}.song-card textarea{min-height:80px}.song-card .btn-danger{align-self:flex-start}.btn{border:none;border-radius:999px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:6px;padding:10px 18px}.btn.btn-primary{background:#156496;color:#fff}.btn.btn-primary:hover{background:#0f4c75}.btn.btn-secondary{background:#f1f5f9;color:#0f172a}.btn.btn-secondary:hover{background:#e2e8f0}.btn.btn-danger{background:#fee2e2;color:#991b1b}.btn.btn-danger:hover{background:#fecaca}.btn.btn-sm{font-size:13px;padding:6px 14px}.action-bar{align-items:center;background:#fff;bottom:0;display:flex;gap:16px;justify-content:space-between;margin-top:32px;padding:16px;position:-webkit-sticky;position:sticky}@media(max-width:640px){.action-bar{flex-direction:column-reverse}.action-bar .btn{justify-content:center;width:100%}}.wedding-finance{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-top:20px}.finance-item{background:#fff;border:1px solid #e5e7eb;border-radius:14px;display:flex;flex-direction:column;gap:4px;padding:14px 16px}.finance-item .label{color:#6b7280;font-size:12px}.finance-item strong{color:#0f172a;font-size:16px;font-weight:700}.finance-item.highlight{background:#f0f9ff;border-color:#bae6fd}.finance-item.status strong{font-size:15px}.finance-item.status.lunas strong{color:#16a34a}.finance-item.status.dp-dibayar strong{color:#2563eb}.finance-item.status.belum-ditentukan strong,.finance-item.status.belum-dp strong{color:#dc2626}@media(max-width:768px){.wedding-finance{grid-template-columns:repeat(2,1fr)}}.song-section{border-top:1px dashed #e5e7eb;padding:20px 0}.song-section strong{color:#0f172a;display:block;font-size:16px;margin-bottom:12px}.song-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 4px 12px #0206170a;display:flex;flex-direction:column;gap:10px;margin-bottom:14px;padding:16px;position:relative}.song-card:before{background:#f1f5f9;border-radius:999px;color:#475569;content:"Lagu";font-size:11px;font-weight:600;left:16px;padding:2px 10px;position:absolute;top:-10px}.song-card input,.song-card textarea{border:1px solid #d1d5db;border-radius:10px;font-size:14px;padding:10px 12px;width:100%}.song-card input:focus,.song-card textarea:focus{border-color:#31c3bb;box-shadow:0 0 0 3px #31c3bb33;outline:none}.song-card textarea{min-height:90px;resize:vertical}.song-section .btn-secondary{margin-top:8px}.song-card.dirty{border-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b40}.wedding-summary{margin-bottom:20px;text-align:center}.wedding-summary-title{color:#6b7280;font-size:14px;font-weight:600;margin-bottom:8px}.wedding-summary-couple{font-family:Montserrat,sans-serif;font-size:32px;font-weight:700;margin-bottom:6px}.wedding-summary-meta{color:#6b7280;display:flex;font-size:14px;gap:8px;justify-content:center}.detail-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;margin-bottom:24px;padding:24px}.detail-card-title{color:#1f2a44;font-size:16px;font-weight:600;margin-bottom:16px}.detail-grid{grid-gap:16px 24px;display:grid;gap:16px 24px;grid-template-columns:repeat(2,1fr)}.detail-item{display:flex;flex-direction:column}.detail-label{color:#6b7280;font-size:12px;margin-bottom:4px}.detail-value{font-size:14px;font-weight:500}.song-preview{border-top:1px solid #e5e7eb;margin-top:16px;padding-top:16px}.song-preview-title{font-weight:600;margin-bottom:6px}.song-preview-lyric{color:#374151;font-size:14px;white-space:pre-line}.wedding-table-section{background:#fff;border:1px solid #e5e7eb;margin-bottom:24px}.wedding-table-header{background:linear-gradient(90deg,#0b5ed70f,#0b5ed705);padding:16px 20px}.wedding-table-title{gap:10px}.wedding-table-title .count{color:#6b7280;font-weight:500}.wedding-table-wrapper{padding:0 20px 16px}.wedding-table thead th{border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:13px;font-weight:600;padding:14px 0;text-align:left}.wedding-table tbody tr{cursor:pointer;transition:background .15s ease}.wedding-table tbody tr:hover{background:#f8fafc}.wedding-table td{border-bottom:1px solid #e5e7eb;font-size:14px;padding:14px 0}.package-pill{background:#0b5ed71a;color:#1f2a44}.empty-state{padding:20px 0}.create-panel{border-radius:16px;box-shadow:0 10px 30px #0000000a}.create-panel-header{padding:16px 20px}.create-panel-title{font-weight:600}.form-grid{grid-template-columns:repeat(2,1fr)}.form-field input{border-radius:8px}@media(max-width:768px){.form-grid{grid-template-columns:1fr}}.wedding-list .page-subtitle{color:var(--text-muted);font-size:.9rem;margin-top:4px}.wedding-table-section{background:var(--card-bg);border-radius:16px;box-shadow:var(--shadow-soft);margin-top:2rem;overflow:hidden}.wedding-table-header{align-items:center;background:linear-gradient(90deg,#fffffff2,#ffffffe6);cursor:pointer;display:flex;justify-content:space-between;padding:1rem 1.25rem}.wedding-table-header:hover{background:#ffffffd9}.wedding-table-title{align-items:center;display:flex;font-weight:600;gap:.75rem}.wedding-table-title .count{background:var(--primary-soft);border-radius:999px;font-size:.75rem;padding:2px 8px}.wedding-table th{color:var(--text-muted);font-size:.75rem;padding:.75rem 1.25rem;text-transform:uppercase}.wedding-table td{border-top:1px solid var(--border-soft);padding:.9rem 1.25rem}.wedding-table tr:hover{background:#00000008}.wedding-table .client-name{font-weight:600}.package-pill{background:var(--primary-soft);font-size:.75rem;padding:4px 10px}.create-panel{background:var(--card-bg);box-shadow:var(--shadow-medium);margin-top:1.5rem}.create-panel-body,.create-panel-header{padding:1.25rem}.form-grid{grid-gap:1rem;gap:1rem}@media(max-width:768px){.wedding-table thead{display:none}.wedding-table tr{border-bottom:1px solid var(--border-soft);display:block;padding:1rem}.wedding-table td{display:flex;justify-content:space-between;padding:.4rem 0}.wedding-table td:before{color:var(--text-muted);content:attr(data-label);font-weight:500}.wedding-table{display:none}.wedding-cards{grid-gap:1rem;display:grid;gap:1rem;padding:1rem}.wedding-card{background:var(--card-bg);border-radius:16px;box-shadow:var(--shadow-soft);padding:1rem;transition:all .2s ease}.wedding-card:hover{box-shadow:var(--shadow-medium);transform:translateY(-2px)}.card-header{display:flex;font-weight:600;justify-content:space-between}.card-date{color:var(--text-muted);font-size:.8rem}.card-meta{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem}}.desktop-only{display:table}.wedding-row{cursor:pointer;transition:all .15s ease}.wedding-row:hover{background:#0000000a;transform:translateY(-1px)}.wedding-row:active{transform:scale(.995)}.wedding-cards{gap:1rem;padding:1rem}.wedding-card{background:var(--card-bg);border-radius:18px;box-shadow:var(--shadow-soft);gap:.5rem;padding:1rem;transition:all .2s ease}.wedding-card:hover{box-shadow:var(--shadow-medium)}.card-top{align-items:center}.card-client{font-size:1rem;font-weight:600}.card-date{color:var(--text-muted);font-size:.8rem}.card-middle{color:var(--text-muted);font-size:.85rem}.card-bottom{margin-top:.25rem}.wedding-table-header{transition:background .15s ease}.wedding-table-header:hover{background:#00000008}.wedding-table{border-collapse:collapse;width:100%}.wedding-table th{color:#6b7280;font-size:12px;letter-spacing:.04em;padding:16px;text-align:left}.wedding-table td{border-top:1px solid #e5e7eb;cursor:pointer;padding:18px 16px}.wedding-row{transition:background .15s ease,transform .1s ease}.wedding-row:hover{background:#f9fafb}.client-cell{min-width:220px}.client-name{color:#111827;font-weight:600}.client-sub{color:#6b7280;font-size:12px;margin-top:2px}.calendar-badge{border-radius:999px;display:inline-block;font-size:12px;font-weight:600;padding:6px 12px}.calendar-badge.synced{background:#10b9811f;color:#059669}.calendar-badge.not-synced{background:#f59e0b1f;color:#b45309}.action-cell{text-align:right;width:48px}.icon-btn.danger:hover{color:#dc2626}.wedding-table-header{background:linear-gradient(90deg,#2563eb0f,#2563eb05);border-bottom:1px solid #e5e7eb;padding:18px 20px}.form-field{font-size:13px}.pagination{align-items:center;display:flex;gap:12px;margin-top:16px}.page-btn{background:#fff;border:1px solid #d0d7de;border-radius:999px;cursor:pointer;font-weight:500;padding:6px 14px}.page-btn:disabled{cursor:not-allowed;opacity:.4}.page-info{color:#555;font-size:14px}.section-title{margin:32px 0 12px}.wedding-list .page-header{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.wedding-list .page-header h1{font-size:28px;font-weight:700;margin:0}.wedding-list .page-actions{display:flex;flex-wrap:wrap;gap:12px}@media(max-width:768px){.wedding-list .page-actions{flex-direction:row;justify-content:flex-start}}.section-title{font-size:18px;font-weight:600;margin:24px 0 12px}.section-title.muted{color:#6b7280}.wedding-cards{display:none}@media(max-width:768px){.wedding-cards{grid-gap:16px;display:grid;gap:16px;margin-bottom:24px;padding:0}}.wedding-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 6px 20px #0000000f;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:16px;transition:transform .15s ease,box-shadow .15s ease}.wedding-card:hover{box-shadow:0 10px 28px #00000014;transform:translateY(-2px)}.wedding-card:active{transform:scale(.985)}.card-top{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.card-client{color:#111827;font-size:16px;font-weight:700;line-height:1.2}.card-date{color:#6b7280;font-size:13px;white-space:nowrap}.card-middle{color:#374151;font-size:14px}.card-bottom{margin-top:6px}.package-pill{background:#2563eb1f;border-radius:999px;color:#2563eb;display:inline-block;font-size:12px;font-weight:600;padding:6px 12px}.desktop-only{display:block}.mobile-only{display:none}@media(max-width:768px){.desktop-only{display:none}.mobile-only{display:grid}}.empty-state{color:#6b7280;font-size:14px;padding:16px 0}.toast{animation:slideIn .25s ease;border-radius:12px;bottom:24px;box-shadow:0 10px 30px #00000026;font-size:14px;font-weight:600;padding:14px 18px;position:fixed;right:24px;z-index:9999}.toast-success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.toast-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}@keyframes slideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.create-panel{background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 10px 30px #0000000f;margin-bottom:24px;overflow:hidden}.create-panel-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:18px 20px}.create-panel-title{font-size:16px;font-weight:700}.icon-btn{background:none;border:none;color:#6b7280;cursor:pointer}.icon-btn:hover{color:#111827}.create-panel-body{padding:20px}.form-section{margin-bottom:20px}.form-label{color:#374151;display:block;font-size:13px;font-weight:600;margin-bottom:10px}.package-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr)}@media(max-width:1024px){.package-grid{grid-template-columns:repeat(2,1fr)}}.package-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;cursor:pointer;overflow:hidden;position:relative;transition:all .2s ease}.package-card:hover{box-shadow:0 10px 28px #0000001a;transform:translateY(-2px)}.package-card.selected{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb40}.package-image{height:140px;object-fit:cover;width:100%}.package-name{color:#111827;font-size:14px;font-weight:600;padding:12px}.package-badge{align-items:center;background:#2563ebf2;border-radius:999px;color:#fff;display:inline-flex;font-size:11px;font-weight:600;gap:6px;padding:6px 12px;position:absolute;right:10px;top:10px}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{color:#374151;font-size:13px;font-weight:600}.form-field input{border:1px solid #e5e7eb;border-radius:10px;font-size:14px;padding:10px 12px}.form-field input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26;outline:none}.create-panel-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}@media(max-width:640px){.package-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.package-image{height:120px}.package-name{font-size:13px;padding:10px}.package-badge{font-size:10px;padding:4px 10px}}.site-header{-webkit-backdrop-filter:saturate(180%) blur(6px);backdrop-filter:saturate(180%) blur(6px);background:#fffffff5;border-bottom:1px solid #0206170f;position:-webkit-sticky;position:sticky;top:0;z-index:1100}.site-header .header-inner{align-items:center;display:flex;justify-content:space-between;padding:1rem 2rem}.site-header .logo{width:100px}.site-header .nav a{color:#374151;font-size:14.5px;font-weight:500;letter-spacing:.02em;position:relative;transition:color .25s ease}.site-header .nav a:hover{color:#156496}.site-header .nav a:after{background:#156496;bottom:-6px;content:"";height:2px;left:0;position:absolute;transition:width .25s ease;width:0}.site-header .nav a:hover:after{width:100%}.site-header .nav{display:flex;gap:22px}.site-header .nav button{background:none;border:none;color:inherit;cursor:pointer;font:inherit;margin:0;padding:0}.site-header .nav a,.site-header .nav button{color:#374151;font-size:14.5px;font-weight:500;letter-spacing:.02em;position:relative;transition:color .25s ease}.site-header .nav a:hover,.site-header .nav button:hover{color:#156496}.site-header .nav a:after,.site-header .nav button:after{background:#156496;bottom:-6px;content:"";height:2px;left:0;position:absolute;transition:width .25s ease;width:0}.site-header .nav a:hover:after,.site-header .nav button:hover:after{width:100%}.site-header .actions{align-items:center;display:flex;gap:12px}.site-header .actions .btn-primary{background:#156496;border-radius:999px;color:#fff;font-size:14px;font-weight:600;letter-spacing:.02em;padding:10px 16px;transition:background .25s ease,transform .25s ease,box-shadow .25s ease}.site-header .actions .btn-primary:hover{background:#0f4f77;box-shadow:0 6px 18px #15649659;transform:translateY(-1px)}.site-header .actions .hamburger{background:#0000;border:none;cursor:pointer;display:none;height:20px;position:relative;width:28px}.site-header .actions .hamburger span{background:#374151;border-radius:2px;height:2.5px;left:0;position:absolute;transition:all .3s ease;width:100%}.site-header .actions .hamburger span:first-child{top:0}.site-header .actions .hamburger span:nth-child(2){top:8px}.site-header .actions .hamburger span:nth-child(3){top:16px}.site-header .actions .hamburger.open span:first-child{top:8px;transform:rotate(45deg)}.site-header .actions .hamburger.open span:nth-child(2){opacity:0}.site-header .actions .hamburger.open span:nth-child(3){top:8px;transform:rotate(-45deg)}@media(max-width:768px){.site-header .nav{align-items:center;background:#fffffffa;display:flex;flex-direction:column;gap:2rem;inset:0;justify-content:center;opacity:0;pointer-events:none;position:fixed;transform:translateY(-100%);transition:transform .45s ease,opacity .45s ease}.site-header .nav a{color:#1f2937;font-size:1.2rem;font-weight:600;opacity:0;transform:translateY(-10px);transition:opacity .4s ease,transform .4s ease}.site-header .nav.open{opacity:1;pointer-events:all;transform:translateY(0)}.site-header .nav.open a:first-child{opacity:1;transform:translateY(0);transition-delay:.1s}.site-header .nav.open a:nth-child(2){opacity:1;transform:translateY(0);transition-delay:.2s}.site-header .nav.open a:nth-child(3){opacity:1;transform:translateY(0);transition-delay:.3s}.site-header .nav.open a:nth-child(4){opacity:1;transform:translateY(0);transition-delay:.4s}.site-header .nav.open a:nth-child(5){opacity:1;transform:translateY(0);transition-delay:.5s}.site-header .actions .hamburger{display:block}.site-header .actions .btn-primary{display:none}.site-header .nav{align-items:center;background:#fffffffa;display:flex;flex-direction:column;gap:2rem;height:100vh;justify-content:center;left:0;opacity:0;padding:2rem;pointer-events:none;position:fixed;top:0;transform:translateY(-100%);transition:transform .4s ease,opacity .4s ease;width:100%;z-index:1100}.site-header .nav a{font-size:1.25rem;font-weight:600;opacity:0;transform:translateY(-10px);transition:opacity .4s ease,transform .4s ease}.site-header .nav.open{opacity:1;pointer-events:all;transform:translateY(0)}.site-header .nav.open a:first-child{opacity:1;transform:translateY(0);transition-delay:.1s}.site-header .nav.open a:nth-child(2){opacity:1;transform:translateY(0);transition-delay:.2s}.site-header .nav.open a:nth-child(3){opacity:1;transform:translateY(0);transition-delay:.3s}.site-header .nav.open a:nth-child(4){opacity:1;transform:translateY(0);transition-delay:.4s}.site-header .nav.open a:nth-child(5){opacity:1;transform:translateY(0);transition-delay:.5s}.site-header .actions .btn-primary,.site-header .actions .hamburger{display:block}.site-header .nav a,.site-header .nav button{font-size:1.25rem;font-weight:600;opacity:0;transform:translateY(-10px);transition:opacity .4s ease,transform .4s ease}.site-header .nav.open a,.site-header .nav.open button{opacity:1;transform:translateY(0)}}.site-footer{background:#0f172a;color:#fff;padding:40px 0}.site-footer .footer-inner{align-items:flex-start;display:flex;gap:24px;justify-content:space-between}.site-footer h4{margin:0 0 8px}.site-footer p{color:#cbd5e1;margin:0}@media(max-width:768px){.site-footer .footer-inner{align-items:center;flex-direction:column;text-align:center}}.topbar{background-color:#fff;border-bottom:1px solid #e9f0ee;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.topbar .topbar-container{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:8px 16px}.topbar .topbar-left{align-items:center;display:flex;flex-wrap:wrap;gap:20px}.topbar .topbar-item{align-items:center;color:#0e6154;display:flex;font-size:14px;gap:6px}.topbar .topbar-item svg{background:#e8f3f0;border-radius:50%;color:#0e6154;height:22px;padding:4px;width:22px}.topbar .topbar-right{align-items:center;display:flex;gap:20px}.topbar .topbar-lang{align-items:center;color:#0e6154;display:flex;font-weight:500;gap:5px}.topbar .topbar-lang svg{background:#e8f3f0;border-radius:50%;color:#0e6154;height:22px;padding:4px;width:22px}.topbar .topbar-social{align-items:center;display:flex;gap:12px}.topbar .topbar-social svg{background:#e8f3f0;border-radius:50%;color:#0e6154;cursor:pointer;height:28px;padding:6px;transition:.3s ease;width:28px}.topbar .topbar-social svg:hover{background:#0e6154;color:#fff}@media(max-width:768px){.topbar .topbar-container{align-items:center;flex-direction:column;gap:8px;margin-top:10px}.topbar .topbar-right{flex-direction:row;justify-content:center;width:100%}.topbar .topbar-left{display:none}.topbar .topbar-container{justify-content:flex-end}}.topbar-social{align-items:center;display:flex;gap:14px}.topbar-social a{align-items:center;color:#475569;display:flex;justify-content:center;transition:color .25s ease,transform .25s ease}.topbar-social a:hover{color:#156496;transform:translateY(-1px)}.topbar-logout{align-items:center;background:#0000;border:1px solid #fff6;border-radius:999px;color:#0e6154;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:8px;padding:6px 14px;transition:all .25s ease}.topbar-logout:hover{background:#31c3bb;border-color:#31c3bb;color:#fff;transform:translateY(-1px)}.hero{align-items:center;background:url(/static/media/hero.9ce84bb2ffb4f5b8a5be.png) no-repeat 50%/cover;color:#fff;display:flex;min-height:90vh;position:relative;z-index:1}.hero:before{background:#00000073;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:0}.hero .container{position:relative;z-index:2}.hero .hero-grid{grid-gap:2rem;align-items:center;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:4rem 1rem}.hero .hero-left h1{font-size:3rem;line-height:1.2;margin-bottom:1rem}.hero .hero-left .lead{font-size:1.125rem;margin-bottom:2rem}.hero .hero-ctas{display:flex;flex-wrap:wrap;gap:1rem}.hero .hero-ctas .btn{border-radius:8px;font-weight:600;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s ease}.hero .hero-ctas .btn.btn-primary{background:#156496;color:#fff}.hero .hero-ctas .btn.btn-primary:hover{background:#17e0f7}.hero .hero-ctas .btn.btn-outline{border:2px solid #fff;color:#fff}.hero .hero-ctas .btn.btn-outline:hover{background:#fff;color:#31c3bb}.hero .stats{display:flex;flex-wrap:wrap;gap:2rem;margin-top:3rem}.hero .stats div{text-align:center}.hero .stats div strong{display:block;font-size:2rem;font-weight:700}.hero .stats div span{font-size:.9rem;opacity:.8}@media(max-width:576px){.hero{min-height:75vh}.hero .hero-grid{gap:1.5rem;grid-template-columns:1fr;padding:1rem 2rem}.hero .hero-right{margin:0 auto;max-width:100%;order:-1}.hero .hero-right img{display:block;height:auto;max-width:100%}.hero .hero-left{order:0;text-align:center}.hero .hero-left h1{font-size:1.5rem!important}.hero .hero-left .lead{font-size:1rem;margin-bottom:1.5rem}.hero .hero-ctas{flex-direction:row;flex-wrap:nowrap;justify-content:space-around}.hero .hero-ctas .btn{font-size:.7rem;width:100%}.hero .stats{flex-direction:row;flex-wrap:nowrap;gap:.5rem;justify-content:space-between}.hero .stats div{text-align:center}.hero .stats div strong{font-size:1.3rem}}@media(min-width:577px)and (max-width:992px){.hero{min-height:85vh}.hero .hero-grid{padding:3rem 1.5rem}.hero .hero-left h1{font-size:2.5rem}}.interactive-text{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#31c3bb,#17e0f7);-webkit-background-clip:text;font-weight:700}.hero-right{position:relative}.hero-right img{height:auto;left:0;opacity:0;position:absolute;top:0;transition:opacity 1s ease-in-out;width:100%}.hero-right img.active{opacity:1;position:relative}.about{background:#fff;padding:80px 0}.about .about-grid{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:1.4fr 1fr}.about h2{color:#156496;font-size:36px;margin-bottom:20px}.about p{color:#374151;font-size:16px;line-height:1.7;margin-bottom:16px}.about .about-highlight{display:flex;justify-content:center}.about .highlight-card{background:#f8fafc;border-radius:18px;box-shadow:0 12px 30px #02061714,inset 0 0 0 1px #0000000a;max-width:320px;padding:32px 28px;text-align:center;width:100%}.about .highlight-card span{color:#6b7280;display:block;font-size:14px;letter-spacing:1px;margin-bottom:6px;text-transform:uppercase}.about .highlight-card strong{color:#111827;display:block;font-size:40px;font-weight:700;margin-bottom:10px}.about .highlight-card p{color:#6b7280;font-size:14px;margin:0}@media(max-width:900px){.about{padding:60px 0}.about .about-grid{gap:36px;grid-template-columns:1fr;text-align:center}.about h2{font-size:28px}.about p{font-size:15px}}.services{background:#f8fafc;padding:80px 0}.services .section-title{color:#156496;font-size:36px;font-weight:700;margin-bottom:8px;text-align:center}.services .subtitle{color:#6b7280;font-size:16px;margin-bottom:40px;text-align:center}.services .grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.services .card{background:#fff;border-radius:18px;box-shadow:0 8px 24px #0206170f;cursor:pointer;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.services .card:hover{box-shadow:0 14px 32px #0206171a;transform:translateY(-4px)}.services .card .card-media{height:180px;position:relative}.services .card .card-media img{height:100%;object-fit:cover;width:100%}.services .card .card-media .overlay{background:linear-gradient(180deg,#00000026,#00000073);inset:0;position:absolute}.services .card .card-body{padding:20px}.services .card .card-body .title-icon{align-items:center;display:flex;gap:10px;margin-bottom:6px}.services .card .card-body .title-icon .icon{color:#156496}.services .card .card-body .title-icon h3{color:#111827;font-size:20px;margin:0}.services .card .card-body p{color:#475569;font-size:14px;line-height:1.6}.services .modal{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1003}.services .modal-content{background:#fff;border-radius:20px;display:flex;flex-direction:column;max-height:85vh;max-width:720px;overflow:hidden;position:relative;width:100%}.services .close{background:none;border:none;color:#111827;cursor:pointer;font-size:28px;position:absolute;right:18px;top:14px}.services .modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;gap:12px;padding:20px 20px 12px}.services .modal-header .icon{color:#31c3bb;font-size:28px}.services .modal-header h3{color:#111827;font-size:22px;font-weight:600;margin:0}.services .modal-scroll{flex:1 1;overflow-y:auto;padding:16px 20px 120px}.services .modal-scroll p{color:#475569;font-size:15px;line-height:1.65;margin:6px 0}.services .modal-cta-bar{align-items:center;background:#fff;border-top:1px solid #e5e7eb;bottom:0;box-shadow:0 -6px 20px #0000000f;display:flex;gap:16px;justify-content:space-between;padding:16px 20px;position:-webkit-sticky;position:sticky}.services .modal-cta-bar .price{color:#156496;font-size:18px;font-weight:700}.services .modal-cta-bar .modal-cta{background:#31c3bb;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px 24px;transition:background .3s ease;white-space:nowrap}.services .modal-cta-bar .modal-cta:hover{background:#156496}@media(max-width:640px){.services .modal-content{max-height:90vh}.services .modal-cta-bar{align-items:stretch;flex-direction:column}.services .modal-cta-bar .price{font-size:20px;text-align:center}}@media(max-width:768px){.services{padding:60px 0}.services .grid{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory}.services .grid .card{flex:0 0 75%;scroll-snap-align:start}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.modal-cta-bar{align-items:center;background:#fff;border-top:1px solid #0f172a14;bottom:0;display:flex;gap:16px;justify-content:space-between;padding:16px;position:-webkit-sticky;position:sticky;z-index:2}.price{color:#156496;font-size:18px;font-weight:700}.ministry-info .ministry-label{color:#475569;font-size:14px;font-style:italic;font-weight:600}.modal-cta{background:#31c3bb;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px 22px;transition:all .25s ease;white-space:nowrap}.modal-cta:hover{background:#156496;transform:translateY(-1px)}.modal-cta.ministry{background:linear-gradient(135deg,#156496,#31c3bb)}.projects{background-color:#fff;padding:80px 0;text-align:center}.projects h2{color:#156496;font-size:36px;margin-bottom:10px}.projects .subtitle{color:#6b7280;font-size:16px;margin-bottom:40px}.projects .playlist-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);justify-items:center}.projects .playlist-card{align-items:center;background:#fff;border:1px solid #15649626;border-radius:16px;box-shadow:0 4px 14px #0206170f;display:flex;flex-direction:column;max-width:380px;padding:24px 20px 36px;transition:all .3s ease;width:100%}.projects .playlist-card:hover{border-color:#31c3bb;box-shadow:0 8px 24px #0206171a;transform:translateY(-4px)}.projects .playlist-card .playlist-header{margin-bottom:18px}.projects .playlist-card .playlist-header h3{color:#156496;font-size:22px;margin-bottom:6px}.projects .playlist-card .playlist-header p{color:#555;font-size:14px}.projects .playlist-card .video-container{border-radius:12px;box-shadow:0 4px 12px #0000001a;height:0;overflow:hidden;padding-bottom:56.25%;position:relative;width:100%}.projects .playlist-card .video-container iframe{border:none;border-radius:12px;height:100%;left:0;position:absolute;top:0;width:100%}.projects .playlist-card .youtube-btn{background:#31c3bb;border-radius:30px;color:#fff;display:inline-block;font-weight:600;margin-top:20px;padding:10px 20px;text-decoration:none;transition:all .3s ease}.projects .playlist-card .youtube-btn:hover{background:#156496;transform:translateY(-2px)}@media(max-width:1024px){.projects .playlist-grid{gap:20px;grid-template-columns:repeat(2,1fr)}.projects .playlist-card{max-width:100%}}@media(max-width:700px){.projects{padding:60px 0}.projects h2{font-size:28px}.projects .subtitle{font-size:14px;margin-bottom:30px}.projects .playlist-grid{gap:24px;grid-template-columns:1fr}.projects .playlist-card{padding:20px 16px 30px}.projects .playlist-card .playlist-header h3{font-size:18px}}.testimonials{background:linear-gradient(180deg,#f8fafc,#fff);overflow:hidden;padding:70px 0}.testimonials h2{color:#156496;margin-bottom:36px;text-align:center}.testimonials .carousel{display:flex;justify-content:center;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 6%,#000 94%,#0000);mask-image:linear-gradient(90deg,#0000 0,#000 6%,#000 94%,#0000);overflow:hidden;width:100%}.testimonials .track{animation:marquee 60s linear infinite;display:flex;gap:10px;width:-webkit-max-content;width:max-content;will-change:transform}.testimonials .carousel:hover .track{animation-play-state:paused}.testimonials .quote{background:#fff;border-radius:14px;box-shadow:0 8px 24px #0206170f;display:flex;flex-direction:column;justify-content:space-between;min-width:260px;padding:22px 20px;width:260px}.testimonials .quote p{color:#374151;font-size:15px;line-height:1.6;margin:12px 0 16px}.testimonials .quote cite{align-self:flex-end;color:#6b7280;font-size:14px;font-style:normal;font-weight:500}.testimonials .stars{color:#fbbf24;font-size:14px;letter-spacing:2px}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.contact{background:#fafafa;padding:70px 0}.contact .container{background:#fff;border-radius:16px;box-shadow:0 12px 32px #02061714;margin:0 auto;max-width:720px;padding:40px 36px}.contact h2{color:#156496;font-size:32px;margin-bottom:32px;text-align:center}@media(max-width:700px){.contact h2{font-size:28px}}.contact .contact-form{display:flex;flex-direction:column;gap:18px}.contact .contact-form label{color:#374151;font-size:14px;font-weight:600}.contact .contact-form input,.contact .contact-form select,.contact .contact-form textarea{border:1px solid #d1d5db;border-radius:10px;font-size:15px;outline:none;padding:12px 14px;transition:border-color .2s ease,box-shadow .2s ease}.contact .contact-form input:focus,.contact .contact-form select:focus,.contact .contact-form textarea:focus{border-color:#31c3bb;box-shadow:0 0 0 3px #8a2be21f}.contact .contact-form .row{display:flex;gap:16px}.contact .contact-form .row>div{display:grid;flex:1 1}@media(max-width:600px){.contact .contact-form .row{flex-direction:column}}.contact .contact-form .packages{grid-gap:14px;gap:14px;grid-template-columns:repeat(3,1fr)}.contact .contact-form .packages .package{background:#fff;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;overflow:hidden;transition:all .25s ease}.contact .contact-form .packages .package img{height:160px;object-fit:cover;width:100%}@media(max-width:600px){.contact .contact-form .packages .package img{height:160px}}.contact .contact-form .packages .package p{color:#374151;font-size:14px;font-weight:600;margin:10px;text-transform:capitalize}.contact .contact-form .packages .package:hover{border-color:#31c3bb;box-shadow:0 6px 20px #02061714;transform:translateY(-2px)}.contact .contact-form .packages .package.selected{background:#f7f3ff;border-color:#31c3bb}.contact .contact-form .packages{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}@media(max-width:768px){.contact .contact-form .packages{grid-template-columns:1fr}}.contact .contact-form .packages .package{display:flex;flex-direction:column;position:relative}.contact .contact-form .badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;line-height:1;padding:6px 14px;position:absolute;right:12px;top:12px;white-space:nowrap}.contact .contact-form .badge svg{flex-shrink:0}@media(max-width:768px){.contact .contact-form .badge{font-size:11px;padding:5px 12px;right:10px;top:10px}}.contact .contact-form .badge-ministry{background:#156496e6;left:10px}.contact .contact-form .badge-ministry,.contact .contact-form .badge-recommended{border-radius:999px;color:#fff;font-size:11px;font-weight:600;padding:4px 10px;position:absolute;top:10px}.contact .contact-form .badge-recommended{background:#31c3bbf2;right:10px}.contact .contact-form .badge-ministry,.contact .contact-form .badge-recommended{border-radius:999px;font-size:12px;font-weight:600;left:auto;max-width:calc(100% - 24px);padding:6px 14px;position:absolute;right:12px;top:12px;white-space:nowrap;width:-webkit-fit-content;width:fit-content}.contact .contact-form .package:hover .badge-ministry,.contact .contact-form .package:hover .badge-recommended{opacity:1}.contact .contact-form .package.selected{background:#f0fdfa;border-color:#31c3bb;box-shadow:0 0 0 2px #31c3bb40}@media(max-width:1024px){.contact .contact-form .badge-ministry,.contact .contact-form .badge-recommended{opacity:1!important;pointer-events:auto}}@media(max-width:640px){.contact .contact-form .badge-ministry,.contact .contact-form .badge-recommended{font-size:11px;padding:5px 12px;right:10px;top:10px}}@media(min-width:1024px){.contact .contact-form .badge{opacity:0;pointer-events:none;transform:translateY(-6px)}.contact .contact-form .package:hover .badge{opacity:1;pointer-events:auto;transform:translateY(0)}}.contact .contact-form .btn{background:#31c3bb;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-top:10px;padding:14px 24px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.contact .contact-form .btn:hover{background:#6a5acd;box-shadow:0 8px 24px #6a5acd59;transform:translateY(-2px)}.contact .contact-form .btn:disabled{cursor:not-allowed;opacity:.7}.contact .popup{animation:fade .35s ease-in-out;border-radius:12px;font-size:14px;font-weight:600;margin-top:20px;padding:14px 16px;text-align:center}.contact .popup.success{background:#ecfdf5;color:#065f46}.contact .popup.error{background:#fef2f2;color:#991b1b}.contact{opacity:0;transform:translateY(32px);transition:opacity .7s ease,transform .7s ease}.contact.visible{opacity:1;transform:translateY(0)}.contact-form small{color:#6b7280;font-size:12px;margin-top:-6px}.btn{align-items:center;display:flex;justify-content:center}.spinner{animation:spin .8s linear infinite;border:2px solid #fff6;border-radius:50%;border-top-color:#fff;height:18px;width:18px}@keyframes spin{to{transform:rotate(1turn)}}.instagram{background-color:#fff;opacity:0;padding:80px 0;text-align:center;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}.instagram.visible{opacity:1;transform:translateY(0)}.instagram h2{color:#156496;font-size:36px;margin-bottom:10px}.instagram .subtitle{color:#6b7280;font-size:16px;margin-bottom:40px}.instagram .instagram-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);margin-bottom:40px}.instagram .instagram-item{aspect-ratio:1/1;background:#000;border-radius:14px;box-shadow:0 4px 14px #0206170f;overflow:hidden;position:relative;transition:transform .3s ease}.instagram .instagram-item img{height:100%;object-fit:cover;transition:transform .35s ease;width:100%}.instagram .instagram-item:hover img{transform:scale(1.06)}.instagram .media-badge{background:#000000a6;border-radius:6px;bottom:10px;color:#fff;font-size:14px;line-height:1;padding:6px 8px;position:absolute;right:10px}.instagram .instagram-btn{background:#31c3bb;border-radius:30px;color:#fff;display:inline-block;font-weight:600;padding:12px 26px;text-decoration:none;transition:all .3s ease}.instagram .instagram-btn:hover{background:#156496;transform:translateY(-2px)}.instagram .instagram-skeleton{animation:shimmer 1.4s ease infinite;aspect-ratio:1/1;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 37%,#e5e7eb 63%);background-size:400% 100%;border-radius:14px}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(max-width:700px){.instagram{padding:60px 0}.instagram h2{font-size:28px}.instagram .subtitle{font-size:14px;margin-bottom:30px}.instagram .instagram-grid{gap:10px;grid-template-columns:repeat(2,1fr)}}.floating-whatsapp{align-items:center;animation:breathe 6s ease-in-out infinite;background:linear-gradient(135deg,#25d366,#1fa855);border-radius:50%;bottom:26px;box-shadow:0 10px 30px #00000038,inset 0 0 0 1px #ffffff2e;color:#fff;display:flex;height:56px;justify-content:center;position:fixed;right:22px;transition:transform .25s ease,box-shadow .25s ease;width:56px;z-index:1000}.floating-whatsapp svg{height:26px;width:26px}.floating-whatsapp:hover{box-shadow:0 16px 36px #00000052,inset 0 0 0 1px #ffffff40;transform:translateY(-4px)}.floating-whatsapp:hover .tooltip{opacity:1;transform:translateY(0)}.tooltip{background:#111827;border-radius:8px;color:#fff;font-size:13px;opacity:0;padding:6px 12px;pointer-events:none;position:absolute;right:72px;transform:translateY(6px);transition:all .25s ease;white-space:nowrap}@keyframes breathe{0%,to{box-shadow:0 10px 30px #00000038,inset 0 0 0 1px #ffffff2e}50%{box-shadow:0 14px 34px #00000047,inset 0 0 0 1px #ffffff40}}@media(max-width:640px){.floating-whatsapp{bottom:20px;height:52px;right:16px;width:52px}.floating-whatsapp svg{height:24px;width:24px}.tooltip{display:none}}.google-business{background:#fff;padding:80px 0;text-align:center}.google-business h2{color:#156496;font-size:34px;margin-bottom:10px}.google-business .subtitle{color:#6b7280;font-size:16px;margin-bottom:36px}.google-business .map-wrapper{border-radius:18px;box-shadow:0 12px 30px #02061714;margin:0 auto 28px;max-width:900px;overflow:hidden;padding-top:56%;position:relative;width:100%}.google-business .map-wrapper iframe{border:0;height:100%;inset:0;position:absolute;width:100%}.google-business .google-btn{background:#f8fafc;border-radius:999px;box-shadow:0 6px 20px #02061714;color:#111827;display:inline-block;font-size:14px;font-weight:600;padding:12px 26px;text-decoration:none;transition:all .25s ease}.google-business .google-btn:hover{box-shadow:0 12px 26px #0206171f;transform:translateY(-2px)}.pslist-wrapper{margin:0 auto;max-width:960px;padding:1rem}.pslist-wrapper .pslist-title{font-size:1.25rem;font-weight:700;margin-bottom:.75rem;text-align:center}.pslist-wrapper .pslist-error,.pslist-wrapper .pslist-loading{padding:1rem;text-align:center}.pslist-wrapper .pslist-table-wrap{border-radius:6px;box-shadow:0 1px 4px #0000000f;overflow-x:auto}.pslist-wrapper .pslist-table{border-collapse:collapse;width:100%}.pslist-wrapper .pslist-table td,.pslist-wrapper .pslist-table th{border:1px solid #0000000f;font-size:.95rem;padding:.6rem .8rem;text-align:left}.pslist-wrapper .pslist-table th{background:#f5f5f5;font-weight:600}.pslist-wrapper .pslist-table tr:nth-child(2n){background:#fbfbfb}.pslist-wrapper .pslist-table .ps-code{font-weight:600;text-align:center;width:80px}.pslist-wrapper .pslist-table .ps-not{font-family:monospace;text-align:center;width:160px}.pslist-row{cursor:pointer;transition:background .15s ease}.pslist-row:hover{background:#f0f8ff}.ps-modal-overlay{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.ps-modal{background:#fff;border-radius:12px;box-shadow:0 4px 10px #00000040;max-height:90vh;max-width:600px;overflow-y:auto;padding:1rem 1.5rem;position:relative;width:90%}.ps-modal .ps-modal-title{font-size:1.25rem;font-weight:700;margin-bottom:.5rem;text-align:center}.ps-modal .ps-modal-note{color:#555;margin-bottom:1rem;text-align:center}.ps-modal .ps-image-wrap{display:flex;justify-content:center}.ps-modal .ps-image-wrap img{border-radius:8px;box-shadow:0 2px 5px #00000026;max-width:100%}.ps-modal .ps-detail-link{color:#06c;display:block;margin-top:1rem;text-align:center;text-decoration:none}.ps-modal .ps-detail-link:hover{text-decoration:underline}.ps-modal .ps-close{background:none;border:none;color:#333;cursor:pointer;font-size:1.5rem;position:absolute;right:.75rem;top:.5rem}.pslist-search{margin:1rem 0;text-align:center}.pslist-search input{border:1px solid #ccc;border-radius:8px;font-size:1rem;max-width:400px;padding:.5rem 1rem;transition:all .2s ease;width:90%}.pslist-search input:focus{border-color:#07c;box-shadow:0 0 0 2px #0077cc26;outline:none}.pslist-empty{color:#777;font-style:italic;padding:1rem;text-align:center}.ps-fullscreen-overlay{align-items:center;background:#000000e6;cursor:zoom-out;display:flex;inset:0;justify-content:center;position:fixed;z-index:3000}.ps-fullscreen-image{border-radius:10px;box-shadow:0 0 20px #fff3;max-height:95%;max-width:95%}.ps-fullscreen-close{background:none;border:none;color:#fff;cursor:pointer;font-size:2rem;position:fixed;right:1.5rem;top:1rem;z-index:3100}.ps-pagination{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.ps-pagination button{background:#fff;border:1px solid #d1d5db;border-radius:999px;cursor:pointer;font-size:.9rem;padding:6px 14px}.ps-pagination button:disabled{cursor:not-allowed;opacity:.4}.ps-pagination button:hover:not(:disabled){background:#f3f4f6}.ps-detail-btn{background:#156496;border-radius:999px;color:#fff;font-size:13px;font-weight:600;padding:6px 12px;text-decoration:none;transition:background .2s ease}.ps-detail-btn:hover{background:#0f4f77}.choir-row{border-bottom:1px solid #e5e7eb;padding:12px 0}.choir-row:last-child{border-bottom:none}.choir-summary{align-items:center;display:flex;justify-content:space-between}.choir-summary-main{display:flex;flex-direction:column;gap:4px}.choir-summary-main strong{color:#0f172a;font-size:16px;font-weight:600}.choir-summary-main span{color:#475569;font-size:14px}.choir-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(6,1fr)}.choir-grid select{grid-column:span 1}.choir-grid input:first-of-type{grid-column:span 2}.choir-grid input:nth-of-type(2){grid-column:span 1}.choir-grid input:nth-of-type(3){grid-column:span 2}.choir-grid input:nth-of-type(4){grid-column:span 1}.choir-grid input,.choir-grid select{border:1px solid #e5e7eb;border-radius:10px;font-size:13px;padding:9px 12px}.choir-grid input:focus,.choir-grid select:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f;outline:none}.inline-check{align-items:center;display:flex;font-size:12px;gap:6px;grid-column:span 2}.inline-check.disabled{opacity:.5;pointer-events:none}.choir-actions-row{display:flex;gap:10px}.choir-actions-row .btn{border-radius:999px}.choir-footer{border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:14px;margin-top:20px;padding-top:16px}.choir-total{color:#0f172a;font-size:16px;font-weight:700}@media(max-width:768px){.choir-summary{align-items:flex-start;flex-direction:column;gap:8px}.choir-grid{grid-template-columns:1fr}.choir-grid input,.choir-grid select,.inline-check{grid-column:1/-1}.choir-actions-row,.choir-footer .btn{justify-content:center;width:100%}}.privacy-policy{background-color:#fafafa;color:#2b2b2b;padding:80px 20px}@media(max-width:768px){.privacy-policy{padding:60px 16px}}.privacy-container{margin:0 auto;max-width:860px}.privacy-container h1{font-size:42px;font-weight:500;letter-spacing:.5px;margin-bottom:8px}@media(max-width:768px){.privacy-container h1{font-size:32px}}.privacy-container .updated{color:#888;font-size:14px;margin-bottom:40px}.privacy-container section{margin-bottom:36px}.privacy-container section h2{font-size:20px;font-weight:600;margin-bottom:12px}.privacy-container section p{font-size:16px;line-height:1.8;margin-bottom:12px}.privacy-container section ul{padding-left:20px}.privacy-container section ul li{font-size:16px;line-height:1.8;list-style:disc;margin-bottom:6px}.login{align-items:center;background:linear-gradient(180deg,#f8fafc,#f1f5f9);display:flex;justify-content:center;min-height:100vh;padding:40px 20px}.login .login-card{animation:slideFade .6s ease forwards;background:#fff;border-radius:18px;box-shadow:0 18px 48px #0206171f;max-width:420px;padding:40px 36px;width:100%}@media(max-width:480px){.login .login-card{padding:32px 24px}}.login h2{color:#156496;font-size:28px;font-weight:700;letter-spacing:-.02em;margin-bottom:28px;text-align:center}@media(max-width:480px){.login h2{font-size:24px}}.login form{display:flex;flex-direction:column;gap:18px}.login label{color:#374151;font-size:13px;font-weight:600}.login input{border:1px solid #d1d5db;border-radius:12px;font-size:15px;padding:14px 16px;transition:border-color .2s ease,box-shadow .2s ease}.login input:focus{border-color:#31c3bb;box-shadow:0 0 0 3px #31c3bb40;outline:none}.login .error{animation:fade .3s ease;background:#fef2f2;border-radius:10px;color:#991b1b;font-size:13px;font-weight:600;padding:12px 14px;text-align:center}.login .btn-login{align-items:center;background:#31c3bb;border:none;border-radius:999px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;justify-content:center;margin-top:8px;padding:14px 24px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.login .btn-login:hover{background:#6a5acd;box-shadow:0 10px 28px #6a5acd59;transform:translateY(-2px)}.login .btn-login:disabled{cursor:not-allowed;opacity:.7}@keyframes slideFade{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
/*# sourceMappingURL=main.e4ab4151.css.map*/