:root{
 --burnt:#C4572E;--burnt-dark:#9d3f20;--navy:#1E2A44;--navy-2:#121c30;--taupe:#CBBBA0;--sage:#8FA187;--gold:#D4AF37;--cream:#F8F4EE;--paper:#fffdf9;--white:#fff;--ink:#27282c;--muted:#6f716f;--line:#e7dfd4;--danger:#a94442;--shadow:0 18px 50px rgba(30,42,68,.10);--radius:18px;--radius-sm:11px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--cream);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5}
a{color:var(--burnt-dark);text-decoration:none}a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit}button{cursor:pointer}
.app-body{min-height:100vh;background:linear-gradient(135deg,#fbf7f1 0%,#f4eee5 100%)}
.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}
.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--navy) 0%,var(--navy-2) 100%);color:#fff;padding:24px 18px;display:flex;flex-direction:column;z-index:30;overflow:auto}
.sidebar-brand{display:flex;align-items:center;gap:12px;padding:3px 8px 24px;border-bottom:1px solid rgba(255,255,255,.12)}
.sidebar-brand strong{display:block;font-family:Georgia,serif;font-size:18px}.sidebar-brand small{display:block;color:rgba(255,255,255,.62);font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-top:2px}
.brand-mark{width:112px;height:112px;border:1px solid rgba(212,175,55,.7);border-radius:50%;display:grid;place-items:center;font:700 36px Georgia,serif;color:var(--navy);background:rgba(255,255,255,.88);box-shadow:0 0 0 8px rgba(212,175,55,.12)}
.brand-mark span{color:var(--burnt)}.brand-mark.small{width:47px;height:47px;font-size:15px;flex:0 0 auto;box-shadow:0 0 0 4px rgba(212,175,55,.12)}
.sidebar-nav{display:grid;gap:6px;padding:22px 0;flex:1}.sidebar-nav a{display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.76);padding:12px 13px;border-radius:11px;font-weight:650;font-size:14px;transition:.18s ease}.sidebar-nav a:hover{background:rgba(255,255,255,.08);color:#fff;text-decoration:none}.sidebar-nav a.active{background:linear-gradient(90deg,var(--burnt),#d56a41);color:#fff;box-shadow:0 10px 25px rgba(196,87,46,.26)}.nav-icon{width:24px;text-align:center;color:var(--gold);font-size:18px}.sidebar-nav a.active .nav-icon{color:#fff}
.sidebar-footer{border-top:1px solid rgba(255,255,255,.12);padding:18px 8px 0}.user-chip{display:flex;align-items:center;gap:10px}.user-chip>span{width:38px;height:38px;border-radius:50%;background:var(--gold);color:var(--navy);display:grid;place-items:center;font-size:12px;font-weight:800}.user-chip strong,.user-chip small{display:block}.user-chip strong{font-size:13px}.user-chip small{color:rgba(255,255,255,.6);font-size:11px}.sidebar-footer .link-button{color:rgba(255,255,255,.67);margin-top:12px}
.main-panel{min-width:0}.topbar{min-height:102px;padding:24px 34px;background:rgba(255,253,249,.85);backdrop-filter:blur(14px);border-bottom:1px solid rgba(203,187,160,.42);display:flex;align-items:center;gap:18px;position:sticky;top:0;z-index:20}.topbar h1{font:700 31px Georgia,serif;color:var(--navy);margin:2px 0 0}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:10px;color:var(--burnt)}.quick-upload{margin-left:auto;background:var(--navy);color:#fff;padding:11px 17px;border-radius:999px;font-weight:750;font-size:13px;box-shadow:0 8px 20px rgba(30,42,68,.18)}.quick-upload:hover{text-decoration:none;background:var(--burnt)}.menu-toggle{display:none;background:none;border:0;font-size:24px;color:var(--navy)}
.content{padding:30px 34px 50px;max-width:1700px;margin:0 auto}.content>*+*{margin-top:22px}
.alert{border-radius:12px;padding:13px 15px;border:1px solid;font-weight:650;font-size:14px}.alert-success{background:#eef5ec;border-color:#bfd0b8;color:#3d5a39}.alert-error{background:#fff0ef;border-color:#efc0bd;color:#8e2e2b}.alert-warning{background:#fff8e2;border-color:#ead17b;color:#735f1a}.alert-info{background:#eef3f8;border-color:#c1cedd;color:#354d68}
.hero-card{background:linear-gradient(110deg,var(--navy),#2c3a57 70%,#354561);color:#fff;border-radius:24px;padding:30px 34px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero-card:after{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(212,175,55,.3);border-radius:50%;right:-65px;top:-95px;box-shadow:0 0 0 32px rgba(212,175,55,.07)}.hero-card h2{font:700 34px Georgia,serif;margin:6px 0}.hero-card p{margin:0;color:rgba(255,255,255,.7)}.hero-card .eyebrow{color:var(--gold)}.countdown{position:relative;z-index:1;display:grid;text-align:center;padding:12px 22px;border-left:1px solid rgba(255,255,255,.18)}.countdown strong{font:700 50px Georgia,serif;color:var(--gold);line-height:1}.countdown span{font-size:11px;text-transform:uppercase;letter-spacing:.13em;margin-top:6px}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.stat-grid.compact .stat-card{padding:19px}.stat-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:23px;box-shadow:0 10px 32px rgba(30,42,68,.06);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px}.accent-orange:before{background:var(--burnt)}.accent-navy:before{background:var(--navy)}.accent-sage:before{background:var(--sage)}.accent-gold:before{background:var(--gold)}.stat-card span,.stat-card small{display:block}.stat-card span{text-transform:uppercase;letter-spacing:.1em;font-weight:800;font-size:10px;color:var(--muted)}.stat-card strong{display:block;font:700 30px Georgia,serif;color:var(--navy);margin:7px 0 3px}.stat-card small{color:var(--muted);font-size:12px}
.dashboard-grid,.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:23px;box-shadow:0 10px 38px rgba(30,42,68,.055)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.panel-heading h3{font:700 23px Georgia,serif;color:var(--navy);margin:3px 0 0}.panel-heading>a{font-size:13px;font-weight:750}.panel>p{color:var(--muted)}
.form-panel{padding:0;overflow:hidden}.form-panel summary{padding:19px 23px;font:700 19px Georgia,serif;color:var(--navy);cursor:pointer;list-style:none;background:linear-gradient(90deg,rgba(203,187,160,.18),transparent);border-left:5px solid var(--burnt)}.form-panel summary::-webkit-details-marker{display:none}.form-panel form{padding:23px}.stack-form{display:grid;gap:16px}.stack-form label{display:grid;gap:6px;font-size:12px;font-weight:750;color:var(--navy)}input,select,textarea{width:100%;border:1px solid #d8cec0;background:#fff;border-radius:10px;padding:10px 12px;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--burnt);box-shadow:0 0 0 3px rgba(196,87,46,.12)}textarea{min-height:88px;resize:vertical}.form-grid{display:grid;gap:14px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.form-actions{display:flex;gap:10px;flex-wrap:wrap}.check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.check{display:flex!important;align-items:center;gap:8px!important;border:1px solid var(--line);padding:10px;border-radius:10px;background:#fff}.check input{width:auto}.check span{font-size:12px;color:var(--ink);font-weight:650}
.button{border:0;border-radius:10px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;text-decoration:none;transition:.16s ease}.button:hover{text-decoration:none;transform:translateY(-1px)}.button-primary{background:linear-gradient(135deg,var(--burnt),#d36b43);color:#fff;box-shadow:0 8px 20px rgba(196,87,46,.2)}.button-secondary{background:#fff;border:1px solid var(--taupe);color:var(--navy)}.button-block{width:100%}.link-button,.link-danger{background:none;border:0;padding:0;font-weight:750;font-size:12px}.link-button{color:var(--burnt-dark)}.link-danger{color:var(--danger)}
.filter-bar{display:flex;gap:10px;margin-bottom:18px}.filter-bar input{flex:1}.filter-bar select{max-width:220px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px}table{border-collapse:collapse;width:100%;min-width:950px;background:#fff}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #eee8df;vertical-align:middle;font-size:12px}th{background:#f4efe8;color:var(--navy);text-transform:uppercase;letter-spacing:.08em;font-size:9px;position:sticky;top:0}td strong,td small{display:block}td small{color:var(--muted);margin-top:2px}.actions{display:flex;gap:10px;align-items:center}.actions form{margin:0}.empty-state{padding:34px;text-align:center;color:var(--muted);border:1px dashed var(--taupe);border-radius:13px;background:#fcfaf6}
.badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.07em;background:#ece8e1;color:#5c5d5c;white-space:nowrap}.badge-accepted,.badge-completed,.badge-confirmed,.badge-paid,.badge-approved,.badge-selected{background:#e6efe3;color:#476144}.badge-pending,.badge-not-started,.badge-planned,.badge-researching,.badge-needs-review,.badge-not-sent{background:#eeeaf0;color:#655a6c}.badge-declined,.badge-cancelled,.badge-urgent,.badge-failed{background:#f8e6e4;color:#913d38}.badge-in-progress,.badge-contacted,.badge-quote-received,.badge-partially-paid,.badge-deposit-paid,.badge-sent,.badge-processing{background:#fff0e5;color:#9a4c26}.badge-high,.badge-waiting,.badge-booked,.badge-contract-signed,.badge-delivered,.badge-ready{background:#fff6d8;color:#7c651c}.badge-normal,.badge-maybe{background:#e8edf4;color:#435776}
.budget-bars{display:grid;gap:11px}.budget-bars div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:9px}.budget-bars span{color:var(--muted);font-size:13px}.budget-bars strong{color:var(--navy)}.progress-track{height:8px;background:#ebe5dc;border-radius:999px;overflow:hidden;margin:17px 0 8px}.progress-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--sage),var(--gold),var(--burnt));border-radius:inherit;transition:width .5s ease}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:15px 0}.mini-stats div{text-align:center;border:1px solid var(--line);border-radius:11px;padding:13px}.mini-stats strong,.mini-stats span{display:block}.mini-stats strong{font:700 24px Georgia,serif;color:var(--navy)}.mini-stats span{color:var(--muted);font-size:10px;text-transform:uppercase}
.timeline-list,.activity-list{display:grid;gap:12px}.timeline-list article{display:grid;grid-template-columns:62px 1fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:11px}.timeline-list time{font-weight:850;color:var(--burnt);font-size:12px}.timeline-list time small,.timeline-list div span{display:block;color:var(--muted);font-size:10px}.timeline-list div strong{font-size:13px}.activity-list article{display:flex;gap:10px;align-items:flex-start}.activity-dot{width:9px;height:9px;margin-top:5px;background:var(--sage);border-radius:50%;box-shadow:0 0 0 4px rgba(143,161,135,.15)}.activity-list strong,.activity-list small{display:block}.activity-list strong{font-size:12px}.activity-list small{color:var(--muted);font-size:10px}
.category-list{display:grid}.category-list article{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0}.category-list article>div{display:flex;align-items:center;gap:9px}.category-list article>div:last-child{display:grid;text-align:right}.category-list small{color:var(--muted)}.category-dot{width:9px;height:9px;border-radius:50%;background:var(--gold)}
.vendor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.vendor-card{border:1px solid var(--line);border-radius:15px;padding:18px;background:#fff;box-shadow:0 8px 25px rgba(30,42,68,.05)}.vendor-card-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.vendor-card-top>span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--burnt);font-weight:850}.vendor-card h3{font:700 21px Georgia,serif;color:var(--navy);margin:12px 0 2px}.vendor-card p{color:var(--muted);margin:0 0 12px}.vendor-contact{display:grid;gap:4px;font-size:12px}.vendor-money{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:14px 0;padding:12px 0}.vendor-money div:last-child{text-align:right}.vendor-money span,.vendor-money strong{display:block}.vendor-money span{font-size:9px;text-transform:uppercase;color:var(--muted)}.vendor-money strong{color:var(--navy)}.due-line{font-size:11px!important;color:var(--burnt)!important}
.task-list{display:grid}.task-row{display:grid;grid-template-columns:auto minmax(240px,1fr) 110px auto auto;gap:13px;align-items:center;padding:13px 4px;border-bottom:1px solid var(--line)}.task-check{width:28px;height:28px;border-radius:50%;border:2px solid var(--sage);background:#fff;color:#fff;font-weight:900}.task-complete .task-check{background:var(--sage)}.task-complete .task-main strong{text-decoration:line-through;color:var(--muted)}.task-main>div{display:flex;align-items:center;gap:8px}.task-main strong{font-size:13px}.task-main span{display:block;font-size:10px;color:var(--muted)}.task-date{font-size:11px;color:var(--muted)}.overdue-text{color:var(--danger);font-weight:800}
.calendar-list{display:grid}.date-divider{font:700 20px Georgia,serif;color:var(--burnt);margin:24px 0 8px;padding-bottom:7px;border-bottom:2px solid var(--taupe)}.calendar-list article{display:grid;grid-template-columns:100px minmax(260px,1fr) auto auto;gap:15px;align-items:center;padding:15px 5px;border-bottom:1px solid var(--line)}.calendar-list time strong,.calendar-list time span{display:block}.calendar-list time strong{color:var(--navy)}.calendar-list time span{color:var(--muted);font-size:10px}.calendar-list h4{margin:0;color:var(--navy)}.calendar-list p{margin:2px 0;color:var(--muted);font-size:12px}.calendar-list small{color:var(--muted)}
.seating-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.seat-card{text-align:center;border:1px solid var(--line);border-radius:15px;padding:18px;background:#fff}.seat-icon{width:84px;height:84px;border-radius:50%;border:8px double var(--gold);display:grid;place-items:center;margin:0 auto;color:var(--navy);font:700 17px Georgia,serif;background:#f7f2ea}.seat-icon.rectangle{border-radius:12px}.seat-icon.square{border-radius:2px}.seat-icon.head{border-radius:999px;width:120px;height:55px}.seat-icon.sweetheart{border-color:var(--burnt)}.seat-full .seat-icon{background:#f7e7e3;border-color:var(--burnt)}.seat-card h3{font:700 19px Georgia,serif;color:var(--navy);margin:12px 0 1px}.seat-card p{margin:0;color:var(--muted);font-size:11px}.inline-form{display:flex;gap:7px;align-items:center}.inline-form select{min-width:180px}
.upload-panel{border-top:5px solid var(--burnt)}.camera-drop{min-height:180px!important;border:2px dashed var(--taupe);border-radius:18px;background:linear-gradient(135deg,#fff,#faf5ed);display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;cursor:pointer;color:var(--navy)!important}.camera-drop:hover{border-color:var(--burnt);background:#fff8f4}.camera-drop input{position:absolute;opacity:0;pointer-events:none}.camera-icon{font-size:42px;color:var(--burnt)}.camera-drop strong{font:700 20px Georgia,serif}.camera-drop small,.file-selection{color:var(--muted);font-size:11px}.file-selection{margin-top:7px;color:var(--burnt);font-weight:800}.document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.document-card{display:flex;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.document-type{width:66px;display:grid;place-items:center;background:var(--navy);color:var(--gold);font:700 16px Georgia,serif;letter-spacing:.08em}.document-body{padding:15px;flex:1;min-width:0}.document-title{display:flex;align-items:center;justify-content:space-between;gap:9px}.document-title h3{font:700 18px Georgia,serif;color:var(--navy);margin:0;overflow:hidden;text-overflow:ellipsis}.document-body p{margin:3px 0;color:var(--muted);font-size:11px}.document-body small{display:block;color:var(--muted);font-size:9px}.extracted-line{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.extracted-line strong{color:var(--burnt)}.extracted-line span{font-size:10px;color:var(--muted)}.duplicate-flag{display:inline-flex;margin-top:8px;padding:4px 7px;background:#fff5d7;color:#735f1a;border-radius:999px;font-size:9px;font-weight:800}.document-actions{display:flex;align-items:center;gap:10px;margin-top:11px;font-size:11px}.document-actions form{margin:0}.review-panel{border-top:5px solid var(--gold)}.ocr-text pre{white-space:pre-wrap;max-height:280px;overflow:auto;background:#101827;color:#dce7f4;border-radius:10px;padding:14px;font-size:11px}
.palette-showcase{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.palette-showcase article{text-align:center;border:1px solid var(--line);border-radius:12px;padding:10px}.palette-showcase strong,.palette-showcase span{display:block}.palette-showcase strong{font-size:10px;margin-top:7px}.palette-showcase span{font-size:9px;color:var(--muted)}.swatch{display:block;width:100%;height:55px;border-radius:8px}.swatch.burnt{background:var(--burnt)}.swatch.navy{background:var(--navy)}.swatch.taupe{background:var(--taupe)}.swatch.sage{background:var(--sage)}.swatch.gold{background:var(--gold)}.security-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.security-list li{display:flex;gap:10px;align-items:flex-start;font-size:12px}.security-list span{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--sage);color:#fff;font-weight:800;flex:0 0 auto}
.muted{color:var(--muted)}.security-note{text-align:center;font-size:10px;color:var(--muted);margin-top:18px}
.login-body{min-height:100vh;background:linear-gradient(120deg,var(--cream),#eee4d6)}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(420px,.75fr)}.login-art{background:linear-gradient(135deg,rgba(30,42,68,.96),rgba(30,42,68,.88)),radial-gradient(circle at 20% 20%,var(--burnt),transparent 45%);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px;position:relative;overflow:hidden}.login-art h1{font:700 51px Georgia,serif;margin:24px 0 8px}.login-art>p:not(.eyebrow){color:rgba(255,255,255,.67);font-size:16px}.login-art .eyebrow{color:var(--gold);margin-top:30px}.palette-dots{display:flex;gap:10px;margin-top:28px}.palette-dots i{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.45)}.palette-dots i:nth-child(1){background:var(--burnt)}.palette-dots i:nth-child(2){background:var(--navy)}.palette-dots i:nth-child(3){background:var(--taupe)}.palette-dots i:nth-child(4){background:var(--sage)}.palette-dots i:nth-child(5){background:var(--gold)}.floating-ring{position:absolute;border:1px solid rgba(212,175,55,.22);border-radius:50%}.ring-one{width:380px;height:380px;left:-150px;bottom:-120px;box-shadow:0 0 0 55px rgba(212,175,55,.04)}.ring-two{width:240px;height:240px;right:-75px;top:-80px;box-shadow:0 0 0 35px rgba(196,87,46,.07)}.login-card{display:flex;flex-direction:column;justify-content:center;padding:65px clamp(35px,7vw,100px);background:rgba(255,253,249,.96)}.login-card h2{font:700 39px Georgia,serif;color:var(--navy);margin:5px 0 7px}.login-card .muted{margin-bottom:22px}.login-card .brand-mark{margin:0 auto}
.sidebar-scrim{display:none}
@media(max-width:1250px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vendor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.seating-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-295px;transition:left .2s ease;width:280px}.sidebar.open{left:0}.sidebar-scrim{position:fixed;inset:0;background:rgba(10,17,29,.55);z-index:25}.sidebar-scrim.show{display:block}.menu-toggle{display:block}.content{padding:24px 20px 40px}.topbar{padding:20px}.topbar h1{font-size:26px}.quick-upload{font-size:0;padding:10px 13px}.quick-upload:after{content:"＋ Scan";font-size:12px}.dashboard-grid,.settings-grid{grid-template-columns:1fr}.form-grid.four,.form-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}.document-grid{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr}.login-art{min-height:380px}.login-card{padding:45px 25px}.seating-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.stat-grid,.stat-grid.compact{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:16px}.stat-card strong{font-size:23px}.hero-card{padding:24px;align-items:flex-start}.hero-card h2{font-size:26px}.countdown{padding:6px 0 6px 16px}.countdown strong{font-size:36px}.panel{padding:17px}.form-panel form{padding:17px}.form-grid.two,.form-grid.three,.form-grid.four,.form-grid.five{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}.filter-bar{display:grid}.filter-bar select{max-width:none}.vendor-grid,.seating-grid{grid-template-columns:1fr}.task-row{grid-template-columns:auto 1fr auto}.task-date,.task-row>.badge{display:none}.calendar-list article{grid-template-columns:75px 1fr}.calendar-list article>.badge,.calendar-list article>a{grid-column:2}.palette-showcase{grid-template-columns:repeat(2,1fr)}.login-art{min-height:330px;padding:35px 20px}.login-art h1{font-size:36px}.brand-mark{width:92px;height:92px}.topbar{min-height:84px}.content{padding:18px 13px 35px}.panel-heading{align-items:flex-start}.document-card{display:block}.document-type{width:100%;height:38px}.inline-form{display:grid}.inline-form select{min-width:0}.stat-grid.compact .stat-card small{display:none}}
.rsvp-body{min-height:100vh;background:linear-gradient(135deg,var(--navy),#2f3d59 58%,var(--burnt));padding:32px 16px}.rsvp-shell{width:min(920px,100%);margin:0 auto}.rsvp-header{text-align:center;color:#fff;padding:25px 15px}.rsvp-header .brand-mark{margin:0 auto;width:92px;height:92px;font-size:28px}.rsvp-header .eyebrow{color:var(--gold);margin-top:24px}.rsvp-header h1{font:700 43px Georgia,serif;margin:8px 0}.rsvp-header p{color:rgba(255,255,255,.73)}.rsvp-card{background:var(--paper);border-radius:24px;padding:clamp(22px,5vw,48px);box-shadow:0 30px 80px rgba(0,0,0,.28)}.rsvp-card h2{font:700 31px Georgia,serif;color:var(--navy);margin:5px 0}.rsvp-guest-card{border:1px solid var(--line);border-left:5px solid var(--burnt);border-radius:14px;padding:18px;background:#fff}.rsvp-guest-card h3{font:700 22px Georgia,serif;color:var(--navy);margin:0 0 14px}.two-checks{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:650px){.rsvp-body{padding:10px}.rsvp-header h1{font-size:34px}.rsvp-card{border-radius:18px}.two-checks{grid-template-columns:1fr}}

/* V1.1 shared-account, Excel import, and luxury command-center upgrade */
.ambient-layer{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}.ambient-layer i{position:absolute;width:42vw;height:42vw;border-radius:50%;filter:blur(90px);opacity:.075;animation:ambientFloat 18s ease-in-out infinite}.ambient-layer i:nth-child(1){background:var(--burnt);left:-18vw;top:-16vw}.ambient-layer i:nth-child(2){background:var(--gold);right:-20vw;top:22vh;animation-delay:-6s}.ambient-layer i:nth-child(3){background:var(--sage);left:28vw;bottom:-30vw;animation-delay:-12s}.app-shell,.login-shell{position:relative;z-index:1}
.sidebar-vow{display:flex;align-items:center;justify-content:center;gap:9px;padding:16px 5px 2px;color:rgba(255,255,255,.54);font:700 9px/1 Georgia,serif;letter-spacing:.22em}.sidebar-vow i{color:var(--gold);font-style:normal;font-size:9px}.build-stamp{display:block!important;margin-top:10px!important;color:rgba(255,255,255,.34)!important;font-size:8px!important;letter-spacing:.1em;text-transform:uppercase}
.topbar-actions{display:flex;align-items:center;gap:12px}.secure-live{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(143,161,135,.36);border-radius:999px;background:rgba(143,161,135,.11);color:#53634f;font-size:10px;font-weight:800;letter-spacing:.04em;white-space:nowrap}.secure-live i{width:7px;height:7px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 5px rgba(143,161,135,.13);animation:securePulse 2s ease-in-out infinite}.topbar-secure{background:#f0f5ee}.button-small{padding:8px 11px!important;font-size:10px!important}
.hero-extreme{position:relative;isolation:isolate;overflow:hidden;min-height:245px;background:radial-gradient(circle at 78% 22%,rgba(212,175,55,.19),transparent 28%),linear-gradient(125deg,#101a2d 0%,var(--navy) 48%,#2f3a51 100%);border:1px solid rgba(212,175,55,.26);box-shadow:0 28px 70px rgba(30,42,68,.23)}.hero-extreme:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 15%,rgba(255,255,255,.055) 48%,transparent 70%);transform:translateX(-120%);animation:heroShine 9s ease-in-out infinite;z-index:-1}.hero-copy{position:relative;z-index:3;max-width:650px}.hero-extreme h2{font-size:clamp(36px,5vw,62px);letter-spacing:-.035em}.hero-extreme h2 em{color:var(--gold);font-weight:400}.hero-extreme h3{margin:0 0 8px;color:#f4df9a;font:600 15px Georgia,serif;letter-spacing:.08em;text-transform:uppercase}.hero-monogram{position:absolute;right:13%;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.055);font:700 clamp(100px,15vw,210px)/1 Georgia,serif;z-index:-1}.hero-monogram span{color:rgba(212,175,55,.10);font-size:.48em}.hero-orbit{position:absolute;border:1px solid rgba(212,175,55,.20);border-radius:50%;z-index:-1}.orbit-a{width:390px;height:390px;right:-115px;top:-200px;box-shadow:0 0 0 45px rgba(212,175,55,.025)}.orbit-b{width:260px;height:260px;right:20%;bottom:-210px;border-color:rgba(196,87,46,.22);box-shadow:0 0 0 36px rgba(196,87,46,.025)}.hero-status-line{display:flex;flex-wrap:wrap;gap:9px 18px;margin-top:22px;color:rgba(255,255,255,.71);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.09em}.hero-status-line span{display:flex;align-items:center;gap:7px}.hero-status-line i{width:7px;height:7px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 4px rgba(143,161,135,.13)}
.command-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:17px 0}.command-actions a{position:relative;display:flex;align-items:center;gap:13px;min-height:84px;padding:16px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,#fff,#fbf6ef);box-shadow:0 10px 28px rgba(30,42,68,.07);overflow:hidden;color:var(--navy);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.command-actions a:after{content:"";position:absolute;right:-28px;bottom:-28px;width:80px;height:80px;border:1px solid rgba(212,175,55,.22);border-radius:50%}.command-actions a:hover{transform:translateY(-3px);border-color:rgba(196,87,46,.42);box-shadow:0 17px 36px rgba(30,42,68,.12);text-decoration:none}.command-actions>a>span{width:43px;height:43px;display:grid;place-items:center;flex:0 0 auto;border-radius:13px;background:var(--navy);color:var(--gold);font-size:20px}.command-actions strong,.command-actions small{display:block}.command-actions strong{font:700 14px Georgia,serif}.command-actions small{margin-top:3px;color:var(--muted);font-size:9px}
.panel-intro{max-width:850px;margin:-4px 0 20px;color:var(--muted);font-size:12px}.accounts-panel{position:relative;overflow:hidden;border-top:5px solid var(--gold)}.accounts-panel:after{content:"JACKSON";position:absolute;right:-18px;top:5px;color:rgba(30,42,68,.028);font:700 86px Georgia,serif;pointer-events:none}.account-layout{position:relative;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(315px,.55fr);gap:20px;z-index:1}.member-list{display:grid;gap:12px}.member-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(135deg,#fff,#fcf8f1);box-shadow:0 9px 25px rgba(30,42,68,.055)}.member-card.member-disabled{opacity:.62;filter:grayscale(.45)}.member-avatar{width:50px;height:50px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--navy),#384967);color:var(--gold);font:700 16px Georgia,serif;box-shadow:0 0 0 4px rgba(212,175,55,.13)}.member-info{min-width:0}.member-title{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.member-title h4{margin:0;color:var(--navy);font:700 17px Georgia,serif}.member-info>a{display:block;overflow:hidden;text-overflow:ellipsis;color:var(--burnt-dark);font-size:11px}.member-info small{display:block;margin-top:3px;color:var(--muted);font-size:9px}.you-badge{padding:3px 7px;border-radius:999px;background:var(--navy);color:#fff;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.member-tools{position:relative}.member-tools>summary{list-style:none;padding:7px 10px;border:1px solid var(--line);border-radius:9px;color:var(--navy);font-size:10px;font-weight:800;cursor:pointer}.member-tools>summary::-webkit-details-marker{display:none}.member-tools[open]>summary{background:var(--navy);color:#fff}.member-tools-body{position:absolute;right:0;top:calc(100% + 8px);width:min(340px,78vw);padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 25px 65px rgba(20,28,45,.22);z-index:20}.mini-account-form{display:grid;gap:9px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--line)}.danger-link{color:var(--danger)!important}.create-member-card{padding:22px;border-radius:18px;background:radial-gradient(circle at 90% 8%,rgba(212,175,55,.22),transparent 28%),linear-gradient(145deg,var(--navy),#111b2e);color:#fff;box-shadow:0 24px 55px rgba(30,42,68,.24)}.create-member-card .eyebrow{color:var(--gold)}.create-member-card h4{margin:3px 0 5px;font:700 26px Georgia,serif}.create-member-card>p:not(.eyebrow){color:rgba(255,255,255,.67);font-size:11px}.create-member-card label{color:rgba(255,255,255,.78)}.create-member-card input,.create-member-card select{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.96)}.account-crest{width:86px;height:86px;display:flex;align-items:center;justify-content:center;gap:4px;margin:0 auto 18px;border:1px solid rgba(212,175,55,.64);border-radius:50%;box-shadow:0 0 0 7px rgba(212,175,55,.08);font:700 25px Georgia,serif}.account-crest i{color:var(--gold);font-style:normal;font-size:15px}.form-help{display:block;color:rgba(255,255,255,.54);font-size:9px;text-align:center}.palette-panel{overflow:hidden}.luxury-quote{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:15px;padding:15px;border:1px solid rgba(212,175,55,.28);border-radius:13px;background:linear-gradient(135deg,rgba(212,175,55,.08),rgba(196,87,46,.06));color:var(--navy);font:700 24px Georgia,serif}.luxury-quote i{color:var(--burnt);font-style:normal}.luxury-quote small{margin-left:8px;color:var(--muted);font:600 10px Inter,system-ui,sans-serif}
.import-center{border-top:5px solid var(--sage);overflow:hidden}.import-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.7fr);gap:24px;align-items:center}.import-intro-grid h4{margin:0 0 6px;color:var(--navy);font:700 25px Georgia,serif}.import-feature-list{display:grid;gap:8px;margin:18px 0 0;padding:0;list-style:none}.import-feature-list li{position:relative;padding-left:25px;color:var(--muted);font-size:11px}.import-feature-list li:before{content:"✓";position:absolute;left:0;top:-1px;width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:var(--sage);color:#fff;font-size:10px;font-weight:900}.spreadsheet-drop{padding:18px;border:1px solid rgba(143,161,135,.38);border-radius:17px;background:linear-gradient(145deg,#f6faf4,#fff);box-shadow:0 12px 32px rgba(30,42,68,.075)}.spreadsheet-drop>label{position:relative;min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px;border:2px dashed rgba(143,161,135,.52);border-radius:13px;cursor:pointer}.spreadsheet-drop>label:hover{border-color:var(--burnt);background:#fffaf6}.spreadsheet-drop input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.spreadsheet-drop strong,.spreadsheet-drop small{display:block}.spreadsheet-drop strong{margin-top:10px;color:var(--navy);font:700 15px Georgia,serif}.spreadsheet-drop small{color:var(--muted);font-size:9px}.spreadsheet-drop .button{margin-top:10px}.sheet-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#496b49,#2e5531);color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em;box-shadow:0 9px 22px rgba(46,85,49,.22)}.import-ready-banner{display:flex;align-items:center;gap:13px;padding:14px;margin-bottom:18px;border:1px solid rgba(143,161,135,.36);border-radius:14px;background:#f3f8f1}.import-ready-banner strong,.import-ready-banner span{display:block}.import-ready-banner strong{color:var(--navy);font:700 16px Georgia,serif}.import-ready-banner span{color:var(--muted);font-size:10px}.mapping-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:18px 0 10px}.mapping-head h4{margin:0;color:var(--navy);font:700 21px Georgia,serif}.mapping-head p{max-width:520px;margin:0;color:var(--muted);font-size:10px}.mapping-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:15px;border:1px solid var(--line);border-radius:15px;background:#fbf8f3}.mapping-field{padding:9px;border-radius:9px;background:#fff;border:1px solid #eee7de}.mapping-field.mapping-important{border-color:rgba(196,87,46,.38);box-shadow:inset 0 3px 0 rgba(196,87,46,.55)}.mapping-field select{margin-top:5px}.import-preview-table{max-height:360px}.import-actions{position:sticky;bottom:0;padding:13px;margin:0 -2px -2px;background:rgba(255,253,249,.94);backdrop-filter:blur(8px);border-top:1px solid var(--line)}
.extreme-login .login-art{background:radial-gradient(circle at 18% 20%,rgba(196,87,46,.26),transparent 25%),radial-gradient(circle at 82% 80%,rgba(143,161,135,.18),transparent 27%),linear-gradient(135deg,#0d1628 0%,var(--navy) 54%,#2a354c 100%)}.login-crest{position:relative;width:130px;height:130px;color:var(--navy);font-size:39px;box-shadow:0 0 0 9px rgba(212,175,55,.08),0 0 60px rgba(212,175,55,.15)}.login-crest:before,.login-crest:after{content:"";position:absolute;inset:-18px;border:1px solid rgba(212,175,55,.20);border-radius:50%;animation:crestSpin 22s linear infinite}.login-crest:after{inset:-32px;border-style:dashed;animation-direction:reverse;animation-duration:34s}.extreme-login .login-art h1{margin-bottom:0;font-size:clamp(44px,6vw,72px)}.extreme-login .login-art h1 em{color:var(--gold);font-weight:400}.extreme-login .login-art h2{margin:0;color:rgba(255,255,255,.92);font:700 clamp(27px,3.5vw,43px) Georgia,serif;letter-spacing:.28em;text-transform:uppercase;text-indent:.28em}.login-subtitle{margin-top:13px!important;text-transform:uppercase;letter-spacing:.17em;font-size:10px!important}.login-feature-ribbon{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:28px;padding:10px 14px;border-top:1px solid rgba(212,175,55,.26);border-bottom:1px solid rgba(212,175,55,.26);color:rgba(255,255,255,.63);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.login-feature-ribbon i{color:var(--gold);font-style:normal}.login-stars i{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px var(--gold);animation:starTwinkle 3s ease-in-out infinite}.login-stars i:nth-child(1){left:12%;top:17%}.login-stars i:nth-child(2){left:24%;bottom:18%;animation-delay:-1s}.login-stars i:nth-child(3){right:17%;top:22%;animation-delay:-2s}.login-stars i:nth-child(4){right:31%;bottom:12%;animation-delay:-.5s}.login-stars i:nth-child(5){left:45%;top:9%;animation-delay:-1.5s}.login-stars i:nth-child(6){right:8%;top:55%;animation-delay:-2.5s}.ring-three{width:540px;height:540px;right:-380px;bottom:-300px;border-color:rgba(143,161,135,.18)}.login-card-topline{display:flex;align-items:center;gap:10px;margin-bottom:22px;color:var(--gold)}.login-card-topline span{height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--gold))}.login-card-topline span:last-child{background:linear-gradient(90deg,var(--gold),transparent)}.luxury-login-form input{min-height:52px;border-radius:12px}.glow-button{min-height:52px;box-shadow:0 13px 34px rgba(196,87,46,.27);transition:transform .18s ease,box-shadow .18s ease}.glow-button:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(196,87,46,.34)}.security-seal{display:flex;align-items:center;gap:11px;margin-top:20px;padding:12px;border:1px solid rgba(143,161,135,.30);border-radius:12px;background:#f4f8f2}.security-seal>span{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--sage);color:#fff;font-weight:900}.security-seal strong,.security-seal small{display:block}.security-seal strong{color:var(--navy);font-size:11px}.security-seal small{color:var(--muted);font-size:8px}
@keyframes ambientFloat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(4vw,3vh,0) scale(1.12)}}@keyframes securePulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.82)}}@keyframes heroShine{0%,65%{transform:translateX(-120%)}85%,100%{transform:translateX(140%)}}@keyframes crestSpin{to{transform:rotate(360deg)}}@keyframes starTwinkle{0%,100%{opacity:.25;transform:scale(.7)}50%{opacity:1;transform:scale(1.6)}}
@media(max-width:1180px){.command-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.mapping-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.account-layout{grid-template-columns:1fr}.create-member-card{max-width:620px}}
@media(max-width:820px){.topbar-secure{display:none}.import-intro-grid{grid-template-columns:1fr}.mapping-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-card{grid-template-columns:auto minmax(0,1fr)}.member-tools{grid-column:1/-1}.member-tools-body{position:static;width:100%;margin-top:8px}.hero-monogram{right:-8%}}
@media(max-width:650px){.command-actions{grid-template-columns:1fr}.command-actions a{min-height:72px}.hero-extreme{min-height:315px;display:block}.hero-extreme .countdown{margin-top:18px;border-left:0;border-top:1px solid rgba(255,255,255,.16);padding:14px 0 0}.hero-status-line{display:grid}.mapping-grid{grid-template-columns:1fr}.mapping-head{display:block}.mapping-head>p{margin-top:5px}.member-card{grid-template-columns:auto minmax(0,1fr)}.member-info{grid-column:2}.member-tools{grid-column:1/-1}.luxury-quote{flex-wrap:wrap}.luxury-quote small{width:100%;margin:4px 0 0;text-align:center}.extreme-login .login-art h2{letter-spacing:.18em;text-indent:.18em}.topbar-actions{gap:4px}}
@media(prefers-reduced-motion:reduce){.ambient-layer i,.secure-live i,.hero-extreme:before,.login-crest:before,.login-crest:after,.login-stars i{animation:none!important}.command-actions a,.glow-button{transition:none!important}}
.import-mapping-form{position:relative}


/* V1.2 luxury Jackson crest and streamlined settings */
.sidebar-crest{width:64px;height:64px;flex:0 0 64px;filter:drop-shadow(0 10px 18px rgba(0,0,0,.24));transition:transform .25s ease,filter .25s ease}.sidebar-brand:hover .sidebar-crest{transform:scale(1.05) rotate(-1deg);filter:drop-shadow(0 14px 24px rgba(0,0,0,.32))}.sidebar-brand{padding-top:0;padding-bottom:20px}.sidebar-brand strong{font-size:17px;line-height:1.15}.sidebar-brand small{font-size:9px;letter-spacing:.14em;margin-top:5px}.sidebar-vow{padding-top:13px;color:rgba(255,255,255,.47)}
.settings-grid-single{grid-template-columns:minmax(0,1fr)}.settings-grid-single>.panel{position:relative;overflow:hidden}.settings-grid-single>.panel:after{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(212,175,55,.20);border-radius:50%;right:-120px;top:-135px;box-shadow:0 0 0 25px rgba(212,175,55,.045);pointer-events:none}.wedding-identity-grid input[readonly]{background:linear-gradient(135deg,#fbf8f1,#f4eee3);color:var(--muted);cursor:default}
.account-layout{grid-template-columns:minmax(0,1fr)}.add-user-drawer{border:1px solid rgba(212,175,55,.34);border-radius:16px;background:linear-gradient(145deg,#fffdf9,#f8f2e9);overflow:hidden}.add-user-drawer>summary{display:flex;align-items:center;gap:14px;padding:17px 19px;cursor:pointer;list-style:none;color:var(--navy)}.add-user-drawer>summary::-webkit-details-marker{display:none}.add-user-drawer>summary>span{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,var(--burnt),#d56a41);color:#fff;font-size:23px;line-height:1;box-shadow:0 9px 22px rgba(196,87,46,.22)}.add-user-drawer>summary strong,.add-user-drawer>summary small{display:block}.add-user-drawer>summary strong{font:700 17px Georgia,serif}.add-user-drawer>summary small{margin-top:2px;color:var(--muted);font-size:10px}.add-user-drawer[open]>summary{border-bottom:1px solid var(--line);background:rgba(212,175,55,.06)}.add-user-form{padding:20px}.drawer-help{color:var(--muted);font-size:9px}.accounts-panel{background:radial-gradient(circle at 100% 0,rgba(212,175,55,.10),transparent 24%),var(--paper)}
.hero-extreme{min-height:255px;padding-left:42px}.hero-extreme .hero-copy{position:relative;z-index:2}.hero-extreme h2{margin-top:0;text-shadow:0 8px 28px rgba(0,0,0,.28)}.hero-extreme h2:after{content:"";display:block;width:92px;height:3px;margin-top:15px;border-radius:999px;background:linear-gradient(90deg,var(--burnt),var(--gold))}.hero-extreme h3{margin-top:16px}.hero-extreme:after{width:320px;height:320px;right:-86px;top:-120px;box-shadow:0 0 0 28px rgba(212,175,55,.055),0 0 0 58px rgba(143,161,135,.035)}
.login-crest-image{position:relative;width:156px;height:156px;object-fit:contain;filter:drop-shadow(0 20px 38px rgba(0,0,0,.38));animation:crestFloat 7s ease-in-out infinite}.extreme-login .login-art h1{margin-top:22px}.login-art .eyebrow{margin-top:18px}.login-art:after{content:"";position:absolute;inset:28px;border:1px solid rgba(212,175,55,.12);pointer-events:none}.login-card{position:relative}.login-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(var(--gold),var(--burnt),var(--sage))}
@keyframes crestFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(max-width:820px){.sidebar-crest{width:56px;height:56px;flex-basis:56px}.hero-extreme{padding-left:28px}.login-crest-image{width:132px;height:132px}}
@media(max-width:650px){.wedding-identity-grid,.add-user-form .form-grid.two{grid-template-columns:1fr}.hero-extreme{padding:27px 24px}.login-art:after{inset:14px}.sidebar-brand strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){.login-crest-image{animation:none}.sidebar-crest{transition:none}}

.rsvp-crest{width:128px;height:128px;object-fit:contain;margin:0 auto 14px;filter:drop-shadow(0 16px 28px rgba(0,0,0,.28))}

/* V1.3 — Smart document intelligence, master calendar, and luxury planning suite */
:root{--deep-navy:#0d1729;--navy-glow:#2c3b5d;--soft-gold:#ead58a;--glass:rgba(255,253,249,.84)}
.content{max-width:1680px;margin:0 auto;padding-bottom:60px}
.panel{border-color:rgba(203,187,160,.58);box-shadow:0 20px 55px rgba(30,42,68,.09),0 1px 0 rgba(255,255,255,.85) inset}
.panel-heading h3{font-size:clamp(20px,2vw,27px)}
.button-large{min-height:52px;padding:14px 23px;font-weight:850;letter-spacing:.02em}
.form-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.topbar{background:linear-gradient(90deg,rgba(255,253,249,.93),rgba(248,244,238,.87));box-shadow:0 8px 30px rgba(30,42,68,.045)}
.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),var(--burnt),transparent);opacity:.48}
.sidebar{background:radial-gradient(circle at 50% -5%,rgba(212,175,55,.13),transparent 28%),linear-gradient(180deg,#1e2a44 0%,#111b2e 100%)}
.sidebar-nav a{position:relative;overflow:hidden}.sidebar-nav a:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.1),transparent 75%);transform:translateX(-120%);transition:transform .55s ease}.sidebar-nav a:hover:after{transform:translateX(120%)}
.hero-crest-watermark{position:absolute;right:9%;top:50%;width:230px;height:230px;object-fit:contain;opacity:.11;transform:translateY(-50%) rotate(4deg);filter:grayscale(1) brightness(4);z-index:1;pointer-events:none}
.hero-extreme{background:radial-gradient(circle at 78% 16%,rgba(212,175,55,.15),transparent 25%),radial-gradient(circle at 13% 85%,rgba(196,87,46,.22),transparent 30%),linear-gradient(135deg,#0e182a 0%,#1e2a44 52%,#303a50 100%)}
.hero-extreme:before{opacity:.5}.hero-extreme .countdown{z-index:2}

/* Dashboard intelligence */
.planner-intelligence{display:grid;grid-template-columns:180px minmax(0,1fr) minmax(260px,340px);gap:28px;align-items:center;margin:22px 0;padding:26px 28px;border:1px solid rgba(212,175,55,.32);border-radius:24px;background:radial-gradient(circle at 0 0,rgba(196,87,46,.1),transparent 27%),radial-gradient(circle at 100% 100%,rgba(143,161,135,.12),transparent 30%),linear-gradient(140deg,#fffdf9,#f5efe5);box-shadow:0 24px 65px rgba(30,42,68,.11);position:relative;overflow:hidden}
.planner-intelligence:before{content:"";position:absolute;inset:9px;border:1px solid rgba(212,175,55,.11);border-radius:17px;pointer-events:none}
.readiness-ring{--ring-size:145px;width:var(--ring-size);height:var(--ring-size);margin:auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--burnt) calc(var(--readiness)*1%),rgba(30,42,68,.09) 0);position:relative;box-shadow:0 16px 40px rgba(196,87,46,.18)}
.readiness-ring:before{content:"";position:absolute;inset:11px;border-radius:50%;background:linear-gradient(145deg,#fff,#f2eadf);box-shadow:inset 0 0 0 1px rgba(212,175,55,.32)}
.readiness-ring>div{position:relative;text-align:center}.readiness-ring strong,.readiness-ring span{display:block}.readiness-ring strong{font:800 36px Georgia,serif;color:var(--navy)}.readiness-ring span{max-width:90px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.12em}
.readiness-detail h3{margin:3px 0 17px;color:var(--navy);font:700 25px Georgia,serif}.readiness-bars{display:grid;gap:9px}.readiness-bars>div{display:grid;grid-template-columns:135px minmax(90px,1fr) 42px;gap:10px;align-items:center;font-size:10px}.readiness-bars span{color:var(--muted);font-weight:750}.readiness-bars i{height:7px;background:#e8e0d5;border-radius:99px;overflow:hidden}.readiness-bars b{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--burnt),var(--gold));box-shadow:0 0 12px rgba(196,87,46,.25)}.readiness-bars strong{color:var(--navy);text-align:right}
.attention-center{position:relative;z-index:1;padding:17px;border-left:1px solid rgba(203,187,160,.55)}.attention-center>.eyebrow{margin-bottom:9px}.attention-center a{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid rgba(203,187,160,.38);color:var(--ink)}.attention-center a:last-child{border-bottom:0}.attention-center a:hover{text-decoration:none;color:var(--burnt)}.attention-center a strong{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font:700 18px Georgia,serif}.attention-center a span{font-size:11px;font-weight:760}

/* Smart vault */
.vault-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:32px;align-items:center;padding:34px 38px;margin-bottom:20px;border-radius:26px;color:#fff;background:radial-gradient(circle at 85% 15%,rgba(212,175,55,.24),transparent 25%),radial-gradient(circle at 12% 100%,rgba(196,87,46,.26),transparent 30%),linear-gradient(135deg,#0e1829,#1e2a44 60%,#34405a);box-shadow:0 26px 70px rgba(30,42,68,.22)}
.vault-hero:before{content:"";position:absolute;width:420px;height:420px;right:-220px;top:-230px;border:1px solid rgba(212,175,55,.28);border-radius:50%;box-shadow:0 0 0 34px rgba(212,175,55,.045),0 0 0 70px rgba(212,175,55,.025)}
.vault-hero h2{margin:5px 0 11px;font:700 clamp(31px,4vw,50px) Georgia,serif;line-height:1.08;max-width:850px}.vault-hero p:not(.eyebrow){max-width:850px;color:rgba(255,255,255,.68);font-size:13px}.vault-hero .eyebrow{color:var(--soft-gold)}
.vault-orb{width:174px;height:174px;margin:auto;border-radius:50%;display:grid;place-items:center;text-align:center;position:relative;background:conic-gradient(var(--gold) calc(var(--confidence)*1%),rgba(255,255,255,.12) 0);box-shadow:0 0 45px rgba(212,175,55,.19)}.vault-orb:before{content:"";position:absolute;inset:10px;border-radius:50%;background:linear-gradient(145deg,#1b2944,#111a2c);box-shadow:inset 0 0 0 1px rgba(212,175,55,.28)}.vault-orb strong,.vault-orb span{position:relative;display:block}.vault-orb strong{font:700 37px Georgia,serif;color:#fff}.vault-orb span{max-width:105px;color:rgba(255,255,255,.59);font-size:8px;text-transform:uppercase;letter-spacing:.12em}
.vault-stats{margin-bottom:20px}
.smart-upload{overflow:hidden;background:radial-gradient(circle at 100% 0,rgba(212,175,55,.08),transparent 25%),var(--paper)}.smart-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:99px;background:#edf4e9;color:#52664c;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.smart-badge i{width:7px;height:7px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 5px rgba(143,161,135,.14);animation:securePulse 2.4s ease-in-out infinite}
.smart-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:6px 0 22px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#faf6f0}.smart-steps>div{position:relative;display:grid;grid-template-columns:38px 1fr;column-gap:10px;padding:17px 16px;border-right:1px solid var(--line)}.smart-steps>div:last-child{border-right:0}.smart-steps b{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--gold);font:700 14px Georgia,serif}.smart-steps strong{color:var(--navy);font-size:12px}.smart-steps span{color:var(--muted);font-size:8px}
.camera-drop-extreme{position:relative;overflow:hidden;min-height:205px;border:1px dashed rgba(196,87,46,.55);background:radial-gradient(circle at 50% 50%,rgba(212,175,55,.09),transparent 28%),linear-gradient(145deg,#fffdf9,#f5eee3)}.camera-drop-extreme:before,.camera-drop-extreme:after{content:"";position:absolute;width:44px;height:44px;border-color:var(--gold);opacity:.65}.camera-drop-extreme:before{left:18px;top:18px;border-left:2px solid;border-top:2px solid}.camera-drop-extreme:after{right:18px;bottom:18px;border-right:2px solid;border-bottom:2px solid}.camera-drop-extreme:hover{border-color:var(--burnt);box-shadow:0 18px 45px rgba(196,87,46,.12)}.camera-drop-extreme .camera-icon{font-size:48px;color:var(--burnt);filter:drop-shadow(0 10px 20px rgba(196,87,46,.18))}.camera-scan-line{position:absolute;left:14%;right:14%;top:25%;height:2px;background:linear-gradient(90deg,transparent,var(--burnt),var(--gold),transparent);box-shadow:0 0 16px rgba(196,87,46,.5);animation:scanLine 3.4s ease-in-out infinite;pointer-events:none}.upload-preview-strip{display:flex;gap:10px;overflow:auto}.upload-preview-strip img,.upload-preview-strip .file-preview-tile{width:92px;height:72px;object-fit:cover;border:1px solid var(--line);border-radius:10px;background:#f7f1e9;padding:4px}.file-preview-tile{display:grid;place-items:center;color:var(--navy);font-weight:800;font-size:10px;text-align:center}.smart-upload-note{display:flex;align-items:flex-start;gap:11px;padding:13px 15px;border:1px solid rgba(143,161,135,.33);border-radius:13px;background:#f3f7f0}.smart-upload-note>span{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:var(--sage);color:#fff;font-weight:900}.smart-upload-note p{margin:0;color:var(--muted);font-size:10px}.smart-upload-note strong{color:var(--navy)}
.smart-review{padding-bottom:0;overflow:hidden}.review-head-actions{display:flex;align-items:center;gap:13px}.confidence-pill{display:inline-flex;padding:7px 11px;border-radius:99px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.confidence-high{background:#eaf3e5;color:#52664c}.confidence-medium{background:#fff4d5;color:#80661c}.confidence-low{background:#f9e8e2;color:#9d3f20}.smart-processing-callout{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 18px;padding:14px 16px;border-radius:13px;background:#fff4dc;border:1px solid rgba(212,175,55,.38)}.smart-processing-callout strong,.smart-processing-callout span{display:block}.smart-processing-callout strong{color:var(--navy)}.smart-processing-callout span{color:var(--muted);font-size:9px}
.review-workspace{display:grid;grid-template-columns:minmax(230px,330px) minmax(0,1fr);gap:24px;margin:0 -24px;padding:24px;background:linear-gradient(145deg,#f4eee5,#fbf8f3)}.document-preview{position:sticky;top:125px;align-self:start;padding:14px;border:1px solid rgba(203,187,160,.6);border-radius:17px;background:#fff;box-shadow:0 16px 42px rgba(30,42,68,.09)}.document-preview>img{width:100%;max-height:430px;object-fit:contain;border-radius:11px;background:#f3eee7}.pdf-preview{min-height:260px;display:grid;place-items:center;text-align:center;padding:25px;border:1px solid var(--line);border-radius:11px;background:linear-gradient(145deg,#1e2a44,#34405a);color:#fff}.pdf-preview span{width:70px;height:70px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;font:700 20px Georgia,serif;color:var(--gold)}.pdf-preview strong{font-size:11px;word-break:break-word}.pdf-preview small{color:rgba(255,255,255,.6)}.file-facts{margin:12px 0 0}.file-facts>div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:8px}.file-facts dt{color:var(--muted)}.file-facts dd{margin:0;text-align:right;font-weight:760;color:var(--navy)}
.document-review-form{min-width:0}.review-fieldset{margin:0;padding:18px;border:1px solid rgba(203,187,160,.62);border-radius:16px;background:#fff}.review-fieldset legend{padding:0 9px;color:var(--burnt);font:700 17px Georgia,serif}.auto-link-fieldset{background:radial-gradient(circle at 100% 0,rgba(212,175,55,.08),transparent 24%),#fff}.automation-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.check-card{display:flex!important;align-items:flex-start;gap:11px;padding:12px!important;border:1px solid var(--line);border-radius:12px;background:#fbf8f3;cursor:pointer}.check-card:hover{border-color:rgba(196,87,46,.42);background:#fff}.check-card input{width:17px!important;height:17px;min-height:0!important;margin-top:2px}.check-card strong,.check-card small{display:block}.check-card strong{color:var(--navy);font-size:10px}.check-card small{margin-top:2px;color:var(--muted);font-size:8px}.review-save-bar{position:sticky;bottom:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 -24px;padding:15px 24px;background:rgba(255,253,249,.93);backdrop-filter:blur(14px);border-top:1px solid rgba(203,187,160,.55);box-shadow:0 -12px 30px rgba(30,42,68,.07)}.review-save-bar strong,.review-save-bar span{display:block}.review-save-bar strong{color:var(--navy)}.review-save-bar span{color:var(--muted);font-size:9px}
.document-filter-group{display:flex;flex-wrap:wrap;gap:5px}.document-filter-group button{border:1px solid var(--line);border-radius:99px;background:#fff;padding:7px 10px;color:var(--muted);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.document-filter-group button.active{background:var(--navy);border-color:var(--navy);color:#fff}.document-grid-luxury{grid-template-columns:repeat(3,minmax(0,1fr))}.document-card-v13{display:block;padding:0;overflow:hidden}.document-card-v13.is-hidden{display:none}.document-thumb{height:150px;background:#ebe4da;overflow:hidden}.document-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.document-card-v13:hover .document-thumb img{transform:scale(1.045)}.document-thumb-pdf{display:grid;place-items:center;background:radial-gradient(circle at 50% 50%,rgba(212,175,55,.18),transparent 28%),linear-gradient(145deg,#1e2a44,#34405a)}.document-thumb-pdf span{width:68px;height:68px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font:700 18px Georgia,serif}.document-kicker{display:flex;justify-content:space-between;margin-bottom:6px;color:var(--muted);font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.11em}.extracted-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}.extracted-grid>div{padding:8px;border-radius:9px;background:#f7f2eb}.extracted-grid span,.extracted-grid strong{display:block}.extracted-grid span{color:var(--muted);font-size:7px;text-transform:uppercase}.extracted-grid strong{color:var(--navy);font-size:12px}

/* Full calendar */
.calendar-hero{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:16px;padding:29px 33px;border-radius:24px;color:#fff;background:radial-gradient(circle at 83% 18%,rgba(212,175,55,.24),transparent 24%),linear-gradient(135deg,#101b2e,#1e2a44 58%,#34405a);box-shadow:0 22px 60px rgba(30,42,68,.2);position:relative;overflow:hidden}.calendar-hero:after{content:"";position:absolute;width:260px;height:260px;right:-125px;bottom:-180px;border:1px solid rgba(212,175,55,.3);border-radius:50%;box-shadow:0 0 0 25px rgba(212,175,55,.05)}.calendar-hero h2{margin:3px 0 7px;font:700 clamp(33px,4vw,48px) Georgia,serif}.calendar-hero p:not(.eyebrow){margin:0;color:rgba(255,255,255,.64);font-size:11px}.calendar-hero .eyebrow{color:var(--soft-gold)}.calendar-hero-actions{display:flex;gap:9px;position:relative;z-index:1}.calendar-hero .button-secondary{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.24)}
.calendar-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:17px}.calendar-stat-grid article{padding:16px 18px;border:1px solid rgba(203,187,160,.55);border-radius:15px;background:linear-gradient(145deg,#fff,#faf6f0);box-shadow:0 10px 28px rgba(30,42,68,.06)}.calendar-stat-grid span,.calendar-stat-grid strong,.calendar-stat-grid small{display:block}.calendar-stat-grid span{color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.1em;font-weight:850}.calendar-stat-grid strong{margin:3px 0;color:var(--navy);font:700 28px Georgia,serif}.calendar-stat-grid small{color:var(--muted);font-size:8px}
.calendar-event-editor{border-top:4px solid var(--gold)}.inline-check-label{display:flex;flex-direction:column}.inline-check{min-height:43px;display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff}.inline-check input{width:auto;min-height:0}.danger-zone-inline{text-align:right;margin-top:-8px}.danger-text{color:var(--danger)!important}
.calendar-command{padding:0;overflow:hidden}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 20px;border-bottom:1px solid var(--line);background:linear-gradient(145deg,#fffdf9,#f8f3ec)}.month-nav{display:flex;align-items:center;gap:15px}.month-nav>a{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);font-size:25px}.month-nav>a:hover{text-decoration:none;background:var(--navy);color:#fff}.month-nav h3{margin:1px 0 0;color:var(--navy);font:700 25px Georgia,serif}.calendar-filters{display:flex;flex-wrap:wrap;gap:6px}.calendar-filters button{padding:7px 11px;border:1px solid var(--line);border-radius:99px;background:#fff;color:var(--muted);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.calendar-filters button.active{background:var(--navy);border-color:var(--navy);color:#fff}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px}.month-calendar{min-width:0;border-right:1px solid var(--line)}.weekday-row{display:grid;grid-template-columns:repeat(7,1fr);background:var(--navy);color:rgba(255,255,255,.72)}.weekday-row>div{padding:10px;text-align:center;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.11em;border-right:1px solid rgba(255,255,255,.08)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day{min-height:145px;padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;transition:background .18s ease,box-shadow .18s ease}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#f7f2eb}.calendar-day.outside .day-number{opacity:.45}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--gold);background:#fffdf3}.calendar-day.selected{background:#f6f8f3;box-shadow:inset 0 0 0 2px var(--sage)}.day-number{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;color:var(--navy)}.day-number:hover{text-decoration:none}.day-number>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font:700 14px Georgia,serif}.calendar-day.today .day-number>span{background:var(--burnt);color:#fff}.day-number small{font-size:6px;text-transform:uppercase;letter-spacing:.08em;color:var(--burnt)}.day-events{display:grid;gap:4px}.calendar-chip{display:block;min-width:0;padding:5px 6px;border-left:3px solid var(--navy);border-radius:6px;background:#f2f4f7;color:var(--ink);font-size:7px}.calendar-chip:hover{text-decoration:none;filter:brightness(.98)}.calendar-chip span,.calendar-chip strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-chip span{color:var(--muted);font-size:6px;text-transform:uppercase}.calendar-chip strong{font-size:7px}.calendar-chip.color-burnt{border-color:var(--burnt);background:#faeee9}.calendar-chip.color-sage{border-color:var(--sage);background:#f0f4ee}.calendar-chip.color-gold{border-color:var(--gold);background:#fff8df}.calendar-chip.color-taupe{border-color:#a8916e;background:#f6f0e7}.calendar-chip.is-filtered{display:none}.more-events{font-size:7px;font-weight:800;color:var(--burnt)}
.day-agenda{padding:20px;background:radial-gradient(circle at 100% 0,rgba(212,175,55,.09),transparent 25%),#fbf8f3}.day-agenda-head{position:relative;padding-bottom:14px;border-bottom:1px solid var(--line)}.day-agenda-head h3{margin:3px 0;color:var(--navy);font:700 22px Georgia,serif}.day-agenda-head>a{position:absolute;right:0;top:8px;font-size:10px;font-weight:850}.day-agenda-list{display:grid;gap:8px;margin-top:13px}.day-agenda-list>a{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink)}.day-agenda-list>a:hover{text-decoration:none;border-color:rgba(196,87,46,.35)}.day-agenda-list i{width:7px;height:38px;border-radius:99px;background:var(--navy)}.day-agenda-list i.color-burnt{background:var(--burnt)}.day-agenda-list i.color-sage{background:var(--sage)}.day-agenda-list i.color-gold{background:var(--gold)}.day-agenda-list i.color-taupe{background:var(--taupe)}.day-agenda-list strong,.day-agenda-list span{display:block}.day-agenda-list strong{font-size:10px}.day-agenda-list span{color:var(--muted);font-size:7px}.calendar-legend{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:18px;padding-top:13px;border-top:1px solid var(--line)}.calendar-legend span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:7px;text-transform:uppercase;font-weight:800}.calendar-legend i{width:8px;height:8px;border-radius:50%;background:var(--navy)}.calendar-legend i.task{background:var(--sage)}.calendar-legend i.payment{background:var(--burnt)}.calendar-legend i.rsvp{background:var(--taupe)}
.master-timeline{margin-top:18px}.timeline-range{color:var(--muted);font-size:9px}.master-timeline-list>h4{margin:20px 0 8px;padding-bottom:7px;border-bottom:1px solid var(--line);color:var(--navy);font:700 18px Georgia,serif}.master-timeline-list>a{display:grid;grid-template-columns:90px 12px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 4px;color:var(--ink);border-bottom:1px solid rgba(231,223,212,.7)}.master-timeline-list>a:hover{text-decoration:none;background:#fbf8f3}.master-timeline-list time strong,.master-timeline-list time span,.master-timeline-list div small,.master-timeline-list div strong,.master-timeline-list div span{display:block}.master-timeline-list time strong{color:var(--navy);font:700 16px Georgia,serif}.master-timeline-list time span,.master-timeline-list div small,.master-timeline-list div span{color:var(--muted);font-size:8px}.master-timeline-list>a>i{width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(212,175,55,.14)}.master-timeline-list div>strong{font-size:11px}
@keyframes scanLine{0%,100%{top:24%;opacity:.25}50%{top:73%;opacity:1}}

@media(max-width:1320px){.planner-intelligence{grid-template-columns:150px minmax(0,1fr)}.attention-center{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.attention-center>.eyebrow{grid-column:1/-1}.attention-center a{border:1px solid var(--line);border-radius:10px;padding:9px}.document-grid-luxury{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-layout{grid-template-columns:minmax(0,1fr) 285px}.calendar-day{min-height:125px}}
@media(max-width:1050px){.review-workspace{grid-template-columns:1fr}.document-preview{position:static;display:grid;grid-template-columns:180px 1fr;gap:12px}.document-preview>img,.pdf-preview{grid-row:1/4;max-height:240px}.calendar-layout{grid-template-columns:1fr}.month-calendar{border-right:0}.day-agenda{border-top:1px solid var(--line)}.calendar-day{min-height:115px}.form-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}.smart-steps{grid-template-columns:repeat(2,1fr)}.smart-steps>div:nth-child(2){border-right:0}.smart-steps>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:820px){.vault-hero{grid-template-columns:1fr;text-align:center}.vault-hero p{margin-left:auto;margin-right:auto}.vault-orb{width:145px;height:145px}.planner-intelligence{grid-template-columns:1fr;text-align:center}.readiness-detail{text-align:left}.attention-center{display:grid}.calendar-hero{align-items:flex-start;flex-direction:column}.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-filters{width:100%;overflow:auto;flex-wrap:nowrap}.month-calendar{overflow-x:auto}.weekday-row,.calendar-grid{min-width:780px}.calendar-stat-grid{grid-template-columns:repeat(2,1fr)}.automation-options{grid-template-columns:1fr}.document-grid-luxury{grid-template-columns:1fr}.form-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.vault-hero,.calendar-hero{padding:25px 22px}.vault-hero h2{font-size:34px}.smart-steps{grid-template-columns:1fr}.smart-steps>div{border-right:0;border-bottom:1px solid var(--line)}.smart-steps>div:last-child{border-bottom:0}.smart-steps>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.review-workspace{margin:0 -16px;padding:16px}.document-preview{display:block}.document-preview>img{max-height:320px}.review-save-bar{position:static;display:block;margin:0 -16px;padding:15px 16px}.review-save-bar .button{width:100%;margin-top:10px}.form-grid.five{grid-template-columns:1fr}.calendar-stat-grid{grid-template-columns:1fr 1fr}.calendar-hero-actions{width:100%}.calendar-hero-actions .button{flex:1}.attention-center{grid-template-columns:1fr}.readiness-bars>div{grid-template-columns:105px 1fr 38px}.hero-crest-watermark{right:-12%;width:180px}.master-timeline-list>a{grid-template-columns:70px 10px minmax(0,1fr)}.master-timeline-list .badge{display:none}}
@media(prefers-reduced-motion:reduce){.camera-scan-line,.smart-badge i{animation:none}.document-thumb img{transition:none}}

/* ========================================================================== */
/* V1.4 Luxury profiles, live presence, clickable calendar, fireflies, footer */
/* ========================================================================== */
.app-shell,.login-shell,.jackson-page-footer{position:relative;z-index:2}
.firefly-field{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:1;opacity:.8}
.firefly-field i{position:absolute;width:4px;height:4px;border-radius:50%;background:#f8dc68;box-shadow:0 0 7px 2px rgba(248,220,104,.65),0 0 20px 5px rgba(212,175,55,.22);animation:fireflyFloat 13s ease-in-out infinite,fireflyPulse 3.4s ease-in-out infinite}
.firefly-field i:nth-child(1){left:4%;top:14%;animation-delay:-1s,-.5s}.firefly-field i:nth-child(2){left:10%;top:72%;animation-delay:-8s,-2s}.firefly-field i:nth-child(3){left:17%;top:39%;animation-delay:-4s,-1.4s}.firefly-field i:nth-child(4){left:22%;top:84%;animation-delay:-11s,-.3s}.firefly-field i:nth-child(5){left:29%;top:18%;animation-delay:-6s,-2.6s}.firefly-field i:nth-child(6){left:34%;top:61%;animation-delay:-2s,-1s}.firefly-field i:nth-child(7){left:40%;top:32%;animation-delay:-9s,-2.1s}.firefly-field i:nth-child(8){left:45%;top:89%;animation-delay:-5s,-.8s}.firefly-field i:nth-child(9){left:51%;top:10%;animation-delay:-12s,-1.6s}.firefly-field i:nth-child(10){left:56%;top:55%;animation-delay:-7s,-2.7s}.firefly-field i:nth-child(11){left:61%;top:75%;animation-delay:-3s,-.2s}.firefly-field i:nth-child(12){left:66%;top:26%;animation-delay:-10s,-1.9s}.firefly-field i:nth-child(13){left:71%;top:91%;animation-delay:-1.5s,-1.1s}.firefly-field i:nth-child(14){left:76%;top:43%;animation-delay:-6.7s,-2.3s}.firefly-field i:nth-child(15){left:81%;top:16%;animation-delay:-4.2s,-.6s}.firefly-field i:nth-child(16){left:86%;top:68%;animation-delay:-9.3s,-1.5s}.firefly-field i:nth-child(17){left:91%;top:34%;animation-delay:-2.8s,-2.9s}.firefly-field i:nth-child(18){left:96%;top:80%;animation-delay:-12.2s,-.4s}.firefly-field i:nth-child(19){left:14%;top:7%;animation-delay:-7.4s,-2.4s}.firefly-field i:nth-child(20){left:38%;top:48%;animation-delay:-3.7s,-.9s}.firefly-field i:nth-child(21){left:69%;top:6%;animation-delay:-10.7s,-1.8s}.firefly-field i:nth-child(22){left:88%;top:94%;animation-delay:-5.4s,-2.2s}
@keyframes fireflyFloat{0%,100%{transform:translate3d(0,0,0)}25%{transform:translate3d(22px,-18px,0)}50%{transform:translate3d(-13px,-39px,0)}75%{transform:translate3d(-29px,12px,0)}}
@keyframes fireflyPulse{0%,100%{opacity:.18;filter:blur(.2px)}45%{opacity:1;filter:blur(0)}60%{opacity:.35}}

.main-panel{display:flex;min-height:100vh;flex-direction:column}.content{width:100%;flex:1}.jackson-page-footer{margin:25px 34px 24px;padding:18px 22px;border:1px solid rgba(212,175,55,.35);border-radius:18px;background:linear-gradient(120deg,rgba(30,42,68,.98),rgba(44,58,87,.97));color:#fff;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;box-shadow:0 18px 45px rgba(30,42,68,.16);overflow:hidden}.jackson-page-footer:after{content:"";position:absolute;width:150px;height:150px;border:1px solid rgba(212,175,55,.22);border-radius:50%;right:-55px;top:-70px;box-shadow:0 0 0 25px rgba(212,175,55,.045)}.jackson-page-footer img{width:52px;height:52px;filter:drop-shadow(0 5px 12px rgba(0,0,0,.25))}.jackson-page-footer strong,.jackson-page-footer span{display:block}.jackson-page-footer strong{font:700 17px Georgia,serif}.jackson-page-footer span,.jackson-page-footer small{color:rgba(255,255,255,.62);font-size:9px;text-transform:uppercase;letter-spacing:.12em}.jackson-page-footer small{position:relative;z-index:1}.login-page-footer{position:fixed;left:26px;right:26px;bottom:0;margin:0 auto 18px;max-width:820px;background:rgba(18,28,48,.78);backdrop-filter:blur(14px)}

.user-chip-link{color:#fff;border-radius:12px;padding:7px;margin:-7px;transition:.18s ease}.user-chip-link:hover{background:rgba(255,255,255,.07);text-decoration:none}.sidebar-user-avatar{position:relative;overflow:visible!important}.sidebar-user-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.presence-dot{position:absolute;right:-1px;bottom:-1px;width:12px;height:12px;border:2px solid var(--navy);border-radius:50%;background:#8d929b;box-shadow:0 0 0 2px rgba(255,255,255,.12)}.presence-dot.online{background:#79c968;box-shadow:0 0 10px rgba(121,201,104,.85)}.presence-dot.offline{background:#9198a4}.presence-pill{display:inline-flex!important;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;background:#eef0f3;color:#616771;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.presence-pill i{width:7px;height:7px;border-radius:50%;background:#9299a4}.presence-pill.online{background:#eaf4e7;color:#486845}.presence-pill.online i{background:#6fba61;box-shadow:0 0 8px rgba(111,186,97,.7)}.presence-pill.offline{background:#eef0f3;color:#6c727c}.presence-pill.compact{padding:4px 7px;font-size:7px}.presence-pill b{font:inherit}.member-avatar{position:relative;overflow:visible}.member-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.member-status-message{display:block;margin-top:4px;color:var(--burnt-dark);font-size:9px;font-style:normal}

.profile-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;min-height:260px;padding:34px;background:linear-gradient(120deg,var(--navy),#2f3d5a 72%,#40506c);color:#fff;border-color:rgba(212,175,55,.45)}.profile-hero-glow{position:absolute;inset:auto auto -130px -80px;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(196,87,46,.36),rgba(196,87,46,0) 68%)}.profile-avatar-xl{position:relative;z-index:1;width:150px;height:150px;border-radius:50%;padding:7px;background:linear-gradient(145deg,var(--gold),#f2dc7c,var(--burnt));box-shadow:0 18px 50px rgba(0,0,0,.28),0 0 0 12px rgba(255,255,255,.05)}.profile-avatar-xl img,.profile-avatar-xl>span{width:100%;height:100%;border-radius:50%;display:grid;place-items:center;object-fit:cover;background:#f8f4ee;color:var(--navy);font:700 43px Georgia,serif}.profile-avatar-xl .presence-dot{width:22px;height:22px;border-width:4px;right:9px;bottom:9px}.profile-hero-copy{position:relative;z-index:1}.profile-hero-copy .eyebrow{color:var(--gold)}.profile-hero-copy h2{margin:5px 0 0;font:700 42px Georgia,serif}.profile-title-line{margin:5px 0 12px;color:rgba(255,255,255,.7);font-size:13px}.profile-hero-copy blockquote{margin:12px 0 18px;padding-left:16px;border-left:2px solid var(--gold);color:#fff7d5;font:italic 16px Georgia,serif}.profile-presence-line{display:flex;align-items:center;gap:12px}.profile-presence-line>span:last-child{color:rgba(255,255,255,.6);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.profile-crest{position:relative;z-index:1;width:130px;opacity:.78;filter:drop-shadow(0 16px 28px rgba(0,0,0,.27))}.profile-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:22px}.profile-editor{border-top:4px solid var(--burnt)}.avatar-upload-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:17px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#fff,#faf6f0)}.profile-avatar-medium{width:86px;height:86px;border-radius:50%;padding:4px;background:linear-gradient(145deg,var(--gold),var(--burnt))}.profile-avatar-medium img,.profile-avatar-medium span{width:100%;height:100%;object-fit:cover;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--navy);font:700 24px Georgia,serif}.avatar-upload-row small{display:block;margin-top:5px;color:var(--muted);font-size:9px}.profile-remove{margin-top:8px;display:inline-flex!important}.wedding-team-panel{border-top:4px solid var(--sage)}.team-count{padding:5px 9px;border-radius:99px;background:#eef4ec;color:#50674d;font-size:9px;font-weight:800}.profile-directory{display:grid;gap:10px}.profile-directory-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(145deg,#fff,#fbf8f3)}.directory-avatar{position:relative;width:46px;height:46px;border-radius:50%;background:var(--navy);color:#fff}.directory-avatar img,.directory-avatar>span{width:100%;height:100%;object-fit:cover;border-radius:50%;display:grid;place-items:center;font-weight:800}.directory-avatar .presence-dot{border-color:#fff}.profile-directory-card strong,.profile-directory-card span,.profile-directory-card small,.profile-directory-card em{display:block}.profile-directory-card strong{color:var(--navy);font-size:11px}.profile-directory-card>div>span{color:var(--burnt-dark);font-size:8px;font-weight:750}.profile-directory-card small{color:var(--muted);font-size:8px}.profile-directory-card em{margin-top:3px;color:#7b6f61;font-size:8px;font-style:italic}

.calendar-toolbar-right{display:flex;align-items:flex-end;gap:16px}.calendar-hint{display:flex;gap:5px;flex-direction:column;text-align:right}.calendar-hint span{color:var(--muted);font-size:7px;text-transform:uppercase;letter-spacing:.08em}.calendar-day{position:relative;cursor:pointer;outline:none}.calendar-day:hover{z-index:2;background:#fffdf8;box-shadow:inset 0 0 0 2px rgba(212,175,55,.7),0 10px 25px rgba(30,42,68,.09)}.calendar-day:focus-visible{box-shadow:inset 0 0 0 3px var(--burnt),0 0 0 3px rgba(196,87,46,.16)}.calendar-day.selected:hover{background:#f5f8f1}.calendar-day-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.calendar-day-top .day-number{flex:1;margin:0}.day-quick-add{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff;opacity:0;transform:scale(.8);transition:.17s ease;font-size:14px;font-weight:700}.calendar-day:hover .day-quick-add,.calendar-day:focus-within .day-quick-add{opacity:1;transform:scale(1)}.day-quick-add:hover{background:var(--burnt);text-decoration:none;box-shadow:0 5px 12px rgba(196,87,46,.25)}

@media(max-width:1100px){.profile-layout{grid-template-columns:1fr}.profile-hero{grid-template-columns:auto minmax(0,1fr)}.profile-crest{display:none}.calendar-toolbar-right{width:100%;align-items:flex-start;flex-direction:column}.calendar-hint{text-align:left}.jackson-page-footer{margin-left:22px;margin-right:22px}}
@media(max-width:700px){.profile-hero{grid-template-columns:1fr;text-align:center}.profile-avatar-xl{margin:auto}.profile-presence-line{justify-content:center;flex-wrap:wrap}.profile-hero-copy blockquote{border-left:0;padding:0}.avatar-upload-row{grid-template-columns:1fr;text-align:center}.profile-avatar-medium{margin:auto}.profile-directory-card{grid-template-columns:auto minmax(0,1fr)}.profile-directory-card>.presence-pill{grid-column:2}.jackson-page-footer{grid-template-columns:auto 1fr;margin:18px 16px}.jackson-page-footer>small{display:none}.login-page-footer{display:none}.calendar-hint{display:none}.day-quick-add{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.firefly-field i{animation:none;opacity:.35}.calendar-day,.day-quick-add{transition:none}}
.rsvp-page-footer{max-width:760px;margin:25px auto 35px}.rsvp-body .firefly-field{opacity:.6}

/* ========================================================================== */
/* V1.5.5 Vault Trash + Site-wide Dark Mode                                   */
/* ========================================================================== */
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:39px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--navy);font-size:11px;font-weight:850;box-shadow:0 7px 18px rgba(30,42,68,.08);transition:.18s ease}.theme-toggle:hover{transform:translateY(-1px);border-color:var(--gold);box-shadow:0 10px 24px rgba(30,42,68,.13)}.theme-toggle [data-theme-icon]{font-size:16px;line-height:1}.login-theme-toggle{position:fixed;right:22px;top:20px;z-index:80;background:rgba(255,253,249,.88);backdrop-filter:blur(12px)}.topbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.topbar-actions .quick-upload{margin-left:0}
.button-danger{background:#a13f3b!important;border-color:#a13f3b!important;color:#fff!important}.button-danger:hover{background:#7f2e2b!important;text-decoration:none}.danger-text{color:#a94442!important}.vault-danger-form{margin-top:12px}.vault-library-heading{align-items:flex-start}.vault-library-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.trash-link span{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:5px;border-radius:99px;background:var(--navy);color:#fff;font-size:9px}.bulk-vault-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-4px 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:#faf6f0}.bulk-vault-actions span{color:var(--muted);font-size:11px}.bulk-vault-actions strong{color:var(--navy);font-size:15px}.bulk-vault-actions button:disabled{opacity:.45;cursor:not-allowed}.document-card-v13{position:relative}.vault-select{position:absolute;left:10px;top:10px;z-index:4;display:flex!important;align-items:center!important;gap:6px!important;padding:6px 8px!important;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 5px 14px rgba(30,42,68,.16);color:var(--navy)!important;font-size:8px!important}.vault-select input{width:15px!important;height:15px!important;min-height:0!important;margin:0}.trash-explainer{display:flex;align-items:center;gap:13px;margin-bottom:16px;padding:14px 16px;border:1px solid rgba(212,175,55,.4);border-radius:14px;background:#fff8df}.trash-explainer>span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--gold);font-size:20px}.trash-explainer strong,.trash-explainer small{display:block}.trash-explainer strong{color:var(--navy)}.trash-explainer small{color:var(--muted);font-size:9px}.empty-trash-panel,.purge-item{border:1px solid rgba(169,68,66,.32);border-radius:12px;background:#fff5f4}.empty-trash-panel{margin:0 0 18px;padding:0 15px}.empty-trash-panel>summary,.purge-item>summary{cursor:pointer;color:#8e2e2b;font-weight:850}.empty-trash-panel>summary{padding:13px 0}.destructive-confirm-form{padding:0 0 15px}.destructive-confirm-form p{margin:0;color:var(--muted);font-size:10px}.is-trashed{opacity:.94;border-style:dashed}.is-trashed .document-thumb{filter:grayscale(.55);opacity:.72}.trash-reason{padding:8px 10px;border-radius:9px;background:#f7f2eb;font-size:9px!important}.trash-actions{align-items:flex-start}.trash-actions form{display:inline-block}.purge-item{padding:7px 9px;max-width:260px}.purge-item .stack-form{margin-top:10px;gap:9px}.purge-item label{font-size:9px}.document-actions{flex-wrap:wrap}

html[data-theme="dark"]{--cream:#090e19;--paper:#111a2a;--white:#151f31;--ink:#edf1f6;--muted:#9ea8b8;--line:#2b3850;--navy:#263856;--navy-2:#080d17;--burnt:#e4784f;--burnt-dark:#ff9a72;--taupe:#8e806d;--sage:#9db398;--gold:#e0bd4b;--danger:#ef7772;--shadow:0 18px 50px rgba(0,0,0,.36);color-scheme:dark}
html[data-theme="dark"] body{color:var(--ink);background:#090e19}html[data-theme="dark"] .app-body{background:radial-gradient(circle at 70% -10%,rgba(196,87,46,.12),transparent 32%),linear-gradient(135deg,#090e19,#0d1422)}html[data-theme="dark"] .main-panel{background:transparent}html[data-theme="dark"] .topbar{background:rgba(11,17,29,.9);border-color:#26344b}html[data-theme="dark"] .topbar h1,html[data-theme="dark"] .panel-heading h3,html[data-theme="dark"] .stat-card strong,html[data-theme="dark"] .stack-form label,html[data-theme="dark"] .form-panel summary,html[data-theme="dark"] .document-title h3,html[data-theme="dark"] .review-fieldset legend,html[data-theme="dark"] .file-facts dd,html[data-theme="dark"] .profile-directory-card strong,html[data-theme="dark"] .calendar-toolbar h3,html[data-theme="dark"] .day-agenda-head h3,html[data-theme="dark"] .master-timeline-list time strong{color:#eef3fb}html[data-theme="dark"] .panel,html[data-theme="dark"] .stat-card,html[data-theme="dark"] .document-card,html[data-theme="dark"] .review-fieldset,html[data-theme="dark"] .document-preview,html[data-theme="dark"] .profile-directory-card,html[data-theme="dark"] .calendar-stat-grid article,html[data-theme="dark"] .day-agenda,html[data-theme="dark"] .calendar-command,html[data-theme="dark"] .smart-upload{background:#111a2a;border-color:#2a3850;box-shadow:0 12px 38px rgba(0,0,0,.28)}html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{background:#0b1321;border-color:#35435b;color:#eef3fb}html[data-theme="dark"] input::placeholder,html[data-theme="dark"] textarea::placeholder{color:#778399}html[data-theme="dark"] .check,html[data-theme="dark"] .check-card,html[data-theme="dark"] .avatar-upload-row,html[data-theme="dark"] .camera-drop-extreme,html[data-theme="dark"] .smart-steps,html[data-theme="dark"] .extracted-grid>div,html[data-theme="dark"] .file-preview-tile,html[data-theme="dark"] .bulk-vault-actions,html[data-theme="dark"] .trash-reason{background:#0d1625;border-color:#2d3a50}html[data-theme="dark"] .smart-upload-note,html[data-theme="dark"] .trash-explainer{background:#132019;border-color:#40543d}html[data-theme="dark"] .smart-processing-callout{background:#2a2412;border-color:#6e5a22}html[data-theme="dark"] .review-workspace{background:linear-gradient(145deg,#0b1220,#101a2a)}html[data-theme="dark"] .review-save-bar{background:rgba(12,19,32,.94);border-color:#2e3a50}html[data-theme="dark"] .document-thumb{background:#0b1321}html[data-theme="dark"] .document-thumb-pdf,html[data-theme="dark"] .pdf-preview{background:radial-gradient(circle at 50% 50%,rgba(212,175,55,.14),transparent 30%),linear-gradient(145deg,#0b1321,#18243a)}html[data-theme="dark"] .calendar-day{background:#111a2a;border-color:#29364d}html[data-theme="dark"] .calendar-day.outside{background:#0c1421}html[data-theme="dark"] .calendar-day.today{background:#211d10}html[data-theme="dark"] .calendar-day:hover{background:#172237}html[data-theme="dark"] .calendar-chip{background:#172238;color:#e8edf5}html[data-theme="dark"] .calendar-chip.color-burnt{background:#342016}html[data-theme="dark"] .calendar-chip.color-sage{background:#18271b}html[data-theme="dark"] .calendar-chip.color-gold{background:#2d2712}html[data-theme="dark"] .calendar-chip.color-taupe{background:#282219}html[data-theme="dark"] .alert-success{background:#14271a;border-color:#31543a;color:#b7d8b9}html[data-theme="dark"] .alert-error{background:#321919;border-color:#6e3433;color:#ffc0bc}html[data-theme="dark"] .alert-warning{background:#2b2512;border-color:#695a25;color:#ecd88c}html[data-theme="dark"] .alert-info{background:#132338;border-color:#315273;color:#b8d3ed}html[data-theme="dark"] .theme-toggle{background:#111a2a;border-color:#35435b;color:#f2f5fa}html[data-theme="dark"] .login-theme-toggle{background:rgba(12,19,32,.88)}html[data-theme="dark"] .login-card{background:rgba(14,22,36,.95);border-color:#35435b}html[data-theme="dark"] .login-card h2{color:#f1f4f9}html[data-theme="dark"] .security-seal{background:#14271a;border-color:#31543a}html[data-theme="dark"] .vault-select{background:rgba(12,19,32,.94);color:#f1f5fb!important}html[data-theme="dark"] .empty-trash-panel,html[data-theme="dark"] .purge-item{background:#2a1517;border-color:#6e3438}html[data-theme="dark"] table,html[data-theme="dark"] .data-table{color:#edf1f6}html[data-theme="dark"] th{background:#172238;color:#dce5f2}html[data-theme="dark"] td{border-color:#2b3850}html[data-theme="dark"] .button-secondary{background:#152136;color:#eef3fb;border-color:#35435b}html[data-theme="dark"] .button-secondary:hover{background:#1d2c46}html[data-theme="dark"] .sidebar{background:linear-gradient(180deg,#0b1220,#070b13)}html[data-theme="dark"] .firefly-field{opacity:.62}
@media(max-width:820px){.vault-library-tools{width:100%;justify-content:flex-start}.bulk-vault-actions{align-items:flex-start;flex-direction:column}.topbar-actions{gap:6px}.theme-toggle [data-theme-label]{display:none}.login-theme-toggle [data-theme-label]{display:inline}.login-theme-toggle{right:12px;top:12px}.vault-select{opacity:1}}

html[data-theme="dark"] .panel h1,html[data-theme="dark"] .panel h2,html[data-theme="dark"] .panel h3,html[data-theme="dark"] .panel h4,html[data-theme="dark"] .panel strong,html[data-theme="dark"] .panel label,html[data-theme="dark"] .day-number,html[data-theme="dark"] .smart-steps strong,html[data-theme="dark"] .readiness-ring strong,html[data-theme="dark"] .readiness-detail h3,html[data-theme="dark"] .file-preview-tile,html[data-theme="dark"] .month-nav h3,html[data-theme="dark"] .calendar-stat-grid strong,html[data-theme="dark"] .master-timeline-list h4{color:#eef3fb}

/* V1.5.5 Stable UnixTechLab footer integration */
.jackson-page-footer{position:relative!important;min-height:108px!important}
.unixtechlab-footer-slot{position:absolute!important;left:50%!important;top:50%!important;z-index:20!important;display:flex!important;align-items:center!important;justify-content:center!important;width:clamp(300px,34vw,490px)!important;height:86px!important;margin:0!important;padding:5px 12px!important;transform:translate(-50%,-50%)!important;border:1px solid rgba(212,175,55,.32)!important;border-radius:17px!important;background:radial-gradient(circle at 18% 50%,rgba(76,255,55,.08),transparent 28%),linear-gradient(135deg,rgba(1,10,21,.98),rgba(4,18,35,.98))!important;box-shadow:0 14px 34px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.06),0 0 26px rgba(212,175,55,.07)!important;overflow:hidden!important;text-decoration:none!important;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important}.unixtechlab-footer-slot:hover{transform:translate(-50%,-50%) translateY(-2px) scale(1.012)!important;border-color:rgba(212,175,55,.74)!important;box-shadow:0 18px 42px rgba(0,0,0,.37),0 0 30px rgba(212,175,55,.13)!important}.jackson-page-footer .unixtechlab-footer-slot img{display:block!important;width:100%!important;height:100%!important;max-width:465px!important;max-height:76px!important;object-fit:contain!important;border-radius:12px!important;filter:brightness(1.05) contrast(1.03) drop-shadow(0 7px 15px rgba(0,0,0,.38))!important}
@media(min-width:801px){.login-page-footer{position:fixed!important;left:50%!important;right:auto!important;bottom:clamp(90px,13vh,140px)!important;width:min(1180px,calc(100vw - 52px))!important;max-width:none!important;margin:0!important;transform:translateX(-50%)!important}}
@media(min-width:801px) and (max-height:720px){.login-page-footer{bottom:32px!important}}
@media(max-width:1150px){.unixtechlab-footer-slot{width:clamp(250px,32vw,365px)!important;height:74px!important}.jackson-page-footer .unixtechlab-footer-slot img{max-height:66px!important}}
@media(max-width:800px){.jackson-page-footer{min-height:210px!important;padding-bottom:112px!important}.unixtechlab-footer-slot{left:50%!important;top:auto!important;bottom:16px!important;width:calc(100% - 30px)!important;max-width:440px!important;height:80px!important;transform:translateX(-50%)!important}.unixtechlab-footer-slot:hover{transform:translateX(-50%) translateY(-2px) scale(1.006)!important}.login-page-footer{display:grid!important;position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:auto!important;max-width:none!important;margin:18px 16px 24px!important;transform:none!important}}

/* ========================================================================== */
/* V1.5.6 Dark Mode Contrast Repair                                           */
/* ========================================================================== */
html[data-theme="dark"] .command-actions a{
  background:linear-gradient(145deg,#121d2f,#0d1625);
  border-color:#34445f;
  color:#f4f7fc;
  box-shadow:0 12px 30px rgba(0,0,0,.28)
}
html[data-theme="dark"] .command-actions a:hover{
  background:linear-gradient(145deg,#18263d,#111d30);
  border-color:rgba(224,189,75,.62);
  box-shadow:0 18px 38px rgba(0,0,0,.38)
}
html[data-theme="dark"] .command-actions strong{color:#f4f7fc}
html[data-theme="dark"] .command-actions small{color:#b4bfd0}
html[data-theme="dark"] .command-actions>a>span{
  background:#203454;
  color:#f0ca50;
  box-shadow:inset 0 0 0 1px rgba(224,189,75,.22)
}

html[data-theme="dark"] .planner-intelligence{
  background:
    radial-gradient(circle at 0 0,rgba(228,120,79,.13),transparent 30%),
    radial-gradient(circle at 100% 100%,rgba(157,179,152,.10),transparent 34%),
    linear-gradient(140deg,#111a2a,#0c1523);
  border-color:#394961;
  box-shadow:0 24px 65px rgba(0,0,0,.38)
}
html[data-theme="dark"] .planner-intelligence:before{border-color:rgba(224,189,75,.19)}
html[data-theme="dark"] .planner-intelligence .eyebrow{color:#f08a62}
html[data-theme="dark"] .readiness-ring{
  background:conic-gradient(#e4784f calc(var(--readiness)*1%),#2c3a50 0);
  box-shadow:0 16px 40px rgba(0,0,0,.36)
}
html[data-theme="dark"] .readiness-ring:before{
  background:linear-gradient(145deg,#162238,#0c1524);
  box-shadow:inset 0 0 0 1px rgba(224,189,75,.42)
}
html[data-theme="dark"] .readiness-ring strong{color:#f7f9fd!important}
html[data-theme="dark"] .readiness-ring span{color:#b5bfd0}
html[data-theme="dark"] .readiness-detail h3{color:#f7f9fd!important}
html[data-theme="dark"] .readiness-bars span{color:#b5bfd0}
html[data-theme="dark"] .readiness-bars i{background:#2a3850}
html[data-theme="dark"] .readiness-bars strong{color:#f7f9fd}
html[data-theme="dark"] .attention-center{border-color:#35445c}
html[data-theme="dark"] .attention-center a{
  color:#eaf0f8;
  border-color:#35445c
}
html[data-theme="dark"] .attention-center a:hover{color:#ff9a72}
html[data-theme="dark"] .attention-center a strong{
  background:#263b5e;
  color:#ffffff;
  box-shadow:inset 0 0 0 1px rgba(224,189,75,.20)
}
html[data-theme="dark"] .attention-center a span{color:#d4dce8}

html[data-theme="dark"] .stat-card span,
html[data-theme="dark"] .stat-card small,
html[data-theme="dark"] .panel .muted,
html[data-theme="dark"] .timeline-list time small,
html[data-theme="dark"] .timeline-list div span,
html[data-theme="dark"] .activity-list small,
html[data-theme="dark"] .mini-stats span,
html[data-theme="dark"] .budget-bars span{color:#b4bfd0}
html[data-theme="dark"] .mini-stats strong,
html[data-theme="dark"] .budget-bars strong,
html[data-theme="dark"] .timeline-list div strong,
html[data-theme="dark"] .activity-list strong{color:#f2f5fa}
html[data-theme="dark"] .mini-stats div{background:#0d1625;border-color:#304058}
html[data-theme="dark"] .progress-track{background:#2b3850}

/* ========================================================================== */
/* V1.5.7 Complete Site-wide Dark Mode Contrast Repair                        */
/* Every application, login, vault, calendar, profile, settings, and RSVP UI  */
/* surface receives an explicit dark background and readable foreground.       */
/* ========================================================================== */

html[data-theme="dark"] {
  --dark-canvas:#080d17;
  --dark-surface:#111a2a;
  --dark-surface-2:#0d1625;
  --dark-surface-3:#172238;
  --dark-border:#34445f;
  --dark-border-soft:#2a3850;
  --dark-text:#f2f5fa;
  --dark-text-soft:#b8c3d3;
  --dark-link:#ff9a72;
}

/* Global page shell and navigation */
html[data-theme="dark"] body,
html[data-theme="dark"] .app-body,
html[data-theme="dark"] .login-body {
  background:radial-gradient(circle at 72% -12%,rgba(228,120,79,.11),transparent 31%),linear-gradient(135deg,#080d17,#0c1422)!important;
  color:var(--dark-text)!important;
}
html[data-theme="dark"] .topbar {
  background:rgba(8,13,23,.94)!important;
  border-color:var(--dark-border-soft)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.24)!important;
}
html[data-theme="dark"] .topbar h1,
html[data-theme="dark"] .menu-toggle { color:var(--dark-text)!important; }
html[data-theme="dark"] .topbar .eyebrow { color:#f08a62!important; }
html[data-theme="dark"] .topbar-secure,
html[data-theme="dark"] .secure-live {
  background:#132019!important;
  border-color:#40543d!important;
  color:#c4ddc1!important;
}
html[data-theme="dark"] .quick-upload { background:#263b5e!important;color:#fff!important; }
html[data-theme="dark"] .quick-upload:hover { background:#c85f39!important; }
html[data-theme="dark"] a:not(.button):not(.quick-upload):not(.calendar-chip):not(.day-agenda-list a):not(.command-actions a):not(.sidebar-nav a):not(.user-chip-link):not(.unixtechlab-footer-slot) { color:var(--dark-link); }
html[data-theme="dark"] .link-button { color:#ffad8d!important; }

/* Universal readable surfaces used across every authenticated page */
html[data-theme="dark"] :is(
  .panel,
  .stat-card,
  .vendor-card,
  .seat-card,
  .document-card,
  .document-card-v13,
  .calendar-stat-grid article,
  .member-card,
  .member-tools-body,
  .spreadsheet-drop,
  .add-user-drawer,
  .rsvp-card,
  .rsvp-guest-card,
  .palette-showcase article
) {
  background:linear-gradient(145deg,#111a2a,#0e1726)!important;
  border-color:var(--dark-border)!important;
  color:var(--dark-text)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.28)!important;
}
html[data-theme="dark"] :is(
  .check,
  .check-card,
  .inline-check,
  .avatar-upload-row,
  .profile-directory-card,
  .mapping-grid,
  .mapping-field,
  .smart-steps,
  .extracted-grid>div,
  .file-preview-tile,
  .bulk-vault-actions,
  .trash-reason,
  .empty-state,
  .mini-stats div
) {
  background:#0d1625!important;
  border-color:#304058!important;
  color:var(--dark-text)!important;
}
html[data-theme="dark"] :is(
  .panel,
  .stat-card,
  .vendor-card,
  .seat-card,
  .document-card,
  .calendar-stat-grid article,
  .member-card,
  .member-tools-body,
  .spreadsheet-drop,
  .add-user-drawer,
  .rsvp-card,
  .rsvp-guest-card,
  .profile-directory-card,
  .mapping-grid,
  .mapping-field
) :is(h1,h2,h3,h4,h5,h6,strong,label,legend,dt,dd) {
  color:var(--dark-text)!important;
}
html[data-theme="dark"] :is(
  .panel,
  .stat-card,
  .vendor-card,
  .seat-card,
  .document-card,
  .calendar-stat-grid article,
  .member-card,
  .member-tools-body,
  .spreadsheet-drop,
  .add-user-drawer,
  .rsvp-card,
  .rsvp-guest-card,
  .profile-directory-card,
  .mapping-grid,
  .mapping-field
) :is(p,small,em,.muted) {
  color:var(--dark-text-soft)!important;
}

/* Forms, filters, tables and controls */
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea {
  background:#09111e!important;
  border-color:#3b4b65!important;
  color:#f4f7fc!important;
  caret-color:#f4f7fc;
}
html[data-theme="dark"] input:hover,
html[data-theme="dark"] select:hover,
html[data-theme="dark"] textarea:hover { border-color:#50617b!important; }
html[data-theme="dark"] input:focus,
html[data-theme="dark"] select:focus,
html[data-theme="dark"] textarea:focus {
  border-color:#e4784f!important;
  box-shadow:0 0 0 3px rgba(228,120,79,.18)!important;
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder { color:#7f8ba0!important;opacity:1; }
html[data-theme="dark"] input[readonly],
html[data-theme="dark"] .wedding-identity-grid input[readonly] {
  background:#121c2c!important;
  color:#aeb8c8!important;
}
html[data-theme="dark"] .form-panel summary,
html[data-theme="dark"] .add-user-drawer>summary,
html[data-theme="dark"] .member-tools>summary {
  background:linear-gradient(90deg,#172238,#111a2a)!important;
  border-color:#34445f!important;
  color:#f2f5fa!important;
}
html[data-theme="dark"] .member-tools[open]>summary { background:#263b5e!important; }
html[data-theme="dark"] .button-secondary,
html[data-theme="dark"] .document-filter-group button,
html[data-theme="dark"] .calendar-filters button,
html[data-theme="dark"] .month-nav>a {
  background:#152136!important;
  border-color:#3b4b65!important;
  color:#eef3fb!important;
}
html[data-theme="dark"] :is(.document-filter-group button,.calendar-filters button).active {
  background:#334d77!important;
  border-color:#59709a!important;
  color:#fff!important;
}
html[data-theme="dark"] .button-secondary:hover,
html[data-theme="dark"] .document-filter-group button:hover,
html[data-theme="dark"] .calendar-filters button:hover,
html[data-theme="dark"] .month-nav>a:hover { background:#20314d!important; }
html[data-theme="dark"] .table-wrap { border-color:#34445f!important;background:#0d1625!important; }
html[data-theme="dark"] table,
html[data-theme="dark"] .data-table { background:#0d1625!important;color:#edf2f8!important; }
html[data-theme="dark"] th { background:#1a2840!important;color:#e4ebf5!important;border-color:#34445f!important; }
html[data-theme="dark"] td { background:#0f1828!important;color:#e6ecf5!important;border-color:#2d3b52!important; }
html[data-theme="dark"] tbody tr:hover td { background:#162238!important; }
html[data-theme="dark"] td small { color:#aeb9ca!important; }
html[data-theme="dark"] .empty-state { color:#b8c3d3!important; }

/* Badges, confidence labels, state pills and status chips */
html[data-theme="dark"] .badge { background:#26354b!important;color:#dbe4f0!important; }
html[data-theme="dark"] :is(.badge-accepted,.badge-completed,.badge-confirmed,.badge-paid,.badge-approved,.badge-selected) { background:#17301f!important;color:#bde3c2!important; }
html[data-theme="dark"] :is(.badge-pending,.badge-not-started,.badge-planned,.badge-researching,.badge-needs-review,.badge-not-sent) { background:#282337!important;color:#d6cbe5!important; }
html[data-theme="dark"] :is(.badge-declined,.badge-cancelled,.badge-urgent,.badge-failed) { background:#3a1d20!important;color:#ffc2bd!important; }
html[data-theme="dark"] :is(.badge-in-progress,.badge-contacted,.badge-quote-received,.badge-partially-paid,.badge-deposit-paid,.badge-sent,.badge-processing) { background:#382416!important;color:#ffc49e!important; }
html[data-theme="dark"] :is(.badge-high,.badge-waiting,.badge-booked,.badge-contract-signed,.badge-delivered,.badge-ready) { background:#332c14!important;color:#f1d979!important; }
html[data-theme="dark"] :is(.badge-normal,.badge-maybe) { background:#1d2d47!important;color:#bfd1ea!important; }
html[data-theme="dark"] .duplicate-flag,
html[data-theme="dark"] .confidence-medium { background:#332c14!important;color:#f1d979!important; }
html[data-theme="dark"] .confidence-high,
html[data-theme="dark"] .smart-badge,
html[data-theme="dark"] .team-count,
html[data-theme="dark"] .presence-pill.online { background:#17301f!important;color:#bde3c2!important; }
html[data-theme="dark"] .confidence-low { background:#3a1d20!important;color:#ffc2bd!important; }
html[data-theme="dark"] .presence-pill,
html[data-theme="dark"] .presence-pill.offline { background:#26354b!important;color:#d4dce8!important; }

/* Dashboard */
html[data-theme="dark"] .hero-card,
html[data-theme="dark"] .hero-extreme,
html[data-theme="dark"] .profile-hero,
html[data-theme="dark"] .vault-hero,
html[data-theme="dark"] .calendar-hero {
  background:radial-gradient(circle at 82% 18%,rgba(224,189,75,.13),transparent 25%),linear-gradient(135deg,#0b1321,#18263d 62%,#243553)!important;
  border-color:#43536c!important;
  color:#fff!important;
}
html[data-theme="dark"] :is(.hero-card,.hero-extreme,.profile-hero,.vault-hero,.calendar-hero) :is(h1,h2,h3,h4,strong) { color:#fff!important; }
html[data-theme="dark"] :is(.hero-card,.hero-extreme,.profile-hero,.vault-hero,.calendar-hero) :is(p,small,span) { color:#c2ccda; }
html[data-theme="dark"] .command-actions a {
  background:linear-gradient(145deg,#121d2f,#0d1625)!important;
  border-color:#34445f!important;
  color:#f4f7fc!important;
}
html[data-theme="dark"] .command-actions strong { color:#f4f7fc!important; }
html[data-theme="dark"] .command-actions small { color:#b4bfd0!important; }
html[data-theme="dark"] .planner-intelligence {
  background:radial-gradient(circle at 0 0,rgba(228,120,79,.13),transparent 30%),radial-gradient(circle at 100% 100%,rgba(157,179,152,.10),transparent 34%),linear-gradient(140deg,#111a2a,#0c1523)!important;
  border-color:#394961!important;
}
html[data-theme="dark"] .readiness-ring:before { background:linear-gradient(145deg,#162238,#0c1524)!important; }
html[data-theme="dark"] .readiness-ring :is(strong,span),
html[data-theme="dark"] .readiness-detail h3,
html[data-theme="dark"] .readiness-bars :is(span,strong) { color:#eaf0f8!important; }
html[data-theme="dark"] .readiness-bars span { color:#b5bfd0!important; }
html[data-theme="dark"] .readiness-bars i,
html[data-theme="dark"] .progress-track { background:#2a3850!important; }
html[data-theme="dark"] .attention-center a { color:#eaf0f8!important;border-color:#35445c!important; }
html[data-theme="dark"] .attention-center a span { color:#d4dce8!important; }
html[data-theme="dark"] :is(.stat-card span,.stat-card small,.timeline-list time small,.timeline-list div span,.activity-list small,.mini-stats span,.budget-bars span,.category-list small) { color:#b4bfd0!important; }
html[data-theme="dark"] :is(.stat-card strong,.mini-stats strong,.budget-bars strong,.timeline-list div strong,.activity-list strong,.category-list strong) { color:#f2f5fa!important; }

/* Guests and spreadsheet import */
html[data-theme="dark"] .spreadsheet-drop { background:linear-gradient(145deg,#111d2d,#0c1724)!important; }
html[data-theme="dark"] .spreadsheet-drop>label { border-color:#4c6251!important; }
html[data-theme="dark"] .spreadsheet-drop>label:hover { background:#172237!important;border-color:#e4784f!important; }
html[data-theme="dark"] .import-ready-banner { background:#132019!important;border-color:#40543d!important; }
html[data-theme="dark"] .import-ready-banner strong,
html[data-theme="dark"] .import-intro-grid h4,
html[data-theme="dark"] .mapping-head h4 { color:#f2f5fa!important; }
html[data-theme="dark"] .import-feature-list li,
html[data-theme="dark"] .mapping-head p { color:#b4bfd0!important; }
html[data-theme="dark"] .import-actions { background:rgba(12,19,32,.96)!important;border-color:#34445f!important; }

/* Budget, vendor, task, and seating pages */
html[data-theme="dark"] .vendor-card h3,
html[data-theme="dark"] .vendor-money strong,
html[data-theme="dark"] .calendar-list :is(time strong,h4),
html[data-theme="dark"] .seat-card h3,
html[data-theme="dark"] .task-main strong { color:#f2f5fa!important; }
html[data-theme="dark"] .vendor-card :is(p,.vendor-money span),
html[data-theme="dark"] .calendar-list :is(time span,p,small),
html[data-theme="dark"] .seat-card p,
html[data-theme="dark"] .task-main span,
html[data-theme="dark"] .task-date { color:#b4bfd0!important; }
html[data-theme="dark"] .task-check { background:#0b1321!important;border-color:#9db398!important;color:#fff!important; }
html[data-theme="dark"] .task-complete .task-check { background:#5f8060!important; }
html[data-theme="dark"] .seat-icon { background:#172238!important;color:#f2f5fa!important;border-color:#e0bd4b!important; }
html[data-theme="dark"] .seat-full .seat-icon { background:#342016!important;border-color:#e4784f!important; }

/* Document Vault and Smart Review */
html[data-theme="dark"] .smart-upload { background:radial-gradient(circle at 100% 0,rgba(224,189,75,.07),transparent 25%),#111a2a!important; }
html[data-theme="dark"] .camera-drop,
html[data-theme="dark"] .camera-drop-extreme {
  background:radial-gradient(circle at 50% 50%,rgba(224,189,75,.06),transparent 30%),linear-gradient(145deg,#111a2a,#0d1625)!important;
  border-color:#6f5b3a!important;
  color:#f2f5fa!important;
}
html[data-theme="dark"] .camera-drop:hover,
html[data-theme="dark"] .camera-drop-extreme:hover { background:#172238!important;border-color:#e4784f!important; }
html[data-theme="dark"] .camera-drop :is(strong,small),
html[data-theme="dark"] .file-selection { color:#dbe4f0!important; }
html[data-theme="dark"] .smart-upload-note,
html[data-theme="dark"] .trash-explainer { background:#132019!important;border-color:#40543d!important; }
html[data-theme="dark"] .smart-upload-note strong,
html[data-theme="dark"] .trash-explainer strong { color:#d9ead7!important; }
html[data-theme="dark"] .smart-processing-callout { background:#2a2412!important;border-color:#6e5a22!important; }
html[data-theme="dark"] .smart-processing-callout strong { color:#f1d979!important; }
html[data-theme="dark"] .review-workspace { background:linear-gradient(145deg,#0b1220,#101a2a)!important; }
html[data-theme="dark"] .document-preview,
html[data-theme="dark"] .review-fieldset { background:#111a2a!important;border-color:#34445f!important; }
html[data-theme="dark"] .document-preview>img { background:#0b1321!important; }
html[data-theme="dark"] .review-fieldset legend,
html[data-theme="dark"] .file-facts dd,
html[data-theme="dark"] .check-card strong,
html[data-theme="dark"] .review-save-bar strong,
html[data-theme="dark"] .extracted-grid strong,
html[data-theme="dark"] .document-title h3 { color:#f2f5fa!important; }
html[data-theme="dark"] .file-facts dt,
html[data-theme="dark"] .check-card small,
html[data-theme="dark"] .review-save-bar span,
html[data-theme="dark"] .extracted-grid span,
html[data-theme="dark"] .document-kicker,
html[data-theme="dark"] .document-body :is(p,small) { color:#b4bfd0!important; }
html[data-theme="dark"] .review-save-bar { background:rgba(12,19,32,.96)!important;border-color:#34445f!important; }
html[data-theme="dark"] .document-thumb { background:#0b1321!important; }
html[data-theme="dark"] .document-thumb-pdf,
html[data-theme="dark"] .pdf-preview { background:radial-gradient(circle at 50% 50%,rgba(224,189,75,.14),transparent 30%),linear-gradient(145deg,#0b1321,#18243a)!important; }
html[data-theme="dark"] .vault-select { background:rgba(9,17,30,.96)!important;color:#f1f5fb!important; }
html[data-theme="dark"] .empty-trash-panel,
html[data-theme="dark"] .purge-item { background:#2a1517!important;border-color:#6e3438!important; }
html[data-theme="dark"] .empty-trash-panel>summary,
html[data-theme="dark"] .purge-item>summary { color:#ffaaa5!important; }

/* Calendar and timeline */
html[data-theme="dark"] .calendar-toolbar { background:linear-gradient(145deg,#121d2f,#0d1625)!important;border-color:#34445f!important; }
html[data-theme="dark"] .month-nav h3,
html[data-theme="dark"] .day-agenda-head h3,
html[data-theme="dark"] .master-timeline-list>h4,
html[data-theme="dark"] .master-timeline-list time strong,
html[data-theme="dark"] .calendar-stat-grid strong { color:#f2f5fa!important; }
html[data-theme="dark"] .calendar-day { background:#111a2a!important;border-color:#29364d!important;color:#eef3fb!important; }
html[data-theme="dark"] .calendar-day.outside { background:#0c1421!important; }
html[data-theme="dark"] .calendar-day.today { background:#2b2512!important; }
html[data-theme="dark"] .calendar-day.selected { background:#15231a!important; }
html[data-theme="dark"] .calendar-day:hover { background:#172237!important; }
html[data-theme="dark"] .calendar-day.selected:hover { background:#1a2a20!important; }
html[data-theme="dark"] .day-number { color:#eef3fb!important; }
html[data-theme="dark"] .calendar-chip { background:#172238!important;color:#e8edf5!important; }
html[data-theme="dark"] .calendar-chip span { color:#aeb9ca!important; }
html[data-theme="dark"] .calendar-chip.color-burnt { background:#342016!important; }
html[data-theme="dark"] .calendar-chip.color-sage { background:#18271b!important; }
html[data-theme="dark"] .calendar-chip.color-gold { background:#2d2712!important; }
html[data-theme="dark"] .calendar-chip.color-taupe { background:#282219!important; }
html[data-theme="dark"] .day-agenda { background:radial-gradient(circle at 100% 0,rgba(224,189,75,.06),transparent 25%),#0d1625!important; }
html[data-theme="dark"] .day-agenda-list>a { background:#111a2a!important;border-color:#34445f!important;color:#eef3fb!important; }
html[data-theme="dark"] .day-agenda-list>a :is(strong,span) { color:#eef3fb!important; }
html[data-theme="dark"] .day-agenda-list>a span { color:#aeb9ca!important; }
html[data-theme="dark"] .master-timeline-list>a { color:#eef3fb!important;border-color:#2d3b52!important; }
html[data-theme="dark"] .master-timeline-list>a:hover { background:#172238!important; }
html[data-theme="dark"] .master-timeline-list div :is(small,span),
html[data-theme="dark"] .timeline-range,
html[data-theme="dark"] .calendar-hint span { color:#aeb9ca!important; }

/* Profile and settings */
html[data-theme="dark"] .profile-avatar-xl img,
html[data-theme="dark"] .profile-avatar-xl>span,
html[data-theme="dark"] .profile-avatar-medium img,
html[data-theme="dark"] .profile-avatar-medium span { background:#0d1625!important;color:#f2f5fa!important; }
html[data-theme="dark"] .profile-directory-card>div>span,
html[data-theme="dark"] .member-status-message { color:#ff9a72!important; }
html[data-theme="dark"] .profile-directory-card :is(small,em),
html[data-theme="dark"] .member-info small,
html[data-theme="dark"] .avatar-upload-row small { color:#b4bfd0!important; }
html[data-theme="dark"] .luxury-quote { background:linear-gradient(135deg,rgba(224,189,75,.10),rgba(228,120,79,.08))!important;color:#f2f5fa!important; }
html[data-theme="dark"] .accounts-panel:after { color:rgba(255,255,255,.025)!important; }
html[data-theme="dark"] .create-member-card input,
html[data-theme="dark"] .create-member-card select { background:#09111e!important;color:#f4f7fc!important;border-color:#50617b!important; }

/* Login and public RSVP */
html[data-theme="dark"] .login-card { background:rgba(10,17,29,.97)!important;border-color:#34445f!important; }
html[data-theme="dark"] .login-card h2 { color:#f2f5fa!important; }
html[data-theme="dark"] .security-seal { background:#132019!important;border-color:#40543d!important; }
html[data-theme="dark"] .security-seal strong { color:#d9ead7!important; }
html[data-theme="dark"] .rsvp-body { background:radial-gradient(circle at 80% 15%,rgba(228,120,79,.20),transparent 28%),linear-gradient(135deg,#080d17,#18263d 62%,#2a1720)!important; }
html[data-theme="dark"] .rsvp-card h2,
html[data-theme="dark"] .rsvp-guest-card h3 { color:#f2f5fa!important; }
html[data-theme="dark"] .rsvp-card .muted,
html[data-theme="dark"] .rsvp-card .security-note { color:#b4bfd0!important; }
html[data-theme="dark"] .rsvp-page-footer { border-color:#43536c!important; }

/* Preserve deliberate dark decorative areas and footer readability */
html[data-theme="dark"] .jackson-page-footer,
html[data-theme="dark"] .unixtechlab-footer-slot { color:#fff!important; }
html[data-theme="dark"] .jackson-page-footer :is(strong,span,small) { color:rgba(255,255,255,.78)!important; }
html[data-theme="dark"] .jackson-page-footer strong { color:#fff!important; }

@media(max-width:820px) {
  html[data-theme="dark"] .topbar-actions { background:transparent!important; }
}

/* ========================================================================== */
/* V2.0.0 Celebration Command Center                                         */
/* ========================================================================== */
.suite-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:30px;align-items:center;padding:36px 40px;border-radius:28px;color:#fff;background:radial-gradient(circle at 82% 20%,rgba(212,175,55,.22),transparent 27%),radial-gradient(circle at 12% 110%,rgba(196,87,46,.28),transparent 34%),linear-gradient(135deg,#0d1729,#1e2a44 58%,#344462);box-shadow:0 28px 74px rgba(30,42,68,.24)}
.suite-hero:before{content:"";position:absolute;width:360px;height:360px;right:-190px;top:-210px;border:1px solid rgba(212,175,55,.28);border-radius:50%;box-shadow:0 0 0 30px rgba(212,175,55,.05),0 0 0 64px rgba(212,175,55,.025)}
.suite-hero h2{margin:5px 0 12px;font:700 clamp(34px,4vw,52px) Georgia,serif;line-height:1.06}.suite-hero p:not(.eyebrow){max-width:900px;margin:0;color:rgba(255,255,255,.72);font-size:13px}.suite-hero .eyebrow{color:var(--soft-gold)}
.suite-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.suite-hero .button-secondary{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.28);color:#fff}
.suite-orbit{position:relative;width:176px;height:176px;margin:auto;border-radius:50%;display:grid;place-content:center;text-align:center;background:linear-gradient(145deg,#1a2945,#101a2d);box-shadow:inset 0 0 0 1px rgba(212,175,55,.34),0 0 0 12px rgba(212,175,55,.08),0 24px 55px rgba(0,0,0,.22)}
.suite-orbit:after{content:"";position:absolute;inset:-18px;border:1px dashed rgba(212,175,55,.35);border-radius:50%;animation:crestSpin 40s linear infinite}.suite-orbit strong{font:700 34px Georgia,serif;color:#fff}.suite-orbit span{display:block;max-width:125px;margin:5px auto 0;color:rgba(255,255,255,.58);font-size:8px;text-transform:uppercase;letter-spacing:.12em}.issue-orbit{box-shadow:inset 0 0 0 1px rgba(255,118,105,.45),0 0 0 12px rgba(169,68,66,.12),0 24px 55px rgba(0,0,0,.22)}
.suite-tabs{position:sticky;top:102px;z-index:12;display:flex;gap:7px;overflow:auto;padding:10px;border:1px solid rgba(203,187,160,.52);border-radius:16px;background:rgba(255,253,249,.92);backdrop-filter:blur(14px);box-shadow:0 12px 35px rgba(30,42,68,.07)}
.suite-tabs a{white-space:nowrap;padding:8px 12px;border-radius:99px;color:var(--navy);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.suite-tabs a:hover{background:var(--navy);color:#fff;text-decoration:none}
.suite-panel{scroll-margin-top:170px}.suite-panel>.panel-heading{border-bottom:1px solid rgba(203,187,160,.42);padding-bottom:15px}.suite-add{margin:12px 0 20px;border:1px solid rgba(212,175,55,.32);border-radius:16px;background:linear-gradient(145deg,#fffdf9,#f8f2e9);overflow:hidden}.suite-add>summary{padding:15px 18px;cursor:pointer;color:var(--navy);font:700 16px Georgia,serif}.suite-add[open]>summary{border-bottom:1px solid var(--line)}.suite-add>form{padding:18px}.suite-record-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.suite-record{display:flex;justify-content:space-between;gap:12px;padding:16px;border:1px solid var(--line);border-radius:15px;background:#fff}.suite-record h4{margin:6px 0 2px;color:var(--navy);font:700 18px Georgia,serif}.suite-record p,.suite-record small{display:block;color:var(--muted);font-size:9px}.suite-record details{align-self:start}.suite-record details>summary{cursor:pointer;color:var(--burnt);font-size:10px;font-weight:850}.suite-record details[open]{min-width:280px}.suite-record details form{margin-top:10px}
.suite-two-column{display:grid;grid-template-columns:1fr 1fr;gap:22px}.compact-record-list{display:grid;gap:8px;margin-top:18px}.compact-record-list article{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:#fbf8f3}.compact-record-list strong,.compact-record-list small{display:block}.compact-record-list strong{color:var(--navy);font-size:11px}.compact-record-list small{color:var(--muted);font-size:8px;word-break:break-all}
.theme-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.theme-choice{position:relative;display:grid;gap:7px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;cursor:pointer;transition:.2s}.theme-choice:hover{transform:translateY(-2px);box-shadow:0 16px 35px rgba(30,42,68,.10)}.theme-choice input{position:absolute;right:14px;top:14px;width:auto}.theme-choice strong{color:var(--navy);font:700 17px Georgia,serif}.theme-choice small{color:var(--muted);font-size:9px}.theme-swatch{display:flex;gap:5px}.theme-swatch i{width:27px;height:27px;border-radius:50%;border:2px solid rgba(255,255,255,.85);box-shadow:0 0 0 1px rgba(30,42,68,.12)}.theme-autumn .theme-swatch i:nth-child(1){background:#C4572E}.theme-autumn .theme-swatch i:nth-child(2){background:#1E2A44}.theme-autumn .theme-swatch i:nth-child(3){background:#D4AF37}.theme-navy .theme-swatch i:nth-child(1){background:#0d1729}.theme-navy .theme-swatch i:nth-child(2){background:#D4AF37}.theme-navy .theme-swatch i:nth-child(3){background:#fff}.theme-sage .theme-swatch i:nth-child(1){background:#8FA187}.theme-sage .theme-swatch i:nth-child(2){background:#F6F1E8}.theme-sage .theme-swatch i:nth-child(3){background:#CBBBA0}.theme-taupe .theme-swatch i:nth-child(1){background:#8f7860}.theme-taupe .theme-swatch i:nth-child(2){background:#CBBBA0}.theme-taupe .theme-swatch i:nth-child(3){background:#F8F4EE}.theme-midnight .theme-swatch i:nth-child(1){background:#080d17}.theme-midnight .theme-swatch i:nth-child(2){background:#344462}.theme-midnight .theme-swatch i:nth-child(3){background:#e4784f}.theme-garden .theme-swatch i:nth-child(1){background:#5d765c}.theme-garden .theme-swatch i:nth-child(2){background:#f8e8e0}.theme-garden .theme-swatch i:nth-child(3){background:#e6c762}.theme-save{grid-column:1/-1;text-align:right}
.suite-timeline{display:grid;gap:9px}.suite-timeline article{display:grid;grid-template-columns:95px minmax(0,1fr) auto;gap:15px;align-items:center;padding:13px;border-bottom:1px solid var(--line)}.suite-timeline time strong,.suite-timeline time span{display:block}.suite-timeline time strong{color:var(--navy);font:700 17px Georgia,serif}.suite-timeline time span{color:var(--muted);font-size:8px}.suite-timeline h4{margin:4px 0 1px;color:var(--navy)}.suite-timeline p,.suite-timeline small{display:block;margin:0;color:var(--muted);font-size:9px}
.suite-question-list{display:grid;gap:8px;margin-top:18px}.suite-question-list article{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:11px}.suite-question-list>article>span{color:var(--burnt);font-size:8px;font-weight:850;text-transform:uppercase}.suite-question-list strong,.suite-question-list small{display:block}.suite-question-list strong{color:var(--navy)}.suite-question-list small{color:var(--muted);font-size:8px}.faq-admin-list{display:grid;gap:8px;margin-top:18px}.faq-admin-list details{padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:#fff}.faq-admin-list summary{cursor:pointer;color:var(--navy);font-weight:800}.faq-admin-list p{color:var(--muted)}
.audience-stat-grid,.financial-command-grid,.day-command-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin-bottom:18px}.audience-stat-grid article,.financial-command-grid article,.day-command-stats article{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#fff,#faf6f0)}.audience-stat-grid span,.financial-command-grid span,.day-command-stats span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.09em;font-weight:850}.audience-stat-grid strong,.financial-command-grid strong,.day-command-stats strong{display:block;margin-top:4px;color:var(--navy);font:700 25px Georgia,serif}.financial-command-grid small{display:block;color:var(--muted);font-size:8px}.risk-card{border-color:#e9a29d!important;background:#fff2f0!important}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:20px}.template-grid article{padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}.template-grid h4{margin:7px 0 3px;color:var(--navy)}.template-grid strong{font-size:10px}.template-grid p{color:var(--muted);font-size:9px}.memory-admin-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:20px}.guestbook-admin-card{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:12px;padding:13px;border-bottom:1px solid var(--line)}.guestbook-admin-card strong,.guestbook-admin-card small{display:block}.guestbook-admin-card p{font-family:Georgia,serif;color:var(--navy)}.moderation-row{display:grid;gap:7px}.photo-moderation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-moderation-grid article{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}.photo-moderation-grid img{width:100%;height:180px;object-fit:cover;background:#eee}.photo-moderation-grid article>div{padding:12px}.photo-moderation-grid strong,.photo-moderation-grid small{display:block}.compact-form{gap:8px!important}
.forecast-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:20px}.forecast-list h4,.forecast-advice h4{color:var(--navy)}.forecast-list article{display:grid;grid-template-columns:120px minmax(100px,1fr) 110px 55px;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.forecast-list time{color:var(--navy);font-weight:800;font-size:10px}.forecast-list article>div{height:8px;border-radius:99px;background:#ebe4da;overflow:hidden}.forecast-list i{display:block;height:100%;background:linear-gradient(90deg,var(--burnt),var(--gold));border-radius:99px}.forecast-list strong{color:var(--navy);text-align:right}.forecast-list small{color:var(--muted);font-size:8px}.forecast-advice{padding:18px;border-radius:16px;background:linear-gradient(145deg,#101b2e,#263650);color:#fff}.forecast-advice h4{color:#fff}.forecast-advice ul{display:grid;gap:14px;padding:0;list-style:none}.forecast-advice strong,.forecast-advice span{display:block}.forecast-advice strong{color:var(--gold);font-size:10px}.forecast-advice span{color:rgba(255,255,255,.72);font-size:9px}
.contract-scan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.contract-scan-grid article{display:flex;justify-content:space-between;gap:12px;padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}.contract-scan-grid h4{margin:6px 0 2px;color:var(--navy)}.contract-scan-grid small,.contract-scan-grid p{display:block;margin:0;color:var(--muted);font-size:8px}.obligation-table{margin-top:20px}.vendor-score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.vendor-score-card{padding:18px;border:1px solid var(--line);border-radius:17px;background:#fff}.vendor-score-card.shortlisted{box-shadow:inset 0 4px 0 var(--gold),0 18px 40px rgba(30,42,68,.08)}.vendor-score-head{display:flex;justify-content:space-between;gap:12px}.vendor-score-head span{color:var(--burnt);font-size:8px;text-transform:uppercase;font-weight:850}.vendor-score-head h4{margin:3px 0;color:var(--navy);font:700 21px Georgia,serif}.vendor-score-head small{color:var(--muted)}.vendor-score-head>strong{color:var(--navy);font:700 28px Georgia,serif}.score-sliders{display:grid;gap:8px}.score-sliders label{display:grid;grid-template-columns:100px minmax(0,1fr) 28px;gap:10px;align-items:center}.score-sliders input{padding:0}.score-sliders output{color:var(--burnt);font-weight:900}.inline-create-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px;align-items:end}.inline-create-form label{display:grid;gap:5px;color:var(--navy);font-size:9px;font-weight:800}
.day-command-stats{grid-template-columns:repeat(5,1fr)}.day-master-timeline{display:grid}.day-item{display:grid;grid-template-columns:90px 16px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 5px;border-bottom:1px solid var(--line)}.day-item>time strong,.day-item>time span{display:block}.day-item>time strong{color:var(--navy);font:700 18px Georgia,serif}.day-item>time span{color:var(--muted);font-size:8px}.day-item>i{width:12px;height:12px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(212,175,55,.15)}.day-item.status-completed>i{background:var(--sage)}.day-item.status-issue>i{background:var(--danger);box-shadow:0 0 0 5px rgba(169,68,66,.15)}.day-item h4{margin:5px 0 1px;color:var(--navy)}.day-item p,.day-item small{display:block;margin:0;color:var(--muted);font-size:8px}.day-item details>summary{cursor:pointer;color:var(--burnt);font-size:9px;font-weight:850}.vendor-arrival-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vendor-arrival-grid article{display:grid;grid-template-columns:75px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:13px}.vendor-arrival-time{font:700 16px Georgia,serif;color:var(--burnt)}.vendor-arrival-grid strong,.vendor-arrival-grid small{display:block}.vendor-arrival-grid strong{color:var(--navy)}.vendor-arrival-grid small,.vendor-arrival-grid p{margin:0;color:var(--muted);font-size:8px}.guest-search{display:flex;align-items:center;gap:8px}.guest-search input{min-width:290px}.checkin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.checkin-grid article{display:grid;grid-template-columns:42px minmax(0,1fr) 165px;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:14px;background:#fff}.checkin-grid article.checked-in{background:#f0f6ed;border-color:#b7cdb2}.checkin-state{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font-size:20px}.checked-in .checkin-state{background:var(--sage)}.checkin-grid strong,.checkin-grid small,.checkin-grid code{display:block}.checkin-grid strong{color:var(--navy)}.checkin-grid small,.checkin-grid p{margin:0;color:var(--muted);font-size:8px}.checkin-grid code{margin-top:4px;color:var(--burnt);font-size:8px}.checkin-form{display:grid;gap:6px}.emergency-panel{border-top:5px solid var(--burnt)}.emergency-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.emergency-grid article{padding:17px;border-radius:14px;background:linear-gradient(145deg,#101b2e,#2c3b59);color:#fff}.emergency-grid span,.emergency-grid strong,.emergency-grid small{display:block}.emergency-grid span{color:var(--gold);font-size:8px;text-transform:uppercase;font-weight:850}.emergency-grid strong{font:700 22px Georgia,serif}.emergency-grid small{color:rgba(255,255,255,.65);font-size:8px}.day-mode-active .sidebar,.day-mode-active .topbar,.day-mode-active .jackson-page-footer,.day-mode-active .suite-tabs{display:none!important}.day-mode-active .app-shell{display:block}.day-mode-active .content{max-width:none;padding:18px}.day-mode-active .dayof-hero{position:sticky;top:0;z-index:30;border-radius:0;margin:-18px -18px 18px}.day-mode-active .day-timeline-panel{font-size:1.15em}
.board-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.board-card{padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink)}.board-card:hover,.board-card.active{background:var(--navy);color:#fff;text-decoration:none}.board-card span,.board-card strong,.board-card small{display:block}.board-card strong{font:700 27px Georgia,serif}.board-card small{color:var(--muted);font-size:8px}.board-card:hover small,.board-card.active small{color:rgba(255,255,255,.64)}.inspiration-grid{columns:4 250px;column-gap:14px}.inspiration-card{break-inside:avoid;margin:0 0 14px;overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 14px 32px rgba(30,42,68,.07)}.inspiration-card>img,.inspiration-placeholder{width:100%;min-height:180px;max-height:360px;object-fit:cover;background:#ece4da}.inspiration-placeholder{display:grid;place-items:center;font-size:50px;color:var(--gold)}.inspiration-card>div{padding:14px}.inspiration-card h4{margin:5px 0;color:var(--navy)}.inspiration-card p{color:var(--muted);font-size:9px}.inspiration-card small,.inspiration-card strong{display:block}.inspiration-actions{display:flex;justify-content:space-between;gap:10px;margin-top:10px}.inspiration-actions details>summary{cursor:pointer;color:var(--burnt);font-size:9px}.vote-love{box-shadow:inset 0 4px 0 var(--burnt),0 14px 32px rgba(30,42,68,.07)}.vote-booked{box-shadow:inset 0 4px 0 var(--sage),0 14px 32px rgba(30,42,68,.07)}.vote-no{opacity:.72}
.security-feature{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;border:1px solid var(--line);border-radius:15px;background:#fbf8f3}.security-feature strong,.security-feature p{display:block;margin:0}.security-feature strong{color:var(--navy)}.security-feature p{color:var(--muted);font-size:9px}.totp-setup{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;padding:20px;border:1px solid var(--gold);border-radius:16px;background:#fffaf0}.totp-setup h4{color:var(--navy)}.totp-secret{display:inline-block;padding:12px;border-radius:10px;background:var(--navy);color:var(--gold);font-size:16px;letter-spacing:.14em;word-break:break-all}.recovery-code-box{margin-top:18px;padding:18px;border:2px solid var(--burnt);border-radius:16px;background:#fff7f2}.recovery-code-box>div{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:13px 0}.recovery-code-box code{padding:8px;border-radius:8px;background:#1e2a44;color:#fff;text-align:center}.session-list{display:grid;gap:9px}.session-list article{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}.session-list article.revoked{opacity:.55}.session-list strong,.session-list small,.session-list span{display:block}.session-list strong{color:var(--navy)}.session-list small,.session-list span{color:var(--muted);font-size:8px}.backup-note{display:flex;gap:14px;padding:16px;border:1px solid rgba(143,161,135,.42);border-radius:14px;background:#f1f6ee;margin-bottom:18px}.backup-note>span{font-size:28px}.backup-note strong{color:var(--navy)}.backup-note p{margin:3px 0;color:var(--muted);font-size:9px}.cron-guide{margin-top:16px}.cron-guide summary{cursor:pointer;color:var(--burnt);font-weight:800}.cron-guide pre{overflow:auto;padding:12px;background:#101827;color:#fff;border-radius:10px}.danger-details>summary{cursor:pointer;color:var(--danger);font-weight:850}.two-factor-login-intro{display:flex;align-items:center;gap:12px;margin-bottom:17px;padding:13px;border:1px solid var(--gold);border-radius:13px;background:#fff9e8}.two-factor-login-intro>span{font-size:24px}.two-factor-login-intro strong,.two-factor-login-intro small{display:block}.two-factor-login-intro strong{color:var(--navy)}.two-factor-login-intro small{color:var(--muted)}
.rsvp-custom-questions{display:grid;gap:13px;padding:16px;border:1px solid var(--line);border-radius:14px}.rsvp-custom-questions legend{padding:0 8px;color:var(--navy);font:700 17px Georgia,serif}.rsvp-itinerary{margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}.rsvp-itinerary-list{display:grid;gap:9px}.rsvp-itinerary-list article{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:13px}.rsvp-itinerary-list time strong,.rsvp-itinerary-list time span{display:block}.rsvp-itinerary-list time strong{color:var(--navy);font:700 16px Georgia,serif}.rsvp-itinerary-list time span{color:var(--muted);font-size:8px}.rsvp-itinerary-list h3{margin:0;color:var(--navy)}.rsvp-itinerary-list p,.rsvp-itinerary-list small{margin:0;color:var(--muted);font-size:8px}.rsvp-pass{margin-top:16px;padding:15px;border-radius:14px;background:linear-gradient(145deg,#101b2e,#293955);color:#fff}.rsvp-pass strong,.rsvp-pass span{display:block}.rsvp-pass span{color:rgba(255,255,255,.64);font-size:9px}.rsvp-pass>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.rsvp-pass code{padding:7px 9px;border-radius:8px;background:rgba(255,255,255,.10);color:var(--gold)}.rsvp-celebrate-link{text-align:center}

/* Public celebration website */
.celebrate-body{min-height:100vh;background:#fffaf4;color:#26272b}.celebrate-theme-toggle{position:fixed;right:18px;bottom:18px;z-index:100}.celebrate-nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px clamp(18px,5vw,72px);background:rgba(255,250,244,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(203,187,160,.45)}.celebrate-brand{display:flex;align-items:center;gap:10px;color:var(--navy);font:700 17px Georgia,serif}.celebrate-brand:hover{text-decoration:none}.celebrate-brand img{width:48px;height:48px}.celebrate-nav nav{display:flex;align-items:center;gap:18px}.celebrate-nav nav>a:not(.button){color:var(--navy);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.celebrate-hero{position:relative;overflow:hidden;min-height:680px;display:grid;place-content:center;text-align:center;padding:80px 20px;color:#fff;background:radial-gradient(circle at 16% 20%,rgba(196,87,46,.30),transparent 27%),radial-gradient(circle at 88% 78%,rgba(143,161,135,.20),transparent 30%),linear-gradient(135deg,#0d1729,#1e2a44 58%,#3b2e39)}.celebrate-hero:before{content:"";position:absolute;inset:30px;border:1px solid rgba(212,175,55,.25)}.celebrate-hero>img{position:relative;width:170px;height:170px;margin:0 auto 18px;filter:drop-shadow(0 20px 40px rgba(0,0,0,.35))}.celebrate-hero h1{position:relative;margin:5px 0;font:700 clamp(50px,8vw,96px) Georgia,serif}.celebrate-hero>p:not(.eyebrow){position:relative;max-width:760px;margin:5px auto;color:rgba(255,255,255,.76);font-size:15px}.celebrate-hero time{position:relative;display:block;margin-top:16px;color:var(--gold);font:700 20px Georgia,serif}.celebrate-actions{position:relative;display:flex;justify-content:center;gap:10px;margin-top:25px}.celebrate-hero .button-secondary{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.28);color:#fff}.celebrate-countdown{position:relative;display:flex;justify-content:center;gap:12px;margin-top:24px}.celebrate-countdown>div{min-width:92px;padding:13px;border:1px solid rgba(255,255,255,.20);border-radius:13px;background:rgba(0,0,0,.15);backdrop-filter:blur(10px)}.celebrate-countdown strong,.celebrate-countdown span{display:block}.celebrate-countdown strong{font:700 32px Georgia,serif;color:#fff}.celebrate-countdown span{color:rgba(255,255,255,.58);font-size:8px;text-transform:uppercase;letter-spacing:.12em}.celebrate-section{max-width:1220px;margin:0 auto;padding:90px 28px;text-align:center}.celebrate-section>.eyebrow{margin-bottom:8px}.celebrate-section>h2{margin:0 0 22px;color:var(--navy);font:700 clamp(34px,5vw,58px) Georgia,serif}.celebrate-story>div{max-width:840px;margin:auto;color:#5f625f;font:400 18px/1.85 Georgia,serif}.celebrate-story aside{display:inline-flex;gap:15px;margin-top:30px;padding:13px 20px;border:1px solid var(--gold);border-radius:99px}.celebrate-story aside strong{color:var(--burnt)}.celebrate-party-grid,.celebrate-card-grid,.registry-public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.celebrate-party-grid article,.celebrate-card-grid article,.registry-public-grid article{padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 17px 45px rgba(30,42,68,.07)}.celebrate-party-grid img,.party-placeholder{width:130px;height:130px;margin:auto;border-radius:50%;object-fit:cover;background:var(--navy);color:#fff;display:grid;place-items:center;font:700 40px Georgia,serif}.celebrate-party-grid span,.celebrate-card-grid span{display:block;margin-top:12px;color:var(--burnt);font-size:8px;text-transform:uppercase;font-weight:850}.celebrate-party-grid h3,.celebrate-card-grid h3,.registry-public-grid h3{margin:4px 0;color:var(--navy);font:700 22px Georgia,serif}.celebrate-party-grid p,.celebrate-card-grid p,.registry-public-grid p{color:var(--muted);font-size:10px}.celebrate-schedule{max-width:none;background:#f5efe7}.celebrate-schedule>div{max-width:950px;margin:auto}.celebrate-schedule article{display:grid;grid-template-columns:160px minmax(0,1fr);gap:25px;text-align:left;padding:22px 0;border-bottom:1px solid #ddd2c5}.celebrate-schedule time strong,.celebrate-schedule time span{display:block}.celebrate-schedule time strong{color:var(--burnt);font:700 22px Georgia,serif}.celebrate-schedule time span{color:var(--muted);font-size:9px}.celebrate-schedule article>div>span{color:var(--gold);font-size:8px;text-transform:uppercase;font-weight:850}.celebrate-schedule h3{margin:3px 0;color:var(--navy);font:700 24px Georgia,serif}.celebrate-schedule p,.celebrate-schedule small{display:block;margin:0;color:var(--muted)}.celebrate-schedule a{display:inline-block;margin-top:7px}.celebrate-registry{max-width:none;background:linear-gradient(135deg,#101b2e,#263650);color:#fff}.celebrate-registry>h2{color:#fff}.celebrate-registry>p{color:rgba(255,255,255,.66)}.registry-public-grid{max-width:1100px;margin:25px auto 0}.registry-public-grid article{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.18)}.registry-public-grid h3{color:#fff}.registry-public-grid p{color:rgba(255,255,255,.65)}.celebrate-faq{max-width:900px;margin:auto;text-align:left}.celebrate-faq details{padding:16px;border-bottom:1px solid var(--line)}.celebrate-faq summary{cursor:pointer;color:var(--navy);font:700 18px Georgia,serif}.celebrate-faq p{color:var(--muted)}.celebrate-memories{max-width:none;background:#f5efe7}.celebrate-gallery{columns:4 260px;column-gap:14px;max-width:1300px;margin:auto}.celebrate-gallery figure{break-inside:avoid;margin:0 0 14px;overflow:hidden;border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(30,42,68,.08)}.celebrate-gallery img{display:block;width:100%;height:auto}.celebrate-gallery figcaption{padding:10px;color:var(--navy);font-size:10px;text-align:left}.celebrate-gallery figcaption small{display:block;color:var(--muted)}.celebrate-guestbook{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;max-width:1150px;margin:35px auto 0}.celebrate-guestbook blockquote{margin:0;padding:20px;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(30,42,68,.07)}.celebrate-guestbook p{color:var(--navy);font:italic 17px/1.6 Georgia,serif}.celebrate-guestbook cite{color:var(--burnt);font-size:10px;font-style:normal;font-weight:850}.celebrate-share-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1000px;margin:auto;text-align:left}.celebrate-share-grid form{padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff}.celebrate-share>small{display:block;margin-top:15px;color:var(--muted)}.celebrate-footer{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:22px clamp(20px,5vw,70px);background:#0e1829;color:#fff}.celebrate-footer>img{width:64px;height:64px}.celebrate-footer strong,.celebrate-footer span{display:block}.celebrate-footer span{color:rgba(255,255,255,.58);font-size:9px}.celebrate-footer a img{max-width:175px;max-height:55px;object-fit:contain}.celebrate-lock{max-width:520px;margin:9vh auto;padding:35px;text-align:center;border:1px solid var(--line);border-radius:25px;background:#fff;box-shadow:0 30px 80px rgba(30,42,68,.16)}.celebrate-lock>img{width:130px}.celebrate-lock h1{color:var(--navy);font:700 39px Georgia,serif}.celebrate-theme-midnight .celebrate-hero{background:radial-gradient(circle at 18% 20%,rgba(228,120,79,.22),transparent 27%),linear-gradient(135deg,#050912,#101827 58%,#241622)}.celebrate-theme-sage .celebrate-hero{background:radial-gradient(circle at 18% 20%,rgba(255,255,255,.16),transparent 27%),linear-gradient(135deg,#27382c,#5d765c 58%,#9a8a6c)}.celebrate-theme-taupe .celebrate-hero{background:linear-gradient(135deg,#493a31,#8f7860 58%,#c5a785)}.celebrate-theme-garden .celebrate-hero{background:radial-gradient(circle at 18% 20%,rgba(255,238,229,.26),transparent 27%),linear-gradient(135deg,#304a39,#5d765c 58%,#8b665e)}

html[data-theme="dark"] :is(.suite-panel,.suite-record,.theme-choice,.compact-record-list article,.template-grid article,.photo-moderation-grid article,.contract-scan-grid article,.vendor-score-card,.board-card,.inspiration-card,.session-list article,.checkin-grid article,.suite-add,.faq-admin-list details){background:#111a2a!important;border-color:#34445f!important;color:#f2f5fa!important}
html[data-theme="dark"] :is(.suite-panel,.suite-record,.theme-choice,.template-grid article,.contract-scan-grid article,.vendor-score-card,.board-card,.inspiration-card,.session-list article,.checkin-grid article) :is(h2,h3,h4,strong,label,summary){color:#f2f5fa!important}
html[data-theme="dark"] :is(.suite-record,.theme-choice,.template-grid article,.contract-scan-grid article,.vendor-score-card,.board-card,.inspiration-card,.session-list article,.checkin-grid article) :is(p,small,span){color:#b8c3d3!important}
html[data-theme="dark"] .suite-tabs{background:rgba(8,13,23,.94);border-color:#34445f}html[data-theme="dark"] .suite-tabs a{color:#e9eef6}html[data-theme="dark"] .suite-tabs a:hover{background:#334d77}
html[data-theme="dark"] :is(.audience-stat-grid,.financial-command-grid,.day-command-stats)>article{background:#0d1625!important;border-color:#34445f!important}html[data-theme="dark"] :is(.audience-stat-grid,.financial-command-grid,.day-command-stats) strong{color:#f2f5fa!important}
html[data-theme="dark"] .forecast-list article>div{background:#2a3850}html[data-theme="dark"] .forecast-list :is(time,strong){color:#f2f5fa}html[data-theme="dark"] .risk-card{background:#32191c!important;border-color:#6e3438!important}
html[data-theme="dark"] .score-sliders output{color:#ff9a72}html[data-theme="dark"] .checkin-grid article.checked-in{background:#15251b!important;border-color:#40543d!important}html[data-theme="dark"] .totp-setup{background:#2a2412!important;border-color:#6e5a22!important}html[data-theme="dark"] .security-feature{background:#0d1625!important;border-color:#34445f!important}html[data-theme="dark"] .backup-note{background:#132019!important;border-color:#40543d!important}html[data-theme="dark"] .recovery-code-box{background:#2a1715!important}
html[data-theme="dark"] .rsvp-itinerary-list article{background:#111a2a;border-color:#34445f}html[data-theme="dark"] .rsvp-itinerary-list :is(h3,time strong){color:#f2f5fa!important}
html[data-theme="dark"] .celebrate-body{background:#080d17;color:#eef3fb}html[data-theme="dark"] .celebrate-nav{background:rgba(8,13,23,.94);border-color:#34445f}html[data-theme="dark"] .celebrate-brand,html[data-theme="dark"] .celebrate-nav nav>a:not(.button){color:#eef3fb}html[data-theme="dark"] .celebrate-section>h2,html[data-theme="dark"] .celebrate-story>div,html[data-theme="dark"] .celebrate-story aside,html[data-theme="dark"] .celebrate-faq summary{color:#f2f5fa}html[data-theme="dark"] .celebrate-schedule,html[data-theme="dark"] .celebrate-memories{background:#0d1625}html[data-theme="dark"] :is(.celebrate-party-grid article,.celebrate-card-grid article,.celebrate-guestbook blockquote,.celebrate-share-grid form,.celebrate-lock){background:#111a2a;border-color:#34445f;color:#f2f5fa}html[data-theme="dark"] :is(.celebrate-party-grid,.celebrate-card-grid,.celebrate-guestbook,.celebrate-share-grid) :is(h3,p,small,label){color:#dbe4f0!important}html[data-theme="dark"] .celebrate-schedule article{border-color:#34445f}html[data-theme="dark"] .celebrate-schedule h3{color:#f2f5fa}html[data-theme="dark"] .celebrate-faq details{border-color:#34445f}

@media(max-width:1250px){.suite-record-grid,.theme-card-grid,.contract-scan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audience-stat-grid,.financial-command-grid,.day-command-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.inspiration-grid{columns:3 240px}.celebrate-gallery{columns:3 240px}}
@media(max-width:980px){.suite-hero{grid-template-columns:1fr;text-align:center}.suite-hero p{margin-left:auto!important;margin-right:auto!important}.suite-hero-actions{justify-content:center}.suite-orbit{width:145px;height:145px}.suite-two-column,.memory-admin-grid,.forecast-layout,.totp-setup{grid-template-columns:1fr}.vendor-score-grid,.vendor-arrival-grid,.checkin-grid{grid-template-columns:1fr}.inline-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.celebrate-nav nav a:not(.button){display:none}.celebrate-party-grid,.celebrate-card-grid,.registry-public-grid,.celebrate-guestbook{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-moderation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.emergency-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.suite-hero{padding:28px 22px}.suite-tabs{top:88px}.suite-record-grid,.theme-card-grid,.contract-scan-grid,.celebrate-party-grid,.celebrate-card-grid,.registry-public-grid,.celebrate-guestbook,.photo-moderation-grid{grid-template-columns:1fr}.audience-stat-grid,.financial-command-grid,.day-command-stats{grid-template-columns:repeat(2,1fr)}.suite-timeline article{grid-template-columns:75px minmax(0,1fr)}.suite-timeline article>form{grid-column:2}.vendor-score-grid{grid-template-columns:1fr}.inline-create-form{grid-template-columns:1fr}.day-item{grid-template-columns:74px 12px minmax(0,1fr)}.day-item>details{grid-column:3}.guest-search{width:100%;display:grid}.guest-search input{min-width:0}.checkin-grid article{grid-template-columns:38px minmax(0,1fr)}.checkin-form{grid-column:2}.board-grid{grid-template-columns:repeat(2,1fr)}.inspiration-grid{columns:1}.recovery-code-box>div{grid-template-columns:repeat(2,1fr)}.celebrate-hero{min-height:600px}.celebrate-hero:before{inset:12px}.celebrate-nav{padding:9px 13px}.celebrate-brand span{font-size:13px}.celebrate-countdown>div{min-width:75px}.celebrate-section{padding:65px 18px}.celebrate-schedule article{grid-template-columns:1fr;gap:8px}.celebrate-share-grid{grid-template-columns:1fr}.celebrate-gallery{columns:2 160px}.celebrate-footer{grid-template-columns:auto 1fr}.celebrate-footer>a{grid-column:1/-1;text-align:center}.rsvp-itinerary-list article{grid-template-columns:1fr}.rsvp-itinerary-list .button{justify-self:start}.guestbook-admin-card{grid-template-columns:1fr}}
@media print{.sidebar,.topbar,.suite-tabs,.suite-add,.button,.link-button,.jackson-page-footer,.theme-toggle{display:none!important}.app-shell{display:block}.content{max-width:none;padding:0}.panel,.suite-hero{box-shadow:none!important;break-inside:avoid}.suite-hero{color:#000;background:#fff;border:2px solid #1e2a44}.suite-hero p,.suite-hero .eyebrow{color:#333!important}.suite-orbit{display:none}.day-item{break-inside:avoid}}

/* V2.0.0 Wedding Day focus and interaction polish */
.wedding-day-focus .sidebar,.wedding-day-focus .topbar,.wedding-day-focus .jackson-page-footer,.wedding-day-focus .suite-tabs{display:none!important}
.wedding-day-focus .main-panel,.wedding-day-focus .content{margin:0!important;width:100%!important;max-width:none!important}
.wedding-day-focus .content{padding:18px!important}
.wedding-day-focus .dayof-hero{position:sticky;top:0;z-index:20;border-radius:0 0 22px 22px}
.wedding-day-focus .timeline-command article{font-size:1.1rem}
[data-scorecard] input[type=range]{accent-color:var(--burnt)}
[data-score-output]{font-variant-numeric:tabular-nums}
[data-checkin-row][hidden]{display:none!important}
.recovery-code-box code{user-select:all}
@media print{
  .sidebar,.topbar,.jackson-page-footer,.suite-tabs,.theme-toggle,.button,form{display:none!important}
  .main-panel,.content{margin:0!important;padding:0!important;width:100%!important}
  .panel,.suite-hero{box-shadow:none!important;break-inside:avoid}
}

/* V2.0.1 Smart Vendor Detection */
.inline-review-action{display:inline-flex;margin:0}.inline-review-action .link-button{white-space:nowrap}.vendor-detection-row label{min-width:0}.input-help{display:block;margin-top:6px;color:var(--muted);font-size:8px;line-height:1.4}.vendor-detection-row input,.vendor-detection-row select{width:100%;min-width:0}.review-head-actions{flex-wrap:wrap;justify-content:flex-end}
[data-theme="dark"] .input-help{color:#aebbd0}
@media(max-width:700px){.review-head-actions{justify-content:flex-start}.inline-review-action{width:100%}.inline-review-action .link-button{text-align:left}}


/* ========================================================================== */
/* V2.0.2 Secure inactivity auto logout                                       */
/* ========================================================================== */
.session-timeout-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:22px;background:rgba(5,9,16,.76);backdrop-filter:blur(10px)}
.session-timeout-modal[hidden]{display:none!important}.session-warning-open{overflow:hidden}
.session-timeout-card{width:min(520px,100%);padding:34px;border:1px solid rgba(212,175,55,.45);border-radius:25px;text-align:center;background:radial-gradient(circle at 90% 5%,rgba(212,175,55,.12),transparent 30%),#fffdf9;box-shadow:0 35px 100px rgba(0,0,0,.42)}
.session-timeout-icon{width:72px;height:72px;margin:0 auto 13px;display:grid;place-items:center;border:1px solid rgba(212,175,55,.55);border-radius:50%;background:#1e2a44;color:#f4d66f;font-size:30px;box-shadow:0 0 0 10px rgba(212,175,55,.08)}
.session-timeout-card h2{margin:5px 0 12px;color:var(--navy);font:700 31px Georgia,serif}.session-timeout-card>p:not(.eyebrow){max-width:410px;margin:0 auto;color:var(--muted);font-size:13px;line-height:1.65}.session-timeout-card>p strong{color:var(--burnt)}
.session-timeout-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:24px 0 14px}.session-timeout-actions form{margin:0}.session-timeout-card>small{color:var(--muted);font-size:9px}
html[data-theme="dark"] .session-timeout-card{background:radial-gradient(circle at 90% 5%,rgba(212,175,55,.12),transparent 30%),#111a2a;border-color:#51617a;color:#f2f5fa}html[data-theme="dark"] .session-timeout-card h2{color:#f2f5fa}html[data-theme="dark"] .session-timeout-card>p:not(.eyebrow),html[data-theme="dark"] .session-timeout-card>small{color:#bdc8d8}html[data-theme="dark"] .session-timeout-card>p strong{color:#ff9a72}
@media(max-width:560px){.session-timeout-card{padding:28px 20px}.session-timeout-actions{display:grid}.session-timeout-actions .button,.session-timeout-actions form{width:100%}.session-timeout-actions form .button{width:100%}}

/* ========================================================================== */
/* V3.0 Wedding Operating System                                              */
/* ========================================================================== */
body{font-size:calc(16px * var(--user-text-scale,1))}
.nav-count{margin-left:auto;min-width:22px;height:22px;padding:0 6px;border-radius:99px;display:grid;place-items:center;background:#f6d44c;color:#17233a;font-size:10px}
.topbar-search{display:flex;align-items:center;width:min(290px,26vw);border:1px solid var(--line);border-radius:999px;background:var(--paper);overflow:hidden}.topbar-search input{border:0;border-radius:0;background:transparent;padding:9px 4px 9px 13px;box-shadow:none}.topbar-search button{width:42px;border:0;background:transparent;color:var(--navy);font-size:20px}.notification-bell{position:relative;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:var(--paper);color:var(--gold);font-size:14px}.notification-bell b{position:absolute;right:-5px;top:-7px;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:var(--burnt);color:#fff;display:grid;place-items:center;font-size:9px}

.v3-command-hero,.notification-hero,.floorplan-hero,.workflow-hero,.postwedding-hero,.import-hero,.activity-hero,.health-hero,.design-hero,.vendor-portal-hero{background:radial-gradient(circle at 84% 14%,rgba(212,175,55,.2),transparent 24%),linear-gradient(135deg,#101a2b,#1e2a44 58%,#34415e)}
.v3-command-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.v3-command-stats article,.vendor-portal-summary article{position:relative;padding:18px 20px;border:1px solid var(--line);border-radius:15px;background:var(--paper);box-shadow:0 10px 28px rgba(30,42,68,.06)}.v3-command-stats span,.vendor-portal-summary span{display:block;color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.v3-command-stats strong,.vendor-portal-summary strong{display:block;margin:4px 0;color:var(--navy);font:700 27px Georgia,serif}.v3-command-stats a{font-size:9px;font-weight:850}
.v3-command-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(310px,.8fr);gap:22px}.v3-assistant-form textarea{font-size:16px}.v3-prompt-chips{display:flex;flex-wrap:wrap;gap:7px}.v3-prompt-chips button{border:1px solid var(--line);border-radius:99px;padding:7px 10px;background:#fff;color:var(--navy);font-size:9px;font-weight:800}.v3-prompt-chips button:hover{border-color:var(--burnt);color:var(--burnt)}.v3-assistant-answer{margin-top:20px;padding:21px;border:1px solid rgba(143,161,135,.5);border-radius:16px;background:radial-gradient(circle at 95% 0,rgba(143,161,135,.13),transparent 30%),#f7faf5}.v3-assistant-answer h4{margin:4px 0 14px;color:var(--navy);font:700 20px Georgia,serif}.v3-assistant-answer>div{white-space:normal;color:var(--ink)}.v3-assistant-answer small{display:block;margin-top:15px;color:var(--muted)}.v3-history{margin-top:15px}.v3-history summary{cursor:pointer;font-weight:850;color:var(--navy)}.v3-history article{padding:13px 0;border-bottom:1px solid var(--line)}.v3-history article p{font-size:11px;color:var(--muted)}
.v3-risk-list{display:grid;gap:9px}.v3-risk-list a{display:grid;grid-template-columns:8px 1fr auto;gap:11px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink)}.v3-risk-list a:hover{text-decoration:none;transform:translateX(2px)}.v3-risk-list i{height:42px;border-radius:99px;background:var(--gold)}.v3-risk-list .priority-urgent i{background:var(--danger)}.v3-risk-list .priority-high i{background:var(--burnt)}.v3-risk-list strong,.v3-risk-list span{display:block}.v3-risk-list span{font-size:9px;color:var(--muted)}
.v3-search-large{display:flex;gap:10px}.v3-search-large input{font-size:16px}.v3-search-results{display:grid;gap:7px;margin-top:14px}.v3-search-results>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink)}.v3-search-results>a:hover{text-decoration:none;border-color:rgba(196,87,46,.45);box-shadow:0 8px 24px rgba(30,42,68,.07)}.v3-search-results strong,.v3-search-results small{display:block}.v3-search-results small{color:var(--muted);font-size:9px}.v3-search-results b{font-size:9px;color:var(--burnt)}
.v3-notification-list{display:grid;gap:9px}.v3-notification-list article{display:grid;grid-template-columns:7px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}.v3-notification-list article>i{height:48px;border-radius:99px;background:var(--gold)}.v3-notification-list article.priority-high>i{background:var(--burnt)}.v3-notification-list article.priority-urgent>i{background:var(--danger)}.v3-notification-list article.is-read{opacity:.65}.v3-notification-list strong,.v3-notification-list p,.v3-notification-list small{display:block;margin:0}.v3-notification-list p{font-size:10px;color:var(--muted);margin:3px 0}.v3-notification-list small{font-size:8px;color:var(--muted)}.v3-notification-list.full-list article{grid-template-columns:8px minmax(0,1fr) auto;padding:17px}.v3-notification-actions{display:grid;justify-items:end;gap:7px}.inline-tabs{margin:0}

.floorplan-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:20px}.floorplan-tools{align-self:start;position:sticky;top:124px}.floorplan-legend{display:grid;gap:7px;margin-top:20px;padding-top:15px;border-top:1px solid var(--line)}.floorplan-legend span{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}.floorplan-legend i{width:14px;height:14px;border-radius:4px;background:var(--navy)}.floorplan-legend i.service{background:var(--burnt)}.floorplan-legend i.safety{background:var(--sage)}.floorplan-stage-panel{padding:0;overflow:hidden}.floorplan-stage-panel>.panel-heading{padding:18px 20px;margin:0;border-bottom:1px solid var(--line)}.floorplan-stage{position:relative;min-height:720px;overflow:hidden;background-color:#f8f4ec;background-image:linear-gradient(rgba(30,42,68,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(30,42,68,.06) 1px,transparent 1px);background-size:25px 25px}.floorplan-stage.no-grid{background-image:none}.floorplan-stage:before{content:"VENUE FLOOR";position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);font:700 55px Georgia,serif;color:rgba(30,42,68,.045);pointer-events:none}.floor-item{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);min-width:70px;min-height:54px;transform:rotate(var(--r));border:2px solid rgba(30,42,68,.65);border-radius:14px;background:color-mix(in srgb,var(--item-color,var(--navy)) 12%,#fff);box-shadow:0 8px 22px rgba(30,42,68,.12);touch-action:none;user-select:none;cursor:grab;z-index:2}.floor-item:active{cursor:grabbing;z-index:20}.floor-item.locked{cursor:not-allowed;border-style:dashed}.floor-item.type-dance-floor,.floor-item.type-ceremony{border-color:var(--gold);background:rgba(212,175,55,.12)}.floor-item.type-dj,.floor-item.type-bar,.floor-item.type-buffet,.floor-item.type-cake,.floor-item.type-photo-booth,.floor-item.type-gift-table,.floor-item.type-vendor-zone{border-color:var(--burnt);background:rgba(196,87,46,.1)}.floor-item.type-exit{border-color:var(--sage);background:rgba(143,161,135,.15)}.floor-item.type-wall{border-radius:4px;background:rgba(30,42,68,.16)}.floor-item.shape-round{border-radius:50%}.floor-item-handle{height:100%;display:grid;place-content:center;text-align:center;padding:8px}.floor-item-handle strong{color:var(--navy);font-size:11px}.floor-item-handle small{color:var(--muted);font-size:8px}.floor-item-menu{position:absolute;right:-7px;top:-7px;z-index:30}.floor-item-menu>summary{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;list-style:none;background:var(--navy);color:#fff;font-size:8px;cursor:pointer}.floor-item-menu[open]{width:220px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:0 18px 45px rgba(30,42,68,.18)}.floor-item-menu[open]>summary{position:absolute;right:5px;top:5px}.floor-item-menu .stack-form{margin-top:20px}.floorplan-north{position:absolute;right:18px;top:18px;color:var(--navy);font-weight:900}.seat-number-input{max-width:80px}

.workflow-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.workflow-card{padding:20px;border:1px solid var(--line);border-top:5px solid var(--gold);border-radius:16px;background:var(--paper);box-shadow:0 12px 32px rgba(30,42,68,.07)}.workflow-card.priority-high{border-top-color:var(--burnt)}.workflow-card.priority-urgent{border-top-color:var(--danger)}.workflow-card-head{display:flex;align-items:center;gap:7px}.priority-label{margin-left:auto;font-size:8px;text-transform:uppercase;color:var(--muted)}.workflow-card h3{font:700 21px Georgia,serif;color:var(--navy);margin:12px 0 7px}.workflow-card>p{color:var(--muted);font-size:11px}.workflow-card>small{display:block;margin:12px 0;color:var(--muted);font-size:8px}.workflow-diff{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:9px;margin:13px 0}.workflow-diff>div{padding:10px;border-radius:10px;background:#f6f1e9}.workflow-diff span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase}.workflow-diff pre{white-space:pre-wrap;margin:4px 0 0;font-family:inherit;font-size:10px}.workflow-review{padding:11px;border-left:4px solid var(--sage);background:#f3f7f0;border-radius:8px}.workflow-review p{margin:3px 0;font-size:10px}.workflow-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:7px;align-items:end;margin:14px 0}.workflow-actions label{font-size:9px;color:var(--navy)}

.post-wedding-board{display:grid;gap:12px}.post-item{display:grid;grid-template-columns:52px minmax(0,1fr) auto auto;gap:13px;align-items:center;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.post-item.status-completed{opacity:.65}.post-item-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--gold);font-size:20px}.post-item h3{margin:5px 0 2px;color:var(--navy);font:700 18px Georgia,serif}.post-item p{margin:0;color:var(--muted);font-size:10px}.post-item small{font-size:8px;color:var(--muted)}.post-status-form{display:flex;gap:6px}.post-status-form select{min-width:120px}

.import-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.import-type-grid article{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.import-type-grid article>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--gold);font-weight:900}.import-type-grid h3{color:var(--navy);font:700 18px Georgia,serif;margin:8px 0 3px}.import-type-grid p{font-size:9px;color:var(--muted)}.import-type-grid code{font-size:8px;white-space:normal}.table-wrap details pre{white-space:pre-wrap;max-width:500px;font-size:9px}
.v3-activity-timeline{position:relative;display:grid}.v3-activity-timeline:before{content:"";position:absolute;left:119px;top:0;bottom:0;width:1px;background:var(--line)}.v3-activity-timeline article{display:grid;grid-template-columns:105px 18px minmax(0,1fr);gap:9px;align-items:start;padding:12px 0}.v3-activity-timeline article>i{position:relative;z-index:1;width:11px;height:11px;margin-top:5px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px var(--paper)}.v3-activity-timeline time{font-size:8px;color:var(--muted);text-align:right}.v3-activity-timeline strong,.v3-activity-timeline small{display:block}.v3-activity-timeline strong{font-size:11px;margin:3px 0}.v3-activity-timeline small{color:var(--muted);font-size:8px}
.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.health-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.health-card>span{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#e6efe3;color:#476144;font-weight:900}.health-card.unhealthy>span{background:#f8e6e4;color:#913d38}.health-card h3{margin:0;color:var(--navy);font:700 17px Georgia,serif}.health-card p{margin:3px 0;color:var(--muted);font-size:9px;word-break:break-word}.health-card small{display:block;color:var(--danger);font-size:8px}.operations-command-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.operations-command-grid article{padding:14px;border:1px solid var(--line);border-radius:12px;background:#f8f4ed}.operations-command-grid pre{white-space:pre-wrap;word-break:break-all;font-size:9px;background:#111a2a;color:#dce8f7;padding:10px;border-radius:8px}.operations-command-grid small{font-size:8px;color:var(--muted)}

.design-studio-layout{display:grid;grid-template-columns:minmax(330px,.8fr) minmax(0,1.2fr);gap:20px}.design-preview-panel{overflow:hidden}.print-design{width:min(100%,720px);min-height:520px;margin:auto;padding:50px;display:grid;align-content:center;text-align:center;border:1px solid var(--line);box-shadow:0 18px 50px rgba(30,42,68,.12);background:#fff;color:#1e2a44}.print-design>img{width:100px;height:100px;margin:0 auto 20px}.print-design h1{font:700 42px Georgia,serif;margin:6px}.print-design h2{font:400 21px Georgia,serif;margin:3px 0 25px}.print-design>div{line-height:1.8}.print-design footer{margin-top:30px;padding-top:15px;border-top:1px solid currentColor;font-size:10px}.print-design.theme-burnt-autumn{background:#fff7ed;color:#74351e;border:12px solid #c4572e}.print-design.theme-sage-garden{background:#f5f8f1;color:#3d5540;border:12px solid #8fa187}.print-design.theme-taupe-classic{background:#fbf6ef;color:#4f4539;border:12px solid #cbbba0}.print-design.theme-midnight{background:#101827;color:#f7f1dd;border:12px solid #d4af37}.qr-placeholder{width:130px;height:130px;margin:25px auto 0;border:3px dashed currentColor;display:grid;place-content:center}.qr-placeholder span,.qr-placeholder small{display:block}.design-library{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.design-library article{padding:16px;border:1px solid var(--line);border-radius:13px;background:var(--paper)}.design-library h3{color:var(--navy);font:700 17px Georgia,serif}.design-library p{font-size:9px;color:var(--muted)}.design-library article>div{display:flex;gap:8px;align-items:center}

.vendor-portal-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.vendor-portal-summary article{padding:17px}.permission-matrix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.permission-matrix>section{min-width:0;border:1px solid var(--line);border-radius:14px;overflow:hidden}.permission-matrix h4{margin:0;padding:14px;background:var(--navy);color:#fff}.permission-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:7px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line)}.permission-row strong{font-size:9px}.permission-row label{display:flex;align-items:center;gap:3px;font-size:8px}.permission-row input{width:auto}.accessibility-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}

.high-contrast-mode{--line:#6c7b90}.high-contrast-mode .muted,.high-contrast-mode small{color:color-mix(in srgb,var(--ink) 75%,transparent)}.high-contrast-mode :focus-visible{outline:4px solid #ffd84f!important;outline-offset:3px}.reduced-motion-mode *,.reduced-motion-mode *:before,.reduced-motion-mode *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reduced-motion-mode .firefly-field{display:none}.compact-mode .content{padding-top:18px}.compact-mode .panel{padding:16px}.compact-mode .content>*+*{margin-top:14px}.compact-mode th,.compact-mode td{padding:8px 10px}

html[data-theme="dark"] .topbar-search,html[data-theme="dark"] .notification-bell,html[data-theme="dark"] .v3-prompt-chips button,html[data-theme="dark"] .v3-risk-list a,html[data-theme="dark"] .v3-search-results>a,html[data-theme="dark"] .v3-notification-list article,html[data-theme="dark"] .workflow-card,html[data-theme="dark"] .post-item,html[data-theme="dark"] .import-type-grid article,html[data-theme="dark"] .health-card,html[data-theme="dark"] .design-library article,html[data-theme="dark"] .vendor-portal-summary article,html[data-theme="dark"] .v3-command-stats article{background:#111a2a;border-color:#33425a;color:#eef3fb}html[data-theme="dark"] .topbar-search input{color:#eef3fb}html[data-theme="dark"] .topbar-search button,html[data-theme="dark"] .notification-bell{color:#f4cf4f}html[data-theme="dark"] .v3-assistant-answer,html[data-theme="dark"] .workflow-review{background:#132319;border-color:#395a40}html[data-theme="dark"] .v3-assistant-answer>div,html[data-theme="dark"] .v3-assistant-answer h4,html[data-theme="dark"] .v3-risk-list strong,html[data-theme="dark"] .v3-search-results strong,html[data-theme="dark"] .post-item h3,html[data-theme="dark"] .health-card h3,html[data-theme="dark"] .design-library h3,html[data-theme="dark"] .v3-command-stats strong,html[data-theme="dark"] .vendor-portal-summary strong{color:#f4f7fb}html[data-theme="dark"] .workflow-diff>div,html[data-theme="dark"] .operations-command-grid article{background:#0c1422;border-color:#33425a}html[data-theme="dark"] .floorplan-stage{background-color:#0d1625;background-image:linear-gradient(rgba(212,175,55,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,55,.07) 1px,transparent 1px)}html[data-theme="dark"] .floorplan-stage:before{color:rgba(255,255,255,.035)}html[data-theme="dark"] .floor-item{background:color-mix(in srgb,var(--item-color,var(--gold)) 18%,#101a2b);border-color:#7d8ca3}html[data-theme="dark"] .floor-item-handle strong,html[data-theme="dark"] .floorplan-north{color:#f4f7fb}html[data-theme="dark"] .floor-item-menu[open]{background:#111a2a;border-color:#3a4961}html[data-theme="dark"] .print-design:not(.theme-midnight){box-shadow:0 20px 50px rgba(0,0,0,.45)}html[data-theme="dark"] .permission-matrix>section{border-color:#33425a}html[data-theme="dark"] .permission-row{border-color:#33425a}html[data-theme="dark"] .v3-activity-timeline article>i{box-shadow:0 0 0 5px #111a2a}

@media(max-width:1300px){.v3-command-stats,.vendor-portal-summary{grid-template-columns:repeat(2,1fr)}.health-grid{grid-template-columns:repeat(2,1fr)}.permission-matrix{grid-template-columns:1fr}.import-type-grid{grid-template-columns:repeat(2,1fr)}.topbar-search{display:none}}
@media(max-width:1050px){.v3-command-grid,.floorplan-layout,.design-studio-layout{grid-template-columns:1fr}.floorplan-tools{position:static}.workflow-board{grid-template-columns:1fr}.operations-command-grid{grid-template-columns:1fr}.design-library{grid-template-columns:repeat(2,1fr)}.floorplan-stage{min-height:620px}}
@media(max-width:700px){.v3-command-stats,.vendor-portal-summary,.health-grid,.import-type-grid,.accessibility-options{grid-template-columns:1fr}.v3-search-large{display:grid}.workflow-actions{grid-template-columns:1fr}.post-item{grid-template-columns:46px minmax(0,1fr)}.post-item>form{grid-column:2}.floorplan-stage{min-height:540px}.floor-item{min-width:58px;min-height:48px}.design-library{grid-template-columns:1fr}.print-design{padding:26px;min-height:450px}.print-design h1{font-size:32px}.notification-bell{display:none}.v3-activity-timeline:before{left:9px}.v3-activity-timeline article{grid-template-columns:18px minmax(0,1fr)}.v3-activity-timeline time{grid-column:2;text-align:left}.v3-activity-timeline article>i{grid-row:1/3}.permission-row{grid-template-columns:1fr auto auto}.permission-row button{grid-column:1/-1}.floorplan-stage-panel>.panel-heading{align-items:flex-start;flex-direction:column}}
@media print{.sidebar,.topbar,.jackson-page-footer,.firefly-field,.ambient-layer,.design-studio-layout>section:first-child,.design-library,.floorplan-tools,.floorplan-stage-panel>.panel-heading,.button,.link-button{display:none!important}.app-shell{display:block}.content{padding:0;max-width:none}.panel{box-shadow:none;border:0}.print-design{width:100%;min-height:95vh;border-width:10px!important;box-shadow:none}.floorplan-stage{min-height:95vh;border:1px solid #000}}

/* ========================================================================== */
/* V3.0.2 Highly Visible Login Firefly Field                                  */
/* ========================================================================== */
.extreme-login{position:relative;isolation:isolate;overflow:hidden}
.extreme-login>.login-art,.extreme-login>.login-card{position:relative;z-index:2}
.extreme-login>.login-art>*{position:relative;z-index:4}
.extreme-login>.login-art:after{z-index:2}
.login-firefly-swarm{position:absolute;left:0;top:0;bottom:0;width:62.5%;z-index:3;overflow:hidden;pointer-events:none;contain:layout paint;mix-blend-mode:screen}
.login-firefly-swarm i{position:absolute;left:var(--ff-x);top:var(--ff-y);width:var(--ff-size);height:var(--ff-size);border-radius:50%;background:#fffbd3;opacity:.48;box-shadow:0 0 5px 2px rgba(255,255,218,.98),0 0 13px 5px rgba(255,225,90,.88),0 0 32px 11px rgba(212,175,55,.48),0 0 58px 17px rgba(196,87,46,.14);will-change:transform,opacity;animation:loginFireflyWanderV302 var(--ff-drift) ease-in-out var(--ff-delay) infinite alternate,loginFireflyGlowV302 var(--ff-blink) ease-in-out var(--ff-pulse-delay) infinite}
.login-firefly-swarm i:before{content:"";position:absolute;inset:25%;border-radius:50%;background:#fff;box-shadow:0 0 5px #fff}
.login-firefly-swarm i:after{content:"";position:absolute;inset:-10px;border-radius:50%;background:radial-gradient(circle,rgba(255,244,142,.58) 0,rgba(255,211,72,.22) 38%,transparent 72%);filter:blur(1px)}
.login-firefly-swarm i:nth-child(3n){background:#e8ff9d;box-shadow:0 0 5px 2px rgba(232,255,157,.98),0 0 15px 6px rgba(180,226,112,.78),0 0 36px 12px rgba(143,161,135,.42)}
.login-firefly-swarm i:nth-child(5n){background:#ffd080;box-shadow:0 0 5px 2px rgba(255,224,150,.98),0 0 16px 6px rgba(255,162,83,.82),0 0 38px 13px rgba(196,87,46,.43)}
.login-firefly-swarm i:nth-child(7n){transform:scale(1.18)}
@keyframes loginFireflyWanderV302{0%{transform:translate3d(0,0,0) scale(.72)}25%{transform:translate3d(calc(var(--ff-dx) * .42),calc(var(--ff-dy) * -.38),0) scale(1.14)}52%{transform:translate3d(var(--ff-dx),calc(var(--ff-dy) * -.9),0) scale(.86)}78%{transform:translate3d(calc(var(--ff-dx) * -.48),calc(var(--ff-dy) * -.26),0) scale(1.28)}100%{transform:translate3d(calc(var(--ff-dx) * .22),calc(var(--ff-dy) * -.7),0) scale(.78)}}
@keyframes loginFireflyGlowV302{0%,100%{opacity:.30}15%{opacity:.66}35%{opacity:1}52%{opacity:.42}72%{opacity:.92}88%{opacity:.5}}
html[data-theme="dark"] .login-firefly-swarm{opacity:1}
html[data-theme="light"] .login-firefly-swarm{opacity:.96}
@media(max-width:980px){.login-firefly-swarm{width:100%;height:380px;bottom:auto}.login-firefly-swarm i:nth-child(n+73){display:none}}
@media(max-width:650px){.login-firefly-swarm{height:330px}.login-firefly-swarm i:nth-child(n+46){display:none}.login-firefly-swarm i{box-shadow:0 0 5px 2px rgba(255,255,218,.95),0 0 13px 5px rgba(255,225,90,.78),0 0 28px 9px rgba(212,175,55,.38)}}
@media(prefers-reduced-motion:reduce){.login-firefly-swarm{display:block!important}.login-firefly-swarm i{animation:none!important;opacity:.72!important}.login-firefly-swarm i:nth-child(n+37){display:none}}
.reduced-motion-mode .login-firefly-swarm{display:block!important}
.reduced-motion-mode .login-firefly-swarm i{animation:none!important;opacity:.72!important}
.reduced-motion-mode .login-firefly-swarm i:nth-child(n+37){display:none}


/* ========================================================================== */
/* V4.4 Jackson Wedding HyperSuite                                            */
/* ========================================================================== */
.v4-hyper-hero,.v4-guest-hero,.v4-logistics-hero,.v4-vendor-hero,.v4-production-hero,.v4-media-hero,.v4-finance-hero,.v4-collab-hero,.v4-integrations-hero,.v4-infra-hero{background:radial-gradient(circle at 82% 10%,rgba(212,175,55,.28),transparent 24%),radial-gradient(circle at 8% 100%,rgba(196,87,46,.22),transparent 30%),linear-gradient(135deg,#07101d,#14233b 48%,#30466c);box-shadow:0 26px 80px rgba(7,16,29,.28)}
.v4-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.v4-metric-grid>article{position:relative;overflow:hidden;padding:18px 19px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,var(--paper),#faf5ed);box-shadow:0 11px 32px rgba(30,42,68,.06)}.v4-metric-grid>article:after{content:"";position:absolute;right:-28px;top:-34px;width:86px;height:86px;border:1px solid rgba(212,175,55,.24);border-radius:50%}.v4-metric-grid span,.v4-metric-grid strong,.v4-metric-grid small{display:block}.v4-metric-grid span{color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.v4-metric-grid strong{margin:4px 0;color:var(--navy);font:700 30px Georgia,serif}.v4-metric-grid small{color:var(--muted);font-size:8px}
.v4-launch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.v4-launch-card{position:relative;overflow:hidden;display:grid;min-height:150px;padding:19px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,#fff,#f8f2e9);color:var(--ink);box-shadow:0 12px 34px rgba(30,42,68,.07);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.v4-launch-card:after{content:"↗";position:absolute;right:15px;top:12px;color:var(--gold);font-size:22px}.v4-launch-card:hover{transform:translateY(-4px);border-color:rgba(196,87,46,.48);box-shadow:0 20px 44px rgba(30,42,68,.12);text-decoration:none}.v4-launch-card strong{align-self:end;color:var(--navy);font:700 21px Georgia,serif}.v4-launch-card span{color:var(--muted);font-size:9px}.v4-launch-card b{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:var(--navy);color:var(--gold);font-size:23px}
.v4-command-columns{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.7fr);gap:20px}.v4-priority-stream{display:grid;gap:8px}.v4-priority-stream>a,.v4-priority-stream>article{display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}.v4-priority-stream i{height:40px;border-radius:99px;background:var(--gold)}.v4-priority-stream .priority-high i{background:var(--burnt)}.v4-priority-stream .priority-urgent i{background:var(--danger)}.v4-priority-stream strong,.v4-priority-stream small{display:block}.v4-priority-stream small{color:var(--muted);font-size:8px}.v4-feature-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v4-feature-mini>div{padding:11px;border:1px solid var(--line);border-radius:11px;background:#fff}.v4-feature-mini strong,.v4-feature-mini span{display:block}.v4-feature-mini span{color:var(--muted);font-size:8px}.v4-feature-mini .enabled{box-shadow:inset 4px 0 0 var(--sage)}.v4-feature-mini .disabled{opacity:.68;box-shadow:inset 4px 0 0 var(--taupe)}
.v4-subnav{position:sticky;top:102px;z-index:18;display:flex;gap:7px;overflow:auto;padding:9px;border:1px solid rgba(203,187,160,.55);border-radius:14px;background:rgba(255,253,249,.92);backdrop-filter:blur(16px);box-shadow:0 9px 26px rgba(30,42,68,.07)}.v4-subnav a{flex:0 0 auto;padding:8px 12px;border-radius:9px;color:var(--navy);font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.v4-subnav a:hover,.v4-subnav a.active{background:var(--navy);color:#fff;text-decoration:none}.v4-editor-grid{display:grid;grid-template-columns:minmax(290px,.72fr) minmax(0,1.3fr);gap:18px;align-items:start}.v4-editor-grid>.panel:first-child,.v4-record-form{position:sticky;top:165px}.v4-record-section{display:grid;gap:17px}.v4-record-list{display:grid;gap:10px}.v4-record-card{position:relative;overflow:hidden;padding:16px 17px;border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:14px;background:#fff;box-shadow:0 9px 25px rgba(30,42,68,.05)}.v4-record-card.priority-high{border-left-color:var(--burnt)}.v4-record-card.priority-urgent{border-left-color:var(--danger)}.v4-record-card h3,.v4-record-card h4{margin:4px 0;color:var(--navy);font:700 18px Georgia,serif}.v4-record-card p{margin:4px 0;color:var(--muted);font-size:9px}.v4-record-card .button-row{margin-top:11px}.v4-record-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px}.v4-record-facts>div{padding:8px;border-radius:9px;background:#f7f2eb}.v4-record-facts span,.v4-record-facts strong{display:block}.v4-record-facts span{color:var(--muted);font-size:7px;text-transform:uppercase}.v4-record-facts strong{color:var(--navy);font-size:10px;overflow-wrap:anywhere}
.feature-switch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.feature-switch-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px;border:1px solid var(--line);border-radius:15px;background:#fff}.feature-switch-card.enabled{box-shadow:inset 5px 0 0 var(--sage)}.feature-switch-card:not(.enabled){box-shadow:inset 5px 0 0 var(--taupe)}.feature-switch-card strong,.feature-switch-card small{display:block}.feature-switch-card small{color:var(--muted);font-size:8px}.toggle-line{display:flex!important;align-items:center!important;gap:8px!important}.toggle-line input{width:auto}.provider-readiness-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.provider-readiness-grid>article{padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}.provider-readiness-grid>article.ready{box-shadow:inset 0 4px 0 var(--sage)}.provider-readiness-grid>article.pending{box-shadow:inset 0 4px 0 var(--gold)}.provider-readiness-grid strong,.provider-readiness-grid span,.provider-readiness-grid small{display:block}.provider-readiness-grid strong{color:var(--navy)}.provider-readiness-grid span,.provider-readiness-grid small{color:var(--muted);font-size:8px}.secure-live{display:inline-flex;align-items:center;gap:7px;color:#52664c;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.secure-live:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 5px rgba(143,161,135,.15)}
.proposal-compare-grid,.contract-flag-room,.signature-link-list{display:grid;gap:10px}.proposal-compare-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.proposal-compare-grid>article,.contract-flag-room>article,.signature-link-list>article{padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}.proposal-compare-grid strong,.proposal-compare-grid small,.signature-link-list strong,.signature-link-list small{display:block}.proposal-compare-grid small,.signature-link-list small{color:var(--muted);font-size:8px}.score-orb{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--gold) calc(var(--score,75)*1%),#e8e1d8 0);color:var(--navy);font:700 17px Georgia,serif}.contract-flag-room>article{border-left:5px solid var(--gold)}.contract-flag-room>article.severity-high,.contract-flag-room>article.severity-danger{border-left-color:var(--danger);background:#fff5f3}.contract-flag-room>article.severity-medium{border-left-color:var(--burnt)}.contract-flag-room h4{margin:2px 0;color:var(--navy)}.contract-flag-room p{margin:3px 0;color:var(--muted);font-size:9px}.contract-flag-room blockquote{margin:8px 0;padding:9px;border-left:3px solid var(--taupe);background:#f8f3eb;font-size:9px}
.scenario-result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.scenario-result-grid>div{padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff}.scenario-result-grid span,.scenario-result-grid strong{display:block}.scenario-result-grid span{color:var(--muted);font-size:7px;text-transform:uppercase}.scenario-result-grid strong{color:var(--navy);font:700 18px Georgia,serif}
.v4-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.v4-media-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(30,42,68,.07)}.v4-media-card.featured{box-shadow:inset 0 4px 0 var(--gold),0 18px 40px rgba(30,42,68,.10)}.v4-media-card img,.v4-media-card video,.media-placeholder{width:100%;height:210px;object-fit:cover;background:#ece5da}.media-placeholder{display:grid;place-items:center;color:var(--gold);font-size:48px}.v4-media-card>div{padding:13px}.v4-media-card h4{margin:3px 0;color:var(--navy)}.v4-media-card p,.v4-media-card small{color:var(--muted);font-size:8px}.live-wall-panel{overflow:hidden}.live-media-wall{min-height:480px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:9px;background:#07101d}.live-media-wall img,.live-media-wall video{width:100%;height:220px;object-fit:cover;border-radius:10px}.live-media-wall.is-fullscreen{position:fixed;inset:0;z-index:9999;overflow:auto;align-content:center}.live-media-wall.is-fullscreen img,.live-media-wall.is-fullscreen video{height:38vh}
.presence-command-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.presence-command-grid>article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}.presence-dot{width:11px;height:11px;border-radius:50%;background:#8d929a;box-shadow:0 0 0 5px rgba(141,146,154,.12)}.presence-dot.online{background:var(--sage);box-shadow:0 0 0 5px rgba(143,161,135,.17)}.comment-stream{display:grid;gap:9px}.comment-stream>article{padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:#fff}.comment-stream>article.resolved{opacity:.6}.comment-stream strong,.comment-stream small{display:block}.comment-stream small{color:var(--muted);font-size:8px}.comment-stream p{margin:6px 0;font-size:10px}.activity-timeline{display:grid;gap:0}.activity-timeline>article{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.activity-timeline>article:before{content:"";width:9px;height:9px;margin-top:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(212,175,55,.14)}.activity-timeline small{color:var(--muted);font-size:8px}
.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.health-card{padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff}.health-card.healthy{box-shadow:inset 0 5px 0 var(--sage)}.health-card.warning{box-shadow:inset 0 5px 0 var(--burnt)}.health-card h3{margin:6px 0;color:var(--navy);font:700 17px Georgia,serif}.health-card p,.health-card small{margin:0;color:var(--muted);font-size:8px}.health-card code{display:block;margin-top:9px;padding:8px;border-radius:8px;background:#101827;color:#fff;overflow-wrap:anywhere}
.guest-super-body,.guest-pass-body,.signature-public-body,.invitation-public-body{min-height:100vh;background:radial-gradient(circle at 86% 8%,rgba(212,175,55,.20),transparent 24%),radial-gradient(circle at 6% 90%,rgba(196,87,46,.20),transparent 29%),linear-gradient(135deg,#07101d,#14233b 58%,#37232a);color:#fff;padding:28px}.guest-super-shell{width:min(1180px,100%);margin:auto}.guest-super-hero{position:relative;overflow:hidden;padding:38px;border:1px solid rgba(212,175,55,.35);border-radius:26px;background:rgba(7,16,29,.72);box-shadow:0 28px 90px rgba(0,0,0,.28)}.guest-super-hero h1{margin:7px 0;color:#fff;font:700 clamp(37px,6vw,72px) Georgia,serif}.guest-super-hero p{max-width:760px;color:rgba(255,255,255,.72)}.guest-countdown{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.guest-countdown>div{min-width:92px;padding:13px;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(255,255,255,.07);text-align:center}.guest-countdown strong,.guest-countdown span{display:block}.guest-countdown strong{font:700 25px Georgia,serif;color:var(--gold)}.guest-countdown span{font-size:7px;text-transform:uppercase}.guest-personal-grid,.guest-assignment-grid,.public-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:18px}.guest-personal-grid>article,.guest-assignment-grid>article,.public-card-grid>article,.public-section{padding:19px;border:1px solid rgba(255,255,255,.13);border-radius:17px;background:rgba(7,16,29,.74);box-shadow:0 16px 44px rgba(0,0,0,.18)}.guest-personal-grid h3,.guest-assignment-grid h3,.public-card-grid h3,.public-section h2{margin:4px 0;color:#fff}.guest-personal-grid p,.guest-assignment-grid p,.public-card-grid p,.public-section p{color:rgba(255,255,255,.68)}.guest-itinerary{display:grid;gap:9px}.guest-itinerary>article{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:12px;padding:13px;border:1px solid rgba(255,255,255,.13);border-radius:13px;background:rgba(255,255,255,.05)}.guest-super-footer{text-align:center;padding:26px;color:rgba(255,255,255,.55)}.public-emergency-banner{margin:14px 0;padding:13px 16px;border:1px solid rgba(255,114,86,.55);border-radius:12px;background:rgba(154,39,29,.34);color:#fff}.public-theme-toggle{position:fixed;right:17px;top:17px;z-index:20}
.guest-pass{width:min(760px,100%);margin:auto;overflow:hidden;border:1px solid rgba(212,175,55,.45);border-radius:28px;background:linear-gradient(145deg,#0c1728,#243653);box-shadow:0 35px 100px rgba(0,0,0,.35)}.guest-pass>header{padding:30px;background:radial-gradient(circle at 90% 0,rgba(212,175,55,.25),transparent 30%)}.guest-pass h1{margin:5px 0;font:700 46px Georgia,serif;color:#fff}.guest-pass-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:0;padding:0 28px}.guest-pass-facts>div{padding:15px;border-bottom:1px solid rgba(255,255,255,.12)}.guest-pass-facts span,.guest-pass-facts strong{display:block}.guest-pass-facts span{color:rgba(255,255,255,.56);font-size:8px;text-transform:uppercase}.guest-pass-facts strong{color:#fff}.guest-pass-code{padding:23px;text-align:center}.guest-pass-code code{font-size:19px;color:var(--gold)}.guest-pass-qr{width:190px;height:190px;margin:20px auto;padding:10px;background:#fff;border-radius:15px}.guest-pass-qr img{width:100%;height:100%}
.signature-public-card,.invitation-public-card{width:min(820px,100%);margin:auto;padding:30px;border:1px solid rgba(212,175,55,.38);border-radius:25px;background:rgba(10,18,31,.92);box-shadow:0 30px 90px rgba(0,0,0,.34)}.signature-public-card h1,.invitation-public-card h1{color:#fff;font:700 38px Georgia,serif}.signature-public-card label,.invitation-public-card label{color:#fff}.signature-document-reference{padding:15px;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(255,255,255,.06)}.signature-canvas{width:100%;height:220px;border:2px dashed rgba(212,175,55,.55);border-radius:13px;background:#fff;touch-action:none}.signature-complete{padding:25px;text-align:center;border:1px solid rgba(143,161,135,.45);border-radius:16px;background:rgba(40,88,48,.28)}
.invitation-envelope{position:relative;overflow:hidden;padding:38px;border:1px solid rgba(212,175,55,.45);border-radius:24px;background:linear-gradient(145deg,#fff9ef,#efe3d1);color:#273044;box-shadow:0 30px 80px rgba(0,0,0,.28)}.invitation-envelope:before,.invitation-envelope:after{content:"";position:absolute;left:0;right:0;height:55%;background:linear-gradient(145deg,transparent 49.5%,rgba(203,187,160,.35) 50%)}.invitation-envelope:before{top:0;transform:scaleY(-1)}.invitation-envelope:after{bottom:0}.invitation-envelope>*{position:relative;z-index:2}.invitation-envelope h1{font:700 clamp(34px,6vw,65px) Georgia,serif;color:var(--navy)}.digital-wax-seal{width:82px;height:82px;margin:20px auto;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e77a56,#9d2f1f 70%);color:#ffd98c;font:700 24px Georgia,serif;box-shadow:0 12px 24px rgba(90,24,15,.35),inset 0 0 0 5px rgba(255,215,150,.12)}
.floor-item{z-index:calc(var(--layer,2) + 2)}.floor-item-asset{position:absolute;inset:8px;border-radius:inherit;opacity:.18;background:radial-gradient(circle,var(--item-color,var(--gold)) 0 22%,transparent 24%),linear-gradient(45deg,transparent 42%,var(--item-color,var(--navy)) 43% 57%,transparent 58%);pointer-events:none}.floorplan-stage.perspective-mode{perspective:1100px;transform-style:preserve-3d;overflow:visible;min-height:800px;background-size:34px 34px;transform:rotateX(48deg) scale(.88);transform-origin:center 20%}.floorplan-stage.perspective-mode .floor-item{transform:translateZ(calc(var(--d,45) * 1px)) rotate(var(--r));box-shadow:0 calc(18px + var(--d,45)*.2px) 26px rgba(0,0,0,.23)}.floorplan-stage.perspective-mode .floor-item-handle,.floorplan-stage.perspective-mode .floor-item-menu{transform:rotateX(-48deg)}
.login-firefly-swarm{transform:translate3d(var(--swarm-x,0),var(--swarm-y,0),0);transition:transform .16s ease-out}.login-firefly-swarm i{filter:saturate(1.2)}

html[data-theme="dark"] :is(.v4-metric-grid>article,.v4-launch-card,.v4-priority-stream>a,.v4-priority-stream>article,.v4-feature-mini>div,.v4-record-card,.v4-record-facts>div,.feature-switch-card,.provider-readiness-grid>article,.proposal-compare-grid>article,.contract-flag-room>article,.signature-link-list>article,.scenario-result-grid>div,.v4-media-card,.presence-command-grid>article,.comment-stream>article,.health-card){background:#111a2a!important;border-color:#34445f!important;color:#eef3fb!important}html[data-theme="dark"] :is(.v4-metric-grid,.v4-launch-grid,.v4-record-list,.feature-switch-grid,.provider-readiness-grid,.proposal-compare-grid,.contract-flag-room,.signature-link-list,.scenario-result-grid,.v4-media-grid,.presence-command-grid,.comment-stream,.health-grid) :is(h2,h3,h4,strong,label,summary){color:#f2f5fa!important}html[data-theme="dark"] :is(.v4-metric-grid,.v4-launch-grid,.v4-record-list,.feature-switch-grid,.provider-readiness-grid,.proposal-compare-grid,.contract-flag-room,.signature-link-list,.scenario-result-grid,.v4-media-grid,.presence-command-grid,.comment-stream,.health-grid) :is(p,small,span){color:#b7c2d2!important}html[data-theme="dark"] .v4-subnav{background:rgba(8,13,23,.94);border-color:#34445f}html[data-theme="dark"] .v4-subnav a{color:#e9eef6}html[data-theme="dark"] .v4-subnav a.active,html[data-theme="dark"] .v4-subnav a:hover{background:#31486c;color:#fff}html[data-theme="dark"] .v4-record-facts>div,html[data-theme="dark"] .contract-flag-room blockquote{background:#0c1422!important}html[data-theme="dark"] .contract-flag-room>article.severity-high,html[data-theme="dark"] .contract-flag-room>article.severity-danger{background:#2e181b!important}html[data-theme="dark"] .score-orb{background:conic-gradient(var(--gold) calc(var(--score,75)*1%),#26344a 0);color:#fff}html[data-theme="dark"] .invitation-envelope{background:linear-gradient(145deg,#19253a,#0d1625);color:#eef3fb}html[data-theme="dark"] .invitation-envelope h1{color:#fff}

@media(max-width:1300px){.v4-metric-grid,.v4-media-grid{grid-template-columns:repeat(2,1fr)}.v4-launch-grid,.provider-readiness-grid,.proposal-compare-grid,.health-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1050px){.v4-command-columns,.v4-editor-grid{grid-template-columns:1fr}.v4-editor-grid>.panel:first-child,.v4-record-form{position:static}.v4-launch-grid{grid-template-columns:repeat(2,1fr)}.v4-subnav{top:101px}.guest-personal-grid,.guest-assignment-grid,.public-card-grid{grid-template-columns:repeat(2,1fr)}.v4-media-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.v4-metric-grid,.v4-launch-grid,.feature-switch-grid,.provider-readiness-grid,.proposal-compare-grid,.scenario-result-grid,.presence-command-grid,.health-grid,.guest-personal-grid,.guest-assignment-grid,.public-card-grid,.v4-media-grid{grid-template-columns:1fr}.v4-record-facts{grid-template-columns:1fr 1fr}.v4-subnav{position:static}.guest-super-body,.guest-pass-body,.signature-public-body,.invitation-public-body{padding:14px}.guest-super-hero,.signature-public-card,.invitation-public-card{padding:22px}.guest-itinerary>article{grid-template-columns:1fr}.live-media-wall{grid-template-columns:repeat(2,1fr)}.live-media-wall img,.live-media-wall video{height:180px}.guest-pass-facts{grid-template-columns:1fr}.floorplan-stage.perspective-mode{transform:rotateX(40deg) scale(.78);min-height:650px}.login-firefly-swarm i:nth-child(n+46){display:none!important}}
@media(max-width:980px) and (min-width:651px){.login-firefly-swarm i:nth-child(n+73){display:none!important}}
@media(prefers-reduced-motion:reduce){.login-firefly-swarm i:nth-child(n+37){display:none!important}}
@media print{.v4-subnav,.public-theme-toggle,.guest-super-footer,.signature-canvas{display:none!important}.guest-pass-body,.guest-super-body,.signature-public-body,.invitation-public-body{padding:0;background:#fff!important;color:#000}.guest-pass,.invitation-envelope{box-shadow:none}.floorplan-stage.perspective-mode{transform:none;perspective:none}}

/* ========================================================================== */
/* V4.4.2 Login Layout Recovery                                                */
/* Restores decorative rings to absolute positioning so they do not expand   */
/* the login grid and push the crest, title, and form below the viewport.      */
/* ========================================================================== */
.login-body{min-height:100vh;min-height:100dvh;overflow-x:hidden}
.login-shell.extreme-login{min-height:100vh;min-height:100dvh;height:auto;overflow:hidden}
.extreme-login>.login-art>.floating-ring{position:absolute!important;z-index:1!important;pointer-events:none}
.extreme-login>.login-art>.login-stars{position:absolute!important;inset:0!important;z-index:2!important;pointer-events:none}
.extreme-login>.login-art>:not(.floating-ring):not(.login-stars){position:relative;z-index:4}
@media(min-width:981px){
  .login-shell.extreme-login{grid-template-columns:minmax(0,1.25fr) minmax(420px,.75fr)}
  .login-shell.extreme-login>.login-art,.login-shell.extreme-login>.login-card{min-height:100vh;min-height:100dvh}
  .login-page-footer{bottom:18px!important}
}
@media(max-width:980px){
  .login-shell.extreme-login{grid-template-columns:1fr;overflow:visible}
  .login-shell.extreme-login>.login-art{min-height:430px}
  .login-shell.extreme-login>.login-card{min-height:auto}
}

/* V4.5 Full Control Center */
.control-center-hero{margin-bottom:22px}.control-layout{display:grid;grid-template-columns:minmax(250px,310px) minmax(0,1fr);gap:22px;align-items:start}.control-entity-nav{position:sticky;top:94px;max-height:calc(100vh - 120px);overflow:auto}.control-entity-nav details{border-top:1px solid var(--line);padding:8px 0}.control-entity-nav summary{cursor:pointer;font-weight:800;padding:8px 2px}.control-entity-nav nav{display:grid;gap:4px}.control-entity-nav nav a{display:flex;padding:9px 11px;border-radius:10px;color:var(--muted);text-decoration:none}.control-entity-nav nav a:hover,.control-entity-nav nav a.active{background:rgba(231,112,72,.14);color:var(--text)}.control-jump{margin-bottom:14px}.control-workspace{display:grid;gap:20px;min-width:0}.control-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px}.control-toolbar p{margin:.2rem 0}.control-toolbar code{font-size:.8rem}.control-editor summary{font-size:1.05rem;font-weight:900}.field-span-two{grid-column:1/-1}.control-check{min-height:46px;display:flex;align-items:center}.control-search{display:flex;gap:10px;margin-bottom:18px}.control-search input{flex:1}.control-record-list{display:grid;gap:12px}.control-record-card{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px;border:1px solid var(--line);border-radius:16px;background:var(--panel-soft)}.control-record-card.trashed{border-color:rgba(231,112,72,.45)}.control-record-card h4{margin:.35rem 0}.control-preview{display:flex;flex-wrap:wrap;gap:7px 14px;color:var(--muted);font-size:.86rem}.control-preview span{max-width:320px}.control-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.button-danger{background:rgba(172,58,48,.16);border:1px solid rgba(231,112,72,.55);color:#ff9b7c}.button-danger:hover{background:rgba(172,58,48,.28)}.purge-control{position:relative}.purge-control>summary{list-style:none;cursor:pointer}.purge-control>summary::-webkit-details-marker{display:none}.purge-control form{position:absolute;right:0;top:calc(100% + 8px);z-index:20;width:300px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 20px 60px rgba(0,0,0,.35)}
@media(max-width:1050px){.control-layout{grid-template-columns:1fr}.control-entity-nav{position:static;max-height:none}.control-toolbar{align-items:flex-start;flex-direction:column}.control-record-card{align-items:flex-start;flex-direction:column}.control-actions{justify-content:flex-start}.purge-control form{left:0;right:auto}}
@media(max-width:650px){.control-search{flex-direction:column}.control-actions{width:100%}.control-actions>*{flex:1}.control-actions .button,.control-actions button{width:100%}.purge-control form{position:fixed;left:14px;right:14px;top:20%;width:auto}}

/* ========================================================================== */
/* V4.6 Guided Wedding Journey                                                */
/* ========================================================================== */
.guide-topbar-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:39px;padding:8px 13px;border:1px solid rgba(212,175,55,.45);border-radius:999px;background:linear-gradient(135deg,#fff9e6,#fff);color:var(--navy);font-size:11px;font-weight:900;box-shadow:0 7px 18px rgba(30,42,68,.08)}
.guide-topbar-button:hover{transform:translateY(-1px);border-color:var(--gold);box-shadow:0 11px 25px rgba(30,42,68,.14)}
.guide-coach-strip{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid rgba(212,175,55,.42);border-left:5px solid var(--gold);border-radius:15px;background:linear-gradient(115deg,#fffdf6,#f9f3e5 70%,#eef4ec);box-shadow:0 12px 30px rgba(30,42,68,.07)}
.guide-coach-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--gold);font:800 20px Georgia,serif;box-shadow:0 0 0 5px rgba(212,175,55,.12)}
.guide-coach-strip span,.guide-coach-strip strong,.guide-coach-strip small{display:block}.guide-coach-strip span{color:var(--burnt-dark);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.guide-coach-strip strong{color:var(--navy);font:700 16px Georgia,serif;margin:2px 0}.guide-coach-strip small{color:var(--muted);font-size:10px;max-width:720px}.guide-coach-help,.guide-coach-hide{border:0;background:none;font-weight:850}.guide-coach-help{color:var(--burnt-dark);font-size:11px}.guide-coach-hide{width:28px;height:28px;border-radius:50%;color:var(--muted);font-size:18px}.guide-coach-hide:hover{background:rgba(30,42,68,.08);color:var(--navy)}

.guide-drawer-scrim{position:fixed;inset:0;background:rgba(5,10,18,.48);backdrop-filter:blur(2px);z-index:119}.guide-drawer-scrim:not([hidden]){display:block}
.guide-drawer{position:fixed;right:0;top:0;bottom:0;width:min(470px,94vw);z-index:120;display:flex;flex-direction:column;background:var(--paper);border-left:1px solid var(--line);box-shadow:-28px 0 70px rgba(8,15,26,.28);transform:translateX(105%);transition:transform .24s ease;visibility:hidden}
.guide-drawer.open{transform:translateX(0);visibility:visible}.guide-drawer>header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:24px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--navy),#30415f);color:#fff}.guide-drawer>header h2{margin:3px 0 0;color:#fff;font:700 28px Georgia,serif}.guide-drawer>header .eyebrow{color:var(--gold)}.guide-drawer>header button{width:36px;height:36px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:23px}.guide-drawer-body{padding:22px;overflow:auto}.guide-drawer-summary{margin:0 0 18px;padding:15px;border:1px solid rgba(212,175,55,.35);border-radius:13px;background:rgba(212,175,55,.08);color:var(--ink);font-size:12px}.guide-drawer-body>section{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.guide-drawer-body>section>span{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--gold);font-weight:900}.guide-drawer-body section strong{display:block;color:var(--navy);font:700 16px Georgia,serif}.guide-drawer-body section p{margin:3px 0 0;color:var(--muted);font-size:11px}.guide-drawer-actions{display:grid;gap:10px;margin-top:20px}

.guide-welcome{position:fixed;inset:0;z-index:150;display:grid;place-items:center;padding:20px;background:rgba(4,9,17,.76);backdrop-filter:blur(9px)}.guide-welcome[hidden]{display:none}.guide-welcome-card{position:relative;width:min(760px,96vw);max-height:92vh;overflow:auto;border:1px solid rgba(212,175,55,.45);border-radius:25px;background:var(--paper);box-shadow:0 35px 100px rgba(0,0,0,.44)}.guide-welcome-brand{display:flex;align-items:center;gap:12px;padding:20px 24px 14px}.guide-welcome-brand img{width:52px;height:52px}.guide-welcome-brand span,.guide-welcome-brand strong{display:block}.guide-welcome-brand span{color:var(--burnt-dark);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.guide-welcome-brand strong{color:var(--navy);font:700 18px Georgia,serif}.guide-welcome-close{position:absolute;right:17px;top:17px;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--muted);font-size:22px}.guide-welcome-progress{height:5px;margin:0 24px;border-radius:999px;background:var(--line);overflow:hidden}.guide-welcome-progress i{display:block;width:20%;height:100%;background:linear-gradient(90deg,var(--burnt),var(--gold));transition:width .25s ease}.guide-welcome-slides{padding:29px 38px 22px;min-height:345px}.guide-welcome-slides>section{display:none}.guide-welcome-slides>section.active{display:block;animation:guideSlideIn .25s ease}.guide-welcome-slides h2{max-width:650px;margin:5px 0 12px;color:var(--navy);font:700 clamp(29px,4vw,45px)/1.08 Georgia,serif}.guide-welcome-slides p,.guide-welcome-slides li{color:var(--muted);font-size:14px}.guide-welcome-slides ol{display:grid;gap:11px;padding-left:24px}.guide-welcome-visual{display:flex;align-items:center;justify-content:center;gap:13px;margin:34px auto 10px}.guide-welcome-visual span{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--gold);font:800 23px Georgia,serif;box-shadow:0 0 0 7px rgba(212,175,55,.12)}.guide-welcome-visual i{width:80px;height:2px;background:linear-gradient(90deg,var(--burnt),var(--gold))}.guide-welcome-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.guide-welcome-controls span{padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:var(--cream);color:var(--navy);font-size:11px;font-weight:850}.guide-welcome-card>footer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid var(--line);background:rgba(203,187,160,.08)}.guide-welcome-card>footer span{text-align:center;color:var(--muted);font-size:11px;font-weight:850}.guide-welcome-snooze-form{text-align:center;padding:0 0 17px}.guide-welcome-snooze-form button{border:0;background:none;color:var(--muted);font-size:10px;text-decoration:underline}.guide-welcome-finish .button{width:100%;margin-top:22px}
@keyframes guideSlideIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.jwp-tour{position:fixed;inset:0;z-index:170;pointer-events:none}.jwp-tour[hidden]{display:none}.jwp-tour-shade{position:absolute;inset:0;background:rgba(4,9,17,.72)}.jwp-tour-card{position:fixed;left:50%;bottom:28px;width:min(520px,calc(100vw - 28px));transform:translateX(-50%);pointer-events:auto;padding:20px;border:1px solid rgba(212,175,55,.5);border-radius:18px;background:var(--paper);box-shadow:0 28px 80px rgba(0,0,0,.42);z-index:3}.jwp-tour-card h3{margin:3px 0 7px;color:var(--navy);font:700 25px Georgia,serif}.jwp-tour-card>p:not(.eyebrow){margin:0;color:var(--muted);font-size:12px}.jwp-tour-card footer{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-top:17px}.jwp-tour-card footer span{text-align:center;color:var(--muted);font-size:10px;font-weight:850}.jwp-tour-focus{position:relative!important;z-index:172!important;outline:4px solid var(--gold)!important;outline-offset:7px!important;border-radius:12px!important;box-shadow:0 0 0 9999px rgba(4,9,17,.72),0 0 45px rgba(212,175,55,.58)!important;pointer-events:none!important}

.guide-hero{min-height:330px}.guide-hero .hero-copy{max-width:820px}.guide-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.guide-hero-progress{position:relative;z-index:2;min-width:230px;padding:25px;border:1px solid rgba(255,255,255,.17);border-radius:19px;background:rgba(8,14,25,.28);backdrop-filter:blur(7px);text-align:center}.guide-hero-progress strong,.guide-hero-progress span{display:block}.guide-hero-progress strong{color:var(--gold);font:700 55px Georgia,serif;line-height:1}.guide-hero-progress span{margin:8px 0 14px;color:rgba(255,255,255,.72);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.guide-hero-progress>div{height:8px;border-radius:999px;background:rgba(255,255,255,.15);overflow:hidden}.guide-hero-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--burnt),var(--gold))}
.guide-simple-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.guide-simple-rules article{display:grid;grid-template-columns:40px 1fr;gap:11px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--paper);box-shadow:0 9px 25px rgba(30,42,68,.05)}.guide-simple-rules article>span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--gold);font-weight:900}.guide-simple-rules strong,.guide-simple-rules small{display:block}.guide-simple-rules strong{color:var(--navy);font:700 15px Georgia,serif}.guide-simple-rules small{color:var(--muted);font-size:9px}.guide-next-panel{border-top:5px solid var(--gold)}
.guide-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin:28px 0 18px}.guide-section-heading h2{margin:3px 0;color:var(--navy);font:700 32px Georgia,serif}.guide-section-heading p:not(.eyebrow){margin:0;color:var(--muted);font-size:11px}.guide-phase{margin-top:24px}.guide-phase>header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.guide-phase>header span{white-space:nowrap;color:var(--burnt-dark);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.guide-phase>header i{height:1px;flex:1;background:linear-gradient(90deg,var(--gold),transparent)}.guide-step-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.guide-step-card{display:grid;grid-template-columns:52px minmax(0,1fr);gap:15px;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 12px 35px rgba(30,42,68,.06);scroll-margin-top:125px}.guide-step-card.is-complete{border-color:rgba(143,161,135,.55);background:linear-gradient(135deg,var(--paper),rgba(143,161,135,.09))}.guide-step-number{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--gold);font:800 20px Georgia,serif;box-shadow:0 0 0 6px rgba(212,175,55,.11)}.guide-step-card.is-complete .guide-step-number{background:var(--sage);color:#fff}.guide-step-copy h3{margin:2px 0 7px;color:var(--navy);font:700 21px Georgia,serif}.guide-step-copy>p:not(.eyebrow){margin:0;color:var(--muted);font-size:11px}.guide-step-copy ol{display:grid;gap:7px;margin:15px 0;padding-left:20px}.guide-step-copy li{color:var(--ink);font-size:10px}.guide-done-definition{padding:10px 12px;border-left:4px solid var(--sage);border-radius:8px;background:rgba(143,161,135,.11);color:var(--muted);font-size:9px}.guide-done-definition strong{color:var(--navy)}.guide-step-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.guide-step-actions form{margin:0}
.guide-control-school{border-top:5px solid var(--burnt)}.guide-control-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.guide-control-grid article{padding:17px;border:1px solid var(--line);border-radius:14px;background:var(--cream)}.guide-control-grid article>span{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--gold);font-weight:900}.guide-control-grid h4{margin:10px 0 5px;color:var(--navy);font:700 17px Georgia,serif}.guide-control-grid p{margin:0;color:var(--muted);font-size:10px}
.guide-directory-search{min-width:280px}.guide-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.guide-directory article{display:flex;flex-direction:column;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--paper);transition:.15s ease}.guide-directory article:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 12px 28px rgba(30,42,68,.08)}.guide-directory article.is-hidden{display:none}.guide-directory article>div{display:flex;align-items:center;gap:9px}.guide-directory article>div>span{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--gold);font-weight:900}.guide-directory h4{margin:0;color:var(--navy);font:700 16px Georgia,serif}.guide-directory p{margin:10px 0 8px;color:var(--muted);font-size:10px}.guide-directory small{display:block;color:var(--ink);font-size:9px;flex:1}.guide-directory a{margin-top:12px;font-size:10px;font-weight:850}.guide-preferences-panel{border-left:5px solid var(--sage)}
.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}

html[data-theme="dark"] .guide-topbar-button{background:#172238;border-color:#705f25;color:#f2f5fa}
html[data-theme="dark"] .guide-coach-strip{background:linear-gradient(115deg,#151d2c,#1c1b16 70%,#152019);border-color:#6d5b25}
html[data-theme="dark"] .guide-coach-strip strong,html[data-theme="dark"] .guide-drawer-body section strong,html[data-theme="dark"] .guide-welcome-brand strong,html[data-theme="dark"] .guide-welcome-slides h2,html[data-theme="dark"] .jwp-tour-card h3,html[data-theme="dark"] .guide-section-heading h2,html[data-theme="dark"] .guide-step-copy h3,html[data-theme="dark"] .guide-done-definition strong,html[data-theme="dark"] .guide-control-grid h4,html[data-theme="dark"] .guide-directory h4,html[data-theme="dark"] .guide-simple-rules strong{color:#f2f5fa}
html[data-theme="dark"] .guide-drawer,html[data-theme="dark"] .guide-welcome-card,html[data-theme="dark"] .jwp-tour-card,html[data-theme="dark"] .guide-step-card,html[data-theme="dark"] .guide-directory article,html[data-theme="dark"] .guide-simple-rules article{background:#111a2a;border-color:#2b3850}
html[data-theme="dark"] .guide-drawer-summary,html[data-theme="dark"] .guide-done-definition,html[data-theme="dark"] .guide-control-grid article,html[data-theme="dark"] .guide-welcome-controls span{background:#0d1625;border-color:#35435b}
html[data-theme="dark"] .guide-step-card.is-complete{background:linear-gradient(135deg,#111a2a,#152019);border-color:#40543d}

@media(max-width:1180px){.guide-coach-strip{grid-template-columns:auto minmax(0,1fr) auto}.guide-coach-help{grid-column:2}.guide-coach-strip>form{grid-column:3;grid-row:1}.guide-simple-rules{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-step-grid{grid-template-columns:1fr}}
@media(max-width:820px){.guide-topbar-button{padding:8px 10px}.guide-coach-strip{grid-template-columns:auto 1fr}.guide-coach-strip>.button,.guide-coach-help{grid-column:1/-1;width:100%}.guide-coach-strip>form{position:absolute;right:7px;top:7px}.guide-hero{display:block}.guide-hero-progress{margin-top:22px}.guide-simple-rules,.guide-directory,.guide-control-grid{grid-template-columns:1fr}.guide-section-heading,.guide-directory-panel .panel-heading{align-items:flex-start;flex-direction:column}.guide-directory-search{width:100%;min-width:0}.guide-welcome-slides{padding:24px}.guide-welcome-slides{min-height:390px}.guide-welcome-visual i{width:35px}.guide-step-card{grid-template-columns:42px minmax(0,1fr);padding:16px}.guide-step-number{width:40px;height:40px}.guide-drawer{width:min(440px,100vw)}}
@media(max-width:560px){.guide-coach-icon{display:none}.guide-coach-strip{display:block}.guide-coach-strip .button,.guide-coach-help{margin-top:10px}.guide-hero-actions .button{width:100%}.guide-welcome{padding:8px}.guide-welcome-card{max-height:98vh;border-radius:18px}.guide-welcome-brand{padding-right:58px}.guide-welcome-slides{padding:20px;min-height:430px}.guide-welcome-slides h2{font-size:30px}.guide-welcome-card>footer{grid-template-columns:1fr 1fr}.guide-welcome-card>footer span{grid-column:1/-1;grid-row:1}.guide-welcome-visual span{width:44px;height:44px}.guide-welcome-visual i{width:20px}.guide-step-card{display:block}.guide-step-number{margin-bottom:13px}.guide-step-actions .button{width:100%}.guide-step-actions form{width:100%}.jwp-tour-card{bottom:8px}.guide-directory-search{min-width:0}}
@media print{.sidebar,.topbar,.jackson-page-footer,.guide-coach-strip,.guide-topbar-button,.guide-drawer,.guide-drawer-scrim,.guide-welcome,.jwp-tour,.guide-hero-actions,.guide-step-actions,.guide-preferences-panel{display:none!important}.app-shell{display:block}.content{padding:0}.guide-step-grid{grid-template-columns:1fr 1fr}.guide-step-card{break-inside:avoid;box-shadow:none}.guide-hero{min-height:0;color:#000;background:#fff;border:2px solid #1e2a44}.guide-hero h2,.guide-hero p{color:#000}.guide-hero-progress{color:#000;background:#fff;border-color:#1e2a44}.guide-hero-progress span{color:#333}.guide-directory-panel{break-before:page}}
body.guide-overlay-open{overflow:hidden}

/* ========================================================================== */
/* V4.7.1 Inline Full Control + Luxury Glass Interface                        */
/* ========================================================================== */
:root{--glass-surface:rgba(255,255,255,.72);--glass-surface-strong:rgba(255,255,255,.88);--glass-border:rgba(255,255,255,.62);--glass-shadow:0 22px 60px rgba(25,36,58,.13);--glass-glow:0 0 42px rgba(212,175,55,.10)}
.app-body .content{position:relative;background:radial-gradient(circle at 8% 6%,rgba(212,175,55,.10),transparent 28%),radial-gradient(circle at 92% 14%,rgba(143,161,135,.13),transparent 30%),linear-gradient(145deg,rgba(248,244,238,.78),rgba(238,241,246,.92))}
.app-body .panel,.app-body .suite-panel,.app-body .stat-card,.app-body .card,.app-body .vendor-card,.app-body .v4-record-card,.app-body .control-record-card,.app-body .guide-step-card,.app-body .health-card,.app-body .workflow-card{border-color:var(--glass-border);background:linear-gradient(145deg,var(--glass-surface-strong),var(--glass-surface));box-shadow:var(--glass-shadow),var(--glass-glow);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%)}
.app-body .panel:hover,.app-body .vendor-card:hover,.app-body .v4-record-card:hover,.app-body .control-record-card:hover{border-color:rgba(212,175,55,.52);box-shadow:0 28px 72px rgba(25,36,58,.18),0 0 48px rgba(212,175,55,.14)}
.topbar{background:linear-gradient(110deg,rgba(255,255,255,.82),rgba(246,241,228,.70));backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);border-bottom:1px solid rgba(212,175,55,.22)}
.button{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.v47-inline-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px;padding:9px;border:1px solid rgba(212,175,55,.28);border-radius:13px;background:linear-gradient(135deg,rgba(255,255,255,.68),rgba(248,244,238,.48));box-shadow:0 10px 28px rgba(30,42,68,.08)}
.v47-inline-controls form{display:inline-flex;margin:0}.v47-inline-controls .button{width:auto;min-height:34px;padding:7px 10px;font-size:9px;white-space:nowrap}.v47-table-actions{width:1%;min-width:286px}.v47-table-actions .v47-inline-controls{justify-content:flex-end;margin:0;padding:0;border:0;background:transparent;box-shadow:none}.v47-table-actions .v47-inline-controls .button{padding:6px 8px}.v47-actions-heading{text-align:right}
html[data-theme="dark"]{--glass-surface:rgba(13,22,37,.76);--glass-surface-strong:rgba(18,29,48,.90);--glass-border:rgba(126,146,177,.20);--glass-shadow:0 24px 62px rgba(0,0,0,.35);--glass-glow:0 0 44px rgba(212,175,55,.07)}
html[data-theme="dark"] .app-body .content{background:radial-gradient(circle at 8% 6%,rgba(212,175,55,.08),transparent 28%),radial-gradient(circle at 92% 14%,rgba(143,161,135,.08),transparent 30%),linear-gradient(145deg,#09111f,#0c1627)}
html[data-theme="dark"] .topbar{background:linear-gradient(110deg,rgba(12,22,38,.89),rgba(20,28,42,.78));border-bottom-color:rgba(212,175,55,.18)}
html[data-theme="dark"] .v47-inline-controls{background:linear-gradient(135deg,rgba(22,35,56,.82),rgba(12,23,39,.72));border-color:rgba(212,175,55,.28)}
@media(max-width:760px){.v47-inline-controls{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.v47-inline-controls>*{width:100%}.v47-inline-controls .button{width:100%}.v47-table-actions{min-width:190px}.app-body .panel,.app-body .suite-panel,.app-body .stat-card,.app-body .card{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}}
@media(prefers-reduced-transparency:reduce){.app-body .panel,.app-body .suite-panel,.app-body .stat-card,.app-body .card,.topbar,.v47-inline-controls{backdrop-filter:none;-webkit-backdrop-filter:none}}

/* ========================================================================== */
/* V4.7.3 Extreme Login Firefly Visibility                                    */
/* ========================================================================== */
.login-body .extreme-login>.login-art{z-index:auto}.login-body .extreme-login>.login-art>*{z-index:5}.login-body .extreme-login>.login-card{z-index:6}
.login-body .login-firefly-swarm{inset:0;width:100%;height:100%;z-index:4;opacity:1;transform:translate3d(var(--swarm-x,0),var(--swarm-y,0),0) scale(1.015);contain:strict}
.login-body .login-firefly-swarm i{display:block;opacity:var(--ff-opacity,.58);filter:saturate(1.38) brightness(var(--ff-bright,1.45));box-shadow:0 0 var(--ff-glow-a,6px) 2px rgba(255,255,218,.98),0 0 var(--ff-glow-b,17px) 5px rgba(255,225,90,.82),0 0 var(--ff-glow-c,36px) 10px rgba(212,175,55,.42),0 0 62px 18px rgba(196,87,46,.12)}
.login-body .login-firefly-swarm i:nth-child(4n){background:#fff3a6}.login-body .login-firefly-swarm i:nth-child(6n){background:#dfff9b}.login-body .login-firefly-swarm i:nth-child(11n){background:#ffc17a}
.login-body .login-firefly-swarm i:nth-child(13n){box-shadow:0 0 8px 3px rgba(255,255,230,1),0 0 23px 8px rgba(255,224,104,.92),0 0 52px 17px rgba(212,175,55,.52)}
.login-body .login-firefly-swarm i:nth-child(17n){width:calc(var(--ff-size) + 2px);height:calc(var(--ff-size) + 2px);box-shadow:0 0 10px 4px rgba(255,255,232,1),0 0 30px 10px rgba(255,221,82,.96),0 0 72px 23px rgba(212,175,55,.58)}
@media(max-width:980px){.login-body .login-firefly-swarm{height:100%;bottom:0}.login-body .login-firefly-swarm i{display:block!important}.login-body .login-firefly-swarm i:nth-child(n+151){display:none!important}}
@media(max-width:650px){.login-body .login-firefly-swarm{height:100%}.login-body .login-firefly-swarm i{display:block!important}.login-body .login-firefly-swarm i:nth-child(n+91){display:none!important}}
@media(prefers-reduced-motion:reduce){.login-body .login-firefly-swarm i{display:block!important;animation:none!important;opacity:.58!important}.login-body .login-firefly-swarm i:nth-child(n+65){display:none!important}}
.login-body.reduced-motion-mode .login-firefly-swarm i{display:block!important;animation:none!important;opacity:.58!important}.login-body.reduced-motion-mode .login-firefly-swarm i:nth-child(n+65){display:none!important}

/* V4.7.4 canvas renderer: guaranteed above the navy background and below content. */
.login-body .login-firefly-canvas{position:absolute!important;inset:0!important;z-index:3!important;width:100%!important;height:100%!important;pointer-events:none;mix-blend-mode:screen;opacity:1}
.login-body .canvas-fireflies-ready>.login-firefly-swarm{display:none!important}
.login-body .login-art>.login-firefly-canvas+*{position:absolute!important}
@media(prefers-reduced-motion:reduce){.login-body .login-firefly-canvas{opacity:.86}}

/* V4.9.1 grouped navigation */

/* --- shell -------------------------------------------------------------- */
.sidebar-nav{gap:2px;padding:14px 0}
.sidebar-nav .nav-pinned+.nav-group,
.sidebar-nav a+.nav-group{margin-top:12px}

/* --- pinned links ------------------------------------------------------- */
.sidebar-nav .nav-pinned{font-size:14px;font-weight:700}

/* --- group header ------------------------------------------------------- */
.nav-group{border-radius:12px}
.nav-group>summary{
  display:flex;align-items:center;gap:9px;
  padding:9px 12px 9px 11px;border-radius:9px;cursor:pointer;
  color:rgba(255,255,255,.44);
  font-size:9.5px;font-weight:850;text-transform:uppercase;letter-spacing:.15em;
  transition:background .18s ease,color .18s ease;
  -webkit-user-select:none;user-select:none;
}
/* Every known way a browser draws the default disclosure triangle. */
.nav-group>summary{list-style:none}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-group>summary::marker{content:"";font-size:0}
.nav-group>summary::-moz-list-bullet{list-style-type:none}

.nav-group>summary:hover{background:rgba(255,255,255,.06);color:rgba(255,255,255,.82)}
.nav-group>summary:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.nav-group[open]>summary{color:var(--gold)}

/* --- chevron: drawn in CSS, so no glyph or font can distort it ---------- */
.nav-group-chevron{
  margin-left:auto;flex:0 0 auto;
  width:7px;height:7px;font-size:0;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  opacity:.5;
  transform:rotate(-45deg) translate(-1px,-1px);
  transition:transform .22s cubic-bezier(.4,0,.2,1),opacity .22s ease;
}
.nav-group[open]>summary .nav-group-chevron{
  transform:rotate(45deg) translate(-2px,-2px);opacity:.95;
}

/* --- group items, hung off a hairline rail ------------------------------ */
.nav-group-items{
  position:relative;display:grid;gap:1px;
  margin:1px 0 6px 21px;padding:2px 0 2px 12px;
  border-left:1px solid rgba(212,175,55,.16);
}
.nav-group-items a{
  padding:9px 12px;border-radius:9px;
  font-size:13px;font-weight:600;color:rgba(255,255,255,.66);
}
.nav-group-items a:hover{color:#fff;background:rgba(255,255,255,.07)}
.nav-group-items .nav-icon{width:19px;font-size:14px;opacity:.75}
.nav-group-items a:hover .nav-icon,
.nav-group-items a.active .nav-icon{opacity:1}

/* Mark the active item on the rail itself. */
.nav-group-items a.active{
  box-shadow:0 8px 20px rgba(196,87,46,.22);
  font-weight:700;
}
.nav-group-items a.active:before{
  content:"";position:absolute;left:-1px;width:2px;height:22px;
  margin-top:9px;border-radius:2px;background:var(--gold);
}

/* --- notification pill -------------------------------------------------- */
.nav-count{
  margin-left:auto;flex:0 0 auto;
  min-width:19px;height:19px;padding:0 6px;
  border-radius:99px;display:inline-grid;place-items:center;
  background:#f6d44c;color:#17233a;
  font-size:10px;font-weight:800;letter-spacing:0;line-height:1;
}
.nav-group-count{margin-left:auto;margin-right:8px}
.nav-group[open]>summary .nav-group-count{display:none}

/* --- collapsed group holding the current page --------------------------- */
.nav-group-active:not([open])>summary{
  background:linear-gradient(90deg,rgba(196,87,46,.2),rgba(196,87,46,.04));
  color:#fff;
}
.nav-group-active:not([open])>summary .nav-group-label{
  position:relative;padding-left:12px;
}
.nav-group-active:not([open])>summary .nav-group-label:before{
  content:"";position:absolute;left:0;top:50%;
  width:5px;height:5px;margin-top:-2.5px;border-radius:50%;
  background:var(--gold);box-shadow:0 0 9px rgba(212,175,55,.85);
}

/* --- density and motion preferences ------------------------------------- */
.compact-mode .nav-group>summary{padding:7px 11px}
.compact-mode .nav-group-items{margin-bottom:4px}
.compact-mode .nav-group-items a{padding:7px 11px}

.reduced-motion-mode .nav-group-chevron,
.reduced-motion-mode .nav-group>summary{transition:none}
@media(prefers-reduced-motion:reduce){
  .nav-group-chevron,.nav-group>summary{transition:none}
}

/* JWP:/* V4.12 simple view toggle */ */
/* V4.12 simple view toggle */
.nav-simple{margin-top:12px;padding-top:11px;border-top:1px solid rgba(255,255,255,.09)}
.nav-simple button{width:100%;padding:9px 12px;border:1px dashed rgba(212,175,55,.34);border-radius:10px;
 background:transparent;color:rgba(255,255,255,.56);font-size:10px;font-weight:800;letter-spacing:.13em;
 text-transform:uppercase;cursor:pointer;transition:.18s ease;font-family:inherit}
.nav-simple button:hover{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.08)}
/* JWP:END /* V4.12 simple view toggle */ */

/* JWP:/* V4.19 couple photograph */ */
/* V4.19 couple photograph */
.login-art.has-photo{position:relative;overflow:hidden}
.login-photo{position:absolute;inset:0;background-size:cover;background-position:center 30%;
 transform:scale(1.04);filter:saturate(1.02)}
.login-photo-veil{position:absolute;inset:0;
 background:linear-gradient(180deg,rgba(14,24,42,.58) 0%,rgba(14,24,42,.72) 45%,rgba(14,24,42,.9) 100%)}
.login-art.has-photo>*:not(.login-photo):not(.login-photo-veil){position:relative;z-index:2}
.login-art.has-photo .login-crest-image{opacity:.9;filter:drop-shadow(0 6px 20px rgba(0,0,0,.45))}

.today-photo{position:relative;min-height:210px;border-radius:20px;overflow:hidden;
 background-size:cover;background-position:center 32%;display:flex;align-items:flex-end;margin-bottom:16px}
.today-photo-veil{position:absolute;inset:0;
 background:linear-gradient(180deg,rgba(14,24,42,.12) 0%,rgba(14,24,42,.62) 62%,rgba(14,24,42,.88) 100%)}
.today-photo-text{position:relative;z-index:2;padding:26px 28px;color:#fff}
.today-photo-text .eyebrow{color:var(--gold);margin:0 0 6px}
.today-photo-text h2{margin:0 0 5px;font:700 clamp(22px,3.4vw,32px) Georgia,serif;line-height:1.15}
.today-photo-text p{margin:0;color:rgba(255,255,255,.8);font-size:13.5px}
@media(max-width:650px){.today-photo{min-height:160px}.today-photo-text{padding:18px 20px}}
/* JWP:END /* V4.19 couple photograph */ */

/* JWP:/* V4.20.2 email intake address */ */
/* V4.20.2 email intake address */
.intake-panel .intake-address{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin:14px 0}
.intake-panel .intake-address code{flex:1;min-width:240px;padding:12px 14px;border-radius:10px;
 font-size:14px;letter-spacing:.02em;word-break:break-all;
 background:rgba(212,175,55,.09);border:1px dashed rgba(212,175,55,.4)}
/* JWP:END /* V4.20.2 email intake address */ */

/* JWP:/* V4.22 guest cards */ */
/* V4.22 guest cards */
.card-designer .form-actions{display:flex;gap:10px;margin-top:12px}
.card-sheet{display:grid;gap:0;background:#fff;margin:0 auto 26px;padding:12mm 10mm;
 width:210mm;box-sizing:border-box;box-shadow:0 12px 40px rgba(0,0,0,.14);border-radius:4px}
.card-sheet-table{grid-template-columns:repeat(2,1fr);grid-auto-rows:126mm}
.card-sheet-sign{grid-template-columns:1fr;grid-auto-rows:260mm}
.card-sheet-strip{grid-template-columns:repeat(2,1fr);grid-auto-rows:63mm}

.guest-card{padding:4mm;box-sizing:border-box}
.guest-card-inner{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;
 text-align:center;padding:8mm 6mm;border-radius:5mm;box-sizing:border-box;gap:2mm}
.theme-navy  .guest-card-inner{background:linear-gradient(160deg,#1E2A44,#2b3a5c);color:#fff;border:1.2mm solid #D4AF37}
.theme-cream .guest-card-inner{background:#FBF6EE;color:#2A2118;border:1.2mm solid #C4572E}
.theme-mono  .guest-card-inner{background:#fff;color:#111;border:1mm solid #111}

.guest-card-crest{width:16mm;height:16mm;opacity:.92}
.card-sheet-strip .guest-card-crest{display:none}
.card-sheet-sign .guest-card-crest{width:34mm;height:34mm}

.guest-card-names{margin:0;font:700 9pt Georgia,serif;letter-spacing:.08em;text-transform:uppercase;opacity:.78}
.guest-card h3{margin:1mm 0 2mm;font:700 16pt Georgia,serif;line-height:1.15}
.card-sheet-sign .guest-card h3{font-size:30pt}
.card-sheet-strip .guest-card h3{font-size:11pt;margin:0 0 1mm}

.guest-card-qr{width:38mm;height:38mm;background:#fff;padding:2mm;border-radius:2mm}
.card-sheet-sign .guest-card-qr{width:78mm;height:78mm}
.card-sheet-strip .guest-card-qr{width:24mm;height:24mm;padding:1mm}
.guest-card-qr-missing{display:grid;place-items:center;font-size:8pt;color:#a00;border:1px dashed #a00}

.guest-card-address{margin:2mm 0 0;font:700 11pt ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all}
.card-sheet-sign .guest-card-address{font-size:20pt}
.card-sheet-strip .guest-card-address{font-size:8pt}
.theme-navy .guest-card-address{color:#F2DC7C}
.theme-cream .guest-card-address{color:#C4572E}

.guest-card-body{margin:2mm 0 0;font-size:9pt;line-height:1.45;opacity:.85;max-width:78mm}
.card-sheet-sign .guest-card-body{font-size:14pt;max-width:150mm}
.card-sheet-strip .guest-card-body{display:none}
.guest-card-date{margin:2mm 0 0;font:italic 9pt Georgia,serif;opacity:.7}
.card-sheet-strip .guest-card-date{display:none}

@media print{
  .no-print,.sidebar,.topbar,.app-topbar,nav,.flash,footer{display:none!important}
  body,.app-shell,main{background:#fff!important;margin:0!important;padding:0!important;display:block!important}
  .card-sheet{box-shadow:none;border-radius:0;margin:0;padding:10mm;width:auto;page-break-after:always}
  .guest-card{break-inside:avoid;page-break-inside:avoid}
  @page{size:A4;margin:0}
}
/* JWP:END /* V4.22 guest cards */ */

/* JWP:/* V4.22.1 idle logout countdown */
/* V4.22.1 idle logout countdown
   The topbar is already crowded, so this stays compact: a clock glyph and the
   digits, with the words only appearing on genuinely wide screens. It sits at
   the end of the action row rather than before the search field, where it was
   squeezing everything to its right. */
.session-timer{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:9px;
 background:rgba(9,16,30,.72);border:1px solid rgba(120,180,220,.22);
 font-size:0;font-weight:600;white-space:nowrap;color:#6fd7e8;order:9;
 transition:border-color .25s ease,background .25s ease,color .25s ease}
.session-timer:before{content:"\23F1";font-size:12px;line-height:1;opacity:.85}
.session-timer b{font:700 13px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
 color:#fff;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.session-timer.is-warning{background:rgba(120,45,20,.4);border-color:rgba(232,112,63,.5);color:#ffb894}
.session-timer.is-warning b{color:#fff3ec}
.session-timer.is-expired{background:rgba(120,25,25,.45);border-color:rgba(220,70,70,.55);color:#ffbcbc}

/* Only show the words where there is genuinely room for them. */
@media(min-width:1560px){
  .session-timer{font-size:11.5px;gap:7px;padding:7px 12px}
}

/* Nine items in one row needs a tighter rhythm than the original two or three.
   The row also wraps rather than compressing its children into unreadability. */
.topbar-actions{flex-wrap:wrap;gap:8px;justify-content:flex-end}
@media(max-width:1400px){.topbar-actions{gap:6px}}
/* JWP:END /* V4.22.1 idle logout countdown */

/* JWP:/* V4.22.3 scrollbars */
/* V4.22.3 scrollbars
   The default chrome is a light grey slab, which reads as a seam down a navy
   sidebar. These are sized down, tinted to the surface they sit on, and only
   come forward on hover. Firefox gets the two-value scrollbar-color; WebKit and
   Blink get the pseudo-elements. */
*{scrollbar-width:thin;scrollbar-color:rgba(212,175,55,.34) transparent}

*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:rgba(255,255,255,.13);border-radius:99px;
 border:3px solid transparent;background-clip:content-box;transition:background .2s ease}
*::-webkit-scrollbar-thumb:hover{background:rgba(212,175,55,.5);background-clip:content-box}
*::-webkit-scrollbar-thumb:active{background:rgba(212,175,55,.72);background-clip:content-box}
*::-webkit-scrollbar-corner{background:transparent}

/* The sidebar is the darkest surface, so its thumb needs to be gold-tinted
   rather than white to avoid looking like a scuff. */
.sidebar{scrollbar-color:rgba(212,175,55,.3) transparent}
.sidebar::-webkit-scrollbar{width:9px}
.sidebar::-webkit-scrollbar-thumb{background:rgba(212,175,55,.26);border:3px solid transparent;
 background-clip:content-box}
.sidebar::-webkit-scrollbar-thumb:hover{background:rgba(212,175,55,.55);background-clip:content-box}

/* Panels and tables sit on lighter cards; a white thumb suits them better. */
.table-wrap::-webkit-scrollbar{height:9px}
.table-wrap::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);border:3px solid transparent;
 background-clip:content-box}
.table-wrap::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3);background-clip:content-box}

/* Light theme: the same idea, inverted. */
body.theme-light *{scrollbar-color:rgba(30,42,68,.28) transparent}
body.theme-light *::-webkit-scrollbar-thumb{background:rgba(30,42,68,.2);border:3px solid transparent;
 background-clip:content-box}
body.theme-light *::-webkit-scrollbar-thumb:hover{background:rgba(196,87,46,.5);background-clip:content-box}
/* JWP:END /* V4.22.3 scrollbars */

/* JWP:/* V4.23 guest photo moderation */ */
/* V4.23 guest photo moderation */
.filter-tabs{display:flex;gap:4px;flex-wrap:wrap}
.filter-tabs a{padding:7px 13px;border-radius:8px;font-size:12.5px;font-weight:600;
 color:rgba(255,255,255,.62);border:1px solid transparent;text-decoration:none;transition:.18s ease}
.filter-tabs a span{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:99px;
 background:rgba(255,255,255,.1);font-size:11px;font-variant-numeric:tabular-nums}
.filter-tabs a:hover{color:#fff;background:rgba(255,255,255,.06)}
.filter-tabs a.is-active{color:#fff;background:rgba(212,175,55,.16);border-color:rgba(212,175,55,.42)}
.filter-tabs a.is-active span{background:rgba(212,175,55,.3)}

.photo-bulkbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 16px;
 padding:12px 14px;border-radius:11px;background:rgba(255,255,255,.045);
 border:1px solid rgba(255,255,255,.09);position:sticky;top:8px;z-index:5;
 backdrop-filter:blur(8px)}
.photo-bulkbar-spacer{flex:1}

.photo-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.photo-card{position:relative;margin:0;border-radius:12px;overflow:hidden;
 background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);transition:.18s ease}
.photo-card:hover{border-color:rgba(212,175,55,.42);transform:translateY(-2px)}
.photo-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:rgba(0,0,0,.3)}
.photo-card.status-pending{border-color:rgba(212,175,55,.34)}
.photo-card.status-hidden{opacity:.5}
.photo-card figcaption{padding:10px 11px 12px;display:flex;flex-direction:column;gap:3px}
.photo-card-top{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:3px}
.photo-card figcaption strong{font-size:13px}
.photo-card figcaption small{font-size:11.5px;color:rgba(255,255,255,.58);line-height:1.4}
.photo-card-when{color:rgba(255,255,255,.4)!important;font-size:11px!important}
.photo-pick-label{position:absolute;top:8px;left:8px;z-index:2;padding:5px;border-radius:7px;
 background:rgba(10,16,28,.72);cursor:pointer;line-height:0}
.photo-pick-label input{width:17px;height:17px;cursor:pointer;accent-color:#D4AF37}
.badge-gold{background:rgba(212,175,55,.2);color:#F2DC7C;border:1px solid rgba(212,175,55,.42)}
@media(max-width:560px){.photo-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}}
/* JWP:END /* V4.23 guest photo moderation */ */