.hero{justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;animation:.7s cubic-bezier(.2,.8,.2,1) both rise-in;display:flex}.hero-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--accent-700);font-size:.75rem;font-weight:600}.hero h1{margin-top:6px;font-size:clamp(2.8rem,8vw,4.4rem)}.hero-date{color:var(--ink-soft);font-style:italic}.hero-date:empty{display:none}.skeleton-title{width:min(320px,70vw);height:.9em;margin:.2em 0}.hero-countdown{background:var(--white);width:132px;height:132px;box-shadow:0 0 0 6px var(--primary-100), 0 0 0 7px var(--primary-200), var(--shadow-card);text-align:center;border-radius:50%;flex:none;align-content:center;place-items:center;display:grid}.hero-countdown strong{color:var(--primary-700);font-variant-numeric:tabular-nums;font-size:2.6rem;font-weight:300;line-height:1.05}.hero-countdown span{letter-spacing:.06em;text-transform:uppercase;max-width:96px;color:var(--ink-soft);font-size:.72rem}.setup-banner{border:1px solid var(--accent-300);border-radius:var(--radius-lg);background:linear-gradient(120deg, var(--white), var(--accent-100));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px;padding:22px 26px;animation:.6s cubic-bezier(.2,.8,.2,1) both rise-in;display:flex}.setup-banner h2{font-family:var(--font-body);color:var(--ink);font-size:1.15rem;font-weight:600}.setup-banner p{max-width:52ch;color:var(--ink-soft);margin-top:2px}.invitation-card{border:1.5px solid var(--primary-300);border-radius:var(--radius-lg);background:linear-gradient(120deg, var(--white), var(--primary-100));box-shadow:var(--shadow-card);flex-wrap:wrap;align-items:center;gap:18px;margin-bottom:24px;padding:22px 26px;animation:.5s both rise-in;display:flex}.invitation-text{flex:1;min-width:240px}.invitation-text h2{font-family:var(--font-body);color:var(--ink);font-size:1.15rem;font-weight:600}.invitation-text p{margin-top:4px}.invitation-hint{color:var(--ink-soft);font-size:.85rem}.invitation-actions{flex-wrap:wrap;gap:8px;display:flex}.kpis{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.stat-link{color:inherit;transition:transform var(--transition), border-color var(--transition), box-shadow var(--transition);text-decoration:none}.stat-link:hover{color:inherit;border-color:var(--primary-300);transform:translateY(-2px)}.stat-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.kpis .stat-value,.kpis .stat:last-child .stat-value{color:var(--ink)}.kpis .stat-hint{color:var(--ink-soft);font-size:.8rem}.kpi-progress{appearance:none;background:var(--primary-100);border:none;border-radius:999px;width:100%;height:6px;margin-top:8px;overflow:hidden}.kpi-progress::-webkit-progress-bar{background:var(--primary-100)}.kpi-progress::-webkit-progress-value{background:var(--primary);border-radius:999px}.kpi-progress::-moz-progress-bar{background:var(--primary);border-radius:999px}.kpi-progress.is-over::-webkit-progress-value{background:var(--primary-700)}.kpi-progress.is-over::-moz-progress-bar{background:var(--primary-700)}.is-over-budget{border-color:var(--primary-300)}.is-over-budget .stat-hint{font-weight:500;color:var(--primary-700)!important}.dashboard-columns{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.side-stack{gap:24px;display:grid}.panel{border:1px solid var(--primary-200);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-card);padding:22px 24px;animation:.6s cubic-bezier(.2,.8,.2,1) .15s both rise-in}.panel-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.panel-head h2{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-size:.82rem;font-weight:600;line-height:1.4}.panel-head a{font-size:.85rem;text-decoration:none}.panel-empty{color:var(--ink-soft);font-style:italic}.agenda{gap:4px;margin:0;padding:0;list-style:none;display:grid}.agenda-item{grid-template-columns:50px 1fr;align-items:center;gap:14px;display:grid}.agenda-date{background:var(--primary-100);height:50px;color:var(--primary-700);border-radius:14px;align-content:center;place-items:center;display:grid}.agenda-date strong{font-size:1.2rem;line-height:1}.agenda-date span{text-transform:uppercase;font-size:.68rem}.agenda-item.type-wedding .agenda-date{background:var(--accent-100);color:var(--accent-700)}.agenda-item.type-payment .agenda-date{color:#9a6a12;background:#fff4e0}.agenda-body{color:var(--ink);transition:background var(--transition);border-radius:12px;padding:10px 12px;text-decoration:none;display:grid}.agenda-body:hover{background:var(--primary-50);color:var(--ink)}.agenda-body strong{font-weight:600}.agenda-body span{color:var(--ink-soft);font-size:.82rem}.facts{margin:0}.facts div{border-top:1px dashed var(--primary-200);justify-content:space-between;gap:16px;padding:9px 0;display:flex}.facts div:first-child{border-top:none;padding-top:0}.facts dt{color:var(--ink-soft);flex:none;font-size:.88rem}.facts dd{text-align:right;margin:0;font-weight:500}.facts dd .skeleton{width:90px}.shortcuts{grid-template-columns:1fr 1fr;gap:8px;display:grid}.shortcut{border:1px solid var(--primary-200);background:var(--primary-50);color:var(--ink);transition:background var(--transition), border-color var(--transition), transform var(--transition);border-radius:14px;justify-items:start;gap:4px;padding:12px 14px;font-size:.88rem;font-weight:500;text-decoration:none;display:grid}.shortcut span{font-size:1.2rem}.shortcut:hover{border-color:var(--primary-300);background:var(--white);color:var(--ink);transform:translateY(-2px)}@media (width<=900px){.dashboard-columns{grid-template-columns:1fr}}@media (width<=600px){.hero{text-align:center;flex-direction:column-reverse}.hero-countdown{width:112px;height:112px}.hero-countdown strong{font-size:2.2rem}.kpis{grid-template-columns:1fr 1fr;gap:10px}.kpis .stat{padding:14px}.kpis .stat-value{font-size:1.2rem}.kpis .stat-label{font-size:.7rem}.kpis .stat-hint{font-size:.72rem}.shortcuts{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){.stat-link:hover,.shortcut:hover{transform:none}}
